// FRONT END UNIVERSAL FUNCTIONS
function initiatePage(editmode, username, asset, language) {
	// EVENTS BEFORE DOM STARTS
	// initiate tiny MCE
	if (editmode==1) { initiateEditor(); }
	
	// EVENTS WHEN DOM READY
	window.addEvent('domready', function(){
		// do not initiate components in the edit mode
		if (editmode==0) {
			initiateSlides();
			initiateAccordion();
			initiateToggler();
			initiateGallery(asset);
			cancelConfirm();
		}
				
		if (username=="guest") { initiateLoginForm(); }
	
		// add edit mode green tags (won't save if invalid session)
		if (editmode==1) { applyEditMode(language); }
		
		// initiate png fix
		// $$('img.fixPNG').each(function(png) {fixPNG(png)});	
	});
}

function initiateLoginForm() {
	// reset the fields if clicked
	$('username').addEvent('focus', function(){
		// clear field if default
		value = this.getProperty('value');
		if (value=="username") this.setProperty('value','');
		// clear error styles
		this.removeClass('error');
		});	
	$('username').addEvent('click', function(){
		// clear field if default
		value = this.getProperty('value');
		if (value=="username") this.setProperty('value','');
		// clear error style	
		this.removeClass('error');
		});
	$('username').addEvent('blur', function(){
		// repopulate field if default
		value = this.getProperty('value');
		if (value=="") this.setProperty('value','username');
		// clear error styles
		this.removeClass('error');
		});	
	$('password').addEvent('focus', function(){
		// clear field if default
		value = this.getProperty('value');
		if (value=="password") this.setProperty('value','');
		// clear error style	
		this.removeClass('error');		
		});	
	$('password').addEvent('click', function(){
		// clear field if default
		value = this.getProperty('value');
		if (value=="password") this.setProperty('value','');
		// clear error style	
		this.removeClass('error');		
		});
	$('password').addEvent('blur', function(){
		// clear field if default
		value = this.getProperty('value');
		if (value=="") this.setProperty('value','password');
		// clear error style	
		this.removeClass('error');		
		});	
}

function initiateAccordion() {
	//alert('ppppp88');	 
	var accordion = new Accordion('h3.atStart', 'div.atStart', {
		opacity: true,
		onActive: function(toggler, element){
			toggler.setStyle('background-color', '#FFFFFF');
		},
	 
		onBackground: function(toggler, element){
			toggler.setStyle('background-color', '#dddddd');
		}
	}, $('accordion'));	
	//alert('xxxx777');
	
}

function initiateToggler() {
	toggRoller = $$('.toggler');
		toggRoller.each(function(element) {
			fx = new Fx.Styles(element, {duration:200, wait:false});	 
			element.addEvent('mouseenter', function(){
				fx.start({
					'padding-left': 23,
					'width': '559px'
				});
			});
		 
			element.addEvent('mouseleave', function(){
				fx.start({
					'padding-left': 18,
					'width': '564px'
				});
			});	 
		});
}

function initiateSlides() {
	mySlide0 = new Fx.Slide('extender0');
	$('mainNav0').addEvent('click', function(e){
		e = new Event(e);
		mySlide0.toggle();
		e.stop();
	});
	mySlide1 = new Fx.Slide('extender1');
	$('mainNav1').addEvent('click', function(e){
		e = new Event(e);
		mySlide1.toggle();
		e.stop();
	});
	mySlide2checker = $('mainNav2');
	if (mySlide2checker != null) {
		mySlide2 = new Fx.Slide('extender2');
		$('mainNav2').addEvent('click', function(e){
			e = new Event(e);
			mySlide2.toggle();
			e.stop();
		});
	}
	mySlide3checker = $('mainNav3');
	if (mySlide3checker != null) {
		mySlide3 = new Fx.Slide('extender3');
		$('mainNav3').addEvent('click', function(e){
			e = new Event(e);
			mySlide3.toggle();
			e.stop();
		});
	}
	mySlide4checker = $('mainNav4');
	if (mySlide4checker != null) {
		mySlide4 = new Fx.Slide('flags');
		$('mainNav4').addEvent('click', function(e){
			e = new Event(e);
			mySlide4.toggle();
			e.stop();
		});
	}
}

