// JavaScript Document
    
    var BrowserDetect = {
	    init: function () {
		    this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		    this.version = this.searchVersion(navigator.userAgent)
			    || this.searchVersion(navigator.appVersion)
			    || "an unknown version";
		    this.OS = this.searchString(this.dataOS) || "an unknown OS";
	    },
	    searchString: function (data) {
		    for (var i=0;i<data.length;i++)	{
			    var dataString = data[i].string;
			    var dataProp = data[i].prop;
			    this.versionSearchString = data[i].versionSearch || data[i].identity;
			    if (dataString) {
				    if (dataString.indexOf(data[i].subString) != -1)
					    return data[i].identity;
			    }
			    else if (dataProp)
				    return data[i].identity;
		    }
	    },
	    searchVersion: function (dataString) {
		    var index = dataString.indexOf(this.versionSearchString);
		    if (index == -1) return;
		    return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	    },
	    dataBrowser: [
		    { 	string: navigator.userAgent,
			    subString: "OmniWeb",
			    versionSearch: "OmniWeb/",
			    identity: "OmniWeb"
		    },
		    {
			    string: navigator.vendor,
			    subString: "Apple",
			    identity: "Safari"
		    },
		    {
			    prop: window.opera,
			    identity: "Opera"
		    },
		    {
			    string: navigator.vendor,
			    subString: "iCab",
			    identity: "iCab"
		    },
		    {
			    string: navigator.vendor,
			    subString: "KDE",
			    identity: "Konqueror"
		    },
		    {
			    string: navigator.userAgent,
			    subString: "Firefox",
			    identity: "Firefox"
		    },
		    {
			    string: navigator.vendor,
			    subString: "Camino",
			    identity: "Camino"
		    },
		    {		// for newer Netscapes (6+)
			    string: navigator.userAgent,
			    subString: "Netscape",
			    identity: "Netscape"
		    },
		    {
			    string: navigator.userAgent,
			    subString: "MSIE",
			    identity: "Explorer",
			    versionSearch: "MSIE"
		    },
		    {
			    string: navigator.userAgent,
			    subString: "Gecko",
			    identity: "Mozilla",
			    versionSearch: "rv"
		    },
		    { 		// for older Netscapes (4-)
			    string: navigator.userAgent,
			    subString: "Mozilla",
			    identity: "Netscape",
			    versionSearch: "Mozilla"
		    }
	    ],
	    dataOS : [
		    {
			    string: navigator.platform,
			    subString: "Win",
			    identity: "Windows"
		    },
		    {
			    string: navigator.platform,
			    subString: "Mac",
			    identity: "Mac"
		    },
		    {
			    string: navigator.platform,
			    subString: "Linux",
			    identity: "Linux"
		    }
	    ]

    };
    BrowserDetect.init();
    
	// Validate the entered email
	function EmailValidate( sEmail ){
		
		EmailError = 0;
		
		placering = 0;
		tekst = sEmail.toLowerCase();
		placering = tekst.indexOf("@");
		
		if(tekst == ""){
			errorMSG = "Der skal angives en e-mail adresse i feltet: E-mail.";
			EmailError = 1;
		}
		
		tegn = tekst.indexOf(" ");
		
		if(tegn != -1){
			errorMSG = "Der må ikke være mellemrum i e-mail adressen.";
			EmailError = 1;
		}
		
		tegn3 = tekst.split('.');
		tegn2 = tekst.indexOf(".")
		
		if( tegn2 < 0 ){
			errorMSG = "E-mail adressen skal indeholde mindst et punktum. Og have mindst en karakter før.";
			EmailError = 1;
		}
		
		if( tegn3[tegn3.length-1] == '' || tegn3[tegn3.length-1] == ' '  || tegn3[tegn3.length-1] == null ){
			errorMSG = "E-mail adressen skal indeholde mindst et punktum. Og have mindst to karakterer efter.";
			EmailError = 1;
		} else {
			if( tegn3[tegn3.length-1].length < 2 ){
				errorMSG = "E-mail adressen skal indeholde mindst et punktum. Og have mindst to karakterer efter.";
				EmailError = 1;
			}
		}
		
		if (tekst.indexOf("æ")!=-1 || tekst.indexOf("ø")!=-1 || tekst.indexOf("å")!=-1 ||
			tekst.indexOf("Æ")!=-1 || tekst.indexOf("Ø")!=-1 || tekst.indexOf("Å")!=-1 ||
			tekst.indexOf(";")!=-1 || tekst.indexOf(",")!=-1){
			errorMSG = "Der er ulovlige tegn i adressen. Må ikke indeholde: æ ø å Æ Ø Å , ;";
			EmailError = 1;
		}
		
		aAt = tekst.split('@');
		
		if( aAt.length > 2 ){
			erroMSG = "E-mail adressen må kun indeholde et @.";
			EmailError = 1;
		}		
		
		if ( placering < 1 || tekst.length <= ( placering + 1 ) ){
			errorMSG = "E-mail adressen er forkert - kontroller om @ er placeret korrekt.";
			EmailError = 1;
		} else {
		    //tjek om der er et punktum efter @
		    if( aAt[1].indexOf('.') < 1 ){
		        errorMSG = "E-mail adressen skal indeholde mindste et punktum efter @'et.";
		        EmailError = 1;
		    }
		}
		
		if( EmailError != 0 ){
			
			return false;
			
		} else {
			
			return true;
		}
	}
	
	
	function NextFocus( sElement , sEvent ){
		
		var key;
		
		if( window.event ) {
			key = window.event.keyCode; //IE
		} else {
			key = sEvent.which; //FF
		}
		
		if( key != 9 && key != 16 ){
			GetId( sElement ).focus();
		}
		
	}
	
	
	function CardnumberValidate( nCardNumber ){
		
		if( isNaN( nCardNumber ) || nCardNumber.length != 16 ){
			errorMSG = 'Det indtastede kortnummer er ikke gyldigt (16 cifre).';
			return false;
		} else {
			return true;
		}
	}
	
	
	function CardmonthValidate( nMonthvalue ){
			
		if( nMonthvalue < 1 ){
			errorMSG = 'Du skal vælge udløbsmåned for kortet.';
			return false;
		} else {
			return true;
		}
			
	}
	
	function CardyearValidate( nYearvalue ){
			
		if( nYearvalue < 1 ){
			errorMSG = 'Du skal vælge udløbsår for kortet.';
			return false;
		} else {
			return true;
		}
			
	}
	
	function CardcvcValidate( nCVC ){
			
		if( nCVC.length != 3 || isNaN( nCVC ) ){
			errorMSG = 'De indtastede kontrolcifre er ikke gyldigt (3 cifre).';
			return false;
		} else {
			return true;
		}
			
	}
	
	function GetId( sElem ){
	
	    if( document.getElementById( sElem ) ){
	        return document.getElementById( sElem );
	    }
	    
	}
	
	
	function disableEnterKey( sEvent ){
	
		var key;
		
		if( window.evet ) {
			key = window.event.keyCode; //IE
		} else {
			key = sEvent.which; //FF
		}
		
		if( key == 13 ){
			return false;
		} else {
			return true;
		}
	}
	
	function ChangeInputToText(obj){
    
        if( obj.value == '' ){
            if( BrowserDetect.browser == 'Firefox' || BrowserDetect.browser == 'Opera' ){
                obj.type = 'text';
                obj.value = 'Kode';
                //GetId('username').focus();
                setTimeout("GetId('password').focus();", 50);
            } else {   
                var newO=document.createElement('input');
                newO.setAttribute('type','text');
                newO.setAttribute('name',obj.getAttribute('name'));
                newO.setAttribute('id',obj.getAttribute('id'));
                newO.setAttribute('className' , 'input_login' );
                newO.setAttribute('value' , 'Kode');
                newO.setAttribute('onblur' , obj.getAttribute('onblur') );
                newO.setAttribute('onfocus' , 'ChangeInputToText(this);' );
                obj.parentNode.replaceChild(newO,obj);
                return newO;
            }
        }
    
    }
    
    function ClearInput( obj , default_value ){
        
        if( obj.value == default_value ){
            obj.value = '';
        } else if( obj.value == '' ){
            obj.value = default_value;
        }
        
    }
	
	
	function Myndig( strCPRbirth ){
        
        var myYear = strCPRbirth.substring( 4 , 6 );
        var myMonth = strCPRbirth.substring( 2 , 4 );
        var myDay = strCPRbirth.substring( 0 , 2 );
        
        var todayDate = new Date();
        nYear = todayDate.getYear() - 100;
        if(nYear+100<2000){nYear += 1900};
        nYear = nYear.toString().substring( 2 , 4 );
        
        if( nYear.substring( 0 , 1 ) == '0' ){
            nYear = nYear.substring( 1 , 2 );
        }
        
        nYear = parseFloat(nYear);
        
        if( myYear.length < 2 ){
            myYear = '0'+myYear;
        }
        
        if( myYear > nYear ){
            myYear = '19'+myYear;
        } else {
            myYear = '20'+myYear;
        }
        
        myYear = parseFloat(myYear);
        
        var birthDate = new Date();
        birthDate.setFullYear( myYear,myMonth-1,myDay );
        
        var todayMinus18 = new Date();
        nYear = todayDate.getYear()-18;
        if(nYear+18<2000){nYear += 1900};
        todayMinus18.setFullYear( nYear , todayDate.getMonth() , todayDate.getDate()+1 )

        if( birthDate < todayMinus18 ){
            return true;
        } else {
            return false;
        }
    }
	