﻿var paneAssociations = new Array();
var originalColour;
// Adds overlay and sets mouseOver events
function addOverlay(divId, overlayText) {
    if (document.getElementById(divId) != null) {
        var Pane = $(document.getElementById(divId));
        if (document.addEventListener) {
            Pane.attr({
                onMouseOver: "mouseOver(this);",
                onMouseOut: "mouseOut(this);",
                onClick: ""
            });
        } else if (document.attachEvent) {
            document.getElementById(divId).attachEvent("onmouseover", new Function("mouseOverIE('" + divId + "')"))
            document.getElementById(divId).attachEvent("onmouseout", new Function("mouseOutIE('" + divId + "')"));
            document.getElementById(divId).attachEvent("onclick", click);
        } else {
            alert("Your browser is not compatible.");
        }
    }
}

// Handles mouse over event for all none ie browsers
function mouseOver(element) {
    addOverlayStyle(element);
}

function addOverlayStyle(element) {

    if (cmsInlineEditingEnabled) {
        originalColour = ($(element).css("background-color"));
        $(element).css("background-color", "#bbbbbb");
        $(element).css("border", "solid 1px red");
        $(element).css("cursor", "pointer");
    }
}

function mouseOverIE(element) {
    var srcElement;
    srcElement = document.getElementById(element);//Quick fix but will only work for panels with this id.
    addOverlayStyle(srcElement);
}
// Handles mouse over event
function mouseOutIE(element) {
    var srcElement;
    srcElement = document.getElementById(element);
    $(srcElement).css("background-color", originalColour);
    $(srcElement).css("border", "none");
}


// Handles mouse over event for all none ie browesers
function mouseOut(element) {
    $(element).css("background-color", originalColour);
    $(element).css("border", "none");
    
}

// Handles mouse click event
function click(element) {
}

var _loc
function setFancyLocation(loc) {
    _loc = loc;
}

function getFancyLocation() {
    return _loc;
}

function getFancyLocation2(thg) {
    if (cmsInlineEditingEnabled) {
        var cssclass = $('#' + thg.id).attr('class');
        if (cssclass == 'CmsContentPanels') {
            setFancyLocation(editPageLoction + "?pageurl=" + getPath() + "&amp;paneid=" + getAssociation(thg.id));
        } else if (cssclass == 'CmsContentGroupPanel') {
            setFancyLocation(editGroupLocation + "?pageurl=" + getPath() + "&amp;groupname=" + getAssociation(thg.id));
        } else {
            return null;
        }
        return _loc;
    }

    return null;
}
function getFancyLocation3(thg) {
    if (cmsInlineEditingEnabled) {
        var cssclass = $('#' + thg.id).attr('class');
        if (cssclass == 'CmsContentPanels') {
            setFancyLocation(editPageLoction + "?pageurl=" + getPath() + "&paneid=" + getAssociation(thg.id));
        } else if (cssclass == 'CmsContentGroupPanel') {
            setFancyLocation(editGroupLocation + "?pageurl=" + getPath() + "&groupname=" + getAssociation(thg.id));
        } else {
            return null;
        }
        return _loc;
    }
    return null;
}
function getPath() {
    var myregexp = new RegExp("[a-zA-Z0-9]/[A-Za-z0-9/%$-.+\!*'(),_]+");
    var match = myregexp.exec(location.href);
    if (match != null) {
        result = match[0];
    } else {
        result = "";
    }
    result = result.substring(1, result.length);
    
    if(doAspxReplace==true)
    {
        result = result.replace('.aspx','');
    }
    return result;
}

// Adds associations to array
function addAssociation(content, pane) {
    paneAssociations[content] = pane;
}

// Returns an association based on parameter
function getAssociation(content) {
    return paneAssociations[content];
}

function createCookie(name, value, days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
        var expires = "; expires=" + date.toGMTString();
    }
    else var expires = "";
    document.cookie = name + "=" + value + expires + "; path=/";
}

function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for (var i = 0; i < ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0) == ' ') c = c.substring(1, c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
    }
    return null;
}

function eraseCookie(name) {
    createCookie(name, "", -1);
}

function openWindow(url) {
    //if (useFancyBox == 0) {
        var load = window.open(url, '', 'scrollbars=yes,menubar=no,height=600,width=1000,resizable=yes,toolbar=no,location=no,status=no');
    //}
}

function isdefined(variable) {
    return (typeof (window[variable]) == "undefined") ? false : true;
}

function togglePanelSummary() {
    if (document.getElementById('panelSummaryContainter').style.display == 'block') {
        document.getElementById('panelSummaryContainter').style.display = 'none';
    }
    else {
        document.getElementById('panelSummaryContainter').style.display = 'block';
    }
}

function BindFancyBoxEvents() {
    BindFancyBoxEventsForContentArea()
    BindFancyBoxEventsForAdminBar();
}

function BindFancyBoxEventsForAdminBar() 
{
    $(" a.adminPanelOption").fancybox({ 'hideOnContentClick': true });

    $("a.adminPanelOption").fancybox({
        'zoomSpeedIn': 100, 'zoomSpeedOut': 100, 'overlayShow': true, 'frameWidth': 1000, 'frameHeight': 600
    });

}


function BindFancyBoxEventsForContentArea() {
    $(".CmsContentPanels").fancybox({
        'hideOnContentClick': true
    });

    $(".CmsContentPanels").fancybox({
        'zoomSpeedIn': 100, 'zoomSpeedOut': 100, 'overlayShow': true, 'frameWidth': 1000, 'frameHeight': 600
    });

    $(".CmsContentGroupPanel").fancybox({
        'zoomSpeedIn': 100, 'zoomSpeedOut': 100, 'overlayShow': true, 'frameWidth': 1000, 'frameHeight': 600
    });
}

function UnbindFancyBoxEventForContentArea() {
    $(".CmsContentPanels").unbind();
    $(".CmsContentPanels").unbind();
    $(".CmsContentGroupPanel").unbind();
}
