﻿// user-reviews.js

var _listReviewsSliders = new Array();

function InitializePostAReviewSliders()
{
    var initialValue = 50;
    
    var sliderQ1 = $("#sliderQ1");
    var sliderQ2 = $("#sliderQ2");
    var sliderQ3 = $("#sliderQ3");

    if (sliderQ1.length > 0)
    {
        sliderQ1.slider(
        { min: 0, max: 100, step: 1, animate: true,
            slide: function(event, ui) { ReviewsSlider_OnSlide('sliderQ1', ui.value); }
        });
        sliderQ1.slider("value", initialValue);
        ReviewsSlider_OnSlide("sliderQ1", initialValue)
    }

    if (sliderQ2.length > 0)
    {
        sliderQ2.slider(
        { min: 0, max: 100, step: 1, animate: true,
            slide: function(event, ui) { ReviewsSlider_OnSlide('sliderQ2', ui.value); }
        });
        sliderQ2.slider("value", initialValue);
        ReviewsSlider_OnSlide("sliderQ2", initialValue)
    }

    if (sliderQ3.length > 0)
    {
        sliderQ3.slider(
        { min: 0, max: 100, step: 1, animate: true,
            slide: function(event, ui) { ReviewsSlider_OnSlide('sliderQ3', ui.value); }
        });
        sliderQ3.slider("value", initialValue);
        ReviewsSlider_OnSlide("sliderQ3", initialValue)
    }

    var btnPost = $("input[id$='btnPost']");
    if (btnPost.length > 0)
    {
        $("input[id$='btnPost']").bind('click', btnPost_Click);
    }
}

function CreateReadOnlySlider(sliderId, score)
{
    _listReviewsSliders[_listReviewsSliders.length] = { sliderId: sliderId, score: score };
}

function InitializeListReviewsSliders()
{
    // these sliders are readonly
    for (var i = 0; i < _listReviewsSliders.length; i++)
    {
        $("#" + _listReviewsSliders[i].sliderId).slider(
        { min: 0, max: 100, step: 1, animate: true,
            slide: function(event, ui) { return false; }
        });

        $("#" + _listReviewsSliders[i].sliderId).slider("value", _listReviewsSliders[i].score);
        $("#" + _listReviewsSliders[i].sliderId).slider('disable');
    }
}

function ReviewsSlider_OnSlide(sliderId, sliderValue)
{   
    // set value in hidden field
    var hdnId = sliderId.replace('slider', 'hdn');
    var hdn = $("input[id$='" + hdnId + "']");
    hdn.val(sliderValue);
}

function btnPost_Click()
{    
    var txtTitle = $("input[id$='txtTitle']");
    var txtComments = $("input[id$='txtComments']");
    var lblErrorMessage = $("span[id$='lblErrorMessage']");
    
    if (jQuery.trim(txtTitle.val()).length == 0)
    {
        lblErrorMessage.text('Sorry, title is required.');
        txtTitle.focus();
        return false;
    }

    var comments = jQuery.trim(tinyMCE.getInstanceById(_tinyMCE_id).getContent());    
    comments = jQuery.trim(replaceAll(comments, "\u0026nbsp;", ""));    
    if (comments.length == 0)
    {
        lblErrorMessage.text('Sorry, comments are required.');
        tinyMCE.activeEditor.focus(false);
        return false;
    }

    lblErrorMessage.text('');
}

function replaceAll(str, from, to)
{
    var i = str.indexOf(from);
    var c = str;

    while (i > -1)
    {
        c = c.replace(from, to);
        i = c.indexOf(from);
    }
    return c;
}

$(document).ready(InitializePostAReviewSliders);
$(document).ready(InitializeListReviewsSliders);

