﻿
// JScript File



	function submitSearch()
	{
		if(document.getElementById("txtQuery").value =="")
		{
			document.getElementById("txtQuery").focus();
			return false;
		}
	}
	
	function OpenMapSearch(_page)
    {
        if (document.getElementById("ctl00_top1_txtSearch").value=="")
        {
            alert('Vennligst foreta et søk i det øverste søkefeltet.');
            document.getElementById("ctl00_top1_txtSearch").focus();
        }
        else
            window.location.href=_page + "?to=" + document.getElementById("ctl00_top1_txtSearch").value;
        return false;
    }

	function OpenPage(_page, _queryString)
    {
        if(_queryString=='')
            window.location.href=_page;
        else
            window.location.href=_page + "?" + _queryString;
        return false;
    }

	function OpenFirmMap()
    {
        if (document.getElementById("txtQuery").value=="")
        {
            alert('Vennligst foreta et søk i det øverste søkefeltet.');
            document.getElementById("txtQuery").focus();
        }
        else
            window.location.href="/mapsearchfirm.aspx?to=" + document.getElementById("txtQuery").value;
        return false;
    }

	function OpenWebMap()
    {
        if (document.getElementById("txtQuery").value=="")
        {
            alert('Vennligst foreta et søk i det øverste søkefeltet.');
            document.getElementById("txtQuery").focus();
        }
        else
            window.location.href="/mapsearchweb.aspx?to=" + document.getElementById("txtQuery").value;
        return false;
    }

    function OpenMapFromSearch()
    {
        if(document.getElementById("from").value=="")
	    {
	        alert("Start-feltet må fylles ut før du beregner kjørerute.");
	        document.getElementById("from").focus();
	        return false;
	    }
//	    else if(document.getElementById("to").value=="")
//	    {
//	        alert("Stopp-feltet må fylles ut før du beregner kjørerute.");
//	        document.getElementById("to").focus();
//	        return false;
//	    }
	    
	    window.location.href = "/mapsearch.aspx?from=" + document.getElementById("from").value + "&to=" + document.getElementById("to").value;
	    return false;
    }

    function ReloadCurrentPage(txtControlId)
    {
        if (document.getElementById(txtControlId).value!='')
        {
            document.forms[0].submit();
            return true;
        }
        else
        {
            document.getElementById(txtControlId).focus();
            return false;
        }
    }    
    
    function setLink(LinkID)
    {
      document.getElementById(LinkID).style.textDecoration='none';
      document.getElementById(LinkID).style.fontWeight='bold';
      document.getElementById(LinkID).href='javascript:void(0)';
      document.getElementById(LinkID).style.cursor='cursor';
    }
    
    function clickButton(e, buttonid)
    {
        var bt = document.getElementById(buttonid);
        if (bt)
        {
            var evt = e ? e : window.event;
            if (evt.keyCode == 13)
            {
                bt.click();
                return false;
            }
        }
    }
    
    function clickButtonVia(e)
    {
        var bt = document.getElementById("submitRoute");
        if (bt)
        {
            var evt = e ? e : window.event;
            if (evt.keyCode == 13)
            {
                bt.click();
                return false;
            }
        }
    }
    
    function OpenPrefrences()
    {
        if (document.getElementById("divPrefrences").style.display=='')
            document.getElementById("divPrefrences").style.display='none';
        else
            document.getElementById("divPrefrences").style.display='';
    }

    function openWin(url,width,height)
    {
        var x=window.open(url,null,"height="+height+",width="+width+",scrollbars=yes,status=no,toolbar=no,menubar=no");
        x.focus();
    }

    function openWinName(url,name,width,height)
    {
        var x=window.open(url,name,"height="+height+",width="+width+",scrollbars=no,status=no,toolbar=no,menubar=no");
        x.focus();
    }

    function openWinPrint(url,width,height)
    {
        var x=window.open(url,null,"height="+height+",width="+width+",scrollbars=yes,status=no,toolbar=no,menubar=yes");
        x.focus();
        x.print();
    }

    function AddToFavorites(Title, Url)
    { 
    //alert(Url);
	    if (window.sidebar) { 					// Mozilla Firefox Bookmark		
		    window.sidebar.addPanel(Title, Url,"");	
	    } else if ( window.external ) { 			// IE Favorite		
		    window.external.AddFavorite(Url, Title); 
	    } else { 		// Opera Hotlist		
		    alert('Din nettleser støtter desverre ikke denne funksjonen');
	    }
    }

    function sendmail(C)
    {
        var A="mailto:";
        for(var B=0; B<C.length; B++)
        {
            A=A+C[B];
        }
        this.location.href=A;
    }   

    function RedirectPage(url)
    {
        window.location.href=url;
        return false;
    }

    function AddToOutlook(profileid)
    {
        var theForm = document.forms[0];
        theForm.action ="/ContentGenerator/AddFirmToOutlook.aspx?profileid=" + profileid;
        theForm.target = "setTabFrame";
        theForm.submit();
        theForm.action ="/FirmSearch.aspx" ;
        theForm.target ="";
        //return false;
    }

	function isEmailValid(sEmail) 
	{
		if (sEmail == '' || sEmail.indexOf('.') == 0 || sEmail.indexOf('.') == -1 || sEmail.indexOf('@') == 0 || sEmail.indexOf('@') == -1 || sEmail.indexOf('.') == sEmail.length - 1 || sEmail.indexOf(',') >= 0) 
		    return false;	
		else 
			return true;
	}

    function ValidateBlankTextBox(textboxid)
    {
        textboxid = document.getElementById(textboxid);
        if(textboxid.value=='')
        {
            textboxid.focus();
            return false;
        }
        return true;
    }
  
   function ReloadCurrentPage(txtControlId)
    {
        if (document.getElementById(txtControlId).value!='')
        {
            document.forms[0].submit();
            return true;
        }
        else
        {
            document.getElementById(txtControlId).focus();
            return false;
        }
    }
    
    function ShowHideDiv(divId, display, firmname)
    {
        if (firmname=='True')
            document.getElementById(divId).style.display=display;
    }
    
    function SetDefaultMyAccountTab(divId)
    {
   
        var tab = document.getElementById(divId);
        if (tab != null)
            tab.className = 'link_6 FontBold';
    }
    
    
    function DeleteSelectedRecords()
    {
        return confirm('Er du sikker på at du ønsker å slettet de valgte oppføringene ?');
    }
    
    function isValidUrl(s) {
	    var regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
	    return regexp.test(s);
    }

    function ConfirmDelete()
    {        
        return confirm("Er du sikker på at du vil slette denne oppføringen?");
    }

    function ConfirmABDelete()
    {        
        return confirm("Er du sikker på at du vil slette denne kontakten fra din adressebok?");
    }

	function ShowWait(controlID)
	{
	    document.getElementById(controlID).style.display = '';
	    document.getElementById(controlID).innerHTML = '<img src="/images/wait.gif" />';
	}
	
	function ShowLoginFirstMessage(controlid)
    {
        document.getElementById(controlid).style.display = '';
        document.getElementById(controlid).innerHTML = '<span style="color:red"><strong><br/>For å bruke denne funksjonen må du først <a href="/personlogin.aspx?nurl=' + window.location.href + '" class="Light10 Blue2">logge deg inn i MinKatalog</a></strong><br /><br /></span>';
        setTimeout("document.getElementById('" + controlid + "').innerHTML='';", 5000);
        return false;
    }
    
    function ShowLoginDIV(controlid)
    {
        document.getElementById(controlid).innerHTML = '<span style="color:red"><strong><br/>For å bruke denne funksjonen må du først <a href="/personlogin.aspx?nurl=' + window.location.href + '" class="Light10 Blue2">logge deg inn i MinKatalog</a></strong><br /><br /></span>';
        document.getElementById(controlid).style.display='';
        setTimeout("document.getElementById('" + controlid + "').style.display='none'; document.getElementById('" + controlid + "').innerHTML='';", 5000);
        return false;
    }
    
    function ShowHelpMessage(clickedControl, message)
    {
        var divCtrl=document.getElementById("divPersonHelp");
        document.getElementById("divPersonHelpMessage").innerHTML = message;
        
        var _display;
        if (divCtrl.style.display=='')
            _display = 'none'
        else
            _display = ''
        divCtrl.style.display = _display;
        var thehelpFrame=document.createElement('helpiFrame');
        if(_display=='')
        {
            var obj=returnObjPosition(clickedControl);
            divCtrl.style.left=(obj.x-22) + 'px';
            divCtrl.style.top=(obj.y-divCtrl.offsetHeight) + 'px';
            thehelpFrame.id='helpiFrame';
            thehelpFrame.style.filter='alpha(opacity=0)';
            thehelpFrame.style.position='absolute';
            thehelpFrame.style.zIndex=899;
            document.body.appendChild(thehelpFrame);
            thehelpFrame.style.top=divCtrl.style.top; //one less than the value given for theDiv
            thehelpFrame.style.left=divCtrl.style.left; //one less than the value given for theDiv
            thehelpFrame.style.height = (divCtrl.offsetHeight) + 'px';
            thehelpFrame.style.width = (divCtrl.offsetWidth) + 'px';
            thehelpFrame.style.display='block';
            //setTimeout("document.getElementById('helpiFrame').style.display='none'", 8000);
        }
        else if(document.getElementById("helpiFrame")!=null)
        {
            document.body.removeChild(thehelpFrame);
        }
        //document.getElementById("Help").style.display = DisplayQuetionMark;
        return false;
    }
    
    function returnObjPosition(target)
    {
	    var x = 0;
	    var y = 0;
	    var tempObj = new Object();
	    var obj = (typeof target == "object" ? target : returnObjById(target));
	    while (obj.offsetParent != null) {
		    x += obj.offsetLeft;
		    y += obj.offsetTop;
		    obj = obj.offsetParent;
	    }
	    x += obj.offsetLeft;
	    y += obj.offsetTop;
	    tempObj.x = x;
	    tempObj.y = y;
    	
	    return tempObj;
    }

    function returnObjById(strId) 
    {
	    return document.getElementById(strId);
    }

    function SelectAllCheckbox(field) 
    {
        if (field.length) 
        {
            for (var i = 0; i < field.length; i++) {
                field[i].checked = true;
            }
        }
        else
        {
            field.checked = true;
        }
    }

    function SelectAllCheckboxes(spanChk)
    {
       // Added as ASPX uses SPAN for checkbox
       var theBox= (spanChk.type=="checkbox") ? 
            spanChk : spanChk.children.item[0];
       xState='checked';
       elm=window.document.forms(0).elements;

       for(i=0;i<elm.length;i++)
         if(elm[i].type=="checkbox")
         {
           //elm[i].click();
           if(elm[i].checked!=xState)
             elm[i].click();
           //elm[i].checked=xState;
         }
         
         return false;
     }
     
     function ShowHideControl(controlID)
     {
        var ref = document.getElementById(controlID);
        if (ref!=null)
        {
            if (ref.style.display=='')
                ref.style.display='none';
            else
                ref.style.display='';
        }
     }
     
    function SetPosition(divCtrl, clickedControl)
    {
        var _display = '';
        divCtrl.style.display = _display;
        var thehelpFrame=document.createElement('helpiFrame');
        if(_display=='')
        {
            var obj=returnObjPosition(clickedControl);
            if ((obj.x-50)>0)
                divCtrl.style.left=(obj.x-50) + 'px';
            else
                divCtrl.style.left='0px';

            if ((obj.y-divCtrl.offsetHeight)>0)
                divCtrl.style.top=(obj.y-divCtrl.offsetHeight) + 'px';
            else
                divCtrl.style.top='0px';

            thehelpFrame.id='helpiFrame';
            thehelpFrame.style.filter='alpha(opacity=0)';
            thehelpFrame.style.position='absolute';
            thehelpFrame.style.zIndex=899;
            document.body.appendChild(thehelpFrame);
            thehelpFrame.style.top=divCtrl.style.top; //one less than the value given for theDiv
            thehelpFrame.style.left=divCtrl.style.left; //one less than the value given for theDiv
            thehelpFrame.style.height = (divCtrl.offsetHeight) + 'px';
            thehelpFrame.style.width = (divCtrl.offsetWidth) + 'px';
            thehelpFrame.style.display='block';
        }
        else if(document.getElementById("helpiFrame")!=null)
        {
            document.body.removeChild(thehelpFrame);
        }
        //document.getElementById("Help").style.display = DisplayQuetionMark;
        return false;

    }
    
    var oldweburl;
    var oldcontrol;
    var stillShow=false;
    function ShowWebsiteThumb(control, url)
    {
        oldweburl = url; //.replace('REFRESH:', '');
        oldcontrol = control;
        document.getElementById("aWebsiteURL").href = url;
        stillShow=true;
        setTimeout("LoadWebsiteThumb();", 2000);
//        document.getElementById("aReloadWebsiteThumb").style.display = 'none';
//        document.getElementById("imgWebsiteThumb").src = "/images/wait.gif";
//        SetPosition(document.getElementById("divWebsiteThumb"), control);
//        FinnFirma.Website.SearchAutoComplete.GetImageThumb(url, ShowThumbImage);
    }
    
    function UnloadWebsiteThumb()
    {
        stillShow = false;
    }
    
    function ShowThumbImage(rValue)
    {
        document.getElementById("aReloadWebsiteThumb").style.display = '';
        document.getElementById("imgWebsiteThumb").src = rValue;
        stillShow = false;
    }
    
    function RefreshWebsiteThumb()
    {
        oldweburl='REFRESH:' + oldweburl.replace('REFRESH:', '');
        stillShow = true;
        LoadWebsiteThumb();
        //ShowWebsiteThumb(oldcontrol, 'REFRESH:' + oldweburl);
    }

    function LoadWebsiteThumb()
    {
        if (stillShow)
        {
            document.getElementById("aReloadWebsiteThumb").style.display = 'none';
            document.getElementById("imgWebsiteThumb").src = "/images/wait.gif";
            SetPosition(document.getElementById("divWebsiteThumb"), oldcontrol);
            FinnFirma.Website.SearchAutoComplete.GetImageThumb(oldweburl, ShowThumbImage);
        }
    }
    
    function ShowHideControlTimeout(controlIDPrefix, controlID)
    {
        controlID = controlIDPrefix + controlID;
        var ref = document.getElementById(controlID);
        if (ref!=null)
        {
            if (ref.style.display=='')
                ref.style.display='none';
            else
            {
                ref.style.display='';
                setTimeout("document.getElementById('" + controlID + "').style.display='none';", 5000);
            }
        }        
        return false;
    }
    
    function ShowHideControlTimeoutPosition(clickedControl, controlIDPrefix, controlID)
    {
        controlID = controlIDPrefix + controlID;
        var ref = document.getElementById(controlID);
        if (ref!=null)
        {
            if (ref.style.display=='')
                ref.style.display='none';
            else
            {
                ref.style.left='0px';
                ref.style.top='15px';
//                var obj = returnObjPosition(clickedControl);
//                ref.style.left=(obj.x) + 'px';
//                ref.style.top=(obj.y+13) + 'px';
                //SetPosition(ref,clickedControl);
                ref.style.display='';
                setTimeout("document.getElementById('" + controlID + "').style.display='none';", 5000);
            }
        }        
        return false;
    }
    
    function ShowHideAnotherControl(clickedCntrl, targetCntrlID)
    {
        var targetCntrl = document.getElementById(targetCntrlID);
        if(targetCntrl.style.display == 'none')
        {
            targetCntrl.style.display = '';
            clickedCntrl.innerHTML = '(Skjul)';
            return true;
        }
        else
        {
            targetCntrl.style.display = 'none';
            clickedCntrl.innerHTML = '(Vis alle)';
            return false;
        }        
    }
    
    function ShowCustomMessageInControl(controlIDPrefix, controlIndex, msg)
    {
        var controlID = controlIDPrefix + controlIndex;
        document.getElementById(controlID).innerHTML = msg;
        document.getElementById(controlID).style.display = '';
        setTimeout("document.getElementById('" + controlID + "').style.display='none';", 5000);
    }