function imgYesClick(msgYes, language) {

    if ($('.dvComments').length == 1) {
        var s_rating = "Oui";
        var s_pageState = "vote contenu";
        s_trackPageView(false, s_pageState, s_rating);

        $('.dvComments').hide();
        $('.btn').hide();
        CreateNewItemForVoting("VotingPages", "YesVote");
        $('.lblRating').text(msgYes);
    }
    else {

        var url = window.location.href;
        var sep = "?";

        if (url.indexOf("?") >= 0)
            sep = "&";

        url = clearUrlForCommentRedirect(url);

        window.location.href = "/" + language + "/Pages/login.aspx?ReturnUrl=" + encodeURIComponent(url + sep + "commentType=y#comments");
    }

    return false;
    // $(lblRatingID).InnertText = "Yes";
}

function imgNoClick(msgNo, language) {
    //debugger;
    //$('.lblRating').text(msgNo);
    var height = $('.pageContent').height() + 294 + $('.dvComments').height();
    if ($('.dvComments').length == 1) {
        var s_rating = "Non";
        var s_pageState = "vote contenu";
        s_trackPageView(false, s_pageState, s_rating);

        $('.btn').hide();
        $('.wrapContent').css({ 'height': height, 'min-height': height + 'px' });
        //$('.wrapContent').animate({ scrollTop: $('.wrapContent').attr("scrollHeight") }, 3000);
        //$('html, body').animate({ scrollTop: $('.wrapContent').height() }, 3000);
        $('.dvComments').show('fast');
        CreateNewItemForVoting("VotingPages", "NoVote");

    }
    else {

        var url = window.location.href;
        var sep = "?";

        if (url.indexOf("?") >= 0)
            sep = "&";

        url = clearUrlForCommentRedirect(url);

        window.location.href = "/" + language + "/Pages/login.aspx?ReturnUrl=" + encodeURIComponent(url + sep + "commentType=n#comments");
    }

    return false;
}

function imgPartiallyClick(msgPartially, language) {
    //$('.lblRating').text(msgPartially);
    var height = $('.pageContent').height() + 294 + $('.dvComments').height();
    if ($('.dvComments').length == 1) {
        var s_rating = "Partiellement";
        var s_pageState = "vote contenu";
        s_trackPageView(false, s_pageState, s_rating);

        $('.btn').hide();

        $('.wrapContent').css({ 'height': height, 'min-height': height + 'px' });
        //$('.wrapContent').animate({ scrollTop: $('.wrapContent').attr("scrollHeight") }, 3000);
        //$('html, body').animate({ scrollTop: $('.wrapContent').height() }, 3000);
        $('.dvComments').show('fast');
        CreateNewItemForVoting("VotingPages", "PartiallyVote");

    }
    else {

        var url = window.location.href;
        var sep = "?";

        if (url.indexOf("?") >= 0)
            sep = "&";

        url = clearUrlForCommentRedirect(url);

        window.location.href = "/" + language + "/Pages/login.aspx?ReturnUrl=" + encodeURIComponent(url + sep + "commentType=p#comments");
    }

    return false;
}

function imgSendClick(msgAfterSave) {
    if (!CheckCommentFields()) {
        return false;
    }
    var height = $('body').height() - 760;

    $('.lblRating').text(msgAfterSave);
    if ($('.dvComments').length == 1) {

        $('.wrapContent').css({ 'height': height, 'min-height': height + 'px' });
        //$('.wrapContent').animate({ scrollTop: $('.wrapContent').attr("scrollHeight") }, 3000);
        //$('html, body').animate({ scrollTop: height }, 3000);
        CreateNewListItemInContactUs();
        $('.dvComments').hide();
        $('.btn').hide();
    }
    return false;

}

function clearUrlForCommentRedirect(url) {
    if (url.indexOf("commentType=n") >= 0) {
        url = url.replace("?commentType=n", "?");
        url = url.replace("&commentType=n", "");
    } else if (url.indexOf("commentType=y") >= 0) {
        url = url.replace("?commentType=y", "?");
        url = url.replace("&commentType=y", "");
    } else if (url.indexOf("commentType=p") >= 0) {
        url = url.replace("?commentType=p", "?");
        url = url.replace("&commentType=p", "");
    }

    if (url.indexOf("#comments"))
        url = url.replace("#comments", "");

    return url;
}

