/*global popups*/ 
popups = {
    x: 0,
    y: 0,
    ox: 0,
    oy: 0,
    element: '',
    dragging: false,
    defaultStep: 1,
    oldid: '',
    xmlobj: null,
    popupvidloaded: 0,
   
    togarr: [],
    sdto: [],
    startx: [],
    starty: [],
    newx: [],
    newy: [],
    virtx: [],
    virty: [],
    pintog: [], 
    sizetog: [], 
    scrollsaved: [],
    widthsaved: [],
    heightsaved: [],
    fontsizesaved: [],
    timerdown: [],
    timerup: [],
    scrollsteps: [],
    filesloaded: [],
    divsloaded: []
};

popups.hide_sample_div = function (id) {
    var dssd = document.getElementById(id);
    dssd.style.display = "none";
};

popups.show_sample_div = function (id, ptype) {
    var dssd = document.getElementById(id);
    dssd.style.visibility = "hidden";
    dssd.style.display = "block";
    var wih = window.innerHeight;
    if (!wih) { 
        wih = document.body.clientHeight; 
    }
    var divy = dssd.scrollHeight;
    var diffy = (dssd.offsetParent.offsetTop - document.body.scrollTop);
    if (diffy > (wih / 2)) { 
        dssd.style.top = ((-divy) + 12) + 'px';
    } else {
        dssd.style.top = '1px';
    }
    if (ptype == 0) {
        var bw = -25;
    } else {
        var bw = dssd.scrollWidth - 5;
    }
    dssd.style.left = -bw + 'px';
    dssd.style.visibility = "visible";
    dssd.style.display = "block";
    if ((id !== popups.oldid) && (popups.oldid !== '')) { 
        popups.hide_sample_div(popups.oldid); 
    }
    popups.oldid = id;
};


popups.ddmouse = function (event) {
    var e = event || window.event;
    var posx = 0;
	var posy = 0;
	if (e.pageX || e.pageY) 	{
		posx = e.pageX;
		posy = e.pageY;
	}
	else if (e.clientX || e.clientY) 	{
		posx = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
		posy = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
	}
    popups.x = posx;
    popups.y = posy;

    if (popups.dragging === true) {
        popups.newx[popups.element] = (popups.x - popups.ox);
        popups.newy[popups.element] = (popups.y - popups.oy);
        if (popups.newy[popups.element] < 0) { 
            popups.newy[popups.element] = 0; 
        }
        if (popups.newx[popups.element] < 0) { 
            popups.newx[popups.element] = 0; 
        }
        popups.virtx[popups.element] = document.body.scrollLeft;
        popups.virty[popups.element] = document.body.scrollTop;
        document.getElementById(popups.element).style.left = popups.newx[popups.element] + 'px';
        document.getElementById(popups.element).style.top = popups.newy[popups.element] + 'px';
    }
};

popups.bubble_divs = function (id) {
    var keys, dindex;
    var dd = document.getElementById(id);
//    var dd2 = document.getElementById(id + '_ddbox');
//    var dd3 = document.getElementById(id + '_ddbox_conts');
    if (popups.element !== id) { 
        popups.element = id;
        for (keys in popups.divsloaded) {
            if ((keys !== id) && (popups.divsloaded[keys] === 1)) {
                var dtemp = document.getElementById(keys);
//                var dtemp2 = document.getElementById(keys + '_ddbox');
//                var dtemp3 = document.getElementById(keys + '_ddbox_conts');
                dindex = dtemp.style.zIndex;
                if (dindex > 10) { 
                    dindex--;
                    dtemp.style.zIndex = dindex; 
                }
            }
        }
        dd.style.zIndex = 20;
    }
};

popups.mouse_down = function (id) {
    if (popups.element !== id) { 
        popups.bubble_divs(id); 
    }
    popups.element = id;
    var dd = document.getElementById(popups.element);
    var ex = parseInt(dd.style.left, 10);
    var ey = parseInt(dd.style.top, 10);
    popups.ox = (popups.x - ex);
    popups.oy = (popups.y - ey);
    popups.dragging = true;
    dd.style.cursor = 'move';
};

popups.mouse_up = function () {
    popups.dragging = false;
    document.getElementById(popups.element).style.cursor = 'auto';
};

