
var hasCMSLicense;
var hasAnalyticsLicense;
var hasCommerceLicense;
var hasMarketierLicense;
var thisPageLinkedMenus;
var thisMenuId;

function JSSavePage() {
    iapps_container_contentChanged_ShowAlert = false;
    document.getElementById("hfSaveAsDraft").value = "True";
    __doPostBack('__Page', 'SavePageAsDraft');
    //document.forms["form1"].submit();
}

function GlobalNavItemSelect(sender, eventArgs) {
    if (eventArgs.get_item().get_id() == "GoToHome" || eventArgs.get_item().get_id() == "ViewPageHistory" || eventArgs.get_item().get_id() == "ViewEditProperties") {
        SendTokenRequest(sender, eventArgs);
    }
    if (eventArgs.get_item().get_id() == "DisplayPageNote") {
        ShowHidePageNote();

        eventArgs.set_cancel(true);
    }
    if (eventArgs.get_item().get_id() == "SaveAsDraft" || eventArgs.get_item().get_id() == "Publish" || eventArgs.get_item().get_id() == "Approve" || eventArgs.get_item().get_id() == "SubmitToWorkflow" || eventArgs.get_item().get_id() == "Reject") {
        iapps_container_contentChanged_ShowAlert = false;
        for (var i = 0; i < arrRequiredContainer.length; i++) {
            if (arrRequiredContainer[i][1] == '0') {
                alert(__JSMessages["PleaseInsertContentForAllTheRequiredTextContainers"]);

                eventArgs.set_cancel(true);
                break;
            }
        }
    }
    if (eventArgs.get_item().get_id() == "AddToRssChannel") {
        eventArgs.set_cancel(true);
    }
    var itemClicked = eventArgs.get_item();
    var id = eventArgs.get_item().get_id();
    switch (id) {
        case 'Analyzer':
            if (!hasAnalyticsLicense || !hasAnalyticsPermission) {
                //call popup to display message
                OpenLicenseWarningPopup(id, hasAnalyticsLicense, hasAnalyticsPermission);
                eventArgs.set_cancel(true);
            }
            break;
        case "Commerce":
            if (!hasCommerceLicense || !hasCommercePermission) {
                OpenLicenseWarningPopup(id, hasCommerceLicense, hasCommercePermission);
                eventArgs.set_cancel(true);
            }
            break;
        case "Marketier":
            if (!hasMarketierLicense || !hasMarketierPermission) {
                OpenLicenseWarningPopup(id, hasMarketierLicense, hasMarketierPermission);
                eventArgs.set_cancel(true);
            }
            break;
        case "CMS":
            if (!hasCMSLicense || !hasCMSPermission) {
                OpenLicenseWarningPopup(id, hasCMSLicense, hasCMSPermission);
                eventArgs.set_cancel(true);
            }
            break;
        case "ToolbarPin":
            var pinItem = sender.findItemById("ToolbarPin");
            if (isPinned.toLowerCase() == 'true') {
                isPinned = 'false';
                pinItem.set_lookId("UnPinnedTopItemLook");
            }
            else {
                isPinned = 'true';
                pinItem.set_lookId("PinnedTopItemLook");
            }
            var result = PinToolbar(isPinned.toLowerCase());
            if (result.toLowerCase() == 'false') {
                alert(__JSMessages["UnableToPinToolbar"]);
            }
            eventArgs.set_cancel(true);
            break;
        case "SharedPage":
            PositionSharedPageDialog();
            eventArgs.set_cancel(true);
            break;
        case "iAPPSHelp":
            iAPPS_DisplayHelp();
            eventArgs.set_cancel(true);
            break;
    }

}
var oureditor;
var srcControl;
function ContentSaveAs() {
    NewContent = true;
    HideEditorToolbar();
    OnClientSubmit(oureditor);
}

function ContentSave() {
    HideEditorToolbar();
    OnClientSubmit(oureditor);
    ShowContentSaveWarning();
}

function ContentCancel() {
    HideEditorToolbar();
    OnClientCancel(oureditor);
}

