// <![CDATA[
// $Id: common.js, v 1.0 2008/07/27 23:15:21 A.Shihov[a.shihov@gmail.com] $

/**
  * @file
  * common JS function
  */


/**
  * Start constructor Tooltip class
  *
  */

window.onload = function(){
		$$(".notice").each( function(input) {
			new Tooltip(input, {backgroundColor: "#333", borderColor: "#333", textColor: "#FFF", textShadowColor: "#000"});
		});
}

var f_step = 1;
var card = 0;
function send_card(step, id_card, title_card){
	if(step == 2 && f_step != 1){f_step = 1;}
	card = id_card;
	Modalbox.show(_URL + '/?mode=send&stage=step' + step + '&card_id=' + id_card, {title: title_card, overlayClose: false, width: 420})
}

function check_form(){
	switch(f_step){
		case 1:
			if(F_text_validate('f_to_name') == true){
				f_step = 2;
				if($('f_error').style.display != 'none'){
					$('f_error').fade();
				}
				$('f_back_link').innerHTML = '<a href="javascript:void(0);" onclick="back_form();return false;">&larr; Назад</a>';
				Effect.Shrink('l_to_name', {direction:'top-left'});
				Effect.Grow('l_to_email', {direction:'top-right',afterFinish:function(){$('f_to_email').focus(); ResizeBlock();}});
			}else{
				$('f_error').innerHTML = 'Имя получателя не указано';
				$('f_error').appear({afterFinish:ResizeBlock});
			}
		break;
		case 2:
			if(F_email_validate('f_to_email') == true){
				f_step = 3;
				if($('f_error').style.display != 'none'){
					$('f_error').fade();
				}
				Effect.Shrink('l_to_email', {direction:'top-left'});
				Effect.Grow('l_from_name', {direction:'top-right',afterFinish:function(){$('f_from_name').focus(); ResizeBlock();}});
			}else{
				$('f_error').innerHTML = 'E-mail получателя указан не корректно';
				$('f_error').appear({afterFinish:ResizeBlock});
			}
		break;
		case 3:
			if(F_text_validate('f_from_name') == true){
				f_step = 4;
				if($('f_error').style.display != 'none'){
					$('f_error').fade();
				}
				Effect.Shrink('l_from_name', {direction:'top-left'});
				Effect.Grow('l_from_email', {direction:'top-right',afterFinish:function(){$('f_from_email').focus(); ResizeBlock();}});
			}else{
				$('f_error').innerHTML = 'Вы не указали свое имя';
				$('f_error').appear({afterFinish:ResizeBlock});
			}
		break;
		case 4:
			if(F_email_validate('f_from_email') == true){
				f_step = 5;
				if($('f_error').style.display != 'none'){
					$('f_error').fade();
				}
				$('str_from_name').innerHTML = $('f_from_name').value;
				$('str_from_email').innerHTML = $('f_from_email').value;
				$('str_to_name').innerHTML = $('f_to_name').value;
				$('str_to_email').innerHTML = $('f_to_email').value;
				Effect.Shrink('l_from_email', {direction:'top-left'});
				Effect.Grow('l_confirm', {direction:'top-right',afterFinish:function(){ResizeBlock();}});
			}else{
				$('f_error').innerHTML = 'Ваш E-mail указан не корректно';
				$('f_error').appear({afterFinish:ResizeBlock});
			}
		break;
		case 5:
			f_step = 6;
			Effect.Shrink('l_confirm', {direction:'top-left'});
			Effect.Grow('l_captcha', {direction:'top-right',afterFinish:function(){$('f_captcha').focus(); ResizeBlock();}});
		break;
		case 6:
			if(F_text_validate('f_captcha') == true){
				
				var code_user = $F('f_captcha');
				$('f_captcha').disable().clear();
				$('captcha_loading').update( ajax_image() );
				$('captcha_show').hide();
				$('captcha_loading').show();
				new Ajax.Request(_URL + '/?mode=check', {
					method: 'POST',
					result: '',
					parameters: {
						f_to_name: $F('f_to_name'),
						f_to_email: $F('f_to_email'),
						f_from_name: $F('f_from_name'),
						f_from_email: $F('f_from_email'),
						f_anonymous: $F('f_anonymous'),
						f_received: $F('f_received'),
						f_card: card,
						code: code_user,
						p_key: $F('f_public_key')
					},
				  onSuccess: function(transport){
				  	var json = transport.responseText.evalJSON();
				  	if(json.r && json.r == 'true'){
							f_step = 7;
							if($('f_error').style.display != 'none'){
								$('f_error').fade();
							}
							$('link_control').update('<a href="javascript:void(0);" onclick="Modalbox.hide();return false;">Закрыть</a>');
							$('l_preview_card').hide();
							Effect.Shrink('l_captcha', {direction:'top-left'});
							Effect.Grow('l_ok', {direction:'top-right',afterFinish:function(){ResizeBlock();}});
				  	}else{
				  		Captcha.reload();
							$('f_error').innerHTML = 'Вы ввели не верный код';
							$('f_error').appear({afterFinish:ResizeBlock});
				  	}
				  }
				});
			}else{
				$('f_error').innerHTML = 'Вы не указали проверочный код';
				$('f_error').appear({afterFinish:ResizeBlock});
			}
		break;
	}
	return true;
}