function CheckCommentFields() {
    return true;
    var valid = true;
    var errorMsg;
    var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
    var emailaddressVal = $('.txtEmailAddress').val();
    if (emailaddressVal == '') {
        $('.txtEmailAddress').after('&nbsp;<span class="error">*</span>');
        errorMsg = "email address,";
        valid = false;
    }
    else if (!emailReg.test(emailaddressVal)) {
        $('.txtEmailAddress').after('&nbsp;<span class="error">*</span>');
        errorMsg = "email address,";
        valid = false;
    }

    if ($('.txtMessage').text() == '') {
        $('.txtMessage').after('&nbsp;<span class="error">*</span>');
        errorMsg += "message,";
        valid = false;

    }
    if ($('.txtContactName').text() == '') {
        $('.txtContactName').after('&nbsp;<span class="error">*</span>');
        errorMsg += "user name,";
        valid = false;
    }
    if (!valid) {
        $('.lblError').show();
        if (errorMsg.lastIndexOf(",") == errorMsg.length - 1) {
            errorMsg = errorMsg.substring(0, errorMsg.length - 1);
        }
        $('.lblError').text("Please validate the " + errorMsg);
    }


    return valid;
}

function CreateNewListItemInContactUs() {
    var pageName = window.location.href.substring(window.location.href.lastIndexOf("/") + 1, window.location.href.length);
    var wsUrl = window.location.protocol + "//" + window.location.hostname + "/fr/_vti_bin/lists.asmx";

    var batch =
        "<Batch OnError=\"Continue\"> \
            <Method ID=\"1\" Cmd=\"New\"> \
                <Field Name=\"Title\">" + pageName + "</Field> \
                <Field Name=\"PageName\">" + pageName + "</Field> \
                <Field Name=\"URL\">" + window.location.href + "</Field> \
                <Field Name=\"BreadCrumb\">" + window.location.href + "</Field> \
                <Field Name=\"UserName\">" + $('.txtContactName').val() + "</Field> \
                <Field Name=\"Email\">" + $('.txtEmailAddress').val() + "</Field> \
                <Field Name=\"Comment\">" + $('.txtMessage').text() + "</Field> \
            </Method> \
        </Batch>";

    var soapEnv =
        "<?xml version=\"1.0\" encoding=\"utf-8\"?> \
        <soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" \
            xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" \
            xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\"> \
          <soap:Body> \
            <UpdateListItems xmlns=\"http://schemas.microsoft.com/sharepoint/soap/\"> \
              <listName>ContactUsList</listName> \
              <updates> \
                " + batch + "</updates> \
            </UpdateListItems> \
          </soap:Body> \
        </soap:Envelope>";

    $.ajax({
        url: wsUrl,
        beforeSend: function(xhr) {
            xhr.setRequestHeader("SOAPAction",
            "http://schemas.microsoft.com/sharepoint/soap/UpdateListItems");
        },
        type: "POST",
        dataType: "xml",
        data: soapEnv,
        complete: processResult,
        contentType: "text/xml; charset=utf-8"
    });

}

function CreateNewItemForVoting(listName, vote) {

    var pageName = window.location.href.substring(window.location.href.lastIndexOf("/") + 1, window.location.href.length);
    var wsUrl = window.location.protocol + "//" + window.location.hostname + "/fr/_vti_bin/lists.asmx";
    var batch =
        "<Batch OnError=\"Continue\"> \
            <Method ID=\"1\" Cmd=\"New\"> \
                <Field Name=\"Title\">" + pageName + "</Field> \
                <Field Name=\"PageURL\">" + window.location.href + "</Field> \
                <Field Name=\"" + vote + "\">1</Field> \
            </Method> \
        </Batch>";

    var soapEnv =
        "<?xml version=\"1.0\" encoding=\"utf-8\"?> \
        <soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" \
            xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" \
            xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\"> \
          <soap:Body> \
            <UpdateListItems xmlns=\"http://schemas.microsoft.com/sharepoint/soap/\"> \
              <listName>" + listName + "</listName> \
              <updates> \
                " + batch + "</updates> \
            </UpdateListItems> \
          </soap:Body> \
        </soap:Envelope>";

    $.ajax({
        url: wsUrl,
        beforeSend: function(xhr) {
            xhr.setRequestHeader("SOAPAction",
            "http://schemas.microsoft.com/sharepoint/soap/UpdateListItems");
        },
        type: "POST",
        dataType: "xml",
        data: soapEnv,
        complete: processResultVoting,
        contentType: "text/xml; charset=utf-8"
    });
}

