// AJAX STUFF!!
function createRequestObject() {
    var ro;
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer"){
        ro = new ActiveXObject("Microsoft.XMLHTTP");
    }else{
        ro = new XMLHttpRequest();
    }
    return ro;
}

var http = createRequestObject();

function sndReq() {
    action = document.getElementById("user").value;
	http.open('get', 'code/glemt_passord.lasso?epost='+ action);
    http.onreadystatechange = handleResponse;
    http.send(null);
}
// Send search
function sndReq2(action) {
    http.open('get', 'content/list_ajax.lasso?sok='+action);
    http.onreadystatechange = handleResponse;
    http.send(null);
}
function sndMyGar(action) {
    http.open('get', 'content/list_gar.lasso?sok='+action);
    http.onreadystatechange = handleResponse;
    http.send(null);
}

function handleResponse() {
    if(http.readyState == 4){
        var response = http.responseText;
    //    var update = new Array();

    //    if(response.indexOf('|' != -1)) {
    //        update = response.split('|');
            document.getElementById('glemt_passord').innerHTML = response;
        //    alert (response);
       // }
    }
}

// COMMON FUNCTIONS 

function showHide(element) {
	styleObj = document.getElementById(element).style; 
	if (styleObj.display == 'none') {styleObj.display = ''}
	else {styleObj.display = 'none'}	
	}
function shiftAbs(element) {
	styleObj = document.getElementById(element).style;
	styleObj.position='relative';
	styleObj.top='0';
	}
// Funksjon for aa legge til en onClick event paa hele siden
function addOnclickEvent(func) {
 	    var oldonclick = document.onclick;
 	
 	    if (typeof document.onclick != 'function') {
 	        document.onclick = func;
 	    } else {
 	        document.onclick = function() {
	            oldonclick();
 	            func();
 	        }
 	    }
}
// Funksjon for popup
// Bruk: legg til class "popup" i linken som Aapner linken i ekstern vindu
// Optional: legg til "height=xx" og "width="xx" for aa definere stoerr. paa vinduet
myOnclick = function(e)
{
  var target = e ? e.target : window.event.srcElement;

  while (target && !/^(a|body)$/i.test(target.nodeName))
  {
    target = target.parentNode;
  }

  if (target && (target.className=='popup'))
      {  
	if (target.getAttribute('width') && target.getAttribute('height'))
	{
		var w = target.getAttribute('width');
		var h = target.getAttribute('height');
		var config = "width="+w+",height="+h;
	    var external = window.open(target.href,"window",config);
	}
	else
		  {
		    var external = window.open(target.href);
		  }
		  return external.closed;
	}		  
}
addOnclickEvent(myOnclick);

// Autofill postnummer
function lookup(inputString,target) {
    if(inputString.length == 4) {
            $.post("content/postnr.lasso", {postnr: ""+inputString+""}, function(data){
            if(data.length >0) {
              $('#'+target).val(data);
            }
        });
    }
}

	function confirmDelete(){
		 return confirm('Vil du virkelig slette denne posten?');}
	function confirmAdd(){
		 return confirm('Er du sikker at all informasjon er riktig?');}

