﻿//dependent on EvokeScriptResource.axd?evokeUtility
var printPage = function()
{
    window.print();
}

var textSize = (function() {
    var container = "wrapper";
    var currentSize = "1em";
    function persist(size) {
        currentSize = size;
        evokeUtility.setCookie("textSize", size, null);
    }
    function _this() { }
    _this.setFontSize = function(size) {
        var maincol = document.getElementById("mainColContent");
        var rightcol = document.getElementById("rightCol");
        
        if (maincol != null) maincol.style.fontSize = size;
        if (rightcol != null) rightcol.style.fontSize = size;
        $('ul.sliderValues a').css('font-size','1em');
        $('ul.sliderValues a').css('line-height','17px');
        
        
        if (size == "1em") {
            $('div#pageContent div.calloutHomeTop div.calloutContent').height(260);  
            $('div#pageContent div.calloutHomeTall div.calloutContent').height(360);
            $('div#pageContent div.calloutHomeMid div.calloutContent').height(160);
        } else {
            $('div#pageContent div.calloutHomeTop div.calloutContent').height(280);                
            $('div#pageContent div.calloutHomeTall div.calloutContent').height(380);
            $('div#pageContent div.calloutHomeMid div.calloutContent').height(170);
        }
        persist(size);
    };
    _this.small = function() {
        _this.setFontSize("1em");
    };
    _this.medium = function() {
        _this.setFontSize("1.1em");
    };
    _this.large = function() {
        _this.setFontSize("1.2em");
    };
    _this.change = function() {
        if (currentSize == "1em")
            textSize.medium();
        else if (currentSize == "1.1em")
            textSize.large();
        else
            textSize.small();
    }
    return _this;
})();

$(document).ready(function() {
    var cookie = evokeUtility.getCookie("textSize");
    if (cookie != null) {
        textSize.setFontSize(cookie);
    }
});

//trackingParams: doubleClickCat
function openAndTrack(url, trackingParams) {
    window.open(url);
    trackDoubleClick(trackingParams.doubleClickCat);
}

function trackDoubleClick(cat) {
    if (document.getElementById("doubleclick")) {
        document.getElementById("doubleclick").src = document.location.protocol+'//fls.doubleclick.net/activityi;src=2189081;type=intun161;cat=' + cat + ';ord=' + new Date().getTime() + '?';
    }
}

function toggleShare() {
    var share = document.getElementById("pageShare");
    if (share.style.display=="none") {
        $("#pageShare").fadeIn("fast");
    } else {
        $("#pageShare").fadeOut("fast");
    }
}

function toggleSignIn(panel, btn, focusInputID) {
    $('.selectedPopupBtn:not(:#' + btn + ')').removeClass("selectedPopupBtn");
    var b = $('#' + btn + ' > a');
    if ($("#" + panel).css("display") != "block") {
        $("#" + panel).css("display", "block");
        b.addClass("selectedPopupBtn");
        if (focusInputID != undefined) {
            document.getElementById(focusInputID).focus();
        }
    } else {
        $("#" + panel).css("display", "none");
        b.removeClass("selectedPopupBtn");
    }
}
function togglePopup(panel, btn) {
    $('.selectedPopup:not(:#'+panel+')').removeClass("selectedPopup");
    $('.selectedPopupBtn:not(:#'+btn+')').removeClass("selectedPopupBtn");
    
    var p = $('#'+panel);
    var b = $('#'+btn+' > a');
    if (p.hasClass("selectedPopup")) {
        p.removeClass("selectedPopup");
        b.removeClass("selectedPopupBtn");
    } else {
        p.addClass("selectedPopup");
        b.addClass("selectedPopupBtn");
    }
}

function showHelpTerm(termID) {
    getMouseXY();
    $("#glossaryPopupTitle").html("");
    $("#glossaryPopupText").html("Loading...");
    var padLeft = 0;
    var padTop = 0;
    if (termTimeout == 0) {
        $("#glossaryPopup").css({
            "top": (mouse.Y - 240) + "px",
            "left": (mouse.X - 80) + "px"
        });
    }
    $("#glossaryPopup").show();
    evokeUtility.attachEvent(document.forms[0].id, "click", closeGlossaryPopup);
    $.getJSON(commonProps.helpTerm, { id: termID },
        function(json) {
            $("#glossaryPopupTitle").html(json.title);
            $("#glossaryPopupText").html(json.text);
            $("#glossaryPopupPlayer").hide();
            //document.getElementById("glossaryPopup").focus();
        }
    );
}