function processResult(xData, status) {
    //if (status == "error") {
    //alert(status);
    // }
    return false;
}

function processResultVoting(xData, status) {
    //if (status == "error") {
    // alert(status);
    // }
    return false;
}

function rdoSearchClick(index) {
    //debugger;
    $('.drpSection').get(0).selectedIndex = index;

}

// used in events page
function btnFilterSearchClick(pageName) {
    var queryString = "";
    var separator = "?";

    // Période
    var value = $('#drpFilterPeriod').val();
    if (checkValue(value, "all")) {
        queryString = separator + "period=" + value;
        separator = "&";
        if (value == "other") {
            queryString += "&dateFrom=" + $("#txtFilterPeriod_From").val() + "&dateTo=" + $("#txtFilterPeriod_To").val();
        }
    }

    // Clientèles de l'Ordre
    value = $('#drpFilterPublic').val();
    if (checkValue(value, "all")) {
        queryString += separator + "public=" + value;
        separator = "&";
    }

    // Catégories
    value = $('#drpFilterCategory').val();
    if (checkValue(value, "all")) {
        queryString += separator + "category=" + value;
        separator = "&";
    }

    // Régions
    value = $('#drpFilterRegion').val();
    if (checkValue(value, "all")) {
        queryString += separator + "region=" + value;
    }

    window.location.replace("./" + pageName + queryString);
}

// used in communiqués page
function btnFilterSearchClick_Communiques(pageName, sortBy, sortDirection) {
    var queryString = "";
    var separator = "?";

    // Période
    var value = $('#drpPeriod').val();
    if (checkValue(value, "all")) {
        queryString = separator + "period=" + value;
        separator = "&";
        if (value == "other") {
            queryString += "&dateFrom=" + $("#txtFilterPeriod_From").val() + "&dateTo=" + $("#txtFilterPeriod_To").val();
        }
    }

    // Sort By
    if (sortBy) {
        queryString += separator + "sort=" + sortBy;
        separator = "&";
    }

    // Sort Direction
    if (sortDirection) {
        queryString += separator + "dir=" + sortDirection;
    }

    window.location.replace("./" + pageName + queryString);
}


// used in publications page
function btnFilterSearchClick_Publications(pageName, sortBy, sortDirection) {
    var queryString = "";
    var separator = "?";

    // Période
    var value = $('#drpPeriod').val();
    if (checkValue(value, "all")) {
        queryString = "?period=" + value;
        separator = "&";
        if (value == "other") {
            queryString += "&dateFrom=" + $("#txtFilterPeriod_From").val() + "&dateTo=" + $("#txtFilterPeriod_To").val();
        }
    }

    // Catégorie
    value = $('#drpCategory').val();
    if (checkValue(value, "1")) {
        queryString += separator + "category=" + value;
        separator = "&";
    }

    // Public Visé
    value = $('#drpPublic').val();
    if (checkValue(value, "all")) {
        queryString += separator + "public=" + value;
        separator = "&";
    }

    // Sort By
    if (sortBy) {
        queryString += separator + "sort=" + sortBy;
        separator = "&";
    }

    // Sort Direction
    if (sortDirection) {
        queryString += separator + "dir=" + sortDirection;
    }

    window.location.replace("./" + pageName + queryString);
}

// used in rôles d'audience page
function btnFilterSearchClick_RolesdAudience(pageName, sortBy, sortDirection) {
    var queryString = "";
    var separator = "?";

    // Période
    var value = $('#drpPeriod').val();
    if (checkValue(value, "all")) {
        queryString = "?period=" + value;
        separator = "&";
        if (value == "other") {
            queryString += "&dateFrom=" + $("#txtFilterPeriod_From").val() + "&dateTo=" + $("#txtFilterPeriod_To").val();
        }
    }

    // Sort By
    if (sortBy) {
        queryString += separator + "sort=" + sortBy;
        separator = "&";
    }

    // Sort Direction
    if (sortDirection) {
        queryString += separator + "dir=" + sortDirection;
    }

    window.location.replace("./" + pageName + queryString);
}

// used in news page
function btnFilterSearchClick_News(pageName) {
    var queryString = "";
    var separator = "?";

    // Période
    var value = $('#drpPeriod').val();
    if (checkValue(value, "all")) {
        queryString = "?period=" + value;
        separator = "&";
        if (value == "other") {
            queryString += "&dateFrom=" + $("#txtFilterPeriod_From").val() + "&dateTo=" + $("#txtFilterPeriod_To").val();
        }
    }

    // Public Visé
    var value = $('#drpPublic').val();
    if (checkValue(value, "all")) {
        queryString += separator + "public=" + value;
    }

    window.location.replace("./" + pageName + queryString);
}

