﻿/// <reference path = "../system/jquery-1.4.4-vsdoc.js"/>
tinyMCE_GZ.init({
    plugins: "spellchecker, iespell, searchreplace, print, paste",
    themes: 'simple,advanced',
    languages: 'en',
    disk_cache: true,
    debug: false
});
$(document).ready(function () {

});

$("div.isEditor *").live("mouseenter", function () { $("div.contentEdit").show(); });
$("div.isEditor").live("mouseout", function () { $("div.contentEdit").hide(); });
$("div.utilityRow").live("mouseenter", function () { $("div.contentEdit").show(); });

$("div.contentEdit").live("click", function () { showEditor(this); }).hover(
        function () { $(this).removeClass("contentEditOff").addClass("contentEditOn"); },
        function () { $(this).removeClass("contentEditOn").addClass("contentEditOff"); }
    );

$("div.contentCancel").live("click", function () { cancelEdit(this); }).hover(
        function () { $(this).removeClass("contentCancelOff").addClass("contentCancelOn"); },
        function () { $(this).removeClass("contentCancelOn").addClass("contentCancelOff"); }
    );

$("div.contentSave").live("click", function () { savePageContent(); }).hover(
        function () { $(this).removeClass("contentSaveOff").addClass("contentSaveOn"); },
        function () { $(this).removeClass("contentSaveOn").addClass("contentSaveOff"); }
    );

function showLoader() {
    $("div.ajaxLoader img").fadeIn(500, function () { $("#editStatus").html("Saving Content").oneTime(1000, function () { $(this).hide(); }); });
}

function hideLoader() {
    $("div.ajaxLoader img").fadeOut(500);
}

function showEditor(elem) {
    $("div.displayText").fadeOut(200, function () {
        $("div.contentSave").fadeIn(500);
        $("div.contentCancel").fadeIn(500);
        $("div.editableContent").fadeIn(200);
    });
}

function cancelEdit(elem) {
    $("div.editableContent").fadeOut(200, function () {
        $("div.contentCancel").fadeOut(500);
        $("div.contentSave").fadeOut(500);
        $("div.contentEdit").fadeIn(500);
        $("div.displayText").fadeIn(200);
    });

    $("div.editContent").hide();
}

function savePageContent() {
    var content = tinyMCE.get("Content").getContent();
    var Id = $("input[name=Id]").val();    
    var url = "/Admin/UpdatePageContent/";
    var data = "content=" + content + "&Id=" + Id;
    $.post(url,
            data,
            function (json) {
                if (json == true) {
                    $("div.displayText").html(content);
                    $("textarea#Content").val(content);
                    cancelEdit();
                } else {
                    // jquery dialog call or
                    alert(json.errorMessage);
                }
            }, 'json');
}

function editSuccess(context) {
    var msg = context.get_data();
    $("#editStatus").fadeOut(200).removeClass("statusError").addClass("statusSuccess").html(msg).oneTime(1000, function () { $(this).fadeIn(500); });
    cancelEdit();
    $("div.ajaxLoader img").oneTime(1000, function () { $(this).fadeOut(500); $("#editStatus").fadeOut(200); });
}

function editFailure(context) {
    var msg = context.get_data();
    $("#editStatus").hide().removeClass("statusSuccess").addClass("statusError").html(msg).fadeIn(500).oneTime(1000, function () { $(this).fadeOut(500); });
    cancelEdit();
    $("div.ajaxLoader img").oneTime(1000, function () { $(this).fadeOut(500) });
}

function validatePageContent() {
    rtg = true;
    if (tinyMCE.get("Content").getContent().length == 0) rtg = false;
    if (rtg) {
        $("input.btnSave").removeClass("btnSaveDisabled").addClass("btnSaveEnabled").removeAttr("disabled").next("div.btnIconText").removeClass("disabled");
    } else {
        $("input.btnSave").removeClass("btnSaveEnabled").addClass("btnSaveDisabled").attr("disabled", "disabled").next("div.btnIconText").addClass("disabled");
    }
}

function setupEditor() {
    var editor = $("input[type=hidden][name=editorTextarea]").val();
    var height = $("input[type=hidden][name=editorHeight]").val();
    var width = $("input[type=hidden][name=editorWidth]").val();

    $("textarea#" + editor).tinymce({
        script_url: "../../Scripts/tinymce/tiny_mce.js",
        plugins: "spellchecker, iespell, searchreplace, print, paste",
        mode: "textareas",
        theme: "advanced",
        cleanup_on_startup: true,
        cleanup: true,
        debug: false,
        theme_advanced_buttons1: "bold, italic, underline, |, cut, copy, paste, pastetext, pasteword,|,search,replace,|,undo, redo,|, spellchecker, iespell",
        theme_advanced_buttons2: "",
        theme_advanced_buttons3: "",
        theme_advanced_buttons4: "",
        content_css: "../../Content/style/editor.css",
        theme_advanced_toolbar_location: "top",
        theme_advanced_toolbar_align: "left",
        //handle_event_callback: "validateEditor",
        width: width,
        height: height
    });
}