popups.update_buttons = function (id) {
    var dsub = document.getElementById(id + '_upbut');
    var dsdb = document.getElementById(id + '_dnbut');
    var dsd = document.getElementById(id);
    var divdiff = (dsd.scrollHeight - dsd.clientHeight);
    var showing = 0;
    if (dsd.scrollTop === 0) {
        dsub.style.visibility = 'hidden';
        showing++;
    } else {
        dsub.style.visibility = 'visible'; 
    }
    if ((divdiff - dsd.scrollTop) < 5) {
        dsdb.style.visibility = 'hidden';
        showing++;
    } else {
        dsdb.style.visibility = 'visible';
    }
    if (showing === 2) {
        dsub.style.display = 'none';
        dsdb.style.display = 'none';
    } else {
        dsub.style.display = '';
        dsdb.style.display = '';
    }
};

popups.init_scroll_div = function (id, buttondisp, stepspeed) {
    buttondisp = buttondisp || 0;
    stepspeed = stepspeed || popups.defaultStep;
    var dsub = document.getElementById(id + '_upbut');
    var dsdb = document.getElementById(id + '_dnbut');
    var dsd = document.getElementById(id);
    var divdiff = (dsd.scrollHeight - dsd.clientHeight);
    if (!popups.scrollsteps[id]) { 
        dsd.scrollTop = 0;
        popups.scrollsteps[id] = stepspeed;
        popups.timerdown[id] = '';
        popups.timerup[id] = '';
    }
    if (divdiff < 5) {
        if (buttondisp === 1) {
            dsub.style.visibility = 'hidden';
            dsdb.style.visibility = 'hidden';
        } else {
            dsub.style.display = 'none';
            dsdb.style.display = 'none';
        }   
    }
    popups.update_buttons(id);
};

popups.update_divcontents = function (id) {
    var dd = document.getElementById(id);
    var dd2 = document.getElementById(id + '_ddbox');
    var dd3 = document.getElementById(id + '_ddbox_conts');
    var wih = window.innerHeight;
    if (!wih) { 
        wih = document.documentElement.clientHeight; 
    }
    if (!wih) { 
        wih = document.body.clientHeight; 
    }
    var wiw = window.innerWidth;
    if (!wiw) { 
        wiw = document.documentElement.clientWidth; 
    }
    if (!wiw) { 
        wiw = document.body.clientWidth; 
    }
    dd3.style.overflow = 'hidden';
    var divx = dd.scrollWidth;
    var divx2 = dd2.scrollWidth;
    var divx3 = dd3.scrollWidth;
    var changed = 0;
    if (divx2 < divx3) { 
        divx2 = divx3 + 4; 
        changed = 1; 
    }
    if (divx3 > (wiw - 100)) { 
        divx3 = (wiw - 100) + 4; 
        changed = 1; 
    }
    if (divx3 < divx) { 
        divx2 = divx3 + 0; 
        changed = 1; 
    }
    if (divx < divx3) { 
        divx2 = divx3 + 4; 
        changed = 1; 
    }
    if (divx3 < divx) { 
        divx2 = divx3 + 4; 
        changed = 1; 
    }
    if ((divx < 160) || (divx2 < 160)) { 
        divx2 = 170; 
        divx3 = 170; 
        changed = 1; 
    }
    if (changed === 1) { 
        var nsx = Math.floor((wiw / 2) - (divx2 / 2));
        dd.style.width  = (divx2 + 20) + 'px'; 
        dd.style.left = nsx + 'px';
//        dd.style.width  = divx2 + 'px'; 
        dd2.style.width = (divx2 + 20)  + 'px'; 
        dd3.style.width = (divx3 + 20) + 'px';
    }

    var divy = dd.scrollHeight;
    var divy2 = dd2.scrollHeight;
    var divy3 = dd3.scrollHeight;
    var dtop = document.getElementById(id + '_ddtop').clientHeight;
    changed = 0;
    if (divy2 < divy3) { 
        divy2 = divy3 + 6; 
        changed = 1; 
    }
    if (divy < divy3) { 
        divy = divy3 + dtop + 6;
        changed = 1; 
    }
    if (divy3 < divy) { 
        divy2 = divy3 + 10; 
        changed = 1; 
    }
    if (divy2 > divy3) { 
        divy2 = divy3 + 6; 
        changed = 1; 
    }
    if (divy > (divy2 + dtop)) {
        divy = (divy2 + dtop);
        changed = 1;
    }
    if (changed === 1) { 
        dd.style.height = divy + 'px'; 
        dd2.style.height = divy2 + 'px'; 
        dd3.style.height = divy3 + 'px'; 
    }
    if (dd3.scrollHeight > (wih - 100)) { 
        dd3.style.height = (wih - 100) + 'px'; 
        dd2.style.height = ((wih - 100) + 6) + 'px'; 
        dd.style.height = ((wih - 100) + dtop + 6) + 'px'; 
    } 
    dd3.style.overflow = 'hidden';
    dd3.style.overflowY = 'scroll';
    dd3.style.overflowX = 'hidden';
    popups.init_scroll_div(id + '_ddbox_conts', 1, 5);

};

