document.write("<style> ");
document.write(".dragme { position:absolute;left:-2000;top:-2000;overflow:auto;overflow:hidden; } ");
document.write(".dragmetitle { cursor:pointer;cursor:move;  } ");
document.write(".dragmetitledisable {  } ");
document.write(".dragmecontent { background:white;  } ");
document.write(".dragmemodal { position:absolute;top:0;left:0;width:100%;height:100%;background:white; -kthml-opacity: 0.6;");
document.write("               filter:alpha(opacity=60);-moz-opacity: 0.6; } ");
document.write(".dragmeborder { border-left:1px solid white;border-top:1px solid white;border-bottom:1px solid gray;border-right:1px solid gray; }");
document.write(".dragmeinback { position:absolute;left:-2000;top:-2000; } ");
document.write(".dragmeinfront { position:relative;  } ");
document.write("</style>");

var dragobjmove = false;
var dargobjzindex = 1;
var dragobjx,dragobjy;
var dragobj;

var venteside_progressEnd = 10;
var venteside_progressAt = venteside_progressEnd;
var venteside_progressTimer;

function venteside_progress_clear() {
    for (var i = 1; i <= venteside_progressEnd; i++)
        document.getElementById("progress"+i).style.backgroundColor = "navy";
    venteside_progressAt = 0;
}

function venteside_progress_update() {
    venteside_progressAt++;
    if (venteside_progressAt > venteside_progressEnd)
        venteside_progress_clear();
    else
        document.getElementById("progress"+venteside_progressAt).style.backgroundColor = "green";
    venteside_progressTimer = setTimeout("venteside_progress_update()",100);
}

function venteside_progress_stop() {
    clearTimeout(venteside_progressTimer);
    venteside_progress_clear();
}

var process_end = new Array();
var process_at = new Array();
var process_timer = new Array();

function hentProcess(nr) {
    process_end[nr] = 10;
    process_at[nr] = process_end[nr];
    clearTimeout(process_timer[nr]);
    var txt = "<table><tr>";
    for (var i = 1; i <= process_end[nr]; i++)
        txt += "<td style='background:navy;' id='"+nr+"progress"+i+"'>&nbsp;&nbsp;</td>";
    return txt += "</tr></table>";
}

function rensProcess(nr) {
    for (var i = 1; i <= process_end[nr]; i++)
        document.getElementById(nr+"progress"+i).style.backgroundColor = "red";
    process_at[nr] = 0;
}

function startProcess(nr) {
    process_at[nr]++;
    if (process_at[nr] > process_end[nr])
        rensProcess(nr);
    else
        document.getElementById(nr+"progress"+process_at[nr]).style.backgroundColor = "green";
    process_timer[nr] = setTimeout("startProcess("+nr+")",100);

}

function stopProcess(nr) {
    clearTimeout(process_timer[nr]);
    rensProcess(nr);
}

function venteSide(vis) {
    if (vis != true && vis != false) {
        var txt = "<table><tr>";
        for (var i = 1; i <= venteside_progressEnd; i++)
            txt += "<td style='background:navy;' id='progress"+i+"'>&nbsp;&nbsp;</td>";
        return txt += "</tr></table>";
    }
    if (vis == false) {
        venteside_progress_stop()

    }
    if (vis == true) {
        venteside_progress_stop()
        venteside_progress_update()
    }
}

function dragMouseUp() {
    dragobjmove = false
}

function dragMouseDown(e) {
    var nn6 = document.getElementById && !document.all;
    var fobj       = nn6 ? e.target : event.srcElement;
    var topelement = nn6 ? "HTML" : "BODY";
    var fobjclass = fobj.className

    while (fobj.tagName != topelement && fobj.className != "dragme") {
        fobj = nn6 ? fobj.parentNode : fobj.parentElement;
    }
    if (fobj.className=="dragme") {
        dragobj = fobj;
        dragobj.style.zIndex = dargobjzindex;
        dargobjzindex++;
        dragFocusTitle();
        if (fobjclass != "dragmetitle") return;

        dragobjmove = true;

        tx = parseInt(dragobj.style.left+0);
        ty = parseInt(dragobj.style.top+0);
        dragobjx = nn6 ? e.clientX : event.clientX;
        dragobjy = nn6 ? e.clientY : event.clientY;
        document.onmousemove=dragMouseMove;
        return false;
    }
}

