
function ufHideLayer( id ) {
	if (document.layers)
		// --Kommando som IE 4+ förstår
		document.layers[id].visibility = "hide";
	else if (document.all) 
		// --Kommando som NN 4+ men inte NN6 förstår
		document.all[id].style.visibility = "hidden";
	else
		// --Kommando som NN6 förstår
		document.getElementById(id).style.visibility = "hidden";
}

	
function ufShowLayer( id ) {
	if (document.layers)
		// --Kommando som IE 4+ förstår
    //var textLayer = document.layers.layers[id]; //
    //textLayer.left = window.innerWidth - textLayer.clip.width - 16; //
		document.layers[id].visibility = "show";	
	else if (document.all)
		// --Kommando som NN 4+ men inte NN6 förstår
		document.all[id].style.visibility = "visible";
	else
		// --Kommando som NN6 förstår
		document.getElementById(id).style.visibility = "visible";
}


function printform() {
    window.print();
    return false;
}


function validhour(element)
{
	var gField = element;
	var at = gField.value;
	var timme = parseInt(at,10)
	if (isNaN(timme)) {
		timme = 0;
	}
	if (timme > 24) {
		timme = 24;
	}
	if (timme < 0) {
	    timme = 0;
	}
	gField.value = hourcheck(timme);
	return gField.value;	
}


function screensize(element)
{	
    var x,y;
    if (self.innerHeight) // all except Explorer
    {
    	x = self.innerWidth;
    	y = self.innerHeight;
    }
    else if (document.documentElement && document.documentElement.clientHeight) // Explorer 6 Strict Mode
    {
    	x = document.documentElement.clientWidth;
    	y = document.documentElement.clientHeight;
    }
    else if (document.body) // other Explorers
    {
    	x = document.body.clientWidth;
    	y = document.body.clientHeight;
    }
	element.value = x;
	return true;
}


function validdatum(form,adjField,days)
{
	var gField = form;
	var at = gField.value;
	var myDate = new Date();
	
	var dd;
	var mm;
	var yyyy;
	
	var ok = true;
	var fel = 0;
	var faltFel;
	var faltMedd;
	
	if (at.indexOf("-") != -1 && at.indexOf("-") == at.lastIndexOf("-")) {
		fel = 1;
	}
	else if (at.indexOf("-") == -1 && (at.length != 6 && at.length != 8)) {
		fel = 1;
	}
	else if (at.indexOf("-") == -1 && at.length == 6) {
		dd = parseInt(at.substring(4,6),10)
		mm = parseInt(at.substring(2,4),10)
		yyyy = parseInt(at.substring(0,2),10)
		if (isNaN(mm) || isNaN(dd) || isNaN(yyyy)) {
			fel = 1;
		}
		if (mm > 12) {
			fel = 2;
		}
		if (dd > 31) {
			fel = 3;
		}					
		if (yyyy >= 80) {
			yyyy += 1900
		}
		else {
			yyyy += 2000
		}
		if (!checkMonthLength(mm,dd)) {
			fel = 3;
		}
		if (mm == 2) {
			if (!checkLeapMonth(mm,dd,yyyy)) {
				//gField.focus()
				//gField.select()
				//return false;
				fel = 3;
			}
		}
	}
	else if (at.indexOf("-") == -1 && at.length == 8) {
		dd = parseInt(at.substring(6,8),10)
		yyyy = parseInt(at.substring(0,4),10)
		mm = parseInt(at.substring(4,6),10)
		if (isNaN(mm) || isNaN(dd) || isNaN(yyyy)) {
			fel = 1;
		}
		if (mm > 12) {
			fel = 2;
		}
		if (dd > 31) {
			fel = 3;
		}					
		if (!checkMonthLength(mm,dd)) {
			fel = 3;
		}
		if (mm == 2) {
			if (!checkLeapMonth(mm,dd,yyyy)) {
				fel = 3;
			}
		}			
	}		
	else if (at.indexOf("-") != -1 && at.indexOf("-") != at.lastIndexOf("-")) {
		if (at.length < 8 || at.length > 10) {
			fel = 1;
		}
		else {
			if (at.length == 8) {
				dd = parseInt(at.substring(6,8),10)
				yyyy = parseInt(at.substring(0,2),10)
				mm = parseInt(at.substring(3,5),10)
				if (isNaN(mm) || isNaN(dd) || isNaN(yyyy)) {
					fel = 1;
				}
				if (dd > 31) {
					fel = 3;
				}
				checkMonthLength(mm,dd)
				if (yyyy >= 80) {
					yyyy +=1900;
				}
				else {
					yyyy +=2000;
				}
				if (!checkMonthLength(mm,dd)) {
					fel = 3;
				}
				if (mm == 2) {
					if (!checkLeapMonth(mm,dd,yyyy))
					{
						fel = 3;
					}
				}
			}
			else {
				dd = parseInt(at.substring(8,10),10)
				yyyy = parseInt(at.substring(0,4),10)
				mm = parseInt(at.substring(5,7),10)
				if (isNaN(mm) || isNaN(dd) || isNaN(yyyy)) {
					fel = 1;
				}
				if (mm > 12) {
					fel = 2;
				}
				if (dd > 31) {
					fel = 3;
				}
				if (!checkMonthLength(mm,dd)) {
					fel = 3;
				}
				if (mm == 2) {
					if (!checkLeapMonth(mm,dd,yyyy)) {
						fel = 3;
					}
				}
			}
		}
	}
	
	// kolla antFel
    var antFel = 0;
    if (document.getElementById("antFel")) {
        antFel = document.getElementById("antFel").innerHTML;
        if (parseInt(antFel)) {
            antFel = parseInt(antFel);
        }
        else {
            antFel = 0;
        }
    }
	
    //visas fel för det aktuella fältet redan
    var vis = true;
	faltFel = "err" + gField.id
    if (document.getElementById(faltFel)) {
	    if (document.getElementById(faltFel).style.display == "none") {
	        vis = false;
	    }
	}
	// visa inga fel för det aktuella fältet
    for (i=1; i<4; i++) {
        faltMedd = "err" + gField.id + "Medd" + i;
	    if (document.getElementById(faltMedd)) {
	        document.getElementById(faltMedd).style.display = "none";
	    }
    }
	faltFel = "err" + gField.id
	faltMedd = "err" + gField.id + "Medd" + fel
	if (fel) {
	    if (document.getElementById(faltFel)) {
	        document.getElementById(faltFel).style.display = "inline";
	    }
	    if (document.getElementById(faltMedd)) {
	        document.getElementById(faltMedd).style.display = "list-item";
	    }
        if (document.getElementById("Resultat")) {
            document.getElementById("Resultat").style.display="block"
            document.getElementById("Resultat").style.borderColor="Red"
        }
        if (document.getElementById("Infomedd")) {
            document.getElementById("Infomedd").style.display="block"
        }
        if (document.getElementById("Atgard")) {
            document.getElementById("Atgard").style.display="block"
        }
	    if (!vis) {
            if (document.getElementById("antFel")) {
                antFel++;
                //antFel = 1;
                document.getElementById("antFel").innerHTML = antFel;
            }
        }
		gField.focus();
		gField.select();
		return false;
	}
	else {
	    if (document.getElementById(faltFel)) {
	        document.getElementById(faltFel).style.display = "none";
	    }
	    if (vis) {
            if (document.getElementById("antFel")) {
                antFel--;
                document.getElementById("antFel").innerHTML = antFel;
            }
        }
		gField.value = yyyy + "-" + monthDayFormat(mm) + "-" + monthDayFormat(dd);
		if ((adjField) && (days)) {
    	    myDate.setFullYear(yyyy, mm-1, dd);
            myDate.setDate(myDate.getDate()+days);
	        aField = adjField;
	        aField.value = myDate.getFullYear() + "-" + monthDayFormat(myDate.getMonth()+1) + "-" + monthDayFormat(myDate.getDate())
            //visas felet redan
            vis = true;
	        faltFel = "err" + adjField.id
            if (document.getElementById(faltFel)) {
	            if (document.getElementById(faltFel).style.display == "none") {
	                vis = false;
	            }
	        }
	        if (vis) {
                if (document.getElementById("antFel")) {
                    antFel--;
                    document.getElementById("antFel").innerHTML = antFel;
                }
            }
	        // visa inga fel för det aktuella fältet
	        if (document.getElementById(faltFel)) {
	            document.getElementById(faltFel).style.display = "none";
	        }
            for (i=1; i<4; i++) {
                faltMedd = "err" + adjField.id + "Medd" + i;
	            if (document.getElementById(faltMedd)) {
	                document.getElementById(faltMedd).style.display = "none";
	            }
            }
		}
        if (antFel < 0) {
            antFel = 0;
        }
        if (antFel == 0) {
            if (document.getElementById("Resultat")) {
                document.getElementById("Resultat").style.display="none"
            }
        }
		return gField.value;
	}
	
}