popups.open_div_action = function (id, current, rate, start) {
    var id2 = id + '_ddbox';
    var dtd = document.getElementById(id2);
    var qstart = Math.ceil(start * 0.15);
    current -= rate;
    if (current < 0) { 
        current = 0; 
    }
    if (current < qstart) {
        rate = Math.ceil(rate / 1.5);
    }
    dtd.style.height = (start - current) + 'px';
    dtd.scrollTop = current;
    var id3 = id2 + '_conts';
    var dc = document.getElementById(id3);
    if (popups.scrollsaved[id3]) { 
        dc.scrollTop = popups.scrollsaved[id3]; 
    }
    if (current > 0) {
        var tstr = 'popups.open_div_action(\'' + id + '\', ' + current + ', ' + rate + ', ' + start + ')';
        popups.sdto[id2] = setTimeout(tstr, 1);
    } else {
//        popups.update_divcontents(id);
//    dd3.style.overflow = 'hidden';
    dtd.style.overflowY = 'scroll';
    dtd.style.overflowX = 'hidden';

    }

};

popups.close_div_action = function (id, current, rate, start) {
    var dd = document.getElementById(id);
    var id2 = id + '_ddbox';
    var dtd = document.getElementById(id2);
    var qstart = Math.ceil(start * 0.85);
    current += rate;
    if (current > start) { 
        current = start; 
    }
    if (current > qstart) {
        rate = Math.ceil(rate / 1.5);
    }
    dtd.style.height = (start - current) + 'px';
    dtd.style.position = 'absolute';
    dtd.style.visibility = 'visible';
    dtd.scrollTop = current;
    if (current < start) {
        var tstr = 'popups.close_div_action(\'' + id + '\', ' + current + ', ' + rate + ', ' + start + ')';
        popups.sdto[id2] = setTimeout(tstr, 1);
    } else {
        var dtop = document.getElementById(id + '_ddtop').clientHeight;
        dtd.style.visibility = 'hidden';
//    dtd.style.overflowY = 'scroll';
//    dtd.style.overflowX = 'hidden';
        dtd.style.position = 'absolute';
        dtd.style.height = start + 'px';
        dd.style.height = dtop + 'px';
    }   
};

popups.open_div = function (id) {
    var id2 = id + '_ddbox';
    clearTimeout(popups.sdto[id2]);
    var dtd = document.getElementById(id2);
    var nh = dtd.scrollHeight;
    dtd.style.height = '1px';
    dtd.style.position = 'relative';
    dtd.style.visibility = 'visible';
    popups.togarr[id2] = 2;
    var tstr = 'popups.open_div_action(\'' + id + '\', ' + nh + ', 20,' + nh + ')';
    popups.sdto[id2] = setTimeout(tstr, 1);
};

popups.close_div = function (id) {
    var id2 = id + '_ddbox';
    clearTimeout(popups.sdto[id2]);
    var dtd = document.getElementById(id2);
    var nh = dtd.scrollHeight;
    dtd.style.position = 'absolute';
    dtd.style.visibility = 'visible';
    popups.togarr[id2] = 1;
    var tstr = 'popups.close_div_action(\'' + id + '\', 0, 20,' + nh + ')';
    popups.sdto[id2] = setTimeout(tstr, 1);
};