/* JQUERY *** */
$(document).ready(function() {


$("input textarea").focus(function() {
	$(this).addClass("focus");
})
$("input textarea").blur(function() {
	$(this).removeClass("focus");
})

	
	$("a.showreg").click(function () {
	 $("#regskjema").toggle("slow");
	 $("a.showreg span").toggle();	 
    });
    /* Autosuggest pumpemod */
 $("#pumpemod").autocomplete("code/sql.php", {
		minChars: 3,
		delay: 400,
		width: 260,
		autoFill:true,
		selectFirst: true,
		formatItem: formatItem2,
		formatResult: formatResult2
	});   
   
    /* Autosuggest Finnforhandler */
 	function formatItem(row) {
		// var row = row.split("|");
		return "(" + row[4] + ") " + row[1];
	}
	function formatItem2(row) {
		return  row[2];
	}
	function formatResult(row) {
		return row[1];
	}
	function formatResult2(row) {
		return row[2];
	}
	$("#finnForh").autocomplete("code/finnForhandler.php", {
		minChars: 2,
		delay: 400,
		width: 260,
		autoFill:true,
		selectFirst: true,
		formatItem: formatItem,
		formatResult: formatResult
	});

 	$("#finnForh").result(function(event, data, formatted) {
         $("input#forhandler").val(data[1]);
         $("input#forh_adr").val(data[2]);
         $("input#forh_postnr").val(data[3]);
         $("input#forh_sted").val(data[4]);
         $("input#forh_tel").val(data[5]);
         $("input#forh_mail").val(data[6]);
         $("#finnForh").val("");
	});	
	var montClass = $("#montor_navn").find("option:selected").attr("title");
	var montEpost = $("#montor_navn").find("option:selected").attr("id");
	var montVal = $("#montor_navn").find("option:selected").val();
	
	$("#montor_tlf").val(montClass);
	$("#montor_epost").val(montEpost);
	$("#montor_navn").change(function(){
		var montClass = $("#montor_navn").find("option:selected").attr("title");
		var montEpost = $("#montor_navn").find("option:selected").attr("id");
		$("#montor_tlf").val(montClass);
		$("#montor_epost").val(montEpost);
	});

	$("input.tekst").focus(function() {
	$(this).addClass("aktiv") })
	.blur(function() {
	$(this).removeClass("aktiv");
	});
		
	$("input.send").mouseover(function() {
	$(this).addClass("sendover") })
	.mouseout(function() {
	$(this).removeClass("sendover");
	});
	
	$("input.regbutton").mouseover(function() {
	$(this).addClass("regbuttonOver") })
	.mouseout(function() {
	$(this).removeClass("regbuttonOver");
	});
	
// form validering finansform
var validator = $("#finansform").validate({
		//	debug: true,
			rules: {
				firmanavn: {
					required: true
				},
				org: {
					required: true
				},
				kontaktperson: {
					required: true		
				},
				epost: {
						required: true,
						email:true
				},
				telefon: {
						required: true
				}
			 },
			messages:{
				epost: "Ugyldig epost!"
			},
			errorElement: "em",	
			errorPlacement: function(error, element) {
				error.text("obs!").appendTo(element.parent() );
			},
				success: function(label) {
			// set &nbsp; as text for IE
			label.html("&nbsp;").addClass("success");
		}
		});

$("#viftebytte").validate({
		//	debug: true,
			rules: {
				modell: {
					required: true
				},
				innedel: {
					required: true
				},
				utedel: {
					required: true		
				},
				monteringsdato: {
						required: true
				},
				k_navn: {
						required: true
				},
				k_adr: {
						required: true
				},
				k_postnr: {
						required: true
				},
				k_sted: {
						required: true
				},
				montor_navn: {
						required: true
				},
				utfdato: {
						required: true
				}
			},
			messages:{
				
				innedel: "obs!",
				utedel: "obs!",
				adresse: "adresse",
				postnr: "4 tall!",
				sted: "sted!"
			},
			errorElement: "em",	
			errorPlacement: function(error, element) {
				error.text("obs!").appendTo(element.parent() );
			},
			success: function(label) {
				label.text("ok!").addClass("success");
			}
		});

$("#openbox").click(function(){
	 $("#viftebytte").toggle("slow");
    });
// Alternate rowshade
$(".altrows tr:even").addClass("alt")
.mouseover(function() {
	$(this).addClass("over");
})
.mouseout(function() {
	$(this).removeClass("over");
});
/* Leasing page */
$("#newLease").click(function(){
	$("#newLease span").toggle();
	$("#newLeasePost").toggle();
		// Error msg. fades away
	// $("#error").fadeOut("slow");	
});
$("#showLease").click(function(){
	$("#showLeasePost").toggle();
	$("#showLease span").toggle();
	$(".left").toggle();	
});
$("#ikkeferdig").click(function(){
	$("#ikkeferdig span").toggle();
	$(".ekstern_table tr").toggle();
});
$("#ferdig").click(function(){
	$("#ferdig span").toggle();
	$(".ferdig_table tr").toggle();
});
// Aapne avbestill-ruten
$("#cancel").click(function(){
	$("#cancel_comment").toggle();
});
// Ledig pumpe krysses av ved utfylling av flyttet til
$("#flyttetTil").keyup(function(){
	var ledig = $("#ledig");
	if($(this).val().length > 0) {
	ledig.attr("checked","");
	}
	else {ledig.attr("checked","checked")}
});
// form validering ny leasing
var validator = $("#newLeasing").livequery(function(){
	$(this).validate({
		//	debug: true,
			rules: {
				kunde:"required",
				kunde_adr:"required",
				kunde_postnr:{required:true,digits:true,rangelength:[4,4]},
				kunde_sted:"required",
				pumpemod:"required",
				kunde_boligtype:"required",
				inst_id:{required:true},
				kundetype:"required",
				kunde_epost:{email:true}		
			},
			messages:{
				kunde: " ",kunde_adr:" ",kunde_postnr:" ",kunde_sted:" ",pumpemod:" ",
				kunde_boligtype:" ",inst_id:" ",kunde_epost:"",kundetype:""
			},
			errorElement: "em",	
			errorPlacement: function(error, element) {
				error.appendTo(element.parent() );
			},
				success: function(label) {
			// set &nbsp; as text for IE
			label.html("&nbsp;").addClass("success");
		}
		});
	});
// form validering ny leads
var validator = $("#newLeads").livequery(function(){
	$(this).validate({
		//	debug: true,
			rules: {
				kunde:"required",
				kunde_adr:"required",
				kunde_postnr:{required:true,digits:true,rangelength:[4,4]},
				kunde_sted:"required",
				kunde_tel:"required",
				kunde_boligtype:"required",
				kundetype:"required",
				kundekontakt:"required",
				kunde_epost:{email:true}		
			},
			messages:{
				kunde: " ",kunde_adr:" ",kunde_postnr:" ",kunde_sted:" ",kunde_tel:" ",
				kunde_boligtype:" ",kundetype:" ",kundekontakt:" "
			},
			errorElement: "em",	
			errorPlacement: function(error, element) {
				error.appendTo(element.parent() );
			},
				success: function(label) {
			// set &nbsp; as text for IE
			label.html("&nbsp;").addClass("success");
		}
		});
	});
	// Expanding textareas //
	$('textarea.expanding').autogrow({
	//	maxHeight: 100
		minHeight: 45,
		lineHeight: 12
	});
		// Sortable tables
	$(".tablesorter").tablesorter({ 
        headers: { 
            10: {sorter: false} 
            	}
            , widgets: ['zebra']	
            });
	$(".tablesorterCancel").tablesorter({ 
        headers: { 
            10: {sorter: false}
            , widgets: ['zebra']
            	}
            });
	$(".tablesorterIkkeFerdig").tablesorter({ 
        headers: { 
            widgets: ['zebra']
            	}
            });	
	$(".tablesorterIkkeGaranti").tablesorter({ 
        headers: { 
            widgets: ['zebra']
            	}
            });	  
	$(".tablesorterLeads").tablesorter({ 
        headers: { 
            widgets: ['zebra']
            	}
            });
// form validering feklamasjonsform
var validator5 = $("#nyrek").validate({
		//	debug: true,
			rules: {
				montornavn:"required",
				rekl_kom:"required",
				montor_tlf:"required",
				montor_epost:{required:true,email:true},
				servicedato: {
							required: "#ikkeservice:unchecked",
							minlength: 6
				}
			 },
			messages:{
				montor_navn: " ",
				rekl_kom:" ",
				montor_tlf:" ",
				montor_epost:" ",
				servicedato:" "
			},
			errorElement: "em",	
			errorPlacement: function(error, element) {
				error.text("!").appendTo(element.parent() );
			},
			success: function(label) {
			// set &nbsp; as text for IE
			label.html("&nbsp;").addClass("success");
			}
		});
// Insert new comment after opened CLAIM
$("#reopen_rek").click(function(){
var c_txt ="<div><label for='rekl_kom'>Legg til info:</label></div><div><textarea class='rekl_kom' name='rekl_kom' id='rekl_kom'></textarea></div>";
	$("#new_claim_com").hide().html(c_txt).show("slow");
});
    
// Autoupdate reklamasjons faktura-ok
$(".rekOK").click(function(){
	var p_id = $(this).val();
	var par = $(this).parent();
	$.post("code/dbfunctions.lasso", {q:""+p_id+""}, function(data){
			// alert($(this).html);
		 $(par).html(data);
	});
});
// Legg til salgsart. linjer i SALG
var si = 1;
$('#add_art').click(function(){
	$('#salgarts').append('<div><label for="art'+ si +'">Artikkelnavn:</label><input type="text" name="artikkel'+ si +'" id="art'+ si +'" /><label for="sett'+ si +'" class="small">Sett:</label><input class="radio" type="radio" name="sett'+ si +'" id="sett'+ si +'" value="'+ si +'" /><label for="sing'+ si +'" class="small">Single:</label><input class="radio" type="radio" name="sett'+ si +'" id="sing'+ si +'" value="2" /><label for="artant'+ si +'" class="small">Antall:</label><input class="ant" type="text" name="artantall'+ si +'" id="artant'+ si +'"><input type="hidden" name="end" vale="1" /> <img src="images/cancel.png" class="slett" alt="slett" title="Slett denne linjen!" /></div>');
	si ++;
	});
// Slett artlinjer 
$("#salgform img.slett").livequery('click',function() {
	$(this).parent("div").addClass("fade").fadeOut("slow").remove();
});
$("#salgform").livequery(function() {
		$(this).validate({
		//	debug: true,
			rules: {
				artikkel:"required",artikkel1:"required",artikkel2:"required",artikkel3:"required",artikkel4:"required",artikkel5:"required",
				sett:"required",sett1:"required",sett2:"required",sett3:"required",sett4:"required",sett5:"required",
				artantall:"required",artantall1:"required",artantall2:"required",artantall3:"required",artantall4:"required",artantall5:"required",
				kontaktperson: 	"required",
				levadr:  		"required",
				faktadr:  		"required",
				telefon:  		"required",
				epost: {
						required: true,email:true
				}
			},
			messages:{
				artikkel:" ",artikkel1:" ",artikkel2:" ",artikkel3:" ",artikkel4:" ",artikkel5:" ",
				sett:" ",sett1:" ",sett2:" ",sett3:" ",sett4:" ",sett5:" ",
				artantall:" ",artantall1:" ",artantall2:" ",artantall3:" ",artantall4:" ",artantall5:" ",
				kontaktperson: " ",
				levadr: " ",
				faktadr: " ",
				telefon: " ",
				epost: " "
			},
			errorPlacement: function(error, element) {
			if ( element.is(":radio") )
				error.appendTo( element.parent().next() );
			else if ( element.is(":checkbox") )
				error.appendTo ( element.next() );
			else
				error.appendTo( element.parent() );
			},
			success: function(label) {
			// set &nbsp; as text for IE
			label.html("&nbsp;").addClass("checked");
			}	
		});
	});
// My info siden
$("#kundekontakt").click(function(){
	if ($(this).attr('checked')){
		$("#velgwebpostnr").show("slow")
	} else {$("#velgwebpostnr").hide("slow")}
});
// Tooltip
	tooltip();
/* Montører oppdatering */
$("a.nymont").click(function(){
	$("#new_mont").slideDown().addClass("action");
	$("#new_navn").focus();
});	
// DatePicker ###
	$.datepicker.setDefaults($.extend({showMonthAfterYear: false}, $.datepicker.regional['no']));
	
/*		$("").datepicker({ dateFormat: 'dd-mm-yy',changeMonth: true,changeYear:true,
		 buttonImage: '/teknisk/images/calendar.jpg', showOn:'both',showButtonPanel: true, yearRange: '2000:2012',
		  altField: '#servicedato2', altFormat: 'yy-mm-dd'});
	}); */

	
}); // END ONREADY