function monthDayFormat(val)
{
	if (isNaN(val) || val == 0) {
		return "01"
	}
	else if (val < 10) {
		return "0" + val
	}
	return "" + val
}


function hourcheck(val)
{
	if (isNaN(val) || val == 0) {
		return "00"
	}
	else if (val < 10) {
		return "0" + val
	}
	return "" + val
}


function checkMonthLength(mm,dd)
{
	if ((mm == 4 || mm == 6 || mm == 9 || mm == 11) && dd > 30) {
		return false
	}
	else if (dd > 31) {
		return false
	}
	return true
}


// check the entered February date for too high a value 
function checkLeapMonth(mm,dd,yyyy)
{
	if (yyyy % 4 > 0 && dd > 28) {
		return false
	}
	else if (dd > 29) {
		return false
	}
	return true
}


function popupstor(lank,bredd,hojd,rubrik)
{	
	//Detta är en generell funktion för att ladda ett popup-fönster, 
	//lank är en sträng innehållande länken som skall laddas
	//bredd och hojd är width och height som fönstret skall ha
	//rubrik är rubriken som fönstret skall ha
	self.open(lank,rubrik,"width="+bredd+",height="+hojd+",scrollbars=yes,resizable=yes,left=0,top=0")
	return false;
}


function utskrift(lank,bredd,hojd,rubrik)
{	
	//Detta är en generell funktion för att ladda ett popup-fönster, 
	//lank är en sträng innehållande länken som skall laddas
	//bredd och hojd är width och height som fönstret skall ha
	//rubrik är rubriken som fönstret skall ha
	self.open(lank,rubrik,"width="+bredd+",height="+hojd+",toolbar=yes,scrollbars=yes,resizable=no,left=0,top=0")
	return false;
}


function loadKundSoek()
{	
	window.resizeTo(650,450)
}


function setclient(kod)
{
	link = "default.asp?fri=30&try=2&kod="+kod
	location.href = link
	window.resizeTo(350,400)
	return false;
}