function closeGlossaryPopup() {
    $("#glossaryPopup").hide();
    evokeUtility.detachEvent(document.forms[0].id, "click", closeGlossaryPopup);
}

var mouse = { X: 0, Y: 0 };
var termTimeout = 0;
function showTerm(termID) {
    window.clearTimeout(termTimeout);
    getMouseXY();
    $("#glossaryPopupTitle").html("");
    $("#glossaryPopupText").html("Loading...");
    var padLeft = 0;//parseInt($("#pageContent").css("padding-left"));
    var padTop = 0;//parseInt($("#pageContent").css("padding-top"));
    if (termTimeout == 0) {
        $("#glossaryPopup").css({
            "top": (mouse.Y - 240) + "px",
            "left": (mouse.X - 80) + "px"
        });
    }
    $("#glossaryPopup").show();
    evokeUtility.attachEvent(document.forms[0].id, "click", closeGlossaryPopup);
    $.getJSON(commonProps.glossaryTerm, { id: termID },
        function(json) {
            $("#glossaryPopupTitle").html(json.title);
            $("#glossaryPopupText").html(json.definition);
            var audiofile = json.audio;
            if (json.audio != "") {
                $("#glossaryPopupPlayer").show();
                var flashvars = {
                    file: json.audio,
                    skin: commonProps.flpath + "/SkinOverPlayStopSeekMuteVol.swf",
                    video: audiofile
                };
                var params = {
                    wmode: "transparent"
                };
                swfobject.embedSWF(commonProps.flpath + "/glossaryPlayer-091021.swf", "mediaspace", "280", "36", "8", commonProps.flpath + "/expressInstall.swf", flashvars, params, null);
            } else {
                $("#glossaryPopupPlayer").hide();
            }
            document.getElementById("glossaryPopup").focus();
        }
    );
}
function hideTerm() {
    //termTimeout = window.setTimeout(function() { $("#glossaryPopup").fadeOut("fast"); termTimeout = 0; }, 50);
}
function getMouseXY() {
    if (evokeUtility.browser.isIE()) {
        mouse.X = window.event.clientX + document.documentElement.scrollLeft;
        mouse.Y = window.event.clientY + document.documentElement.scrollTop;
    }
}
if (!evokeUtility.browser.isIE()) {
    window.addEventListener("mousemove", function(e) { mouse.X = e.pageX; mouse.Y = e.pageY; }, false);
}

function validateFormFields(fieldPropsArray) {
    var flag = true;
    var obj = null;
    for (var i in fieldPropsArray) {
        checkFieldValid(fieldPropsArray[i]);
        if (!fieldPropsArray[i].isValid) {
            flag = false;
            if (obj == null) obj = document.getElementById(fieldPropsArray[i].inputID);
        }
    }
    if (obj != null) {
        obj.focus();
    }
    return flag;
}
function checkFieldValid(props) {
    var flag = true;
    var validatorID = null;
    for (var i=0; i<props.validatorIDs.length; i++) {
        validator = document.getElementById(props.validatorIDs[i]);
        if (validator.enabled == undefined || validator.enabled) {
            ValidatorValidate(validator);
            if (!validator.isvalid) {
                flag = false;
                break;
            }
        }
    }
    if (flag && props.additional != undefined) {
        var newFlag = props.additional();
        if (newFlag != undefined)
            flag = newFlag;
    }
    var objBad = document.getElementById(props.badID);
    var objGood = document.getElementById(props.goodID);
    if (flag) {
        if (objBad != null) objBad.style.display = "none";
        if (objGood != null) objGood.style.display = "block";
    } else {
        if (objBad != null) objBad.style.display = "block";
        if (objGood != null) objGood.style.display = "none";
    }
    props.isValid = flag;
}

//function checkRegEmailExists(url, propsAsString) {
//    var data = {
//        email: document.getElementById(eval(propsAsString).inputID).value,
//        propsArrayString: propsAsString
//    };
//    $.getJSON(url, data, function(json) {
//        var props = eval(json.propsArrayString);
//        if (json.exists) {
//            var objField = document.getElementById(props.fieldID);
//            var objCheck = document.getElementById(props.checkID);
//            var objValidator = document.getElementById(props.validatorIDs[0]);
//            if (objField != null) objField.className = "fieldError";
//            if (objCheck != null) objCheck.style.display = "none";
//            if (objValidator != null) {
//                objValidator.innerHTML = "The email address entered already exists.";
//                objValidator.style.display = "inline";
//            }
//            props.isValid = flag;
//        }
//    });
//}



