var ajax_url = 'ajax2.php?';
var check_img = 'http://img.ria.ua/icons/gifs/checkbullet.gif';
var error_img = 'http://img.ria.ua/icons/gifs/error_bang.gif';
var spinner_img = 'http://img.ria.ua/icons/gifs/spinner_grey.gif';


// loadCities2 
// ---------------------------------------------------
function loadCities2(state_id,cities_element_id,city_id,areas_element_id,area_id) {
	var url = ajax_url+Object.toQueryString({
			target:            'addr',
			event:             'getCities',
			state_id:          state_id,
			cities_element_id: cities_element_id,
			city_id:           city_id
		});
	if ($defined(areas_element_id)) {
		url = url + '&' + Object.toQueryString({
			areas_element_id:  areas_element_id,
			area_id:           area_id
		});
	}
	new Ajax(url,{
		method: 'get',
		onComplete: resp_loadCities2.bind(this)
	}).request();
}

function resp_loadCities2(response) {
	var r = Json.evaluate(response);
	if ($defined(r.cities_element_id)) {
		processCities(r);
	}
	if ($defined(r.areas_element_id)) {
		processAreas(r);
	}
}

function processCities(r) {
	var select = $(r.cities_element_id);
	select.style.disabled = true;
	select.empty();
	if (r.city_id == 0) {r.city_id=r.state_id;}
	new Element('option',{value: 0}).inject(select).setText('- ' + r.any_city + ' -');
	$each(r.cities,
		function(item, index){
			var element = new Element('option', { value: index });
			if (index == r.city_id) { element.selected = true;	}
			element.inject(select).setText(item);
		}
	);
	select.style.disabled = false;
}

function processAreas(r) {
	var select = $(r.areas_element_id);
	select.style.disabled = true;
	select.empty();
	new Element('option',{value: 0}).inject(select).setText('- ' + r.not_set_male + ' -');
	$each(r.areas,
		function(item, index){
			var element = new Element('option', { value: index });
			if (index == r.area_id) { element.selected = true;	}
			element.inject(select).setText(item);
		}
	);
	select.style.disabled = false;
}

// checkEmail2 
// ---------------------------------------------------

function checkEmail2(email) {
	var url = ajax_url+Object.toQueryString({
			target:   'addr',
			event:    'checkEmail',
			email:     email
		});
	new Ajax(url,{
		method: 'get',
		onComplete: resp_checkEmail2.bind(this)
	}).request();
}

function resp_checkEmail2(response) {
	var r = Json.evaluate(response);
	var display = 'none';
	if (r.email_found > 0) { display = 'block';	}
	$('email_note').style.display = display;
}

// loadAreas2 
// ---------------------------------------------------
function loadAreas2(city_id,areas_element_id,area_id) {
	var url = ajax_url+Object.toQueryString({
			target:            'addr',
			event:             'getAreas',
			city_id:           city_id,
			areas_element_id:  areas_element_id,
			area_id:           area_id
		});
	new Ajax(url,{
		method: 'get',
		onComplete: resp_loadAreas2.bind(this)
	}).request();
}

function resp_loadAreas2(response) {
	var r = Json.evaluate(response);
	if ($defined(r.areas_element_id)) {
		processAreas(r);
	}
}

// showTeFiles 
// ---------------------------------------------------
function showTeFiles() {
	var url = ajax_url+Object.toQueryString({
			target:            'setup',
			event:             'getFiles',
			rand: Math.random()
		});
	new Ajax(url,{
		method: 'get',
		update: $('te_subscribe_container')
	}).request();

	return void(0); 
} 
function clear_te_subscribe_container() {
	$('te_subscribe_container').empty();
	return void(0);
}

// topCountersSetup
// ---------------------------------------------------
function topCountersSetup(to_setup_url) {
	var url = ajax_url+Object.toQueryString({
			target:'setup',
			event: 'getSetup',
			to_setup_url: to_setup_url, 
			rand: Math.random()
		});
	new Ajax(url, {	
		method: 'get', 
		update: $('topCountersSetup')
	}).request();
	$('topCountersSetup').style.display = 'block';
	return void(0); 
}


// help Informer 
// ---------------------------------------------------
var periodical;

var view_help = function() {
	var ul_element = $('help_thesises');
	if (ul_element){
		var elements = ul_element.getChildren();
		var view_index = $random(0,elements.length-1);
		var ii = 0;
		elements.each(function(el){ 
			if (ii==view_index) {
				el.setStyle('display', 'block');
			} else {
				el.setStyle('display', 'none');
			}
			ii++;
		});
	}
}

var help_starter = function() {
	view_help();
	periodical = view_help.periodical(20000);
}

function view_all_help() {
	$clear(periodical);
	var ul_element = $('help_thesises');
	if (ul_element){
		var elements = ul_element.getChildren();
		elements.each(function(el){ 
			el.setStyle('display', 'block');
		});
		$('b_view_all_help').setStyle('display', 'none');
	}
}



// checkEmailNew 
// ---------------------------------------------------
function add_registration_tips(){
	var myTips = new Tips($$('.ria-tips'), {className:'ria-tip',showDelay:300, hideDelay:50, offsets: {x:4, y:4}});
}

function checkEmailNew(input_el, event) {
	var email = $('email_register').value;
	var pwd = $('password1').value;
	if ($chk(event)) this.evt = event;
	this.input_id = input_el.id; 
	
	$('response_note').setStyle('display', 'none');
	$('email_register_status').empty();
	$('password1_status').empty();
	$('password2').disabled=false;
	
	if($chk(email) && $chk(pwd)){
	
		show_status_img(this.input_id, spinner_img, false);
		
		var url = ajax_url+Object.toQueryString({
				target:   'addr',
				event:    'checkEmailNew',
				email:     email,
				pwd:     pwd
			});
		new Ajax(url,{
			method: 'get',
			onComplete: resp_checkEmailNew.bind(this)
		}).request();
		
	}
}

function resp_checkEmailNew(response){
	var r = Json.evaluate(response);
	show_note(r.show_note);
	
	if (r.resp == 1) {
        if (this.evt == 'roommate_user_add')
            url = "./?target=roommate&event=roommate_add";
        else {
            url = "./?target=user";
            if (this.evt) url += '&event='+this.evt;
        }
        document.location = url;
	} else if (r.resp == 2) {
		show_status_img( this.input_id, check_img, true);
		$$('.not_for_exist').setStyle('display', 'block');
	} else if (r.resp == 3) {
		$$('.not_for_exist').setStyle('display', 'none');
		show_status_img( this.input_id, error_img, false);
	} else {
		$$('.not_for_exist').setStyle('display', 'none');
		show_status_img( this.input_id, check_img, true);
	}
}

function show_status_img(field_id, status, fade){
	var status_div = $(field_id+'_status').empty();

	var element = new Element('img', {
		'id': 'status_img_'+field_id,
		'src': status
	}).injectTop(status_div);

	if (fade){
		var status_img_opacity = new Fx.Style(element, 'opacity', {duration:3000});
		status_img_opacity.start(1, 0);
	}
}

function show_note(note){
	if (note>0){
		$$('.register_notes').setStyle('display', 'none');
		$('response_note_'+note).setStyle('display', 'block');
		$('response_note').setStyle('display', 'block');
	}
}