function objekturval()
{	
	link="default.asp?fri=7";
	window.open(link,"Bokning","width=530,height=500,scrollbars=yes,resizable=yes,left=0,top=0");window.opener=self;
}


function loadparent()
{
	opener.close(true);
	self.location.reload(true);	
}


// validering av inskriven tid
function validateTimeInput(element)
{
	var hh
	var mm
	var summa
	var ok = true;
	
	var falt = element.id;
	var faltFel = "err" + falt
	var faltMedd = "err" + falt + "Medd"
	var at = element;
	var gField = trim(element.value);
    var antFel = 0;

    if (document.getElementById("antFel")) {
        antFel = document.getElementById("antFel").innerHTML;
        if (parseInt(antFel)) {
            antFel = parseInt(antFel);
        }
        else {
            antFel = 0;
        }
    }
	
	if (isEmpty(gField.replace(":", ""))) {
	    hh = "00";
	    mm = "00";
	}
	else {
	    gField = gField.replace(".", ":")
	    gField = gField.replace(",", ":")
	    //om längd = 5 och : inte finns med -> fel
	    if (gField.indexOf(":") == -1 && gField.length == 5) {
	        ok = false;
	    }
	
	    if (ok) {
	        // kolla inmatade tecken, endast numeriska tecken samt :
	        var objRegExp  = new RegExp(/(^\d\d*$)/);
	        if (!objRegExp.test(gField.replace(":", ""))) {
	            ok = false;
	        }
	    }
	
	    if (ok) {
	        // finns : med
	        if (gField.indexOf(":") == -1) {
	            //längd
	            if (gField.length == 1 || gField.length == 2) {
	                hh = gField;
	                mm = 0;
	            }
	            else if (gField.length == 3) {
	        	    hh = parseInt(gField.substring(0,1),10);
	        	    mm = parseInt(gField.substring(1),10);
	            }
	            else {
	        	    hh = parseInt(gField.substring(0,2),10);
	        	    mm = parseInt(gField.substring(2),10);
	            }
	        }
	        else {
                if (gField.indexOf(":") == 0) {
                    hh = 0;
                    mm = parseInt(gField.substring(1),10);
                }
                else if (gField.indexOf(":") == 1) {
                    hh = parseInt(gField.substring(0,1),10);
                    mm = parseInt(gField.substring(2),10);
                }
                else if (gField.indexOf(":") == 2) {
                    hh = parseInt(gField.substring(0,2),10);
                    mm = parseInt(gField.substring(3),10);
                }
                else {
                    gField = gField.replace(":", "")
                    hh = parseInt(gField.substring(0,2),10);
                    mm = parseInt(gField.substring(2,2),10);
                }
	        }
	
	        if (isNaN(hh)) {
	            hh = 0;
	        }
	        if (isNaN(mm)) {
	            mm = 0;
	        }
	    }
	
	    if (ok) {
	        if (mm > 59 || hh > 24 || hh < 0 || mm < 0) {
	            ok = false;
	        }
	    }
	    
	    if (ok) {
	        summa = (hh * 12) + (mm / 5)
	        if (summa < 0 || summa > 288) {
	            ok = false;
	        }
	    }
	    
	    if (ok) {
	        if (hh < 10) {
	        	hh = "0" + hh
	        }
	        if (mm < 10) {
	        	mm = mm + "0"
	        }
	    }
	
	}
    //visas felet redan
    var vis = true;
    if (document.getElementById(faltMedd)) {
        if (document.getElementById(faltMedd).style.display == "none") {
            vis = false;
        }
    }
	// tid ok ?
	if (ok) {
	    if (document.getElementById(faltFel)) {
	        document.getElementById(faltFel).style.display="none"
	    }
	    if (document.getElementById(faltMedd)) {
            document.getElementById(faltMedd).style.display="none"
        }
        if (vis) {
            if (document.getElementById("antFel")) {
                antFel--;
                document.getElementById("antFel").innerHTML = antFel;
            }
        
        }
        if (antFel < 0 ) {
            antFel = 0;
        }
        if (antFel == 0) {
            if (document.getElementById("Resultat")) {
                document.getElementById("Resultat").style.display="none"
            }
        }
	    at.value = hh + ":" + mm;
	    return at.value
	}
	else {
	    if (document.getElementById(faltFel)) {
	        document.getElementById(faltFel).style.display="inline"
	    }
	    if (document.getElementById(faltMedd)) {
            document.getElementById(faltMedd).style.display="list-item"
        }
        if (document.getElementById("Resultat")) {
            document.getElementById("Resultat").style.display="block"
            document.getElementById("Resultat").style.borderColor="Red"
        }
        if (document.getElementById("Infomedd")) {
            document.getElementById("Infomedd").style.display="block"
        }
        if (document.getElementById("Atgard")) {
            document.getElementById("Atgard").style.display="block"
        }
        if (!vis) {
            if (document.getElementById("antFel")) {
                antFel++;
                document.getElementById("antFel").innerHTML = antFel;
            }
        }
		at.select();
		at.focus();
		return false
	}
}


function isEmpty(inputStr) {
	if (inputStr == null || inputStr == "") {
	return true
	}
	return false
}


function popup(varde)
{
	link="default.asp?fri=40&str="+varde
	window.open(link,"Meddelande","width=350,height=300,scrollbars=no,resizable=no,left=0,top=0")
	return false;
}