popups.openclose_div = function (id) {
    var dd = document.getElementById(id + '_ddbox_conts_dnupbut');
    var id2 = id + '_ddbox';
    var id3 = id + '_ddbox_conts';
    var dc = document.getElementById(id3);
    dc.style.overflow = 'hidden';
//    dd3.style.overflowY = 'scroll';
//    dd3.style.overflowX = 'hidden';
    
    if ((popups.togarr[id2] === 2) || (!popups.togarr[id2])) {
        popups.togarr[id2] = 2;
        popups.scrollsaved[id3] = dc.scrollTop;
        dd.className = 'ddimg_down';
        popups.close_div(id);
    } else {
        dd.className = 'ddimg_up';
        popups.open_div(id);
    }     
};

popups.front_div = function (id) {
    var zi;
    var dd = document.getElementById(id);
    var zz = dd.style.zIndex;
    if (!zz) { 
        zi = 10; 
    } else {
        zi = parseInt(zz, 10) + 1;
        if (zi > 20) { 
            zi = 20; 
        }
    }
    dd.style.zIndex = zi;
};

popups.back_div = function (id) {
    var zi;
    var dd = document.getElementById(id);
    var zz = dd.style.zIndex;
    if (!zz) { 
        zi = 10; 
    } else {
        zi = parseInt(zz, 10) - 1;
        if (zi < 10) { 
            zi = 10; 
        }
    }
    dd.style.zIndex = zi;
};

popups.load_divsource = function (id, titlestr) {
    if (!popups.divsloaded[id]) {
        var dno = document.getElementById(id);
        var dconts = document.getElementById('ddbox_source').innerHTML;
        dconts = dconts.replace(/DUMMYID/g, id);
        dconts = dconts.replace(/DUMMYTITLE/g, titlestr);
        dno.innerHTML = dconts;
        popups.divsloaded[id] = 1;
    }
};

popups.toggle_pin = function (id) {
    var newx, newy, tst;    
    var dd = document.getElementById(id);
    var ddd = document.getElementById(id + '_ddbox_conts');
    var dpin = document.getElementById(id + '_ddbox_pin'); 
//    var sy = document.body.scrollTop;
    var sy = document.body.scrollTop ? document.body.scrollTop : document.documentElement.scrollTop;
    var sx = document.body.scrollLeft;
    var divx = parseInt(dd.style.left, 10);
    var divy = parseInt(dd.style.top, 10);
    popups.pintog[id] = (3 - popups.pintog[id]);
    if (popups.pintog[id] === 2) {
        dpin.className = 'ddimg_pin';
        newy = (divy - sy);
        newx = (divx - sx);
        dd.style.top = newy + 'px';
        dd.style.left = newx + 'px';
        tst = ddd.scrollTop;
        dd.style.position = 'fixed';
        ddd.scrollTop = tst;
    } else {
        dpin.className = 'ddimg_pinout';
        newy = (divy + sy);
        newx = (divx + sx);
        dd.style.top = newy + 'px';
        dd.style.left = newx + 'px';
        tst = ddd.scrollTop;
        dd.style.position = 'absolute';
        ddd.scrollTop = tst;
    }  
};


popups.scroll_div_down = function (id) { 
    clearTimeout(popups.timerdown[id]);
    var dsd = document.getElementById(id);
    dsd.scrollTop += popups.scrollsteps[id];
    popups.update_buttons(id);
    popups.timerdown[id] = setTimeout("popups.scroll_div_down('" + id + "')", 10);
}; 

popups.scroll_div_up = function (id) {
    clearTimeout(popups.timerup[id]);
    var dsd = document.getElementById(id);
    dsd.scrollTop -= popups.scrollsteps[id];
    popups.update_buttons(id);
    popups.timerup[id] = setTimeout("popups.scroll_div_up('" + id + "')", 10);
}; 

popups.stop_scroll = function (id) {
    clearTimeout(popups.timerdown[id]);
    clearTimeout(popups.timerup[id]);
};

popups.toggle_contentsize = function (id) {
    var id2 = id + '_ddbox_conts';
    var dd = document.getElementById(id2);
    dd.scrollTop = 0;
    if (!popups.sizetog[id2]) { 
        popups.sizetog[id2] = 1; 
    }
    popups.sizetog[id2] = (3 - popups.sizetog[id2]);
    if (popups.sizetog[id2] === 2) {  
        popups.widthsaved[id2] = dd.style.width;
        popups.heightsaved[id2] = dd.style.height;
        popups.fontsizesaved[id2] = dd.style.fontSize;
        dd.style.fontSize = '0.5em';
        dd.style.width = '1px';
        dd.style.height = '1px';
    } else {
        dd.style.width = popups.widthsaved[id2];
        dd.style.height = popups.heightsaved[id2];
        dd.style.fontSize = popups.fontsizesaved[id2];
    }    
    popups.update_divcontents(id);
};