function initiateGallery(asset) {
	
	var galleryDiv = $('myGallery');
	
	if (galleryDiv != null) {
		var myGallery = new gallery($('myGallery'), {
			timed: true,
			defaultImage: asset
		  });
	}
}                           
			    
function followLink(url) {
// redirect only if not in edit mode
	if (editmode != 1) { 	
		// if a local url, open in the same window
		if (url.indexOf(appPath)!=-1) { 
			location.href = url;
		} else {
		// if a link to a different website, open in a new window		
			window.open(url, '_blank')
		}
	}
};

function cancelConfirm() {
	myCancelButton1 = $('cancel_sub');
	myCancelButton2 = $('cancel_confirm');
	if (myCancelButton2 != null) {
		myCancelButton2.setStyle('opacity', '0');
		myCancelButton1.addEvent('click', function(){
			myCancelButton2.setStyle('opacity', '100');
			myCancelButton2.setStyle('font-weight', 'bold');
			myCancelButton1.setStyle('color', '#787878');
		});
	}
};

function fixPNG(myImage) {
	try {
		arVersion = navigator.appVersion.split("MSIE");
		version = parseFloat(arVersion[1]);
		if ((version >= 5.5) && (version < 7) && (document.body.filters)){
			myImage = $(myImage);
			width = $(myImage).offsetWidth;
			height = $(myImage).offsetHeight;
			imgID = (myImage.id) ? "id='" + myImage.id + "' " : "";
			imgClass = (myImage.className) ? "class='" + myImage.className + "' " : "";
			imgTitle = (myImage.title) ? "title='" + myImage.title	+ "' " : "title='" + myImage.alt + "' ";
			imgStyle = "display:inline-block;" + myImage.style.cssText;
			strNewHTML = "<span " + imgID + imgClass + imgTitle
									+ " style=\"" + "width:" + width
									+ "px; height:" + height
									+ "px;" + imgStyle + ";"
									+ "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
									+ "(src=\'" + myImage.src + "\', sizingMethod='scale');\"></span>";
			myImage.outerHTML = strNewHTML;
		}
	} catch(e) {}
};

function outputNewPrice(price, currency, targetId) {
	if ($defined($(targetId))) {
	
		var target = $(targetId);
		var priceStr = '(' + price + ' ' + currency + ')';
		target.setStyle('float', 'none');
		target.setStyle('display', 'inline');
		target.innerHTML = priceStr;
	}
}