/* Autosuggest FinnBesteMontor */
function finnBestMont(inputStr,targetX) {
    if(inputStr.length == 4) {
          $.get("code/finnBestMontor.php", {q: ""+inputStr+""}, function(data){
            if(data.length >0) {
              $('#'+targetX).html(data); 
            } 
        }); 
    }
}


// Default values dissapear in form fields !!
/*
function clearField(obj) {
	if (obj.defaultValue==obj.value) obj.value = '';
}
// This on the form field -> i.ex. value="Name"
onfocus="clearField(this)"
*/

/*
 * Tooltip script 
 * powered by jQuery (http://www.jquery.com)
 * written by Alen Grakalic (http://cssglobe.com)
 * for more info visit http://cssglobe.com/post/1695/easiest-tooltip-and-image-preview-using-jquery
 */

this.tooltip = function(){	
	/* CONFIG */		
		xOffset = 10;
		yOffset = 5;		
		// these 2 variable determine popup's distance from the cursor
		// you might want to adjust to get the right result		
	/* END CONFIG */		
	$("a.tooltip, .tooltip").hover(function(e){											  
		this.t = this.title;
		this.title = "";									  
		$("body").append("<p id='tooltip'>"+ this.t +"</p>");
		$("#tooltip")
			.css("top",(e.pageY - xOffset) + "px")
			.css("left",(e.pageX + yOffset) + "px")
			.fadeIn("fast");		
    },
	function(){
		this.title = this.t;		
		$("#tooltip").remove();
    });	
	$("a.tooltip, .tooltip").mousemove(function(e){
		$("#tooltip")
			.css("top",(e.pageY - xOffset) + "px")
			.css("left",(e.pageX + yOffset) + "px");
	});			
};