popups.show_div = function (id, stx, sty) {
    var dd = document.getElementById(id);
    dd.style.display = 'block';
    dd.style.visibility = 'visible';
    if (dd.style.left === '') {
        popups.startx[id] = stx;
        popups.starty[id] = sty;
        popups.newx[id] = stx;
        popups.newy[id] = sty;
        popups.virtx[id] = stx;
        popups.virty[id] = sty;
        dd.style.left = stx + 'px';
        dd.style.top = sty + 'px';
        popups.pintog[id] = 1;
        popups.sizetog[id + '_ddbox_conts'] = 1;
        popups.update_divcontents(id);
    } else {
        popups.newx[id] = parseInt(dd.style.left, 10);
        popups.newy[id] = parseInt(dd.style.top, 10);
    }
    var sx = window.pageXOffset;
    var sx2 = window.innerWidth;
    if (!sx2) { 
        sx = document.body.scrollLeft;
        sx2 = document.body.clientWidth; 
    }
    var sy = window.pageYOffset;
    var sy2 = window.innerHeight;
    if (!sy2) { 
//        sy = document.body.scrollTop;
        sy = document.body.scrollTop ? document.body.scrollTop : document.documentElement.scrollTop;

        sy2 = document.body.clientHeight; 
    }

    if (popups.pintog[id] === 1) {
        if (popups.newy[id] > (sy + sy2)) { 
            popups.newy[id] = (popups.newy[id] - popups.virty[id]) + sy; 
            popups.virty[id] = popups.newy[id]; 
        }
        if (sy > popups.newy[id]) { 
            popups.newy[id] = (sy + (popups.newy[id] - popups.virty[id])); 
            popups.virty[id] = popups.newy[id]; 
        }
        if (popups.newx[id] > (sx + sx2)) { 
            popups.newx[id] = (popups.newx[id] - popups.virtx[id]) + sx; 
            popups.virtx[id] = sx; 
        }
        if (sx > popups.newx[id]) { 
            popups.newy[id] = (sx + (popups.newx[id] - popups.virtx[id])); 
            popups.virtx[id] = sx; 
        }
        dd.style.left = popups.newx[id] + 'px';
        dd.style.top = popups.newy[id] + 'px';
    }
};

popups.hide_div = function (id) {
    var dd = document.getElementById(id);
    dd.style.display = 'none';
    dd.style.visibility = 'hidden';
};

/*
pjs.fadein_tt = function (did, opl,rate) {
    var dtt = document.getElementById(did);
    opl += rate;
    if (opl > 100) { 
        opl = 100; 
    }
    dtt.style.opacity = (opl / 100);
    dtt.style.filter = 'alpha(opacity = '+opl+')';
    if (opl < 100) {
        var tst = 'pjs.fadein_tt(\'' + did + '\', ' + opl + ', ' + rate + ')';
        setTimeout(tst, 1);
    }           
}

pjs.fadeout_tt = function (did, opl,rate) {
    var dtt = document.getElementById(did);
    opl -= rate;
    if (opl < 0) { 
        opl = 0; 
    }
    dtt.style.opacity = (opl / 100);
    dtt.style.filter = 'alpha(opacity = '+opl+')';
    if (opl > 0) {
        var tst = 'pjs.fadeout_tt(\'' + did + '\', ' + opl + ', ' + rate + ')';
        setTimeout(tst, 1);
    } else {
        dtt.style.visibility = 'hidden';
    }    
}

pjs.show_tooltip = function (dtr) {
    hide_tooltip = function () {
        if (dtr.addEventListener) {
            dtr.removeEventListener("mouseout",hide_tooltip,false);
            dtr.removeEventListener("click",hide_tooltip,false);
        } else {
            dtr.detachEvent("onmouseout",hide_tooltip);
            dtr.detachEvent("onclick",hide_tooltip);
        }
        pjs.fadeout_tt(id2, 100, 5);
    }
    var id = dtr.id;
    var id2 = id + '_tt';
    var dtt = document.getElementById(id2);
    if (dtt) {
        var tsx = dtt.scrollWidth;
        var tcx = dtt.clientWidth;
        if (tcx < 10) { 
            dtt.style.width = tsx + 'px'; 
        }
        dtt.style.opacity = 1;
        dtt.style.visibility = 'visible';
        pjs.fadein_tt(id2, 0, 5);
        if (dtr.addEventListener) {
            dtr.addEventListener("mouseout",hide_tooltip,false);
            dtr.addEventListener("click",hide_tooltip,false);
        } else {
            dtr.attachEvent("onmouseout",hide_tooltip);
            dtr.attachEvent("onclick",hide_tooltip);
        }
    }
}
*/

