﻿/* Time zone - to cookie "TimeZoneOffset"
---------------------------*/
function GetTimeZone() {
    var t = readCookie("TimeZoneOffset");
    if (t == null) {
        var myDate = new Date();
        t = myDate.getTimezoneOffset();
        createCookie("TimeZoneOffset", t, 7);
    }
    return t;
}



/* Tabs engine
---------------------------*/
function setDefaultTab(id, name) {
    var d = readCookie(name);
    if (d == null) {
        setActiveTabID(id, name);
    }
}

function setActiveTabID(id, name) {
    var x = document.getElementById(id);
    if (x != null)
        setActiveTab(x, name);
}

function setActiveTab(sender, name) {
    var panel = $(sender).attr("class").replace("Button", "").replace(" blue", "");
    $("#" + panel).parent().children().hide();
    $(sender).parent().parent().find("a").removeClass("active");
    $(sender).addClass("active");
    $("#" + panel).fadeIn();
    createCookie(name, panel, 1);
}

function RestoreTab(name) {
    var id = readCookie(name);
    if (id != null) {
        if ($("." + id).length > 0)
            setActiveTab("." + id + "Button", name);
    }
}


/* Cookies API
---------------------------*/
function createCookie(name, value, days) {
    var expires = "";
    if (days) {
        var date = new Date();
        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
        expires = "; expires=" + date.toGMTString();
    }
    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 setDefaultCookie(name, value) {
    var d = readCookie(name);
    if (d == null) {
        createCookie(name, value, 1);
    }
}



//
// getPageSize()
// Returns array with page width, height and window width, height
// Core code from - quirksmode.org
// Edit for Firefox by pHaez
//
function getPageSize() {

    var xScroll, yScroll;

    if (window.innerHeight && window.scrollMaxY) {
        xScroll = document.body.scrollWidth;
        yScroll = window.innerHeight + window.scrollMaxY;
    } else if (document.body.scrollHeight > document.body.offsetHeight) { // all but Explorer Mac
        xScroll = document.body.scrollWidth;
        yScroll = document.body.scrollHeight;
    } else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
        xScroll = document.body.offsetWidth;
        yScroll = document.body.offsetHeight;
    }

    var windowWidth, windowHeight;
    if (self.innerHeight) {	// all except Explorer
        windowWidth = self.innerWidth;
        windowHeight = self.innerHeight;
    } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
        windowWidth = document.documentElement.clientWidth;
        windowHeight = document.documentElement.clientHeight;
    } else if (document.body) { // other Explorers
        windowWidth = document.body.clientWidth;
        windowHeight = document.body.clientHeight;
    }

    // for small pages with total height less then height of the viewport
    if (yScroll < windowHeight) {
        pageHeight = windowHeight;
    } else {
        pageHeight = yScroll;
    }

    // for small pages with total width less then width of the viewport
    if (xScroll < windowWidth) {
        pageWidth = windowWidth;
    } else {
        pageWidth = xScroll;
    }


    arrayPageSize = new Array(pageWidth, pageHeight, windowWidth, windowHeight)
    return arrayPageSize;
}