function dragMouseMove(e) {
    var nn6 = document.getElementById && !document.all;
    if (dragobjmove) {
        dragobj.style.left = nn6 ? tx + e.clientX - dragobjx : tx + event.clientX - dragobjx;
        dragobj.style.top  = nn6 ? ty + e.clientY - dragobjy : ty + event.clientY - dragobjy;
        return false;
    }
}

function dragCreateWin(winTitle,winWidth,winHeight,divName,divParent,canMove,showModal,inBack) {
    if (document.getElementById("dragme" + String(divName))) {
        if (document.getElementById("dragme" + String(divName)).className == "dragme") {
            document.getElementById("dragme" + String(divName)).style.zIndex = dargobjzindex;
            dargobjzindex++;
        }
    }
    else {
        if (showModal) dragCreateModal(divParent);
        var content = ""; var txt = ""; var klasse = (canMove) ? "dragmetitle" : "dragmetitledisable";
        var newdiv = document.createElement("div");
        newdiv.id = "dragme" + String(divName);
        if (winWidth > 0) newdiv.style.width = winWidth;
        if (winHeight > 0) newdiv.style.height = winHeight;
        if (inBack) {
            newdiv.className = "dragmeinback";
            newdiv.style.zIndex = 0;
        }
        else {
            newdiv.className = "dragme";
            newdiv.style.zIndex = dargobjzindex;
            dargobjzindex++;
        }
        if (divParent != "" && document.getElementById(divParent)) {
            document.getElementById(divParent).appendChild(newdiv);
        }
        else {
            document.body.appendChild(newdiv);
        }
        if (document.getElementById(divName)) {
            content = document.getElementById(divName).innerHTML;
        }
        else {
            content = "<div id='"+divName+"'>div:"+divName+"</div>";
        }
/*

        txt += "<table cellspacing='0' cellpadding='0' class='dragmeborder'><tr><td>"
        txt += "<table class='dragmeborder' width='"+winWidth+"' height='"+winHeight+"'>";
        txt += "<tr><td class='"+klasse+"'>"+   winTitle+"</td></tr>";
        txt += "<tr><td class='dragmecontent'>"+content+"</td></tr>";
        txt += "</table>";
        txt += "</td></tr></table>";
*/
        txt += "<table cellspacing='0' cellpadding='0' width='"+winWidth+"' height='"+winHeight+"'>";
        txt += "<tr><td class='komp_box_top_v'></td><td class='komp_box_top_c'>";

        txt += "<table cellspacing='0' cellpadding='0' width='100%'><tr>";
        txt += "<td><div class='komp_box_billed'></div></td>";
        txt += "<td width='100%' class='"+klasse+"'>"+winTitle+"</td>";
        txt += "</tr></table>";
        
        txt += "</td><td class='komp_box_top_h'></td></tr>";
        txt += "<tr><td class='komp_box_center_v'></td><td valign='top' style='background:white;'>";
        txt += content;
        txt += "</td><td class='komp_box_center_h'></td></tr>";
        txt += "<tr><td class='komp_box_bund_v'></td>";
        txt += "<td class='komp_box_bund_c'></td>";
        txt += "<td class='komp_box_bund_h'></td></tr>";
        txt += "</table>";
        document.getElementById("dragme" + String(divName)).innerHTML = txt;
    }
    dragFocusTitle();
}

