$(document).ready(function() {

//******************************************************************************
//
//                  SETTER ATTRIBUTTER:
//
//******************************************************************************    

 //Gjemmer søkeforslag-droppdown når bruker trykker utenfor boksen
 $("#searchfield").blur(function() {    
     setTimeout('document.getElementById("suggestionAjaxBox").style.visibility = \'hidden\'',500);   
  }); 
 
 //Setter søkeforslag-dropdown synlig igjen 
 $("#searchfield").focus(function() {    
    document.getElementById("suggestionAjaxBox").style.visibility = 'visible'; 
  });  
  
  //Gjemmer kundeforslag-droppdown når bruker trykker utenfor boksen
   $("#companySupportField").blur(function() {    
     setTimeout('document.getElementById("companySuggestionAjaxBox").style.visibility = \'hidden\'',500);   
  }); 
  
  //Setter kundeforslag-dropdown synlig igjen 
 $("#companySupportField").focus(function() {    
    document.getElementById("companySuggestionAjaxBox").style.visibility = 'visible'; 
  });  
  
  //Overkjører send skjema om bruker trykker enter i kundefelt
  $("#companySupportField").keydown(function(event){
    if(event.keyCode == 13) {
      event.preventDefault();
      return false;
    }
  }); 

  //Overkjører send skjema om bruker trykker enter i resterende felter
  $("#supportField").keydown(function(event){
    if(event.keyCode == 13) {
      event.preventDefault();
      return false;
    }
  }); 
	
	//Accordion visning for faqsiden. Setter 
	$('a.accordionButton').click(function() {
 
		if($(this).next().is(':visible')) {
			$('div.accordionContent').slideUp('normal');
		} else {
			$('div.accordionContent').slideUp('normal');	
			$(this).next().slideDown('normal');
		}
	});   
 
  //Gjemme div når siden laster
	$("div.accordionContent").hide();


  //Tulleting om man trykker på print side  
  $("a.socialsPrint").click(function() {
       alert('Hvorfor i alle dager vil du printe denna sia??');
  });
  
  
  
  
//******************************************************************************
//
//                  BUNNLINJE SLIDER TEST:
//
//******************************************************************************                   

jQuery(function($) {

		var slide = false;

		var height = $('#footer_content').height();

		$('#footer_button').click(function() {

			var docHeight = $(document).height();

			var windowHeight = $(window).height();

			var scrollPos = docHeight - windowHeight + height;

			$('#footer_content').animate({ height: "toggle"}, 1000);

			if(slide == false) {

				if($.browser.opera) {

					$('html').animate({scrollTop: scrollPos+'px'}, 1000);

				} else {

					$('html, body').animate({scrollTop: scrollPos+'px'}, 1000);

				}

				slide = true;

			} else {

				slide = false;

			}

		});

	});


//******************************************************************************
//
//                  TOOL TIP:
//
//******************************************************************************     

	var tip;
	$(".tip_trigger").hover(function(){

		//Caching the tooltip and removing it from container; then appending it to the body
		tip = $(this).find('.tip').remove();
		$('body').append(tip);

		tip.fadeIn(600); //Show tooltip

	}, function() {

		tip.hide().remove(); //Hide and remove tooltip appended to the body
		$(this).append(tip); //Return the tooltip to its original position

	}).mousemove(function(e) {
	//console.log(e.pageX)
		  var mousex = e.pageX + 20; //Get X coodrinates
		  var mousey = e.pageY + 20; //Get Y coordinates
		  var tipWidth = tip.width(); //Find width of tooltip
		  var tipHeight = tip.height(); //Find height of tooltip

		 //Distance of element from the right edge of viewport
		  var tipVisX = $(window).width() - (mousex + tipWidth);
		  var tipVisY = $(window).height() - (mousey + tipHeight);

		if ( tipVisX < 20 ) { //If tooltip exceeds the X coordinate of viewport
			mousex = e.pageX - tipWidth - 20;
			$(this).find('.tip').css({  top: mousey, left: mousex });
		} if ( tipVisY < 20 ) { //If tooltip exceeds the Y coordinate of viewport
			mousey = e.pageY - tipHeight - 20;
			tip.css({  top: mousey, left: mousex });
		} else {
			tip.css({  top: mousey, left: mousex });
		}
	});	 
	

	
//******************************************************************************
//
//                  MEGA DROP DOWN MENYEN:
//
//******************************************************************************    
	
  //On Hover Over
 
function megaHoverOver() {
    //alert('hepp');
    $(this).find(".sub").stop().fadeTo(0, 1).show(); //Find sub and fade it in
    (function($) {
        //Function to calculate total width of all ul's
        jQuery.fn.calcSubWidth = function() {
            rowWidth = 50;    //Normally set to 0, change  for IE columns
            //Calculate row
            $(this).find("ul").each(function() { //for each ul...
                rowWidth += $(this).width(); //Add each ul's width together
            });
        };
    })(jQuery); 

    if ( $(this).find(".row").length > 0 ) { //If row exists...

        var biggestRow = 0;	

        $(this).find(".row").each(function() {	//for each row...
            $(this).calcSubWidth(); //Call function to calculate width of all ul's
            //Find biggest row
            if(rowWidth > biggestRow) {
                biggestRow = rowWidth;
            }
        });

        $(this).find(".sub").css({'width' :biggestRow}); //Set width
        $(this).find(".row:last").css({'margin':'0'});  //Kill last row's margin

    } else { //If row does not exist...

        $(this).calcSubWidth();  //Call function to calculate width of all ul's
        $(this).find(".sub").css({'width' : rowWidth}); //Set Width

    }
}

//On Hover Out
function megaHoverOut(){
  $(this).find(".sub").stop().fadeTo(0, 0, function() { //Har satt fadeout til 10. Fade to 0 opactiy
      $(this).hide();  //after fading, hide it
  });
}

//Set custom configurations
var config = {
     sensitivity: 1, // number = sensitivity threshold (must be 1 or higher)
     interval: 50, // number = milliseconds for onMouseOver polling interval
     over: megaHoverOver, // function = onMouseOver callback (REQUIRED)
     timeout: 400, // number = milliseconds delay before onMouseOut
     out: megaHoverOut // function = onMouseOut callback (REQUIRED)
};

$("ul#topnav li .sub").css({'opacity':'2'}); //Fade sub nav to 0 opacity on default
$("ul#topnav li").hoverIntent(config); //Trigger Hover intent with custom configurations

 

//******************************************************************************
//
//                 VALIDERING AV SUPPORTSKJEMA
//      Benytter meg her av jquery.validate plugin som ligger i jquery.js fila
//
//******************************************************************************    


/* $.validator.setDefaults({
   debug: true
 })  */

 //Kjører validering av supportskjema
 /*$("#supportForm").validate({   
 });
 
 //Testgreier. Man kan smelle på validering på gitte felter med rules("add", ...) i et skjema man kjører .validate() på. Man kan også kjøre "remove" om det skulle være aktuelt.
 $(".companySupportField" ).rules("add", {
 required: true,
 minlength: 3,
 messages: {
   required: "<br>Er nok best du fyller ut dette feltet",
   minlength: jQuery.format("<br>Firmanavnet best&aring;r ikke av mindre enn {0} bokstaver veit du")
 }
});     */


 
 //focusCleanup: true
 /*
 highlight: function(element, errorClass) {
     $(element).fadeOut(function() {
       $(element).fadeIn();
     });
  }
 */ 

 //Setter her regler for gitte felter innenfor skjemaet du vil validere.
 $("#supportForm").validate({ 
   
 rules: {
     company:  {
        required:true,
        minlength: 3
     },
     name:  {
        required:true
     },   
     email: {
       required: true,
       email: true
     }
   },
   messages: {
     company: {
        required: "<br>Vennligst oppgi kundenavn",
        minlength: jQuery.format("<br>Firmanavnet best&aring;r ikke av mindre enn {0} bokstaver veit du")
     },   
     name: "<br>Vennligst fyll inn ditt navn",
     email: {
       required: "<br>Vi trenger din epost for &aring; kunne kontakte deg",
       email: "<br>Epost-adressen m&aring; v&aelig;re p&aring; f&oslash;lgende form: navn@domene.no"
     }
   } 
   });  
   
   
//******************************************************************************
//
//                 VALIDERING AV KONTAKTSKJEMA
//     Benytter meg her av jquery.validate plugin som ligger i jquery.js fila
//
//******************************************************************************  

 $("#contactForm").validate({ 
   
 rules: {
     name:  {
        required:true
     }, 
     phone: {
        digits: true,
        minlength:8
     },  
     email: {
       required: true,
       email: true
     }
   },
   messages: {
     name: "<br>Vennligst fyll inn ditt navn",
     phone: {
        digits:"<br>Vennligst fyll inn et telefonnr",
        minlength: jQuery.format("<br>Telefonnummeret m&aring; best&aring; av minimum {0} tall")
     },  
     email: {
       required: "<br>Vi trenger din epost for &aring; kunne kontakte deg",
       email: "<br>Epost-adressen m&aring; v&aelig;re p&aring; f&oslash;lgende form: navn@domene.no"
     }
   } 
   }); 
   
//******************************************************************************
//
//                 VALIDERING AV SEND-INTMANAGER-LINK SKJEMA
//     Benytter meg her av jquery.validate plugin som ligger i jquery.js fila
//
//******************************************************************************  

 $("#intmanagerRequestForm").validate({ 
   
 rules: {
     email: {
       required: true,
       email: true
     }
   },
   messages: {
     email: {
       required: "<br>Vi trenger din epost for &aring; kunne kontakte deg",
       email: "<br>Epost-adressen m&aring; v&aelig;re p&aring; f&oslash;lgende form: navn@domene.no"
     }
   } 
   });
   
//******************************************************************************
//
//                 SLIDELOCK FOR SKJEMA
//     Benytter meg her av jquery.slidelock plugin som ligger i jquery.js fila
//
//******************************************************************************  
   
 //Kaller slidelock plugin på kontaktskjema
 $("#contactForm").slideLock({  
 
 // set the options - all are given, not all are required
   labelText: "F&oslash;r knappen mot h&oslash;yre for &aring; &aring;pne skjema for sending:",
   noteText: "",
   lockText: "L&aring;st",
   unlockText: "&aring;pen",
   iconURL: "../images/arrow_right.png",
   inputID: "sliderInput",
   onCSS: "#333",
   offCSS: "#aaa",
   inputValue: 1,
   saltValue: 9,
   checkValue: 10,
   js_check: "js_check",
   submitID: "#submitButtonContact" 
   
 });  
 
  //Kaller slidelock plugin på supportskjema
  $("#supportForm").slideLock({  
 
 // set the options - all are given, not all are required
   labelText: "F&oslash;r knappen mot h&oslash;yre for &aring; &aring;pne skjema for sending:",
   noteText: "",
   lockText: "L&aring;st",
   unlockText: "&aring;pen",
   iconURL: "../images/arrow_right.png",
   inputID: "sliderInput",
   onCSS: "#333",
   offCSS: "#aaa",
   inputValue: 1,
   saltValue: 9,
   checkValue: 10,
   js_check: "js_check",
   submitID: "#submitButtonSupport" 
   
 });  
 
//******************************************************************************
//
//                FLOATING BOX PÅ AKTUELTSIDE
//
//******************************************************************************     //***********
   
   $(function() {

    var $sidebar   = $("#aktueltListWrapper"),
        $window    = $(window),
        offset     = $sidebar.offset(),
        topPadding = 15;

    $window.scroll(function() {
        if ($window.scrollTop() > offset.top) {
            $sidebar.stop().animate({
                marginTop: $window.scrollTop() - offset.top + topPadding
            });
        } else {
            $sidebar.stop().animate({
                marginTop: 0
            });
        }
    });

});

//*********************************

});//End doc.ready