function checkValue(value, check) {
    if (value) {
        if (value != "" && value != check) {
            return true;
        }
    }

    return false;
}

// used in contact us page
function drpProfile_SelectedIndexChanged() {
    var value = $('#drpProfile').val();
    if (checkValue(value, "none")) {
        window.location.replace("./nousjoindre.aspx?profile=" + value);
    }
}

// supports MonOrdre
function AddToMonOrdre(userName, linkType) {
    var Url = "/monordre.add";
    if (userName != null) {
        Url = Url + '?user=' + userName;
    }
    else {
        Url = Url + '?user=NULL';
    }
    if (linkType != null) {
        Url = Url + '&linkType=' + linkType;
    }
    else {
        Url = Url + '&linkType=NULL';
    }
    xmlHttp = new XMLHttpRequest();
    xmlHttp.onreadystatechange = ProcessAddToMonOrdreRequest;
    xmlHttp.open("GET", Url, true);
    xmlHttp.send(null);
}
// supports MonOrdre
function ProcessAddToMonOrdreRequest() {
    if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
        if (xmlHttp.responseText == "LinkAdded") {
            if (lang == 'EN') {
                alert('Link added to My Portal');
            }
            else {
                alert('Lien ajout\u00E9 \u00E0 Mon Portail');
            }
        }
        else if (xmlHttp.responseText == "AlreadyPresent") {
            if (lang == 'EN') {
                alert('Link already prensent in My Portal');
            }
            else {
                alert('Le lien est d\u00E9ja pr\u00E9sent dans Mon Portail');
            }
        }
        else if (xmlHttp.responseText.indexOf("NotLoggedIn") > -1) {
            var loginUrl = "";
            if (lang == 'EN') {
                alert('You must be connected to use My Portal functionalities');
                loginUrl = "/en/Pages/login.aspx";
            }
            else {
                alert('Pour profiter des avantages de Mon Portail, vous devez \u00EAtre connect\u00E9.');
                loginUrl = "/fr/Pages/login.aspx";
            }
            var split = xmlHttp.responseText.split("-*");
            loginUrl += "?ReturnURL=" + encodeURIComponent(split[1]);
            window.location.href = loginUrl;
        }
        else {
            if (lang == 'EN') {
                alert('Failure - link not added to MyPortal');
            }
            else {
                alert('\u00C9chec - Lien non ajout\u00E9 \u00E0 Mon Portail');
            }
        }
    }
}

// used in jugements et decisions page
function btnFilterSearchClick_jugements(pageName, sortBy, sortDirection) {
    var queryString = "";
    var separator = "?";

    // Période
    var value = $('#drpFilterPeriod').val();
    if (checkValue(value, "all")) {
        queryString = separator + "period=" + value;
        separator = "&";
        if (value == "other") {
            queryString += "&dateFrom=" + $("#txtFilterPeriod_From").val() + "&dateTo=" + $("#txtFilterPeriod_To").val();
        }
    }

    // Catégories
    value = $('#drpFilterCategory').val();
    if (checkValue(value, "all")) {
        queryString += separator + "category=" + value;
        separator = "&";
    }

    // Par Page
    value = $('#drpFilterPerPage').val();
    queryString += separator + "nbPerPage=" + value;
    separator = "&";

    // Sort By
    if (sortBy) {
        queryString += separator + "sort=" + sortBy;
        separator = "&";
    }

    // Sort Direction
    if (sortDirection) {
        queryString += separator + "dir=" + sortDirection;
    }

    window.location.replace("./" + pageName + queryString);
}

// used in Archives Revue Plan page 
function btnFilterSearchClick_RevuePLAN(pageName) {
    var queryString = "";
    var separator = "?";

    // Période
    var value = $('#drpPeriod').val();
    if (checkValue(value, "all")) {
        queryString = separator + "period=" + value;
        separator = "&";
        if (value == "other") {
            queryString += "&dateFrom=" + $("#txtFilterPeriod_From").val() + "&dateTo=" + $("#txtFilterPeriod_To").val();
        }
    }

    // Par Page
    value = $('#drpFilterPerPage').val();
    queryString += separator + "nbPerPage=" + value;
    separator = "&";

    window.location.replace("./" + pageName + queryString);
}