function dragButton(inputtype,klasse,navn,vaerdi,klik,hjaelp,aktiv) {
    var txt = "";  var attr = " class='"+klasse+"' id='"+navn+"' name='"+navn+"'  ";
    if (aktiv) {
        attr += " onmouseover='if (document.getElementById(\"komp_tooltip\")) ";
        attr += " document.getElementById(\"komp_tooltip\").innerHTML = \""+hjaelp+"\"; "
        attr += " this.className=\""+klasse+"_aktiv\";' ";
        attr += " onmouseout='if (document.getElementById(\"komp_tooltip\")) ";
        attr += " document.getElementById(\"komp_tooltip\").innerHTML = \"\"; "
        attr += " this.className=\""+klasse+"\";' ";
        attr += " onclick='this.blur();this.className=\""+klasse+"\";"+klik;
        attr += " if (parent.document.getElementById(\"komp_tooltip\")) ";
        attr += " parent.document.getElementById(\"komp_tooltip\").innerHTML = \"\"; '";
        txt += "<input type='"+inputtype+"' value='"+vaerdi+"' "+attr+">"
    }
    else {
        txt += "<table id='"+navn+"' class='"+klasse+"_passiv' cellspacing='0' cellpadding='0'><tr>";
        txt += "<td>"+vaerdi+"</td></tr></table>";
    }
    return txt;
}

function dragButtonPanel(knapper) {
    var txt = "<table cellspacing='0' cellpadding='0'><tr>";
    for (var i = 0; i < knapper.length; i++) {
        txt += "<td>&nbsp;</td><td class='komp_knappanel'>"+knapper[i]+"</td>"
    }
    return txt += "</tr></table>";
}

function dragDialog(theImage,theText,theButton) {
    var txt = "<table>";
    txt += "<tr><td height='30'><img src='"+theImage+"'></td><td style='white-space:nowrap;'>"+theText+"</td></tr>";
    if (theButton != "") txt += "<tr><td colspan='2' align='right'>"+theButton+"</td></tr>";
    return txt += "</table>";
}

function dragDestroyWin(divName) {
    if (document.getElementById("dragme" + String(divName))) {
        var olddiv = document.getElementById("dragme" + String(divName));
        var nn6 = document.getElementById && !document.all;
        var divParent = nn6 ? olddiv.parentNode : olddiv.parentElement;
        divParent.removeChild(olddiv);
        dragDestroyModal();
        dragFocusTitle();
    }
}

function dragDisableInput() {
    var gTabbableTags = new Array("A","BUTTON","TEXTAREA","INPUT","IFRAME");
	var i = 0;
	for (var j = 0; j < gTabbableTags.length; j++) {
		var tagElements = document.getElementsByTagName(gTabbableTags[j]);
		for (var k = 0 ; k < tagElements.length; k++) {
			tagElements[k].disabled = true;
			i++;
		}
	}
	var tagElements = document.getElementsByTagName("SELECT");
	for (var k = 0 ; k < tagElements.length; k++) {
		tagElements[k].style.display = "none";
	}
}

function dragEnableInput() {
	var tagElements = document.getElementsByTagName("SELECT");
	for (var k = 0 ; k < tagElements.length; k++) {
		tagElements[k].style.display = "block";
	}
    var gTabbableTags = new Array("A","BUTTON","TEXTAREA","INPUT","IFRAME");
	var i = 0;
	for (var j = 0; j < gTabbableTags.length; j++) {
		var tagElements = document.getElementsByTagName(gTabbableTags[j]);
		for (var k = 0 ; k < tagElements.length; k++) {
			tagElements[k].disabled = false;
			i++;
		}
	}
}

function dragCreateModal(divParent) {
    dragDisableInput();
    var newdiv = document.createElement("div");
    newdiv.id = "dragmemodal";
    newdiv.className = "dragmemodal";
    newdiv.style.zIndex = dargobjzindex;
    dargobjzindex++;
    if (divParent != "" && document.getElementById(divParent)) {
        document.getElementById(divParent).appendChild(newdiv);
    }
    else {
        document.body.appendChild(newdiv);
    }
}

function dragDestroyModal() {
    if (document.getElementById("dragmemodal")) {
        var newdiv = document.getElementById("dragmemodal");
        var nn6 = document.getElementById && !document.all;
        var divParent = nn6 ? newdiv.parentNode : newdiv.parentElement;
        divParent.removeChild(newdiv);
        dragEnableInput();
    }
}