function populateSelect(form,BoknIntervall,AntalBlock,sluttid)
{
	var valdtid = form.starttid.options[form.starttid.options.selectedIndex].value;
	var starttid;
	starttid = parseInt(valdtid / parseInt(BoknIntervall)) * parseInt(BoknIntervall);
	var temp = starttid;
	var tilltid = form.sluttid;
	var i = 0;
	var temptid;
	var resultat;
	var resultat1;
	var resultat2;
	var templength = parseInt(valdtid) + parseInt(BoknIntervall);
	
	while (templength <= parseInt(sluttid) && i < AntalBlock) {
		i++;
		templength = templength + parseInt(BoknIntervall);
	}	
	tilltid.length = i;
	templength = i;
	i = 0;
	var vald = 0;
	while (i < templength) {
		temptid = temp + parseInt(BoknIntervall);
		resultat = temptid / 12;
		resultat2 = (temptid % 12) * 5;
		if (("" + resultat2).length == 1) {
			resultat2 = "0" + resultat2;
		}
		var s = ("" + resultat);
		s = s.indexOf(".")
		if (s != -1) {
			if (s == 1) {
			    var t = ("" + resultat);
			    var j = t.substring(0,1);
			}
			if (s == 2) {
			    var t = ("" + resultat)
			    var j = t.substring(0,2);
			}
			resultat = parseInt(j);	
		}
		if (("" + resultat).length == 1) {
			resultat = "0" + resultat;
		}
		resultat3 = resultat + ":" + resultat2;
		if (temp + parseInt(BoknIntervall) <= parseInt(sluttid)) {
			tilltid.options[i].value = temp + parseInt(BoknIntervall);
			tilltid.options[i].text = resultat3;
			tilltid.selected = 0;
		}
		else {
			tilltid.options[i].value = "";
			tilltid.options[i].text = "";
			if (vald == 0) {
				tilltid.selected = 1;		
				vald = 1;
			}
		}
		temp = temp + parseInt(BoknIntervall);
		i++;
	}
}


function enabledisableCtrl(disVal,disSortDat)
{
    var dis;
    dis = document.getElementById("VisaLediga").checked;
    if (dis == false) {
        dis = true;
    }
    else {
        dis = false
    }
	if (disVal == 0) {
	    document.getElementById("PassStart").disabled = dis
	    document.getElementById("PassSlut").disabled = dis
	    document.getElementById("PassLangd").disabled = dis
	    document.getElementById("VisaLediga").disabled = false
	    document.getElementById("VisaBokade").disabled = false
	}
	else {
	    document.getElementById("PassStart").disabled = true
	    document.getElementById("PassSlut").disabled = true
	    document.getElementById("PassLangd").disabled = true
	    document.getElementById("VisaLediga").disabled = true
	    document.getElementById("VisaBokade").disabled = true
	}

	if (disSortDat == 0) {
	    document.getElementById("Fdat").disabled = false
	    document.getElementById("Tdat").disabled = false
	    document.getElementById("SorteraObjekt").disabled = false
	    document.getElementById("SorteraDatum").disabled = false
	}
	else {
	    document.getElementById("Fdat").disabled = true
	    document.getElementById("Tdat").disabled = true
	    document.getElementById("SorteraObjekt").disabled = true
	    document.getElementById("SorteraDatum").disabled = true
	}
	
}


function enabledisablePass()
{
    var dis;
    dis = document.getElementById("VisaLediga").checked;
    if (dis == false) {
        dis = true;
    }
    else {
        dis = false
    }
	document.getElementById("PassStart").disabled = dis
	document.getElementById("PassSlut").disabled = dis
	document.getElementById("PassLangd").disabled = dis
}


function enabledisableRepeat()
{
    var agt;
    agt=navigator.userAgent.toLowerCase();
    
    if ((agt.indexOf("firefox") != -1) || (agt.indexOf("safari") != -1) || (agt.indexOf("opera") != -1) || (agt.indexOf("chrome") != -1)) {
        document.getElementById("Frekvens").disabled = !document.getElementById("chkUpprepa").checked;
        document.getElementById("radioUrvalDag").disabled = !document.getElementById("chkUpprepa").checked;
        document.getElementById("radioUrvalVecka").disabled = !document.getElementById("chkUpprepa").checked;
        document.getElementById("radioUrvalManad").disabled = !document.getElementById("chkUpprepa").checked;
        if (document.getElementById("chkUpprepa").checked == true) {
            document.getElementById("radioTomdatum").disabled = !document.getElementById("chkUpprepa").checked;
            document.getElementById("radioAntaltillf").disabled = !document.getElementById("chkUpprepa").checked;
            document.getElementById("txtTomdatum").disabled = !document.getElementById("radioTomdatum").checked;
            document.getElementById("txtAntaltillf").disabled = !document.getElementById("radioAntaltillf").checked;
        }
        else {
            document.getElementById("radioTomdatum").disabled = !document.getElementById("chkUpprepa").checked;
            document.getElementById("radioAntaltillf").disabled = !document.getElementById("chkUpprepa").checked;
            document.getElementById("txtTomdatum").disabled = !document.getElementById("chkUpprepa").checked;
            document.getElementById("txtAntaltillf").disabled = !document.getElementById("chkUpprepa").checked;
        }
    }
    else {
	    document.getElementById("divInst").disabled = !document.getElementById("chkUpprepa").checked;
        if (document.getElementById("chkUpprepa").checked == true) {
            document.getElementById("txtTomdatum").disabled = !document.getElementById("radioTomdatum").checked;
            document.getElementById("txtAntaltillf").disabled = !document.getElementById("radioAntaltillf").checked;
        }
        else {
            document.getElementById("txtTomdatum").disabled = !document.getElementById("chkUpprepa").checked;
            document.getElementById("txtAntaltillf").disabled = !document.getElementById("chkUpprepa").checked;
        }
    }
}