popups.replace_btext = function (tstr) {
    var tname, re;
    for (var i in btext) {
        tname = '{' + i.toUpperCase() + '}';
        re = new RegExp(tname, 'g');
        tstr = tstr.replace(re, btext[i]);
    }
    return tstr;
};

popups.draw_javadata = function (fileurl, id) {
    if ((popups.xmlobj.readyState === 4) && (popups.xmlobj.status === 200)) { 
        popups.filesloaded[fileurl] = 1;
        var dd3 = document.getElementById(id + '_ddbox_conts');
        var tstr = popups.xmlobj.responseText;
        if (id === 'id_popupvidholder') {
            tstr = popups.replace_btext(tstr);
        }
        dd3.innerHTML = tstr;
        popups.update_divcontents(id);        
        return true;
    } else { 
        return false; 
    }
};

popups.load_javadata = function (fileurl, id) {
    if (!popups.filesloaded[fileurl]) {
        popups.xmlobj = null;
        if (window.XMLHttpRequest) { 
            popups.xmlobj = new XMLHttpRequest();
        } else if (window.ActiveXObject) { 
            popups.xmlobj = new ActiveXObject('Microsoft.xmlobj'); 
        }
        if (popups.xmlobj) {
            popups.xmlobj.open("GET", fileurl, false);
            popups.xmlobj.send(null);
//            popups.xmlobj.onreadystatechange = popups.draw_javadata(fileurl, id);
            return popups.draw_javadata(fileurl, id);
        }
    } else {
        return true;
    }
};

popups.draw_javadata_basic = function (fileurl, id) {
    if ((popups.xmlobj.readyState === 4) && (popups.xmlobj.status === 200)) { 
//    alert(id);
        var dd3 = document.getElementById(id);
        var tstr = popups.xmlobj.responseText;

        if (typeof(basic_replace) != "undefined") {
           for (var tvkey in basic_replace) {
              if (basic_replace.hasOwnProperty(tvkey)) {
//               alert(tvkey + ' -- ' + tvbasic_replace[tvkey]);
               tstr = tstr.replace(tvkey, basic_replace[tvkey]);
              }
           }           
        }

//        alert(tstr);
        dd3.innerHTML = tstr;
//        popups.update_divcontents(id);        
//alert('done');
        return true;
    } else { 
        return false; 
    }
};

popups.load_javadata_basic = function (fileurl, id) {
//alert(fileurl);
        popups.xmlobj = null;
        if (window.XMLHttpRequest) { 
            popups.xmlobj = new XMLHttpRequest();
        } else if (window.ActiveXObject) { 
            popups.xmlobj = new ActiveXObject('Microsoft.xmlobj'); 
        }
        if (popups.xmlobj) {
            popups.xmlobj.open("GET", fileurl, false);
            popups.xmlobj.send(null);
//            popups.xmlobj.onreadystatechange = popups.draw_javadata_basic(fileurl, id);
            return popups.draw_javadata_basic(fileurl, id);
        }
};

popups.turnoff_dragging = function () {
    popups.dragging = false;
};

popups.load_jscssfile = function (filename, filetype) {
    var fileref;
    if (filetype === "js") { //if filename is a external JavaScript file
        filename = parl.javaurl + filename;
        fileref = document.createElement('script');
        fileref.setAttribute("type", "text/javascript");
        fileref.setAttribute("src", filename);
    } else if (filetype === "css") { //if filename is an external CSS file
        filename = parl.javaurl + filename;
        fileref = document.createElement("link");
        fileref.setAttribute("rel", "stylesheet");
        fileref.setAttribute("type", "text/css");
        fileref.setAttribute("href", filename);
    }
    if (typeof fileref !== "undefined") {
        document.getElementsByTagName("head")[0].appendChild(fileref);
    }
};