function ShowContentSaveWarning() {
    var iappsTop = ($(window).height() - $('#iapps_warning_msg').outerHeight(true)) / 2 + $(window).scrollTop() + "px";
    var iappsLeft = ($(window).width() - $('#iapps_warning_msg').outerWidth(true)) / 2 + $(window).scrollLeft() + "px";
    $('#iapps_warning_msg').css({
        top: iappsTop,
        left: iappsLeft
    });
    $('#iapps_warning_msg').show();
    setTimeout(function () {
        $('#iapps_warning_msg').fadeOut('slow');
    }, 2000);
}

var editorTools;

function OnClientLoad(editor, args) {
    oureditor = editor;
    document.getElementById("editableArea").style.display = "none";

    editorTools = editor.get_toolAdapter().get_tools();

    var toolbarWindow = editor.get_toolAdapter().get_window();
    toolbarWindow.set_title(__JSMessages["iAPPSSiteEditorToolbar"]);

    //setTimeout("PopulateSnippets();", 250);
}

function OnClientModeChange(editor, args) {
    var mode = editor.get_mode();
    switch (mode) {
        case 1:
            //design mode
            ToggleFloatingToolbar(editor);
            break;
        case 2:
            //html mode
        case 4:
            //preview mode
            HideEditorToolbar();
            break;
    }
}

function OnClientCommandExecuting(editor, args) {
    var name = args.get_name();
    var val = args.get_value();

    if (name == "MailMerge") {
        oureditor.pasteHtml('[' + __JSMessages["Field"] + val + ']')
        //Cancel the further execution of the command as such a command does not exist in the editor command list
        args.set_cancel(true);
    }
}

function OnClientSubmit(editor) {
    srcControl.style.visibility = "visible";
    var actualText;
    if (Data.Container.getAttribute("maxCharacter") != "-1") {
        actualText = oureditor.get_html(true).substring(0, Data.Container.getAttribute("maxCharacter"));
    }
    else {
        actualText = oureditor.get_html(true);
    }

    if (actualText == '')
        actualText = '&nbsp;';

    var pattern = "^<span class=\"?" + Data.Container.className + "\"?>((.|\\n|\\r)+?)</span>$";
    var objRE = new RegExp(pattern, "i");

    if (objRE.test(actualText)) {
        outStr = actualText.match(objRE);
        actualText = outStr[1];
    }

    srcControl.innerHTML = actualText;
    document.getElementById("editableArea").style.display = "none";
    //To update the Content operation and IsModified property of the container
    Data.HiddenControlValue.value = actualText;
    if (NewContent) {
        selectDirectory();
        setContainerOperation(Data, "NewContent");
        setFwObjectId(Data, "");
        ClearIndexTerms(Data);
        var strContainerId = Data.Container.getAttribute("FWContainerID");
        for (var i = 0; i < arrRequiredContainer.length; i++) {
            if (arrRequiredContainer[i][0] == strContainerId) {
                arrRequiredContainer[i][1] = '1';
            }
        }
    }
    else {
        if (Data.HiddenContentOperation.value != "NewContent") {
            setContainerOperation(Data, "Modified");
            //added for commerce  done on 06/08/2009 *
            if (Data.Container.getAttribute("FWContainerType") == "FWProductPropertyControl")
                callbackForAutoSave.callback();
            //added for commerce  done on 06/08/2009 *

        }
    }

    NewContent = false;

    eval(flashEvents);
    return false;
}

function OpenLicenseWarningPopup(productName, hasLicenese, hasPermission) {
    var url = "..";
    if (jAdminSiteUrl != undefined && jAdminSiteUrl != null && jAdminSiteUrl != 'undefined' && jAdminSiteUrl != '')
        url = jAdminSiteUrl;
    url += "/Popups/LicenseWarning.aspx?ProductName=" + productName + "&HasLicense=" + hasLicenese + "&HasPermission=" + hasPermission;
    licenseWarningWindow = dhtmlmodal.open('LicenseWarning', 'iframe', url, __JSMessages["LicenseWarning"], 'width=425px,height=400px,center=1,resize=0,scrolling=1');
    licenseWarningWindow.onclose = function () {
        var a = document.getElementById('LicenseWarning');
        var ifr = a.getElementsByTagName("iframe");
        window.frames[ifr[0].name].location.replace("/blank.html");
        return true;
    }
}

//script to avoid the horizontal scroll bar in the view mode
if (document.getElementById("bar")) {
    if (!document.getElementById("autohide")) {
        document.getElementById("bar").style.display = "none";
    }
    else {
        document.getElementById("bar").style.display = "block";
    }
}