function enabledisableDuration()
{
    var agt;
    agt=navigator.userAgent.toLowerCase();
    
    if ((agt.indexOf("firefox") != -1) || (agt.indexOf("safari") != -1) || (agt.indexOf("opera") != -1)) {
        document.getElementById("txtTomdatum").disabled = !document.getElementById("radioTomdatum").checked;
        document.getElementById("txtAntaltillf").disabled = !document.getElementById("radioAntaltillf").checked;
    }
    else {
        document.getElementById("divTomdatum").disabled = !document.getElementById("radioTomdatum").checked;
        document.getElementById("divAntaltillf").disabled = !document.getElementById("radioAntaltillf").checked;
        document.getElementById("txtTomdatum").disabled = !document.getElementById("radioTomdatum").checked;
        document.getElementById("txtAntaltillf").disabled = !document.getElementById("radioAntaltillf").checked;
    }
}


function kollaObjekt(form)
{
    var theForm = form;
    var j = 0;
    
    if (document.getElementById("Resultat")) {
        document.getElementById("Resultat").style.display="none";
    }
	for(i=0; i < theForm.elements.length; i++) {
        if(theForm.elements[i].type.toLowerCase() == "checkbox" &&  theForm.elements[i].name.toLowerCase() == "chkvaldaobjekt") {
            if(theForm.elements[i].checked) {
                j++;
            }
        }    
    }
    if(j == 0) {
        if (document.getElementById("rbnVisaObjektUrval")) {
            document.getElementById("rbnVisaObjektUrval").checked=false;
        }
        if (document.getElementById("rbnVisaObjektAlla")) {
            document.getElementById("rbnVisaObjektAlla").checked=true;
        }
        if (document.getElementById("Resultat")) {
            document.getElementById("Resultat").style.display="block";
        }
    }
    else {
        theForm.submit()
    }
}


function validInlog(form)
{
    if (document.getElementById("errnamn")) {
        document.getElementById("errnamn").style.display = "none";
    }
    if (document.getElementById("errlosen")) {
        document.getElementById("errlosen").style.display = "none";
    }
    if (document.getElementById("errinlog")) {
        document.getElementById("errinlog").style.display = "none";
    }
	if (form.username.value == "") {
	    if (document.getElementById("errnamn")) {
		    document.getElementById("errnamn").style.display = "inline";
		}
		document.retval = false;
		form.username.focus();
	}
	else if (form.password.value == "") {
	    if (document.getElementById("errlosen")) {
		    document.getElementById("errlosen").style.display = "inline";
		}
		document.retval = false;
		form.password.focus();
	}
	else {
        document.retval = true;
    }
}



function losen(sida)
{
	window.open(sida,"Lösen","width=425,height=325,scrollbars=no,resizable=no,left=100,top=100")
	return false;
}


function enabledisableDate(value)
{
    var dis;
    if (value == 1) {
        dis = true;
    }
    else {
        dis = false;
    }
	document.getElementById("Tdat").disabled = dis;
}


//kontrollerarar att man valt minst ett tillägg
function kollaTillagg(form, conftext)
{
    var theForm = form
    var ret;
    ret = true;
    var j = 0;
    //är något tillägg ikryssat
	for(i=0; i < theForm.elements.length; i++) {
        if(theForm.elements[i].type.toLowerCase() == "checkbox") {
            if(theForm.elements[i].checked) {
                j++
            }
        }    
    }
    
    //startinställning för element
    //if (document.getElementById("ulista")) {
    //    var c = document.getElementById("ulista").children;
    //    for (i=0;i<c.length;i++) {
    //        c.item(i).style.display = "none";
    //    }
    //}
    
    if (document.getElementById("Resultat")) {
        document.getElementById("Resultat").style.display="none"
    }
    if (document.getElementById("Infomedd")) {
        document.getElementById("Infomedd").style.display="none"
    }
    if (document.getElementById("Atgard")) {
        document.getElementById("Atgard").style.display="none"
    }
    if (document.getElementById("felMedd")) {
        document.getElementById("felMedd").style.display="none"
    }
    if (document.getElementById("resMedd")) {
        document.getElementById("resMedd").style.display="none"
    }
    if (document.getElementById("errtillaggMedd")) {
        document.getElementById("errtillaggMedd").style.display="none"
    }
    //finns fel
    if(j == 0) {
        ret = false;
        if (document.getElementById("Resultat")) {
            document.getElementById("Resultat").style.display="block"
            document.getElementById("Resultat").style.borderColor="Red"
        }
        if (document.getElementById("Infomedd")) {
            document.getElementById("Infomedd").style.display="block"
        }
        if (document.getElementById("Atgard")) {
            document.getElementById("Atgard").style.display="block"
        }
        if (document.getElementById("errtillaggMedd")) {
            document.getElementById("errtillaggMedd").style.display="list-item"
        }
        if (document.getElementById("antFel")) {
            document.getElementById("antFel").innerHTML = "1"
        }
    }
    else {
        if(conftext == '') {
            return true;
        }
        else {
            var r=confirm(conftext);
            if (r!=true) {
                ret = false;
            }
        }
    }
    return ret;
}