popups.show_vidindexlowerdiv_pu = function (divnum) {
    var tname1, tname2;
    for (var i = 0; i < 6; i++) {
        tname1 = 'id_vidindexlowersubdivpu' + i;
        tname2 = 'id_vidindextabpu' + i;
        document.getElementById(tname1).style.display = 'none';
        document.getElementById(tname2).className = 'indextabpu1';
    }
    tname1 = 'id_vidindexlowersubdivpu' + divnum;
    tname2 = 'id_vidindextabpu' + divnum;
    document.getElementById(tname1).style.display = 'block';
    document.getElementById(tname2).className = 'indextabpu2';
};

popups.show_popupmovie = function (mnum) {
    var dob = document.getElementById('id_popvidplayer');
    var width2, height2;
    if (vidindex[mnum]) {
        var vid = vidindex[mnum];
        var flashplayer = parl.vidsurl + 'player_flv_maxi.swf';
        var flashurl = parl.vidsurl + vid['subpath'] + '/' + vid['xml'];
        var height1 = vid['height'];
        var width1 = vid['width'];
        if (vid['height2']) { 
            height2 = vid['height2'];
        } else {
            height2 = height1;
        }    
        if (vid['width2']) {
            width2 = vid['width2'];
        } else {
            width2 = width1;
        }
       
        var vidstr1 = '<object id="popupplayer" type="application/x-shockwave-flash" data="' + flashplayer + '" width="' + width2 + '" height="' + height2 + '">';
        vidstr1 += '<param name="movie" value="' + flashplayer + '" />';
        vidstr1 += '<param name="allowFullScreen" value="true" />';
        vidstr1 += '<param name="wmode" value="transparent" />';
        vidstr1 += '<param id="flashvars" name="FlashVars" value="configxml=' + flashurl + '" />';
        vidstr1 += '</object>';

        document.getElementById('id_popvidplayertitle').innerHTML = vid['title'];
        dob.innerHTML = vidstr1;
        dob.style.height = height2 + 'px';
        dob.style.width = width2 + 'px';
        popups.show_vidindexlowerdiv_pu(5);
    }
};

popups.load_javadata_popupcinema = function (id) {
    popups.load_javadata(parl.vidsurl + 'vidspopupbox.html', id);
};


popups.load_popupvids = function () {
    if (popups.popupvidloaded === 0) {
        popups.load_jscssfile("vidindex.js", "js");
    }
    var tname;
    if (btext['popupvideo']) {
        tname = btext['popupvideo'];
    } else {
        tname = 'Popup Video';
    }
    popups.load_divsource('id_popupvidholder', tname); 
    popups.show_div('id_popupvidholder', 250, 180); 
    popups.load_javadata_popupcinema('id_popupvidholder');
    if (popups.popupvidloaded === 0) {
        popups.show_vidindexlowerdiv_pu(0);
    }
    popups.popupvidloaded = 1;
};

popups.load_javadata_helpmenu = function (id, otherid) {
    var didit;
    if (!reslogid) {
       var reslogid = '';
    }
    if (otherid) {
        reslogid = otherid;
    }
    didit = popups.load_javadata(parl.helpurl + 'help.' + reslogid + '.' + jslng1 + '.html', id);
    if (!didit) {
        didit = popups.load_javadata(parl.helpurl + 'help.' + reslogid + '.eng.html', id);
    }
    if (typeof (helpfileid) !== 'undefined') {
        if (!didit) {
            didit = popups.load_javadata(parl.helpurl + 'help.' + helpfileid + '.' + jslng1 + '.html', id);
        }
        if (!didit) {
            didit = popups.load_javadata(parl.helpurl + 'help.' + helpfileid + '.eng.html', id);
        }
    }
    if (!didit) {
        didit = popups.load_javadata(parl.helpurl + 'help.basetext.' + jslng1 + '.html', id);
    }
    if (!didit) {
        didit = popups.load_javadata(parl.helpurl + 'help.basetext.eng.html', id);
    }
};


