﻿var ChangeDivObj = new Array();
var ChangeDivObjResetDivs = new Array();
var HeightinEMToSubstract;
var windowHeight;
var WidthinEMToSubstract;
var windowWidth;
var frameToResize;

$(document).ready(function() {
    resizeDivs();
});
function resizeDivs() {
    jQuery.each(ChangeDivObj, function(i, func) {
        //var a = i;
        //var b = func;
        eval(func);
    });
}
function resizeDiv(divElement, minheightEM) {
    resizeDivToWindowVertical(divElement, minheightEM)
}
function resizeDivToWindowVertical(divElement, minheightEM) {
    //alert(divElement);
    HeightinEMToSubstract = minheightEM;
    frameToResize = document.getElementById(divElement);
    windowHeight = getWindowY();
    //alert(windowHeight);
    //alert(minHeightinPX);
    resizeFrameVertical();
}
function resizeDivToWindowHorizontal(divElement, minheightEM) {
    WidthinEMToSubstract = minheightEM;
    frameToResize = document.getElementById(divElement);
    windowWidth = getWindowX();
    resizeFrameHorizontal();
}
function resizeDivToSplitWindowHorizontal(divElement, minheightEM) {
    WidthinEMToSubstract = minheightEM;
    frameToResize = document.getElementById(divElement);
    windowWidth = getWindowX();
    resizeSplitFrameHorizontal();
}
function resizeDivtoPageVertical(divElement, minheightEM) {
    HeightinEMToSubstract = minheightEM;
    frameToResize = document.getElementById(divElement);
    windowHeight = getPageY();
    resizeFrameVertical();
}
function resizeDivtoPageHorizontal(divElement, minheightEM) {
    WidthinEMToSubstract = minheightEM;
    frameToResize = document.getElementById(divElement);
    windowWidth = getPageX();
    resizeFrameHorizontal();
}
function resizeDivtoSplitPageHorizontal(divElement, minheightEM) {
    WidthinEMToSubstract = minheightEM;
    frameToResize = document.getElementById(divElement);
    windowWidth = getPageX();
    resizeSplitFrameHorizontal();
}
function resizeFrameVertical() {
    emsizeDiv = null;
    var HeightinPXToSubstract = getemsize() * HeightinEMToSubstract;
    addToResetDivs(frameToResize.id, frameToResize.style.height)
    frameToResize.style.height = windowHeight - HeightinPXToSubstract + 'px';
}
function resizeFrameHorizontal() {
    emsizeDiv = null;
    var WidthinPXToSubstract = getemsize() * WidthinEMToSubstract;
    frameToResize.style.width = windowWidth - WidthinPXToSubstract + 'px';
}
function resizeSplitFrameHorizontal() {
    emsizeDiv = null;
    var WidthinPXToSubstract = getemsize() * WidthinEMToSubstract;
    frameToResize.style.width = (windowWidth - WidthinPXToSubstract) / 2 + 'px';
}
var emsizeDiv;
function getemsize() {
    var emsize;
    if (!emsizeDiv) installemsize();
    emsizeDiv.style.display = 'block';
    emsize = emsizeDiv.offsetHeight;
    emsizeDiv.style.display = 'none';
    return emsize;
}
function installemsize() {
    emsizeDiv = document.getElementById('emsizedetect');
    if (!emsizeDiv) {
        var body = document.body;
        var div = document.createElement('DIV');
        div.style.position = 'absolute';
        div.style.top = '10px';
        div.style.right = '10px';
        div.style.display = 'none';
        div.style.margin = 0;
        div.style.padding = 0;
        div.style.borderWidth = 0;
        div.style.lineHeight = '1em';
        div.setAttribute('id', 'emsizedetect');
        div.appendChild(document.createTextNode('M'));
        body.appendChild(div);
        emsizeDiv = document.getElementById('emsizedetect');
    }
}
function addToResetDivs(divElement, currentheight) {
    var newArray = new Array();
    newArray.push(divElement)
    newArray.push(currentheight)
    ChangeDivObjResetDivs.push(newArray);
}
function resetDivs() {
    jQuery.each(ChangeDivObjResetDivs, function(i, obj) {
        //var a = i;
        //var b = obj;
        var oldDiv = document.getElementById(obj[0]);
        oldDiv.style.height = obj[1];
    });
}