//function inputOnFocus(obj) {
//    obj.className = "txtInputFocus";
//}
//function inputOnBlur(obj) {
//    obj.className = "txtInput";
//}


function warnExternal(url) {
    document.getElementById("intstURL").href = url;
    evokeModalDialog.show("intstPopup");
}

function showVideoPopup() {
    showModalDialog("videoPopup");
}
var modalTimeout = 0;
function showModalDialogDelay(id, delay) {
    clearTimeout(modalTimeout);
    modalTimeout = window.setTimeout(function() { showModalDialog(id); }, delay);
}
function hideModalDialog() {
    clearTimeout(modalTimeout);
    evokeModalDialog.hide();
}
function showModalDialog(id) {
    evokeModalDialog.show(id, document.forms[0].id);
}

function showConfirmationPopup(objIdWithDisplayContent) {
    $("#confirmationPopupText").html($("#" + objIdWithDisplayContent).html());
    evokeModalDialog.show("confirmationPopup");
}

function showGlossaryPopup(term) {
    evokeModalDialog.show("glossaryPopup");
    //glossary/ .mp3
}

function sifrPageRate() {
    //alert($("#pageRateText").html());

    sIFR.replace(vag, {
    selector: '#pageRateText',
        css: '.sIFR-root { font-size:12px; color:#005581; text-align:center;}',
        transparent: true,
        tuneHeight: -5,
        offsetTop: 1

    });
}

function removeWatermark(objID) {
    var obj = document.getElementById(objID);
    if (obj.value == obj.watermark) {
        obj.value = "";
        obj.className = obj.className.replace(" watermark", "");
    }
}
function showWatermark(objID) {
    var obj = document.getElementById(objID);
    if (obj.value.trim() == "") {
        obj.value = obj.watermark;
        obj.className += " watermark";
    }
}

var setBtnClickAreas = function(){

    var i = 0;
    var j = 0;
    var k = 0;
    var m = 0;
    
    var btnArray = new Array();
    $(".btnSifr").each(
        function(i) {        
            btnArray[i] = this.offsetWidth;
            $(this).mouseover(function() {
                $(this).addClass('btnhover');
            });
            $(this).mouseout(function() {
                $(this).removeClass('btnhover');
            });
        }
    );
    
    $(".btnClickArea").each(
        function(j) {       
            this.style.width = btnArray[j]+'px';
            $(this).css({'cursor':'pointer'}); 
        }
    );

    var btnGlowArray = new Array();
    $(".btnSifrGlow").each(
        function(k) {        
            btnGlowArray[k] = this.offsetWidth;
            $(this).mouseover(function() {
                $(this).addClass('btnhover');
            });
            $(this).mouseout(function() {
                $(this).removeClass('btnhover');
            });
        }
    );
    
    $(".btnClickAreaGlow").each(
        function (m) {                   
            this.style.width = btnGlowArray[m]+'px';
            $(this).css({'cursor':'pointer'}); 
        }
    );

}
$(window).load(setBtnClickAreas);



/*
var setMenuHover = function(){
    $('ul#mainNav li.topNav').mouseover(
        function() {
            //$(this).addClass('evolihover');
            setTimeout(function() { $(this).addClass('evolihover'); }, 500);
//            $(this).children().css({'display':'block'});
        }
    )
    $('ul#mainNav li.topNav').mouseout(
        function() {
           setTimeout(function() { $(this).removeClass('evolihover'); }, 500);
           //$(this).removeClass('evolihover');
//            $(this).children('.subNavBG').css({'display':'none'});
//            $(this).children('.subNav').css({'display':'none'});
        }
    )
}


var showHideTimer=null;

function reallyHide() {
    $(this).removeClass('evolihover');
    $(this).children('.subNavBG').css({'display':'none'});
    $(this).children('.subNav').css({'display':'none'});
}

var delayClose=function(el) { 
//    setTimeout(function() { $(el).removeClass('evolihover'); }, 50);
    showHideTimer=setTimeout(reallyHide, 50);
}


//var setMenuHover = function(){
    $('ul#mainNav li.topNav').mouseover(
        function() {
            if (showHideTimer!=null) {
	            clearTimeout(showHideTimer);
            }
            
            $(this).addClass('evolihover');
            $(this).children().css({'display':'block'});
        }
    )
    $('ul#mainNav li.topNav').mouseout(
        function() {
	        if (showHideTimer==null) {
		        delayClose();
	        }
        }
    )   
//}
*/
//$(window).load(setMenuHover);