function showSelected(objnr, objnamn, startdat, slutdat)
{
	var selObj = document.getElementById('Lista_Grundschema');
	var selIndex = selObj.selectedIndex;

	var arrObjnrLista = objnr.split(";");
	var arrObjnamnLista = objnamn.split(";");
	var arrStartdatLista = startdat.split(";");
	var arrSlutdatLista = slutdat.split(";");
	
	var strObjnrLista = arrObjnrLista[selIndex];
	var strObjnamnLista = arrObjnamnLista[selIndex];
	
	var arrObjnr = strObjnrLista.split("|");
	var arrObjnamn = strObjnamnLista.split("|");
	
    // clear listbox
    var elSel = document.getElementById('Lista_Objurval');
    while (elSel.length > 0) {
        elSel.remove(elSel.length - 1);
    }
    
    // add elements to listbox    
    for (var i = 0; i < arrObjnr.length-1; i++) {
        var elOptNew = document.createElement('option');
        elOptNew.text = arrObjnamn[i];
        elOptNew.value = arrObjnr[i];
        try {
            elSel.add(elOptNew, null); // standards compliant; doesn't work in IE
        }
        catch(ex) {
            elSel.add(elOptNew); // IE only
        }
    }
    elSel.selectedIndex = 0;
    
    // update hidden field 'grundschemanamn'
    document.getElementById('grundschemanamn').value = selObj.options[selIndex].text;
    
    // update date-fields
    document.getElementById('Fdat').value = arrStartdatLista[selIndex];
    document.getElementById('Tdat').value = arrSlutdatLista[selIndex];
}


// input
// formobj   : form
// fieldReq  : obligatoriska fält, åtskiljda med ;
// fieldFrom : fråntid
// fieldTo   : tilltid
// fieldEq1  : likafält1
// fieldEq2  : likafält2
function checkForm(formobj, fieldReq, fieldFrom, fieldTo, fieldEq1, fieldEq2, fieldEmail)
{
    var ret = true;
    var antFel = 0;
    var vis;
    var fel;
    var faltFel;
    var faltMedd;
    
    if (document.getElementById("antFel")) {
        antFel = document.getElementById("antFel").innerHTML;
        if (parseInt(antFel)) {
            antFel = parseInt(antFel);
        }
        else {
            antFel = 0;
        }
    }

   	// name of mandatory fields
	var fieldRequired = fieldReq.split(";");
	
	// obligatoriska fält
	for (var i = 0; i < fieldRequired.length; i++){
		var obj = formobj.elements[fieldRequired[i]];
		if (obj){
			fel = false;
			switch(obj.type){
			case "select-one":
				if (obj.selectedIndex == -1 || obj.selectedIndex == 0 || obj.options[obj.selectedIndex].text == ""){
					fel = true;
				}
				break;
			case "select-multiple":
				if (obj.selectedIndex == -1){
					fel = true;
				}
				break;
		    case "password":
			case "text":
			case "textarea":
				if (obj.value == "" || obj.value == null){
					fel = true;
				}
				break;
            case "checkbox":
                if (obj.checked == false || obj.checked == null){
					fel = true;
                }
			default:
			}
			if (obj.type == undefined){
				var blnchecked = false;
				for (var j = 0; j < obj.length; j++){
					if (obj[j].checked){
						blnchecked = true;
					}
				}
				if (!blnchecked){
					fel = true;
				}
			}
			faltFel = "err" + fieldRequired[i]
			faltMedd = "err" + fieldRequired[i] + "Medd"

            //visas fältet
            vis = true;
            if (document.getElementById(faltMedd)) {
                if (document.getElementById(faltMedd).style.display == "none") {
                    vis = false;
                }
            }
			if (fel) {
			    if (document.getElementById(faltFel)) {
			        document.getElementById(faltFel).style.display="inline"
			    }
			    if (document.getElementById(faltMedd)) {
                    document.getElementById(faltMedd).style.display="list-item"
                }
			    if (!vis) {
			        antFel++;
			    }
			}
			else{
			    if (document.getElementById(faltFel)) {
			        document.getElementById(faltFel).style.display="none"
			    }
			    if (document.getElementById(faltMedd)) {
                    document.getElementById(faltMedd).style.display="none"
                }
			    if (vis) {
			        antFel--;
			    }
			}
		}
	}

    //kontroll av tidsfält
    if (fieldFrom != "" && fieldTo != "") {
        vis = true;
        if (document.getElementById("errTid")) {
		    if (document.getElementById("errTid").style.display == "none") {
		        vis = false;
		    }
		}
        //startinställning för element
		if (document.getElementById("errTidMedd1")) {
            document.getElementById("errTidMedd1").style.display="none";
        }
        if (document.getElementById("errTidMedd2")) {
            document.getElementById("errTidMedd2").style.display="none";
        }
        fel = false;
        var t1 = parseInt(formobj.elements[fieldFrom].value.replace(':', ''), 10);
        var t2 = parseInt(formobj.elements[fieldTo].value.replace(':', ''), 10);
        if (t1 > t2){
            if (document.getElementById("errTidMedd1")) {
                document.getElementById("errTidMedd1").style.display="list-item";
            }
            fel = true;
	    }
        else if (t1 == t2){
            if (document.getElementById("errTidMedd2")) {
                document.getElementById("errTidMedd2").style.display="list-item";
            }
            fel = true;
        }
        if (fel) {
            if (document.getElementById("errTid")) {
                document.getElementById("errTid").style.display="inline";
            }
            if (!vis) {
                antFel++;
            }
        }
        else {
            if (document.getElementById("errTid")) {
                document.getElementById("errTid").style.display="none";
            }
            if (vis) {
                antFel--;
            }
        }
    }
    
    //kontroll av likafält
    if (fieldEq1 != "" && fieldEq2 != "") {
        vis = true;
        if (document.getElementById("errEqMedd")) {
		    if (document.getElementById("errEqMedd").style.display == "none") {
		        vis = false;
		    }
		}
        fel = false;
        var eq1 = formobj.elements[fieldEq1].value
        var eq2 = formobj.elements[fieldEq2].value
        if (eq1 != eq2){
            fel = true;
	    }
	    if (fel) {
	        if (document.getElementById("errEq")) {
			    document.getElementById("errEq").style.display="inline"
			}
			if (document.getElementById("errEqMedd")) {
                document.getElementById("errEqMedd").style.display="list-item"
            }
            if (!vis) {
                antFel++;
            }
	    }
	    else {
	        if (document.getElementById("errEq")) {
			    document.getElementById("errEq").style.display="none"
			}
			if (document.getElementById("errEqMedd")) {
                document.getElementById("errEqMedd").style.display="none"
            }
            if (vis) {
                antFel--;
            }
	    }
    }
    
    //kontroll av e-post
    if (fieldEmail != "") {
		faltFel = "err" + fieldEmail
		faltMedd = "err" + fieldEmail + "Medd"
        vis = true;
        if (document.getElementById(faltMedd)) {
		    if (document.getElementById(faltMedd).style.display == "none") {
		        vis = false;
		    }
		}
        fel = false;
        var epost = formobj.elements[fieldEmail].value
        if (epost.indexOf("@") == -1 || epost.indexOf("@") == epost.length - 1
        	|| epost.indexOf(".") == -1 || epost.lastIndexOf(".") == epost.length - 1
        	|| epost.lastIndexOf(".") < epost.length -5 
        	|| epost.lastIndexOf(".") == epost.length -2)
        {
		    //document.getElementById(faltFel).style.display="inline"
            //document.getElementById(faltMedd).style.display="list-item"
            //antFel = antFel + 1;
            fel = true;
        }
        if (fel) {
            if (document.getElementById(faltFel)) {
		        document.getElementById(faltFel).style.display="inline";
		    }
		    if (document.getElementById(faltMedd)) {
                document.getElementById(faltMedd).style.display="list-item";
            }
            if (!vis) {
                antFel++;
            }
        }
        else {
            if (document.getElementById(faltFel)) {
		        document.getElementById(faltFel).style.display="none";
		    }
		    if (document.getElementById(faltMedd)) {
                document.getElementById(faltMedd).style.display="none";
            }
            if (vis) {
                antFel--;
            }
        }
    }
    
    if (antFel < 0) {
        antFel = 0;
    }
    
    //finns fel
    if (antFel > 0){
        ret = false;
        document.getElementById("Resultat").style.display="block"
        document.getElementById("Resultat").style.borderColor="Red"
        document.getElementById("Infomedd").style.display="block"
        document.getElementById("Atgard").style.display="block"
        document.getElementById("antFel").innerHTML = antFel
    }
    else {
        document.getElementById("Resultat").style.display="none"
        document.getElementById("Infomedd").style.display="none"
        document.getElementById("Atgard").style.display="none"
        if (document.getElementById("felMedd")) {
            document.getElementById("felMedd").style.display="none"
        }
        if (document.getElementById("resMedd")) {
            document.getElementById("resMedd").style.display="none"
        }
    }
    return ret;
}



