var nolink = false;

/* DOM-READY *************************************************************************************************************** */
window.addEvent('domready', function() {
	var sprize = "";
	if($('formular') && $('answer') && $('answer').get('value') != "") { 
		sprize = $('answer').get('value');
		showData(sprize);
	}
	else if($('content').getElement('input[name=answer]')) {
		sprize =$('content').getElement('input[name=answer]').get('value');
	}
	
	var url = location.href.split("prize=");
	if(url.length>1) {
		sprize = url[1].substring(0,1);
		showData(sprize);
	}
	
	//Pop-under function; var MAPPER maps 'BO-keyword' to html element
	MAPPER = {
		'body' : $('reg_half'),
		'freetest' : null, 
		'gender' :  $('genderbox'),
		'gender_male' : $('gender_male'),
		'gender_female' : $('gender_female'),
		'firstname': $('firstname'),
		'halfreg': $('submit_halfreg'),
		'fulreg': $('submit_fullreg'),
		'street': $('street'),
		'country': $('land'),
		'extra' : null
	}
	
	current_page = $(document.body).get('id');
	
	//Flash Puzzle
	var flashPuzzle = new Swiff('/wingame/63/flash/choose_gws.swf', {
		id: 'flash_puzzle',
		width: 950,
		height: 550,
		container: $('startflash'),
		vars: {
			selectedprize: sprize,
			statusposition: statpos,
			path: '/wingame/63/images/'
		},
		params: {
			wMode: 'transparent'
		}
	});

	//Flash Puzzle ab Page 3
	var flashPuzzleP3 = new Swiff('/wingame/63/flash/choose_gws_p3.swf', {
		id: 'flash_puzzle_p3',
		width: 950,
		height: 140,
		container: $('startflashP3'),
		vars: {
			toptext: toptext,
			statusposition: statpos
		},
		params: {
			wMode: 'transparent'
		}
	});
 
	//Sponsoren Slider
	try {
		sponsorenSlide();
	} catch(e) {}
		
	//Popunder Page1 - 
	if(show_pup1) popUnderP1();
	
	$(document).addEvents({
		'mouseenter': function(){
			nolink = false;
		},
		'mouseleave': function(){
			nolink = true;
		}
	});
	
	if(current_page == 'page_survey') {
		survey_main();
	}
	
	if(current_page == 'page_coreg') {
		var my_coregger = new coregger({
			check_coreg_by_agb: true,
			confirm_agb: true,
			show_checkbox_error: true,
			show_radio_error: true,
			show_text_error: true
		});
		
		// make radio buttons uncheckable
		radioChecker();
	}
	
	if(current_page == 'page_coreg_iframe') {
		coreg_iframe.initialize();
	}
	
});

/* Highlight der AGB-Checkbox auf dem onErrorSubmit vom mOOlidator */
function check_for_error_after_submit() {
	setTimeout(function() {
		if($('agb').hasClass('error')) {
			$('agb_marker').addClass('error_marker');
		}
	}, 100);
}

/* OnUnLoad Function */
function onUnloadDoThis() {
	if(nolink && exit_fenster != '') {		
		eval(exit_fenster);
	}
}

/* Startflash Kommunikation ************************************************************************************************* */
function showData(n) {
	$('formular').setStyle('display','block');
	$('answer').value = n;
}


/* Puzzle Fehler anzeigen ************************************************************************************************* */
function checkPuzzle(state){
	var obj = $('puzzle');
	if(state) {
		obj.value = '2';
		$('status_puzzle').setStyle('visibility','hidden');
	}else {
		obj.value = '';
	}
}

// this function populate the entryes of the visiting card
// attention: the field 'vk_city' will be also filled in reg_full.htm
//						by the function 'getCityByZipcode' if necessary
var set_fields_events = function() {
	if($('street') && $('vk_street')) $('street').addEvents( {
		keyup: function() { $('vk_street').set('html', $('street').get('value')); },
		blur:  function() { $('vk_street').set('html', $('street').get('value')); }
	});
	if($('streetnr') && $('vk_no')) {
		$('streetnr').addEvents({
			keyup: function() {	$('vk_no').set('html', $('streetnr').get('value'));	},
			blur:  function() { $('vk_no').set('html', $('streetnr').get('value'));	}
		});
	}
	if($('city') && $('vk_city')) {
		$('city').addEvents({
			keyup: function() {	$('vk_city').set('html', $('city').get('value')); },
			blur:  function() {	$('vk_city').set('html', $('city').get('value'));	}
		});
	}
	if($('zipcode') && $('vk_zip')) {
		$('zipcode').addEvents({
			keyup: function() {	$('vk_zip').set('html', $('zipcode').get('value')); },
			blur:  function() {	$('vk_zip').set('html', $('zipcode').get('value')); }
		});
	}
	if($('tel_areacode') && $('vk_phone_areacode')) {
		var this_vk_phone_areacode = $('vk_phone_areacode').get('html');
		if(this_vk_phone_areacode.search(/(\d+)/) != -1) $('vk_phone').setStyle('visibility', 'visible');
		$('tel_areacode').addEvents({
			keyup: function() {
				$('vk_phone').setStyle('visibility', 'visible');
				$('vk_phone_areacode').set('html', $('tel_areacode').get('value') + ' /');
			},
			blur:  function() {
				$('vk_phone').setStyle('visibility', 'visible');
				$('vk_phone_areacode').set('html', $('tel_areacode').get('value') + ' /');
			}
		});
	}
	if($('tel_number') && $('vk_phone_no')) {
		var this_vk_phone = $('vk_phone_no').get('html');
		if(this_vk_phone.search(/(\d+)/) != -1) $('vk_phone').setStyle('visibility', 'visible');
		$('tel_number').addEvents({
			keyup: function() {
				$('vk_phone').setStyle('visibility', 'visible');
				$('vk_phone_no').set('html', $('tel_number').get('value'));
			},
			blur: function() {
				$('vk_phone').setStyle('visibility', 'visible');
				$('vk_phone_no').set('html', $('tel_number').get('value'));
			}
		});
	}
	if($('land') && $('vk_country')) {
		var lands_Array = new Array('Sverige', 'Danmark', 'Norge', 'Finland', 'Övriga');
		$('vk_country').set('html', lands_Array[$('land').get('value') - 1]);
		$('land').addEvent('change', function() {
			$('vk_country').set('html', lands_Array[$('land').get('value') - 1]);
		});
	}
}