function check_form_idea(){
	var i_error = new String();
	var i_error_count = 0;
	if(F_text_validate('f_name_idea') != true){
		i_error_count = i_error_count++;
		i_error += 'Не указано имя<br />';
	}
	if(F_email_validate('f_email_idea') != true){
		i_error_count = i_error_count+1;
		i_error += 'Не указан email<br />';
	}
	if(F_text_validate('f_idea') != true){
		i_error_count = i_error_count+1;
		i_error += 'Email указан не корректно<br />';
	}
	if(F_text_validate('f_captcha') != true){
		i_error_count = i_error_count+1;
		i_error += 'Не указан проверочный код<br />';
	}
	if(i_error_count == 0){

		
		////
		var code_user = $F('f_captcha');
		$('f_captcha').clear();
		$('captcha_loading').update( ajax_image() );
		$('captcha_show').hide();
		$('captcha_loading').show();
		new Ajax.Request(_URL + '/?mode=idea', {
			method: 'POST',
			result: '',
			parameters: {
				f_name: $F('f_name_idea'),
				f_email: $F('f_email_idea'),
				f_idea: $F('f_idea'),
				code: code_user,
				p_key: $F('f_public_key')
			},
		  onSuccess: function(transport){
		  	var json = transport.responseText.evalJSON();
		  	if(json.r && json.r == 'true'){
					if($('f_idea_error').style.display != 'none'){
						$('f_idea_error').fade();
					}
					$('link_control_idea').update('<a href="javascript:void(0);" onclick="Modalbox.hide();return false;">Закрыть</a>');
					$('idea_content').fade();
					$('l_ok_idea').appear({afterFinish:ResizeBlock});
		  	}else{
		  		Captcha.reload();
					$('f_idea_error').innerHTML = 'Вы ввели не верный код';
					$('f_idea_error').appear({afterFinish:ResizeBlock});
		  	}
		  }
		});
		////
		
		
	}else{
		$('f_idea_error').innerHTML = i_error;
		$('f_idea_error').appear({afterFinish:ResizeBlock});
		return false;
	}
}

function back_form(){
	switch(f_step){
		case 1:
			Modalbox.hide();
		break;
		case 2:
			f_step = 1;
			$('f_back_link').innerHTML = '<a href="javascript:void(0);" onclick="Modalbox.hide();return false;">&larr; Отмена</a>';
			Effect.Shrink('l_to_email', {direction:'top-right'});
			Effect.Grow('l_to_name', {direction:'top-left',afterFinish:function(){$('f_to_name').focus(); ResizeBlock();}});
		break;
		case 3:
			f_step = 2;
			Effect.Shrink('l_from_name', {direction:'top-right'});
			Effect.Grow('l_to_email', {direction:'top-left',afterFinish:function(){$('f_to_email').focus(); ResizeBlock();}});
		break;
		case 4:
			f_step = 3;
			Effect.Shrink('l_from_email', {direction:'top-right'});
			Effect.Grow('l_from_name', {direction:'top-left',afterFinish:function(){$('f_from_name').focus(); ResizeBlock();}});
		break;
		case 5:
			f_step = 4;
			Effect.Shrink('l_confirm', {direction:'top-right'});
			Effect.Grow('l_from_email', {direction:'top-left',afterFinish:function(){$('f_from_email').focus(); ResizeBlock();}});
		break;
		case 6:
			f_step = 5;
			Effect.Shrink('l_captcha', {direction:'top-right'});
			Effect.Grow('l_confirm', {direction:'top-left',afterFinish:function(){ResizeBlock();}});
		break;
	}
	return true;
}

function ResizeBlock(){
	Modalbox.resizeToContent();
	return true;
}

function F_email_validate( obj ){
	var res = false;
	v = $(obj).value;
	v = v.replace(/^\s+/, '');
	v = v.replace(/\s+$/, '');
	if(v.match(/^[A-Za-z0-9\.\_\-]{1,32}\@[A-Za-z0-9\.\_\-]{1,32}\.[a-zA-Z]{2,6}$/)){
		res = true;
	}	
	return res;
}

function F_text_validate( obj ){
	var res = false;
	v = $(obj).value;
	v = v.replace(/^\s+/, '');
	v = v.replace(/\s+$/, '');
	if(v.length > 0){
		res = true;
	}
	return res;
}

var Captcha_class = Class.create();
Captcha_class.prototype = {
	initialize:function(){
	  
  },
	reload: function(){
		$('f_captcha').disable().clear();
		$('captcha_loading').update( ajax_image() );
		$('captcha_show').hide();
		$('captcha_loading').show();

		new Ajax.Request(_URL_MAIN + '/captcha.php?a=form', {
			method: 'get',
		  onSuccess: function(transport){
		  	$('display_captcha').update( transport.responseText );
		    $('captcha_loading').hide();
		    $('captcha_show').show();
		    $('f_captcha').enable().activate();
		  }
		});
	}
}
var Captcha = new Captcha_class();


/**
  * Show OR Hide layer
  *
  * @param xxx string
  *   ID target layer
  *
  */

function showhide(xxx){
	if ($(xxx).style.display=="none") { $(xxx).style.display="block"; }
	else { $(xxx).style.display="none"; }
}

/**
  * Result html code image from ajax
  *
  * @return
  *   string
  */

function ajax_image(type){
	var q = new String();
	switch(type){
		case 2:
			q += '<img border="0" src="' + _URL_MAIN + '/templates/' + _TPL + '/templates/images/lb/loading.gif" alt="Loading..." title="Loading..." />';
		break;
		default:
			q += '<img border="0" src="' + _URL_MAIN + '/templates/' + _TPL + '/templates/images/modal/spinner.gif" alt="Loading..." title="Loading..." />';
		break;
	}
	return q;
}


function email (link,login,serv,text){
	if(link == 1){
		eml = "<a href=\"mailto:"+login+"@"+serv+"\">" + text + "</a>";
	}else{
		eml = login +  "@" + serv;
	}
	document.write (eml);
}

// ]]>