var MAG = Object.extend({}, MAG || {});
var radioHeight = "25";


MAG.Custom = {
	Init: function(options) {
		this.options = {};
		Object.extend(this.options, options || {});

		var inputs = document.getElementsByTagName("input"), span = Array(), textnode, option, active;
		
		for(a = 0; a < inputs.length; a++) {
			if(inputs[a].type == "radio") {
				span[a] = document.createElement("span");
				span[a].className = inputs[a].type;
				span[a].id = "rad_" + inputs[a].id;

				if(inputs[a].checked == true) {
						position = "0 -" + (radioHeight*2) + "px";
						span[a].style.backgroundPosition = position;
				}
				/*inputs[a].parentNode.insertBefore(span[a], inputs[a]);
				inputs[a].onchange = MAG.Custom.clear;
				span[a].onmousedown = MAG.Custom.pushed;
				span[a].onmouseup = MAG.Custom.check;
				document.onmouseup = MAG.Custom.clear; */
			}
		}
	},
	pushed: function() {
		element = this.nextSibling;
		if(element.checked == true && element.type == "radio") {
			this.style.backgroundPosition = "0 -" + radioHeight*3 + "px";
		}  else {
			this.style.backgroundPosition = "0 -" + radioHeight + "px";
		}
	},
	check: function() {
		element = this.nextSibling;

		if(element.type == "checkbox") {
			this.style.backgroundPosition = "0 -" + checkboxHeight*2 + "px";
		} else {
			this.style.backgroundPosition = "0 -" + radioHeight*2 + "px";
			group = this.nextSibling.name;
			inputs = document.getElementsByTagName("input");
			for(a = 0; a < inputs.length; a++) {
				if(inputs[a].name == group && inputs[a] != this.nextSibling) {
					inputs[a].previousSibling.style.backgroundPosition = "0 0";
				}
			}
		}
		element.checked = true;
		if(Object.isFunction(element.onclick)) element.onclick.bind(element).call();
		//if(Object.isFunction(element.onchange)) element.onchange.bind(element).call();
	},
	clear: function() {
		var inputs = document.getElementsByTagName("input");
		for(var b = 0; b < inputs.length; b++) {
			if(inputs[b].type == "radio" && inputs[b].checked == true) {
				inputs[b].previousSibling.style.backgroundPosition = "0 -" + radioHeight*2 + "px";
			} else if(inputs[b].type == "radio") {
				inputs[b].previousSibling.style.backgroundPosition = "0 0";
			}
		}
	}
};

function submit_form(e) {

	Event.stop(e);
	var btc_form = (e.element().className =='sumbmit_button') ? e.element().parentNode.parentNode : e.element();

	var systems = btc_form['system'];
	var post_url = '';

	if(systems[1].checked) {
		post_url = systems[1].value;
		$$('.username_input input')[0].setAttribute('name', 'user');
	}
	else {
		post_url = systems[0].value;
		$$('.username_input input')[0].setAttribute('name', 'username');
	}

	btc_form.setAttribute('action', post_url);
	btc_form.submit();
}

function process_adsl_quick_check_form()
{
	var adsl_form_area_code_value =   translated_texts.enter_area_code;
	var adsl_form_phone_number_value =   translated_texts.enter_phone_number;

	var adsl_form_area_code_input = $('adsl_form_area_code');
	var adsl_form_phone_number_input = $('adsl_form_phone_number');

	if(adsl_form_area_code_input && adsl_form_phone_number_input)
	{
		adsl_form_area_code_input.observe('focus', function(){
			if(adsl_form_area_code_input.value.strip() == adsl_form_area_code_value) adsl_form_area_code_input.value = '';
		});
		adsl_form_area_code_input.observe('blur', function(){
			if(adsl_form_area_code_input.value.blank()) adsl_form_area_code_input.value = adsl_form_area_code_value;
		});

		adsl_form_phone_number_input.observe('focus', function(){
			if(adsl_form_phone_number_input.value.strip() == adsl_form_phone_number_value) adsl_form_phone_number_input.value = '';
		});
		adsl_form_phone_number_input.observe('blur', function(){
			if(adsl_form_phone_number_input.value.blank()) adsl_form_phone_number_input.value = adsl_form_phone_number_value;
		});
	}

	subm_but = $('adsl_form_submit');
	subm_but.observe('click', function()
	{
		if(adsl_form_area_code_input.value.strip() == adsl_form_area_code_value) {
			alert(translated_texts.missing_area_code);
			adsl_form_area_code_input.focus();
			return;
		}
		else if(adsl_form_phone_number_input.value.strip() == adsl_form_phone_number_value){
			alert(translated_texts.missing_phone_number);
			adsl_form_phone_number_input.focus();
			return;
		}
		else {
			setTimeout(function(){$('adsl_quick_checker').submit();},0);
		}
	});
}

document.observe('dom:loaded', function(){

	// ADSL CHECKER QUICK FORM
	if($('adsl_quick_checker')) {
		process_adsl_quick_check_form();
	}

	search_input_id = $$('li.input_quick_search input')[0];

	if(search_input_id)
	{
		var search_input_value =   translated_texts.quick_search;

		search_input_id.observe('focus', function(){
			if(search_input_id.value.strip() == search_input_value) search_input_id.value = '';
		});
		search_input_id.observe('blur', function(){
			if(search_input_id.value.blank()) search_input_id.value = search_input_value;
		});

		var quick_search_submit_but = $('quick_search_submit_but');
		if(quick_search_submit_but)
		{
			$(quick_search_submit_but).observe('click', function(){
				setTimeout(function(){$('quick_search_submit_form').submit();},0);
			});
		}
	}

//	username_input_id.observe('focus', function(){
//		if(username_input_id.value.strip() == username_input_value) username_input_id.value = '';
//	});
//	username_input_id.observe('blur', function(){
//		if(username_input_id.value.blank()) username_input_id.value = username_input_value;
//	});
//
//	userpass_input_id.observe('focus', function(){
//		if(userpass_input_id.value.strip() == userpass_input_value) userpass_input_id.value = '';
//	});
//	userpass_input_id.observe('blur', function(){
//		if(userpass_input_id.value.blank()) userpass_input_id.value = userpass_input_value;
//	});

	//pagination processing

	$$('*[name=button_for_go]').each(function(but){

		$(but.form).observe('submit', function(e){Event.stop(e);});
		but.observe('click', function(event){
			 var element = $(this);
			 var page =  parseInt(element.previous().value);
			 if(!isNaN(page))
			 {
			 	var meurl = self.location.toString().replace(/&?page=[0-9]+/, "");
			 	meurl += meurl.indexOf('?') > -1 ? '&' : '?';
			 	meurl += 'page=' + page;
			 	setTimeout(function(){window.location.href = meurl;},0);
			 }
 		});
	});
	
	if(Prototype.Browser.IE)
	{
		$$('input[type=text]').each(function(inp){
			inp.observe('focus', function(e){
				$(this).setStyle({backgroundColor: '#FFFFFF'});
			}).observe('blur', function(e){
				$(this).setStyle({backgroundColor: '#FFFFCF'});
			});
		});
	}
});