var prefill_link = function() {
	var link ="http://www.vistaprint.se/vp/gateway.aspx?S=8210407221";
	var fullname = '&fullname=' + $('vk_firstname').get('html') + ' ' + $('vk_lastname').get('html');
	var jobtitle = '&jobtitle=';
	var companyname = '&companyname=';
	var companymessage = '&companymessage=';
	var address1 = '&address1=' + $('vk_street').get('html') + ' ' + $('vk_no').get('html');
	var address2 = '&address2=' + $('vk_zip').get('html') + ' ' + $('vk_city').get('html');
	var address3 = '&address3=' + $('vk_country').get('html');
	var phone = '&phone=' + $('vk_phone_areacode').get('html') + ' '+ $('vk_phone_no').get('html');
	var fax = '&fax=';
	var email = '&email=' + $('vk_email').get('html');
	var web = '&web='; 
	link += fullname + jobtitle + companyname + companymessage + address1 + address2 + address3 + phone + fax + email + web;
}
// end of visiting card functions


/* coreg iframe ************************************************************************************************* */
coreg_iframe = new Object();
coreg_iframe.offers = new Array();
coreg_iframe.current_offer = 0;
coreg_iframe.form_id = 'coreg_iframe_form';
coreg_iframe.hide_class = 'hidden_iframe';
coreg_iframe.submit_buttons = ['submit_coreg_iframe'];
coreg_iframe.skip_buttons = [];
coreg_iframe.initialize = function() {
	coreg_iframe.offers = $$('.iframe_container');
	coreg_iframe.offers[coreg_iframe.current_offer].removeClass(coreg_iframe.hide_class);
	coreg_iframe.send_iframe_data(coreg_iframe.offers[coreg_iframe.current_offer]);
	if(coreg_iframe.submit_buttons.length > 0) {
		coreg_iframe.submit_buttons.each(function(submit_buttons) {
			$(submit_buttons).addEvent('click', function() {
				coreg_iframe.show_next_offer();
				return false;
			});
		});
	}
	if(coreg_iframe.skip_buttons.length > 0) {
		coreg_iframe.skip_buttons.each(function(skip_button) {
			$(skip_button).addEvent('click', function() {
				coreg_iframe.show_next_offer();
				return false;
			});
		});
	}
}

coreg_iframe.show_next_offer = function() {
	if(coreg_iframe.current_offer < (coreg_iframe.offers.length - 1)) {
		coreg_iframe.offers[coreg_iframe.current_offer].addClass(coreg_iframe.hide_class);
		coreg_iframe.current_offer++;
		coreg_iframe.offers[coreg_iframe.current_offer].removeClass(coreg_iframe.hide_class);
		coreg_iframe.send_iframe_data(coreg_iframe.offers[coreg_iframe.current_offer]);
	} else {
		$(coreg_iframe.form_id).submit();
	}
}

coreg_iframe.send_iframe_data = function(offer) {
	var temp_copy = $$('input[type=hidden][name=copy]')[0].get('value');
	var temp_client_pk = $$('input[type=hidden][name=client_pk]')[0].get('value');
	var temp_email = $$('input[type=hidden][name=email]')[0].get('value');
	var temp_wingame_pk = $$('input[type=hidden][name=wingame_pk]')[0].get('value');
	var temp_coreg_pk = offer.get('id').replace(/toggle_iframe_/g, '');
	if(temp_copy && temp_client_pk && temp_email && temp_wingame_pk && temp_coreg_pk) {
		var temp_data = 'copy=' + temp_copy +
			'&todo=save_coreg_order' +
			'&client_pk=' + temp_client_pk +
			'&email=' + temp_email +
			'&wingame_pk=' + temp_wingame_pk +
			'&coreg_pk=' + temp_coreg_pk;
		temp_data = encodeURI(temp_data);
		var temp_request = new Request({
			url: '/cgi-bin/global.pl',
			method: 'get'
		}).send(temp_data);
	}
}