// input
// formobj     : form
// fieldPrefix : prefix på id som skall kontrolleras, åtskiljda med ;
// fieldReq    : id på tillägg, åtskiljda med ;
function checkTillagg(formobj, fieldPrefix, fieldReq)
{
    var ret = true;
    var antFel = 0;
    var vis;    
    var fel;
    var faltFel;
    var faltMedd;
    
    //startinställning för element
    //if (document.getElementById("ulista")) {
    //    var c = document.getElementById("ulista").children;
    //    for (i=0;i<c.length;i++) {
    //        c.item(i).style.display = "none";
    //    }
    //}
    
    //fältet antFel
    if (document.getElementById("antFel")) {
        antFel = document.getElementById("antFel").innerHTML;
        if (parseInt(antFel)) {
            antFel = parseInt(antFel);
        }
        else {
            antFel = 0;
        }
        
    }
    
    //visa inte tidigare felmeddelanden
    var ii = 0;
    var iinamn = "";
    while (true) {
        iinamn = "errtillaggMedd" + ii;
        var iiobj = document.getElementById(iinamn);
        if (iiobj){
            iiobj.style.display = "none";
            antFel--;
        }
        else {
            break;
        }
        ii++;
    }

   	// name of mandatory fields
	var fieldRequired = fieldReq.split(";");
	
	// obligatoriska fält
	var prefix = fieldPrefix.split(";");
	
    //antalsfält
	for (var i = 0; i < fieldRequired.length; i++){
	    for (var j = 0; j < prefix.length; j++){
	        if (prefix[j] != "" && fieldRequired[i] != "") {
		        var falt = prefix[j] + fieldRequired[i]
		        var obj = formobj.elements[falt];
		        if (obj){
		        	fel = false;
		        	switch(obj.type){
		        	case "select-one":
		        		if (obj.selectedIndex == -1 || obj.selectedIndex == 0 || obj.options[obj.selectedIndex].text == ""){
		        			fel = true;
		        		}
		        		break;
		        	case "select-multiple":
		        		if (obj.selectedIndex == -1){
		        			fel = true;
		        		}
		        		break;
		            case "password":
		        	case "text":
		        	case "textarea":
		        		if (obj.value == "" || obj.value == null){
		        			fel = true;
		        		}
		        		break;
                    case "checkbox":
                        if (obj.checked == false || obj.checked == null){
		        			fel = true;
                        }
		        	default:
		        	}
		        	if (obj.type == undefined){
		        		var blnchecked = false;
		        		for (var j = 0; j < obj.length; j++){
		        			if (obj[j].checked){
		        				blnchecked = true;
		        			}
		        		}
		        		if (!blnchecked){
		        			fel = true;
		        		}
		        	}
		        	faltFel = "err" + falt
		        	faltMedd = "err" + falt + "Medd"

                    //visas fältet
                    vis = true;
                    if (document.getElementById(faltMedd)) {
                        if (document.getElementById(faltMedd).style.display == "none") {
                            vis = false;
                        }
                    }
		        	if (fel) {
		        	    if (document.getElementById(faltFel)) {
		        	        document.getElementById(faltFel).style.display="inline"
		        	    }
		        	    if (document.getElementById(faltMedd)) {
                            document.getElementById(faltMedd).style.display="list-item"
                        }
			            if (!vis) {
			                antFel++;
			            }
		        	}
		        	else {
		        	    if (document.getElementById(faltFel)) {
		        	        document.getElementById(faltFel).style.display="none"
		        	    }
		        	    if (document.getElementById(faltMedd)) {
                            document.getElementById(faltMedd).style.display="none"
                        }
			            if (vis) {
			                antFel--;
			            }
		        	}
		        }
		    }
		}
		
        //kontroll av tidsfält
        var fieldFrom = "t1_" + fieldRequired[i];
        var fieldTo = "t2_" + fieldRequired[i];
        var errTid = "errtid_"  + fieldRequired[i];
        var errTidMedd1 = "errtid_"  + fieldRequired[i] + "Medd1";
        var errTidMedd2 = "errtid_" + fieldRequired[i] + "Medd2";
        if (fieldFrom != "" && fieldTo != "") {
            vis = true;   
            if (document.getElementById(errTid)) {
		        if (document.getElementById(errTid).style.display == "none") {
		            vis = false;
		        }
		    }
            //startinställning för element
	    	if (document.getElementById(errTidMedd1)) {
                document.getElementById(errTidMedd1).style.display="none";
	    	}
	    	if (document.getElementById(errTidMedd2)) {
                document.getElementById(errTidMedd2).style.display="none";
	    	}
	    	fel = false;
            //tomma eller ej
            if (trim(formobj.elements[fieldFrom].value) != "" && trim(formobj.elements[fieldTo].value) != "") {
                var t1 = parseInt(formobj.elements[fieldFrom].value.replace(':', ''), 10);
                var t2 = parseInt(formobj.elements[fieldTo].value.replace(':', ''), 10);
                if (t1 > t2) {
	    	    	if (document.getElementById(errTidMedd1)) {
                        document.getElementById(errTidMedd1).style.display="list-item";
                    }
                    fel = true;
	            }
                else if (t1 == t2) {
	    	    	if (document.getElementById(errTidMedd2)) {
                        document.getElementById(errTidMedd2).style.display="list-item";
                    }
                    fel = true;
                }
                if (fel) {
                    if (document.getElementById(errTid)) {
	    	    	    document.getElementById(errTid).style.display="inline";
	    	    	}
	    	    	if (!vis) {
	    	    	    antFel++;
	    	    	}
	    	    }
	    	    else {
                    if (document.getElementById(errTid)) {
	    	    	    document.getElementById(errTid).style.display="none";
	    	    	}
	    	    	if (vis) {
	    	    	    antFel--;
	    	    	}
                }
            }
        }
    
    }

    if (antFel < 0) {
        antFel = 0;
    }

    //finns fel
    if (antFel > 0) {
        ret = false;
        if (document.getElementById("Resultat")) {
            document.getElementById("Resultat").style.display="block"
            document.getElementById("Resultat").style.borderColor="Red"
        }
        if (document.getElementById("Infomedd")) {
            document.getElementById("Infomedd").style.display="block"
        }
        if (document.getElementById("Atgard")) {
            document.getElementById("Atgard").style.display="block"
        }
        if (document.getElementById("antFel")) {
            document.getElementById("antFel").innerHTML = antFel
        }
    }
    else {
        if (document.getElementById("Resultat")) {
            document.getElementById("Resultat").style.display="none"
        }
        if (document.getElementById("Infomedd")) {
            document.getElementById("Infomedd").style.display="none"
        }
        if (document.getElementById("Atgard")) {
            document.getElementById("Atgard").style.display="none"
        }
        if (document.getElementById("felMedd")) {
            document.getElementById("felMedd").style.display="none"
        }
        if (document.getElementById("resMedd")) {
            document.getElementById("resMedd").style.display="none"
        }
    }
    return ret;
}


function setfocus(objectid)
{
    if(document.getElementById(objectid)) {
        document.getElementById(objectid).focus();
    }
}


var hide=true;
function toggleRows(tableId, rows, tag, msg1, msg2)
{
    hide= !hide;
	tbl = document.getElementById(tableId);
	var len = tbl.rows.length;
	var vStyle = (hide)? "none":"";
	for(i=rows ; i< len; i++){
		 tbl.rows[i].style.display = vStyle;
    }
    var h=(hide)?msg1:msg2;
    tag.innerHTML = h;
}


function trim(str) {
	return str.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
}