//*********************************

function test() {
  alert("hei");
};

//******************************************************************************
//
//                  FUNKSJONER
//
//******************************************************************************    



//Metode som tar imot url og gjør området klikkbart
function minMetode(url) {
  
   window.location = ""+url;

};


//*************************************************
//Auto suggestion for søkefelt
//ajax søk ved keyup 
//blar i resultatet ved pil ned eller opp
//************************************************* 
   
var rootPath = "http://dev3.intbuilder.com/intellicom2010/";
var teller = 0;
var orginal = "";
  
function getAutoSuggestion(ev){

  key=((ev.which)||(ev.keyCode)); // sjekk på asci verien til knappen som er trykker
        
  if(key== 38){// pil opp er trykket 
    
    var numberOfResults =document.getElementById("suggestionAjaxBox").getElementsByTagName("a").length;   // henter antallet a tagger i resultatet
    if(--teller < 0)teller = numberOfResults;  // om man er på resultat 0 og trykker opp blir teller satt til høyeste verdi -  altså bunnen av resultatboksen
    if (element = document.getElementById("res" + teller)) element.className = "selectedSearch";  //  om det finnes et resultat for telleren så sett det som valgt
    if (element = document.getElementById("res" + (teller + 1))) element.className = "notSelected";    // om det finnes et resultat for høyere teller ( forrige) så sett det som ikke valgt
    if (element = document.getElementById("res" + teller)) document.getElementById("searchfield").value = element.innerHTML; // om det finnes et resultat for valgt teller så sett denne verdien i input feltet
    else document.getElementById("searchfield").value = orginal;  // ellers (om man er tilbake på 0 teller) så sett feltet slik det var
    
  }else if(key == 40){// pil ned  trykket
      
    var numberOfResults =document.getElementById("suggestionAjaxBox").getElementsByTagName("a").length;
    if(++teller > numberOfResults){
	    document.getElementById("res"+(teller-1)).className = "notSelected";
      teller =0;
    }
    if (element = document.getElementById("res" + teller)) element.className = "selectedSearch";
    if (element = document.getElementById("res" + (teller - 1))) element.className = "notSelected";
    if (element = document.getElementById("res" + teller)) document.getElementById("searchfield").value = element.innerHTML;
    else document.getElementById("searchfield").value = orginal; 
   
  }else{
	    
    orginal = document.getElementById("searchfield").value;     // lagre brukerinputten i orginal strengen (så den kan hentes opp igjen)
	  getSuggestionForWord( document.getElementById("searchfield").value);  // kall på AJAX greiene
	  teller =0;
   
  }
}
  
  
// HOVED FUNKSJONEN FOR FORSLAGSØKET
function loadSuggestionXMLDoc(url,cfunc)
{     
  if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
    suggestionXmlhttp=new XMLHttpRequest();
  }
  else
  {// code for IE6, IE5
    suggestionXmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
  suggestionXmlhttp.onreadystatechange=cfunc;
  suggestionXmlhttp.open("POST",url,true);
  suggestionXmlhttp.send();
}