function dragFocusTitle() {
    var aktuelxindex = 0;
/*
    var x = document.getElementsByTagName("div");
    for (var i = 0; i < x.length; i++) {
        if (x[i].className=="dragme" || x[i].className=="dragmeinback") {
            x[i].style.background = "darkcyan";
            if (aktuelxindex < x[i].style.zIndex) {
                aktuelxindex = x[i].style.zIndex;
            }
        }
    }
    var x = document.getElementsByTagName("div");
    for (var i = 0; i < x.length; i++) {
        if (x[i].className=="dragme"  || x[i].className=="dragmeinback") {
            if (x[i].style.zIndex == aktuelxindex) {
                x[i].style.background = "white";
            }
        }
    }
*/
    var x = document.getElementsByTagName("div");
    for (var i = 0; i < x.length; i++) {
        if (x[i].className=="dragmeinfront") {
            x[i].style.zIndex = dargobjzindex + 1;
        }
    }
}

function dragCenterWin(divName,ypos) {
    if (document.getElementById("dragme" + String(divName))) {
        var olddiv = document.getElementById("dragme" + String(divName));
        var nn6 = document.getElementById && !document.all;
        var divParent = nn6 ? olddiv.parentNode : olddiv.parentElement;
        var totalwidth = parseInt(parseFloat(divParent.offsetWidth));
        var totalheight = parseInt(parseFloat(divParent.offsetHeight));
        var divwidth = parseInt(parseFloat(olddiv.offsetWidth));
        var divheight = parseInt(parseFloat(olddiv.offsetHeight));
        olddiv.style.left = ((totalwidth/2)-(divwidth/2) - 10);
        if (ypos > 0) {
            olddiv.style.top = ypos;
        }
        else {
            olddiv.style.top = (totalheight/2)-(divheight/2) - 150;
        }
        dragFocusTitle();
    }
}

function dragWriteWin(divName,txt) {
    if (document.getElementById("dragme" + String(divName))) {
        if (document.getElementById(String(divName))) {
            var olddiv = document.getElementById(String(divName));
            olddiv.innerHTML = txt;
        }
    }
}

function alertWin(tekst,fokuselm,ypos,selectelm) {
    var knapper = new Array();
    var klikattr = (fokuselm!= "") ? " parent.document.getElementById(\""+fokuselm+"\").focus(); " : "";
    if (klikattr != "" && selectelm) klikattr += " parent.document.getElementById(\""+fokuselm+"\").select(); "
    knapper[0] = dragButton("button","komp_knap","alertwinok","Ok","dragDestroyWin(\"alertwin\");"+klikattr,"",true)
    dragCreateWin("Fejl",0,0,"alertwin","skrivebord",false,true)
    dragWriteWin("alertwin",dragDialog("billeder/adv.gif",tekst,dragButtonPanel(knapper)));
    dragCenterWin("alertwin",ypos);
    parent.document.getElementById("alertwinok").focus(); return false;
}

function confirmWin(tekst,jaklik,nejklik,ypos) {
    var knapper = new Array();
    knapper[0] = dragButton("button","komp_knap","confirmwinja","Ja","dragDestroyWin(\"confirmwin\");"+jaklik,"",true)
    knapper[1] = dragButton("button","komp_knap","confirmwinnej","Nej","dragDestroyWin(\"confirmwin\");"+nejklik,"",true)
    dragCreateWin("Bekræft",0,0,"confirmwin","skrivebord",false,true)
    dragWriteWin("confirmwin",dragDialog("billeder/spo.gif",tekst,dragButtonPanel(knapper)));
    dragCenterWin("confirmwin",ypos);
    parent.document.getElementById("confirmwinnej").focus(); return false;
}


function waitWin(vis,ypos) {
    if (vis) {
        dragCreateWin("Systemet&nbsp;arbejder",0,0,"waitwin","skrivebord",false,true)
        dragWriteWin("waitwin",dragDialog("billeder/load.gif",venteSide(),""));
        dragCenterWin("waitwin",ypos);
        venteSide(true);
    }
    else {
        venteSide(false);
        dragDestroyWin("waitwin");
    }

}

document.onmousedown=dragMouseDown;
document.onmouseup=dragMouseUp;