function pxLocationSwap(location) {
	
	if(location=='se'){
		var tmp_option1=lang_payment_option1_se_title;
		var tmp_option2=lang_payment_option2_se_title;
		
		 var tmp_product1_value=string_product1_value_se;
		  var tmp_product2_value=string_product2_value_se;
		
	}else{
		var tmp_option1=lang_payment_option1_title;
		var tmp_option2=lang_payment_option2_title;
		var tmp_product1_value='1 month payment';
		var tmp_product2_value='1 month subscription';
	}
	
	var ele_product1=$('product1');
	var ele_product2=$('product2');
	if ($defined(ele_product1)) {
		ele_product1.value = tmp_product1_value;
	}
	if ($defined(ele_product2)) {
		ele_product2.value = tmp_product2_value;
	}
			
	
	switch(location) {
		case 'blank':
			$('paymentOptionsHidden').setStyle('display', 'none');
			$('option_sms').setStyle('display', 'none');
			$('option_nosms').setStyle('display', 'none');
		break;
		case 'no':
		    $('diff_se').innerHTML=tmp_option1;
			if ($defined($('diff_se_op2'))) {
				$('diff_se_op2').innerHTML = tmp_option2;
			}
			$('paymentOptionsHidden').setStyle('display', 'block');
			$('option_sms').setStyle('display', 'inline');
			$('option_nosms').setStyle('display', 'none');
			currency = 'NOK';
			priceOneMonthSMS = '55';
			priceMonthlyCC = '40';
			price3MonthCC = '112';
			price6MonthCC = '215';
			price12MonthCC = '398';
			outputNewPrice(priceOneMonthSMS, currency, 'priceTitle1');
			outputNewPrice(priceMonthlyCC, currency, 'priceTitle2');
			outputNewPrice(price3MonthCC, currency, 'priceTitle3');
			outputNewPrice(price6MonthCC, currency, 'priceTitle4');
			outputNewPrice(price12MonthCC, currency, 'priceTitle5');
		break;
		case 'dk':
		    $('diff_se').innerHTML=tmp_option1;
			if ($defined($('diff_se_op2'))) {
					$('diff_se_op2').innerHTML = tmp_option2;
				}
			$('paymentOptionsHidden').setStyle('display', 'block');
			$('option_sms').setStyle('display', 'inline');
			$('option_nosms').setStyle('display', 'none');
			currency = 'DKK';
			priceOneMonthSMS = '55';
			priceMonthlyCC = '40';
			price3MonthCC = '112';
			price6MonthCC = '215';
			price12MonthCC = '398';
			outputNewPrice(priceOneMonthSMS, currency, 'priceTitle1');
			outputNewPrice(priceMonthlyCC, currency, 'priceTitle2');
			outputNewPrice(price3MonthCC, currency, 'priceTitle3');
			outputNewPrice(price6MonthCC, currency, 'priceTitle4');
			outputNewPrice(price12MonthCC, currency, 'priceTitle5');
		break;
		case 'se':
		   
			
			$('diff_se').innerHTML=tmp_option1;
			if ($defined($('diff_se_op2'))) {
				$('diff_se_op2').innerHTML = tmp_option2;
			}
			$('paymentOptionsHidden').setStyle('display', 'block');
			$('option_sms').setStyle('display', 'inline');
			$('option_nosms').setStyle('display', 'none');
			currency = 'SEK';
			priceOneMonthSMS = '50';
			priceMonthlyCC = '50';
			price3MonthCC = '140';
			price6MonthCC = '270';
			price12MonthCC = '500';
			outputNewPrice(priceOneMonthSMS, currency, 'priceTitle1');
			outputNewPrice(priceMonthlyCC, currency, 'priceTitle2');
			outputNewPrice(price3MonthCC, currency, 'priceTitle3');
			outputNewPrice(price6MonthCC, currency, 'priceTitle4');
			outputNewPrice(price12MonthCC, currency, 'priceTitle5');
		break;
		case 'en':
		    $('diff_se').innerHTML=tmp_option1;
			if ($defined($('diff_se_op2'))) {
				$('diff_se_op2').innerHTML = tmp_option2;
			}
			$('paymentOptionsHidden').setStyle('display', 'block');
			$('option_sms').setStyle('display', 'none');
			$('option_nosms').setStyle('display', 'inline');
			currency = 'EURO';
			priceOneMonthSMS = '7,5';
			priceMonthlyCC = '5';
			price3MonthCC = '14';
			price6MonthCC = '27';
			price12MonthCC = '50';
			outputNewPrice(priceOneMonthSMS, currency, 'priceTitle1');
			outputNewPrice(priceMonthlyCC, currency, 'priceTitle2');
			outputNewPrice(price3MonthCC, currency, 'priceTitle3');
			outputNewPrice(price6MonthCC, currency, 'priceTitle4');
			outputNewPrice(price12MonthCC, currency, 'priceTitle5');
		break;
		default:
			$('paymentOptionsHidden').setStyle('display', 'none');
			$('option_sms').setStyle('display', 'none');
			$('option_nosms').setStyle('display', 'none');
		break;
	}
};

function paymentPageLoad(location) {
	var paymentPage = $('paymentOptionsHidden');
	if (paymentPage != null) {
		pxLocationSwap(location);
	}
};