// callbackfunksjon for forslagssøket
 function getSuggestionForWord(x)
{    

  loadSuggestionXMLDoc(rootPath+"ajax/updatesuggestions.aspx/?cmd="+x,function()
  {
    if (suggestionXmlhttp.readyState==4 && suggestionXmlhttp.status==200)
    {  
      document.getElementById("suggestionAjaxBox").innerHTML=suggestionXmlhttp.responseText;
   
    }
  });  
}


//*************************************************
//Auto suggestion for supportfelt
//ajax søk ved keyup 
//blar i resultatet ved pil ned eller opp
//************************************************* 

var counter = 0;
var org = "";
  
function getCompanySuggestion(ev){

  key=((ev.which)||(ev.keyCode)); // sjekk på asci verien til knappen som er trykker
        
  if(key== 38){// pil opp er trykket 
    
    var numberOfResults = document.getElementById("companySuggestionAjaxBox").getElementsByTagName("h3").length;   // henter antallet a tagger i resultatet
    if(--counter < 0)counter = numberOfResults;  // om man er på resultat 0 og trykker opp blir teller satt til høyeste verdi -  altså bunnen av resultatboksen
    if (element = document.getElementById("res" + counter)) element.className = "companySelectedSearch";  //  om det finnes et resultat for telleren så sett det som valgt
    if (element = document.getElementById("res" + (counter + 1))) element.className = "companyNotSelected";    // om det finnes et resultat for høyere teller ( forrige) så sett det som ikke valgt
    if (element = document.getElementById("res" + counter)) document.getElementById("companySupportField").value = element.innerHTML; // om det finnes et resultat for valgt teller så sett denne verdien i input feltet
    else document.getElementById("companySupportField").value = org;  // ellers (om man er tilbake på 0 teller) så sett feltet slik det var
    
  }else if(key == 40){// pil ned  trykket
      
    var numberOfResults =document.getElementById("companySuggestionAjaxBox").getElementsByTagName("h3").length;
    if(++counter > numberOfResults){
	    document.getElementById("res"+(counter-1)).className = "companyNotSelected";
      counter =0;
    }
    if (element = document.getElementById("res" + counter)) element.className = "companySelectedSearch";
    if (element = document.getElementById("res" + (counter - 1))) element.className = "companyNotSelected";
    if (element = document.getElementById("res" + counter)) document.getElementById("companySupportField").value = element.innerHTML;
    else document.getElementById("companySupportField").value = org; 
   
  }else if(key == 13){// enter  trykket
    document.Response.Write("enter");
   
  }else{
	    
    org = document.getElementById("companySupportField").value;     // lagre brukerinputten i orginal strengen (så den kan hentes opp igjen)
	  getSuggestionForCompany( document.getElementById("companySupportField").value);  // kall på AJAX greiene
	  counter =0;
   
  }
} //End getCompanySuggestion
  
  
// HOVED FUNKSJONEN FOR KUNDEFORSLAGSØKET
function loadCompanySuggestionXMLDoc(url,cfunc)
{     
  if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
    companySuggestionXmlhttp=new XMLHttpRequest();
  }
  else
  {// code for IE6, IE5
    companySuggestionXmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
  companySuggestionXmlhttp.onreadystatechange=cfunc;
  companySuggestionXmlhttp.open("POST",url,true);
  companySuggestionXmlhttp.send();
  
}//End loadCompanySuggestionXMLDoc

// callbackfunksjon for kundeforslagssøket
 function getSuggestionForCompany(x)
{    

  loadCompanySuggestionXMLDoc(rootPath+"ajax/updateCompanySuggestions.aspx/?searchword="+x,function()
  {
    if (companySuggestionXmlhttp.readyState==4 && companySuggestionXmlhttp.status==200)
    {  
      document.getElementById("companySuggestionAjaxBox").innerHTML=companySuggestionXmlhttp.responseText;
   
    }
  });  
}//End getSuggestionForCompany


/*************** ENDOLITES *********************/

