jQuery(document).ready(function () {
	//====================================================================================================//
	// SPECIAL FUNCTIONS:
	//====================================================================================================//
		function toggle() {
			var attr = jQuery(this).attr('alt').substr(7).split(',');
			for (var f = 0; f < attr.length; f++) {
				var target = jQuery('input[name="' + pages[current] + '_' + attr[f] + '"]');
				target.parent().toggleClass('hidden');
				if (target.attr('disabled')) target.removeAttr('disabled');
				else target.attr('disabled', 'disabled');
				if (target.attr('rel') == 'R') target.attr('rel', 'r');
				else if (target.attr('rel') == 'r') target.attr('rel', 'R');
			}
		}
		function disabl () {
			var attr = jQuery(this).attr('alt').substr(7).split(',');
			for (var f = 0; f < attr.length; f++) {
				var target = jQuery('input[name="' + pages[current] + '_' + attr[f] + '"]');
				if (target.attr('disabled')) target.removeAttr('disabled');
				else target.attr('disabled', 'disabled').removeClass('error');
				if (target.attr('rel') == 'R') target.attr('rel', 'r');
				else if (target.attr('rel') == 'r') target.attr('rel', 'R');
			}
		}
		
		function choice () {
			switch (jQuery(this).val().substr(0,2)) {
				case 'ku':
					jQuery('#nettleie-kraftavtale').slideUp(speed);
					jQuery('#nettleie-kraftavtale input').attr('disabled', 'true');
					jQuery('#nettleie-liste').slideUp(speed);
				break;
				case 'be':
					jQuery('#nettleie-liste').slideUp(speed);
					jQuery('#nettleie-kraftavtale input').attr('disabled', '');
					if (jQuery('#nettleie-kraftavtale').html() == '') {
						jQuery.post('fileadmin/script/stromskjema/kraftavtale.php', {}, function (data) {
							jQuery('#nettleie-kraftavtale').append(data);
							jQuery('#nettleie-kraftavtale').slideDown(speed);
						}, 'text');
					} else {
						jQuery('#nettleie-kraftavtale').slideDown(speed);
					}
					
				break;
				case 'se':
					jQuery('#nettleie-kraftavtale').slideUp(speed);
					jQuery('#nettleie-kraftavtale input').attr('disabled', 'true');
					if (jQuery('#nettleie-liste').html() == '') {
						jQuery.post('fileadmin/script/stromskjema/liste.php', {}, function (data) {
							jQuery('#nettleie-liste').html(data);
							jQuery('#nettleie-liste').slideDown(speed);
						}, 'text');
					} else {
						jQuery('#nettleie-liste').slideDown(speed);
					}
				break;
			}
		}
		
		function fillin () {
			if (jQuery('input[name="personalia_kundetype"]:checked').val() == 'Privatperson') {
				jQuery('input[name="personalia_navn"]').val('Per Hansen').removeClass('error');
				jQuery('input[name="personalia_fdato"]').val('050982').removeClass('error');
			} else {
				jQuery('input[name="personalia_bedriftnavn"]').val('Ringeriks-kraft').removeClass('error');
				jQuery('input[name="personalia_orgnr"]').val('976957628').removeClass('error');
			}
			jQuery('input[name="personalia_tlf"]').val('99885533').removeClass('error');
			jQuery('input[name="personalia_epost"]').val('per@hansen.com').removeClass('error');
		}
		
		function duplicate () {
			var content = jQuery('#malerpunkt div:first');
			var html = content.html();
			content.parent().append('<div>' + numberate(html) + '</div>');
			jQuery('#malerpunkt div:last a').click(removePoint);
			jQuery('#malerpunkt input[name="' + pages[current] + '_sammeadresse' + malerpunktId + '"]').click(toggle);
			jQuery('#malerpunkt div:last').hide().slideDown('fast');
			malerpunktId++;
		}
		function removePoint () {
			var current = jQuery(this).parent().parent().parent().parent().parent();
			current.slideUp('fast', function () {
				jQuery(this).remove();
			});
			return false;
		}
		function numberate (html) {
			html = html.replace(/disabled/g, '');
			html = html.replace(/#/g, malerpunktId);
			html = html.replace(/rel="R"/g, 'rel="r"');
			return html;
		}
		
		function postnr () {
			/*var target = jQuery('input[name="' + pages[current] + '_' + jQuery(this).attr('alt').substr(7) + '"]');
			if (target.val().length == 4 && jQuery(this).attr('title') != target.val()) {
			
				jQuery.post('fileadmin/script/stromskjema/postnr.php', {postnr: target.val()}, function (data) {
					jQuery('#bekreftdata').html(data);
						jQuery(this).val(data);
					}, 'text');
			}*/
		}
		
	//====================================================================================================//
	// PROTOTYPE:
	//====================================================================================================//
		Array.prototype.has = function(value) {
			var i;
			for (var i = 0, loopCnt = this.length; i < loopCnt; i++) {
				if (this[i] === value) {
					return true;
				}
			}
			return false;
		};
	
	//====================================================================================================//
	// FUNCTIONS:
	//====================================================================================================//
		function removeError () {
			jQuery(this).removeClass('error');
			jQuery(this).unbind('keypress');
		}
		
		function validatePage () {
			pageOk = true;
			jQuery('#' + pages[current] + ' input').each(function () {
				if (jQuery(this).val() == '' && jQuery(this).attr('rel') == 'r') {
					jQuery(this).addClass('error');
					jQuery(this).keypress(removeError);
					pageOk = false;
				}
			});
			return pageOk;
			//return true;
		}
		
		/*function isNumeric () {
			if(e.keyCode==13){
				jQuery('#output').text('13');
			}

			
			
			/*var originalValue = jQuery(this).val();
			var newValue = parseInt(originalValue);
			if (newValue >= 0 && newValue <= 999999999999) jQuery(this).val(newValue);
			else jQuery(this).val(originalValue);*/
		//}
		
		function switchPage (old) {
			jQuery('#' + pages[old]).slideToggle(speed, function () {
				//Toggle navlinks:
				jQuery('#navlinks a').removeClass('active');
				jQuery('#navlinks_' + current).addClass('active');
				
				//Toggle Neste/Send:
				if (current == total) {
					jQuery('#btnNeste').hide();
					jQuery('#btnSend').show();
				}
				else {
					jQuery('#btnSend').hide();
					jQuery('#btnNeste').show();
				}
				
				//Toggle Forrige->disabled:
				if (current == 0) {
					jQuery('#btnForrige').addClass('disabled');
				} else {
					jQuery('#btnForrige').removeClass('disabled');
				}
				
				//Generate confirmation:
				if (pages[current] == 'bekreft') {
					//jQuery('#bekreftdata').hide();
					jQuery.post('fileadmin/script/stromskjema/bekreft.php', jQuery('#stromskjemaer').serializeArray(), function (data) {
						jQuery('#bekreftdata').html(data);
						//jQuery('#bekreftdata').show();
					}, 'text');
				}
				
				//Slide in new page:
				jQuery('#' + pages[current]).slideToggle(speed);
			});
		}
		
		function navClick () {
			var old = current;
			switch (jQuery(this).attr('id')) {
				case 'btnForrige':
					if (current > 0) current--;
				break;
				case 'btnNeste':
					if (current < total && validatePage()) {
						current++;
						if (alias == 'bestillekraftavtale' && pages[current] == 'boligdubestillerkraftavtaletil') {
							var hvilkenkraftavtale = jQuery('input[name=kraftavtale_hvilkenkraftavtale]:checked').val().substring(0,4);
							//malerpunktid,naverendemalerstand,avlestdato
							if (hvilkenkraftavtale == 'Fast') {
								jQuery('input[name='+pages[current]+'_malerpunktid]').attr('disabled', 'disabled').parent().hide();
								jQuery('input[name='+pages[current]+'_naverendemalerstand]').attr('disabled', 'disabled').attr('rel', 'R').parent().hide();
								jQuery('input[name='+pages[current]+'_avlestdato]').attr('disabled', 'disabled').attr('rel', 'R').parent().hide();
							} else {
								jQuery('input[name='+pages[current]+'_malerpunktid]').removeAttr('disabled').parent().show();
								jQuery('input[name='+pages[current]+'_naverendemalerstand]').removeAttr('disabled').attr('rel', 'r').parent().show();
								jQuery('input[name='+pages[current]+'_avlestdato]').removeAttr('disabled').attr('rel', 'r').parent().show();
							}
						}
					}
				break;
				case 'btnSend':
					var sendOk = true;
					if (jQuery('#vilkar').length > 0) {
						if (jQuery('#bekreft input[name="bekreft_avtalevilkar"]:checked').val() == null) {
							sendOk = false;
						}
						if (jQuery('#bekreft input[name="bekreft_standardvilkar"]:checked').val() == null) {
							sendOk = false;
						}
						if (jQuery('#thor').length > 0) {
							if (jQuery('#bekreft input[name="bekreft_fullmakt"]:checked').val() == null) {
								sendOk = false;
							}
						}
					}
					
					if (sendOk) {
						jQuery('#vilkar').remove();
						jQuery.post('fileadmin/script/stromskjema/send.php', {content: jQuery('#bekreftdata').html()}, function (status) {
							if (status == 'ok') {
								jQuery('#' + pages[current]).fadeOut(speed, function () {
									jQuery('#stromskjemaer').remove();
									jQuery('#navknapper').remove();
									jQuery('#maincontent').append('<p>Takk for din henvendelse.</p><p><a href=\"http://www.ringeriks-kraft.no\">Klikk her for &aring; g&aring; tilbake til forsiden.</a></p>');
								});
							} else {
								jQuery('#stromskjemaer').remove();
								jQuery('#navknapper').remove();
								jQuery('#maincontent').append('<p>Det oppstod en feil ved sendingen av skjemaet... Vennligst pr&oslash;v igjen senere.</p><p><a href=\"http://www.ringeriks-kraft.no\">Klikk her for &aring; g&aring; tilbake til forsiden.</a></p>');
							}
						}, 'text');
					} else {
						jQuery('#senderror').slideDown(speed);
					}
				break;
				default:
					if (jQuery(this).attr('href') < current) {
						current = jQuery(this).attr('href');
					} 
				break;
			}
			if (old != current) switchPage(old);
			return false;
		}
	
	//====================================================================================================//
	// TOOLTIP: 
	//====================================================================================================//
		jQuery('label img').hover(function (e) {
			jQuery('body').append('<p id="tooltip">' + jQuery(this).attr('title') + '</p>');
			jQuery(this).attr('title', '');
			jQuery("#tooltip").css('top', (e.pageY + 10) + 'px').css('left', (e.pageX + 10) + 'px').fadeIn('fast');
		}, function () {
			jQuery(this).attr('title', jQuery('#tooltip').html());
			jQuery('#tooltip').remove();
		});
		
	//====================================================================================================//
	// SETUP: 
	//====================================================================================================//
	var pages = new Array();
	jQuery('#stromskjemaer div').each(function () {
		if (jQuery(this).hasClass('form')) {
			pages.push(jQuery(this).attr('id'));
		}
	});
	var alias = jQuery('#global_alias').text();
	var current = 0;
	var total = pages.length - 1;
	var speed = 'fast';
	var click = true;
	var raquo = jQuery('#raquo').html();
	var poststed = '';
	
	jQuery('#' + pages[0]).show();
	jQuery('#btnForrige').addClass('disabled');	
	
	jQuery('#navknapper input').click(navClick);
	jQuery('#navlinks a').click(navClick);
	
	//if (jQuery('#personalia').length) jQuery('input[name=personalia_fyllinnfrakundenr]').click(fyllinnfrakundenr);
	if (jQuery('#vikenskog').length) {
		jQuery('input[name="vikenskog_leggtilmalerpunkt"]').click(duplicate);
		var malerpunktId = 1;
		duplicate();
	}
	
	if (jQuery('#befaring').length) {
		jQuery('#vilkar').remove();
	}
	
	for (var n = 0; n <= total; n++) {
	
		//alert(jQuery('input[name="' + pages[n] + '_postnr"]').attr('name'));
	}
	
	jQuery('#stromskjemaer input').each(function () {
		switch (jQuery(this).attr('alt').substr(0,6)) {
			case 'toggle': jQuery(this).click(toggle); break;
			case 'fillin': jQuery(this).click(fillin); break;
			case 'duplic': jQuery(this).click(duplic); break;
			case 'delids': jQuery(this).click(delids); break;
			case 'postnr': jQuery(this).focus(postnr); break;
			case 'disabl': jQuery(this).click(disabl); break;
			case 'choice': jQuery(this).click(choice); break;
		}
	});
	
	jQuery('input[alt=toggle]').change(function () {
		jQuery(this).parent().parent().next().toggleClass('hidden');
		jQuery(this).parent().parent().next().next().toggleClass('hidden');
	});
	
	/*jQuery('input[alt="n"]').bind('keypress', function(e) {
		var w = e.which;
		var k = e.keyCode;
		if (w==48 || w==49 || w==50 || w==51 || w==52 || w==53 || w==54 || w==55 || w==56 || w==57 || k==8 || k==9 || k==37 || k==39) return true;
		else return false;
	});*/
	
	

});
