// -------------------------------------------------------------------
// v0.16
// (c) 2007-2008 NODEX Ltd.
// -------------------------------------------------------------------

var activeRowColor="#ffffff";
var passiveRowColor="#FAFAFA";
var activeFontColor="#000000";
var passiveFontColor="#999999";
var selectRowColor="#F4EEEE";
var unselectRowColor="#FFFFFF";
var domain_count = 0;
var domains = 0;
var domain_names = new Array();
var domain_status = new Array();
var domain_price = new Array();
var domain_info = new Array();
var error_msg;
var g_dis_submit = false;
var nds_k = 1.18;
var submit_err = domain_err = 0;
var next_allow = false;
var prev_bik = 0;
var prev_postalcode = 0;
var IE = (String(typeof(document.all)) != "undefined");
var zones = new Array();
var regx_zone='';
var dom_form_div = "undefined";
var dom_form = "";
var transfer_domain = false;
var itp = 0;
var itp_sid="";
var global_summ = 0;


// 0 - удален, 1 - регистрация, 2 - перенос

var rus_letters = new Array('А','Б','В','Г','Д','Е','Ё','Ж','З','И','Й','К','Л','М','Н','О','П','Р','С','Т','У','Ф','Х','Ч','Ц','Ш','Щ','Э','Ю','Я','Ы','Ъ','Ь', 'а','б','в','г','д','е','ё','ж','з','и','й','к','л','м','н','о','п','р','с','т','у','ф','х','ч','ц','ш','щ','э','ю','\я','ы','ъ','ь');
var eng_letters = new Array('A','B','V','G','D','E','Jo','Zh','Z','I','J','K','L','M','N','O','P','R','S','T','U','F','Kh','Ch','C','Sh','Csh','E','Ju','Ja','Y','','', 'a','b','v','g','d','e','jo','zh','z','i','j','k','l','m','n','o','p','r','s','t','u','f','kh','ch','c','sh','csh','e','ju','ja','y','','');

function gbi(id) {
	return document.getElementById(id);
}

function to_eng(letter) {
	var i = 0;

	while((rus_letters[i]!=letter)&&(i<rus_letters.length))
		i++;
	if(i==rus_letters.length)
		return letter;
	else
		return eng_letters[i];


}
function to_translit (from, to) {
	conv_str = "";
	for(var i=0; i<from.value.length; i++)
		conv_str+=to_eng(from.value.substr(i,1));
	to.value = conv_str;

}
function translit_and_copy(id_prefix) {
	to_translit(gbi(id_prefix+'addr_obl_rus'), gbi(id_prefix+'addr_obl_eng'));
	to_translit(gbi(id_prefix+'addr_city_rus'), gbi(id_prefix+'addr_city_eng'));
	to_translit(gbi(id_prefix+'addr_str_rus'), gbi(id_prefix+'addr_str_eng'));
}


function showprogress(status, text) {
	var progressbar = gbi('progressbar');
	if(status) {

		gbi('progress_text').innerHTML = text;
		if(IE) {
			scr_x = document.body.offsetWidth;
			scr_y = document.body.clientHeight;
		}
		else {
			scr_x = top.innerWidth;
			scr_y = top.innerHeight;
		}


		var x = Math.round(scr_x/2-100)+'px';
		if(scr_y<400)
			y = '30em';
		else
			y = Math.round(scr_y/2-16)+'px';
		//modal_alert('scr_x='+scr_x+' x='+x);
		progressbar.style.left = x;
		progressbar.style.top = y;
		progressbar.style.display='block';

	}
	else {
		progressbar.style.display='none';
	} 
}

function open_help() {
	var w = arguments[1]||300;
	var h = arguments[2]||150;
	var t = arguments[3]||'Справка';
	if(typeof helpwin!="undefined") {
		helpwin.setSize(w,h);
		helpwin.load('ajax', 'help/'+arguments[0], t);
		helpwin.show();
	}
	else
		helpwin=dhtmlwindow.open('helpbox', 'ajax', 'help/'+arguments[0], t, 'width='+w+'px,height='+h+'px,left=300px,top=100px,resize=1,scrolling=1');	
}
function disable_all() {
	disable_next(true);
	disable_submit(true);
	gbi('prev_button').disabled=true;
	gbi('add_domain').disabled=true;
}

function rstatus(rname,status){
	var obj = gbi(rname);
	if ( status ) {
		obj.style.backgroundColor=activeRowColor;
		obj.style.color=activeFontColor;
	} 
	else {
		obj.style.backgroundColor=passiveRowColor;
		obj.style.color=passiveFontColor;
	}
}
function db_select(input_name, checkstat) {
	if (checkstat && input_name.value==0)
		input_name.value = 1;
	input_name.disabled = ! checkstat;
	
}

function domain_find (domain_name) {
	var exist = false;
	for(var i = 1; i <= domain_count; i++) {
		if (domain_names[i]==domain_name)
			exist = true;
	}
	return exist;
}


function disable_next(disable) {
	var next_button = gbi('next_button');
	if(disable)
		next_button.disabled=true;
	else
		if((submit_err==0)&&(domain_err==0))
			next_button.disabled=false;
	
}
function disable_submit(disable) {
	var submit_button = gbi('submit');
	disable_next(disable);
	if(disable) {
		submit_button.disabled=true;
	}
	else {
		if((submit_err==0)&&(domain_err==0)) {
			submit_button.disabled=false;
			next_allow = true;
		}
			
	}

}


function disable_add_domain(disable) {
	var add_domain_div = gbi('add_domain_div');
	if(disable)
		add_domain_div.style.display = 'none';
	else
		add_domain_div.style.display= 'block';
}
function show_info(n) {
	//alert(domain);
	gbi('whois_div').innerHTML = "<div align=\"left\" style=\"padding: 5px\">"+domain_info[n]+"</div>"
	whoiswin=dhtmlwindow.open('whoisbox', 'div', 'whois_div', 'Информация о домене', 'width=400px,height=300px,left=100,top=50px,resize=1,scrolling=1');

}

function get_bank_info(bik) {
	if(bik.length==9&&prev_bik!=bik) {
		showprogress(true, 'Обработка запроса<br />Подождите...');
		var req = new JsHttpRequest();
		req.onreadystatechange = function() {
			showprogress(false, '');
			if (req.readyState == 4) { 
				prev_bik = bik;
				if(req.responseJS.error.length<1) {
					gbi('bank_korr').value = req.responseJS.korr;
					gbi('bank_name').value = req.responseJS.name+', '+req.responseJS.city;
				}
				else
					modal_alert(req.responseJS.error);
			}
		}
		url = 'get_bank_info.php';
		req.caching = true;
		req.open('POST', url, true);
		req.send({ bik: bik});
	}
}

function get_addr_by_index(postalcode, p) {
	if(postalcode.length==6) {
		showprogress(true, 'Обработка запроса<br />Подождите...');
		var req = new JsHttpRequest();
		req.onreadystatechange = function() {
			showprogress(false, '');
			if (req.readyState == 4) {
				prev_postalcode = postalcode;
				if(req.responseJS.error.length<1) {
					gbi(p+'addr_city_rus').value = req.responseJS.city;
					gbi(p+'addr_obl_rus').value = req.responseJS.obl;
				}
				else
					modal_alert(req.responseJS.error);
			}
		}
		url = 'get_by_index.php';
		req.caching = true;
		req.open('POST', url, true);
		req.send({ index: postalcode});
	}
}

var fields_id = ['first_name_rus', 'last_name_rus', 'middle_name_rus', 'first_name_eng', 'last_name_eng', 'phone', 'email' ];
var fiz_fields_id = ['addr_index', 'addr_city_rus', 'addr_str_rus', 'addr_city_eng', 'addr_str_eng', 'passport_ser', 'passport_num', 'passport_day', 'passport_month', 'passport_year', 'passport_org'];
var org_fields_id = ['org_name_rus', 'org_name_eng', 'org_ur_addr_index', 'org_ur_addr_city_rus', 'org_ur_addr_str_rus', 'org_ur_addr_city_eng', 'org_ur_addr_str_eng', 'org_addr_city_rus', 'org_addr_str_rus', 'org_addr_city_eng', 'org_addr_str_eng', 'org_inn', 'org_kpp', 'bank_rs', 'bank_bik', 'bank_korr', 'bank_name'];

function empty_field_highlight(field) {
	gbi(field).className = 'wrong';
}

function check_empty(fields_list) {
	var err = 0;
	for ( var i = 0; i < fields_list.length; i++ ) {
		var obj = gbi(fields_list[ i ]);
		if(obj.value=="") {
			obj.className = 'wrong';
			err++;
		}
		else {
			obj.className = '';
		}
	}
	return err;
}



function check_fields() {

	var err = 0;

	err = check_empty(fields_id);
	if(gbi('reg_type_fiz').checked) {
		err += check_empty(fiz_fields_id);
	} 
	else {
		err += check_empty(org_fields_id);
	}
	
	
	if(err!=0)
		return true;
	else
		return false;

}
function copy_ur_to_fact() {

	if(gbi('fact_same_ur').checked) {
		gbi('org_addr_index').value = gbi('org_ur_addr_index').value;
		gbi('org_addr_city_rus').value = gbi('org_ur_addr_city_rus').value;
		gbi('org_addr_obl_rus').value = gbi('org_ur_addr_obl_rus').value;
		gbi('org_addr_str_rus').value = gbi('org_ur_addr_str_rus').value;
		gbi('org_addr_city_eng').value = gbi('org_ur_addr_city_eng').value;
		gbi('org_addr_obl_eng').value = gbi('org_ur_addr_obl_eng').value;
		gbi('org_addr_str_eng').value = gbi('org_ur_addr_str_eng').value;
	}
}

function send_form() {
	var error = '';
	if (check_fields())
		modal_alert("Не все обязательные поля заполнены!");
	else {
		showprogress(true, 'Отправка данных<br />Подождите...');
		//disable_all();
		var req = new JsHttpRequest();
		req.onreadystatechange = function() {
			if (req.readyState == 4) {
				showprogress(false, '');
				if(req.responseJS.error!=null)
					modal_alert('Произошла ошибка: '+req.responseJS.error);
				else {
					if(req.responseJS.was_error!=null) { // error post
						for ( var i = 0; i < fields_id.length; i++ ) {
							form_obj = eval('req.responseJS.'+fields_id[i]);
							if(form_obj!=null) {
								empty_field_highlight(fields_id[i]);
								error+=form_obj+' ';
							}
						}
						if(gbi('reg_type_fiz').checked) {
							for ( var i = 0; i < fiz_fields_id.length; i++ ) {
								form_obj = eval('req.responseJS.'+fiz_fields_id[i]);
								if(form_obj!=null) {
									empty_field_highlight(fiz_fields_id[i]);
									error+=form_obj+' ';
								}
							} // for				
						} // if
						else {
							for ( var i = 0; i < org_fields_id.length; i++ ) {
								form_obj = eval('req.responseJS.'+org_fields_id[i]);
								if(form_obj!=null) {
									empty_field_highlight(org_fields_id[i]);
									error+=form_obj+' ';
								}
							} // for
						} // else
						modal_alert('Неверно заполнены поля помеченые красным. ');
					} // if was_error post]
					else {
						// OK 
	//					modal_alert("ИТП:"+req.responseJS.itp+" sid:"+req.responseJS.itpsid);
						itp = req.responseJS.itp;
						itp_sid = req.responseJS.itpsid;
						if(itp>5000)
							go_page('post_ok');
						else
							modal_alert('Ошибка при отправке данных. Возможно не совместим браузер или неправильный referer');
					}
				} // else server error
			} // readyState == 4
		} // function
		url = 'postcalc.php';
		req.open('POST', url, true);
		req.send({ 'form': gbi('hcalc'), 'domains': domain_names, 'domain_status': domain_status });
	}

}

function load_zones () {
	disable_add_domain(true);
	var req = new JsHttpRequest();
	var zone_list='';
	req.onreadystatechange = function() {
		if (req.readyState == 4) {
			regx_zone = req.responseJS.regx_zone;
			disable_add_domain(false);
		}
	}
	url = 'get_zones.php';
	req.open('POST', url, true);
	req.send();
}
function load_calc_parts() {

	showprogress(true, 'Загрузка данных<br />Подождите...');	
	var req = new JsHttpRequest();

	req.onreadystatechange = function() {
		if (req.readyState == 4) {
			gbi('summ_result').innerHTML = req.responseJS.summ_table;
			gbi('calculator').innerHTML = req.responseJS.calculator;
			gbi('reg').innerHTML = req.responseJS.reg;
			gbi('reg_fiz').innerHTML = req.responseJS.reg_fiz;
			gbi('reg_org').innerHTML = req.responseJS.reg_org;
			gbi('navy_button').innerHTML = req.responseJS.navy_button;
			gbi('submit_button').innerHTML = req.responseJS.submit_button;
			dom_form_div = gbi('dom_form');
			dom_form = req.responseJS.dom_form;
			showprogress(false, '');
			go_page('calc');
			db_off();
			hosting_off();
			load_zones();
			
		}
	}
	url = 'calc_parts.php';
	req.open('POST', url, true);
	req.send();
}

function domain_check(domain_name) {
	domain_test = "^([0-9a-z-]+\\.)+[a-z]{2,6}$";
	var regex = new RegExp(domain_test, 'i');
	var regex_zones = new RegExp(regx_zone, 'i');
	
	if(domain_name.length<3) {
		error_msg = "Неверное ммя домена";
		return false;
	}
	

	if (!regex.test(domain_name)) {
		error_msg = "Неккорекное написание домена";
		return false;
	}
	else 
		if(!regex_zones.test(domain_name)) {
			error_msg = "Зона не поддерживается";
			return false;
		} 
		else
			if(domain_find(domain_name)) {
				error_msg = "Вы уже вводили такой домен.";
				return false;
			}
			else
				return true;

}

function exclude_www(domain_name) {
	var regex_www = new RegExp("^(w{3}|ftp)\\.", 'i');
	var regex_zones = new RegExp('(\\.[^.]+)?('+regx_zone+')');
	if(regex_www.test(domain_name)) {
		dom_arr = regex_zones.exec(domain_name);
		//modal_alert(dom_arr[0]);
		domain_name = dom_arr[0].substr(1, dom_arr[0].length);
	}
	return domain_name;
}
function modal_prompt () {
	dom_form_div.innerHTML = dom_form;
	if(typeof domain_window!="undefined") {
		domain_window.load('div', 'modal_prompt_div', 'Введите домен');
		domain_window.show();
	}
	else 
		domain_window=dhtmlmodal.open('dombox', 'div', 'modal_prompt_div', 'Введите домен', 'width=330px,height=100px,center=1,resize=0,scrolling=0');
	gbi('dom_name').focus();
}

function modal_alert (text) {
	var h = 70;
	var w = 205;
	var bt = 0;
	
	if(text.length>100)
		h = Math.round((text.length-100)/25*15)+h;
	
	if(h>300) {
		h = 300;
		w = 400;
		bt = 1;
	}
	var alert_html = "<table width=\"99%\" height=\"100%\" border=\"0\"><tr><td width=\"45\"><img src=\"img/alert.gif\" width=\"40\" height=\"39\" alt=\"alert\" /></td><td valign=\"middle\">"+text+"</td></tr><tr><td colspan=\"2\"><div align=\"center\"><input type=\"button\" name=\"alert_button\" id=\"alert_button\" value=\"Закрыть\" onClick=\"parent.alert_window.hide()\" /></div></td></tr></table>";

	gbi('alert_div').innerHTML = alert_html;
	if(typeof alert_window!="undefined") {
		alert_window.setSize(w, h);
		alert_window.isResize(bt);
		alert_window.isScrolling(bt);
		alert_window.load('div', 'alert_div', 'Внимание!');
		alert_window.show();
	}
	else
		alert_window=dhtmlmodal.open('alertbox', 'div', 'alert_div', 'Внимание!', 'width='+w+'px,height='+h+'px,center=1,resize='+bt+',scrolling='+bt);
}

function add_domain_row (id_no, domain_name, status, price) {
	var domain_table = gbi('domain_table');
	var new_domain_row = domain_table.insertRow(domain_table.rows.length);
	new_domain_row.setAttribute('id', 'domain_row'+id_no);

	var name_cell = new_domain_row.insertCell(0);
	name_cell.setAttribute('id','domain_name'+id_no);
	name_cell.setAttribute('class', 'db1');

	var service_cel = new_domain_row.insertCell(1);
	service_cel.setAttribute('id','domain_service'+id_no);

	var price_cel = new_domain_row.insertCell(2);
	price_cel.setAttribute('id','domain_price'+id_no);

	var del_cel = new_domain_row.insertCell(3);
	del_cel.setAttribute('id','domain_delete'+id_no);
	
	name_cell.innerHTML=domain_name;
	del_cel.innerHTML='<a href=\'#\' onClick=\"delete_domain('+id_no+'); return false;\"><img src=\"img/but_del.gif\" alt=\"Удалить\" width=\"13\" height=\"13\" border=0 onMouseOver="hlight_domain('+id_no+',true);" onMouseOut="hlight_domain('+id_no+',false);"></a>';
	
	if(status)
		service_cel.innerHTML = "<span style=\"color:darkblue; font-size:0.9em;\">перенос <a href=\"#\" onClick=\"show_info("+id_no+"); return false;\"><img src=\"img/but_info.gif\" alt=\"Посмотреть информацию по домену\" width=\"13\" height=\"13\" border=0 align=\"top\"></a></span>";
	else
		service_cel.innerHTML = "<span style=\"color:darkred; font-size:0.9em;\">регистрация</span>";
	price_cel.innerHTML = price;
	
}
function error_window (error_message) {
	domain_window.load('inline', "<div align=\"center\" style=\"background: #F3F3F3; height: 100%; padding: 5px\" id=\"dom_form\">"+dom_form+"<font color=red><b>Ошибка:</b> "+error_message+"</font></div>",'Введите домен');
	gbi('dom_name').focus();

}

function domain_process(domain_name) {

	
	disable_submit(true);
	disable_add_domain(true);

	domain_err++;
	domain_error = 0;
	
	if((domain_name==null)||(domain_name=="")) {
		domain_err--;
		disable_submit(false);
		disable_add_domain(false);
		domain_window.hide();
		return;
	}
	
	domain_name = exclude_www(domain_name);
	domain_name = domain_name.toUpperCase();

	if (!domain_check(domain_name)) {
		error_window (error_msg);
		domain_err--;
		disable_submit(false);
		disable_add_domain(false);
	}
	else {

		var domain_table = gbi('domain_table');
		domain_window.load('inline', "<div align=\"center\" style=\"background: #F3F3F3; height: 100%; padding: 5px\" id=\"dom_form\"><br>Проверка домена<br><br><img src=\"img/progress-c1.gif\" width=\"32\" height=\"32\" /></div>",'Проверка статуса');
		domain_count++;
		id_no = domain_count;

		domain_names[domain_count] = domain_name;

		var req = new JsHttpRequest();

		req.onreadystatechange = function() {
            if (req.readyState == 4) {
				switch (parseInt(req.responseJS.status)) {
					case 1:
						domain_status[domain_count] = 1;
						domain_price[domain_count] = Math.round(parseFloat(req.responseJS.price) * nds_k);
						add_domain_row(id_no, domain_name, false, domain_price[domain_count]);
						domains++;
						gbi('add_domain').className = 'domain';
						domain_window.hide();
						calc();
						break;
					case 0:
						domain_window.hide();
						domain_info[domain_count] = req.responseJS.info;
						gbi("modal_question_div").innerHTML = "<div align=\"center\" style=\"background: #F3F3F3; height: 100%; padding: 5px\" id=\"dom_question\">Домен <b>"+domain_name+"</b> <a href=\"#\" onClick=\"show_info("+domain_count+"); return false;\">занят</a>. Если Вы являетесь его владельцем и хотите перенести его нажмите <b>Перенести</b>, в противном случае нажмите <b>Отмена</b><br><br><input type=\"button\" id=\"b1\" name=\"perenos\" value=\"Перенести\" onClick=\"transfer_domain = true; parent.question_window.hide()\" />&nbsp;&nbsp;<input type=\"button\" id=\"b2\" value=\"Отмена\" name=\"perenos\" onClick=\"transfer_domain = false; parent.question_window.hide()\" />";
						question_window=dhtmlmodal.open('questionbox', 'div', 'modal_question_div', 'Домен занят!', 'width=300px,height=100px,center=1,resize=0,scrolling=0');
						
						question_window.onclose = function () {
							if(transfer_domain) {
								domain_status[domain_count] = 2;
								domain_price[domain_count] = 0;
								domains++;
								add_domain_row(id_no, domain_name, true, domain_price[domain_count]);
								gbi('add_domain').className = 'domain';
							}
							else {
								domain_error = 1;
								domain_status[domain_count] = 0;
								domain_names[domain_count] = "";
								modal_prompt ();
							}
							return true;
						}
						break;
					default:
						error_window(req.responseJS.error_msg);
						domain_error = 1;
						domain_status[domain_count] = 0;
						break;
						
				} // end switch
				domain_err--;
				disable_submit(false);
				disable_add_domain(false);
            } // readystate
 		} // dom ok
		url = 'check_domain.php';
		req.caching = false;
		req.open('POST', url, true);
		req.send({ domain: domain_name});
	}
	
}
function hlight_domain(row_id, act) {
	var obj = gbi("domain_row"+row_id);
	if(act)
		obj.style.backgroundColor=selectRowColor;
	else
		obj.style.backgroundColor=unselectRowColor;
	
}

function delete_domain(row_id) {

	gbi('domain_table').deleteRow(gbi("domain_row"+row_id).rowIndex);
	domain_status[row_id] = 0;
	domain_names[row_id] = "";
	domains--;
	calc();
}


function site_count_unlim(status) {
	var obj = gbi("site_count");
	if ( !status ) {
		obj.disabled=false;
		obj.value=3;

	} else {
		obj.disabled=true;
		obj.value="0";

	}	
}
/*
function ip_need(status) {
	if ( !status ) {
		if(!gbi("anon_ftp").checked&&!gbi("ssl").checked) {
			gbi("ip").checked=false;
			gbi("ip").disabled=false;
		}

	} else {
		gbi("ip").checked=true;
		gbi("ip").disabled=true;
	}	
}
*/
function hosting_off() {
	var site_size = !isNaN(parseInt(gbi('site_size').value))&&gbi('site_size').value;
	var hosting_fields = ['ssi', 'cgi', 'php', 'jsp', /*'ssl', 'ip', */'crontab', 'ssh', 'ftp_count', 'site_count', 'site_unlim', /*'anon_ftp',*/ 'stat'];
	for ( var i = 0; i < hosting_fields.length; i++ ) {
		if(site_size<1)
			gbi(hosting_fields[i]).disabled = true;
		else
			gbi(hosting_fields[i]).disabled = false;
	}
	
	if (!gbi('site_unlim').checked)
		gbi('site_count').disabled=false;
}

function db_off() {
	var db_size = !isNaN(parseInt(gbi('db_size').value))&&gbi('db_size').value;
	var obj_mysql_db = gbi('db_mysql');
	var obj_postgres_db = gbi('db_postgres');
	// var obj_interbase_db = gbi('db_interbase');
	if(db_size<1) {
		obj_mysql_db.disabled=obj_postgres_db.disabled=/*obj_interbase_db.disabled=*/true;
		obj_mysql_db.checked=obj_postgres_db.checked=/*obj_interbase_db.checked=*/false;
		rstatus('mysql', false);
		rstatus('mysql_td', false);
		db_select(gbi( 'mysql_db_count' ), false);
		db_select(gbi( 'mysql_user_count' ), false);
		rstatus('postgres', false);
		rstatus('postgres_td', false);
		db_select(gbi( 'postgres_db_count' ), false);
		db_select(gbi( 'postgres_user_count' ), false);
		// rstatus('interbase', false);
		// rstatus('interbase_td', false);
		
	}
	else {
		obj_mysql_db.disabled=obj_postgres_db.disabled=/*obj_interbase_db.disabled=*/false;
		rstatus('mysql_td', true);
		rstatus('postgres_td', true);
		// rstatus('interbase_td', true);
	}
	
}

function mail_off() {
	var mail_size = !isNaN(parseInt(gbi('mail_size').value))&&gbi('mail_size').value;
	var obj_spam = gbi('antispam');
	var obj_vir = gbi('antivirus');
	if(mail_size<1)
		obj_spam.checked=obj_vir.checked=false;
	else
		obj_spam.checked=obj_vir.checked=true;

	
}

function submit_off() {
	var site_size = !isNaN(parseInt(gbi('site_size').value))&&gbi('site_size').value;
	var site_count = !isNaN(parseInt(gbi('site_count').value))&&gbi('site_count').value;
	var ftp_count = !isNaN(parseInt(gbi('ftp_count').value))&&gbi('ftp_count').value;
	if(site_size>0)
		if((site_count<1&&!gbi('site_unlim').checked)||(ftp_count<1)) {
			submit_err=1;
			disable_submit(true);
		}
		else {
			submit_err=0;
			disable_submit(false);
		}
}

function check_number(e) {
	var key = window.event ? e.keyCode : e.which;
	var keychar = String.fromCharCode(key);
	regv = /[\d\x08\x00]/;
	return regv.test(keychar);
}

function block_enter(e) {
	var key = window.event ? e.keyCode : e.which;
	if(key==13)
		return false;
	else
		return true;
}

function check_number_onpaste() {
	modal_alert(window.clipboardData.getData("Text"));
}

function check_zero(ed_obj) {
	var ed_value = !isNaN(parseInt(ed_obj.value))&&ed_obj.value;
	if(ed_value<1)
		ed_obj.value = 1;
}

function open_hint(help_obj, act) {
	var obj = gbi(help_obj);
	if(act)
		obj.style.display = "block";
	else
		obj.style.display = "none";
}

function reg_type_change() {
	var fiz_title = gbi('fiz_title');
	var org_title = gbi('org_title');
	var reg_fiz = gbi('reg_fiz');
	var reg_org = gbi('reg_org');
	
	if((gbi('calculator').style.display=='none')&&(gbi('reg').style.display=='block')) {
		if(gbi('reg_type_fiz').checked) {
			reg_fiz.style.display='block';
			reg_org.style.display='none';
			fiz_title.className='h2';
			org_title.className='';
		}
		else {
			reg_fiz.style.display='none';
			reg_org.style.display='block';
			fiz_title.className='';
			org_title.className='h2';
	
		}
	}
}

function go_page(pagename) {
	gbi('summ_result').style.display='block';
	gbi('navy_button').style.display='block';
	switch (pagename) {
		case 'reg':
			if(domains==0) {
				gbi('add_domain').className = 'wrong_domain';
				modal_alert("Необходимо ввести минимум один домен");
				break;
			}
			if((gbi('db_size').value>0)&&(!gbi('db_mysql').checked&&!gbi('db_postgres').checked/*&&!gbi('db_interbase').checked*/)) {
				modal_alert("Выберите тип Базы Данных!");
				break;
			}
			if(global_summ<50) {
				modal_alert("Сумма заказанных услуг не должна быть менее 50 руб.");
				break;
			}
			if(gbi('site_size').value=='')
				gbi('site_size').value=0;
			if(gbi('mail_size').value=='')
				gbi('mail_size').value=0;
			if(gbi('db_size').value=='')
				gbi('db_size').value=0;
			if(gbi('site_count').value=='')
				gbi('site_count').value=0;
			if(gbi('ftp_count').value=='')
				gbi('ftp_count').value=0;
			gbi('calculator').style.display='none';
			gbi('shapka').style.display='block';
			gbi('reg').style.display='block';
			gbi('price').style.display='block';
			gbi('anons').style.display='block';
			gbi('next_button').disabled=true;
			gbi('prev_button').disabled=false;
			reg_type_change();
			gbi('submit_button').style.display='block';
			gbi('calc_title').className='small style2';
			gbi('reg_title').className='';
			gbi('anons').innerHTML = "<img src=\"img/autofill.gif\" alt=\"\" width=\"13\" height=\"12\" border=\"0\"/> Нажмите на значок для автозаполнения полей";
			break;
		case 'post_ok':

			gbi('reg_fiz').style.display='none';
			gbi('reg_org').style.display='none';
			gbi('reg').style.display='none';
			gbi('calculator').style.display='none';
			gbi('submit_button').style.display='none';
			gbi('navy_button').style.display='none';
			gbi('price').style.display='none';
			gbi('shapka').style.display='none';
			gbi('anons').style.display='none';
			post_ok_div = gbi('post_ok');
			post_ok_div.innerHTML = "<br><br><h1>Индивидуальный тарифный план № "+itp+" создан!</h1><br><br>На Ваш e-mail отправлена информация о заказанных услугах и вариантах оплаты.<br><br><br><a href=\"http://nodex.ru\">Главная страница</a>";
			post_ok_div.style.display='block';

		break;		
		case 'calc':
		default:
			gbi('reg_fiz').style.display='none';
			gbi('reg_org').style.display='none';
			gbi('reg').style.display='none';
			gbi('shapka').style.display='block';
			gbi('calculator').style.display='block';
			gbi('price').style.display='block';
			gbi('anons').style.display='block';
			gbi('next_button').disabled=false;
			gbi('prev_button').disabled=true;
			gbi('submit_button').style.display='none';
			gbi('calc_title').className='';
			gbi('reg_title').className='small style2';
			gbi('anons').innerHTML = "<img src=\"img/help.gif\" alt=\"\" /> Нажмите на значок, чтобы увидеть подсказку";
			calc();
			
	}
	
}



function calc(submit_form) {
	
	disable_submit(true);
	var site_price = 0.23;
	var mail_price = 0.2;
	var db_price = 0.3;
	var site_count_price = 10;
	var ssi_price = 5;
	var cgi_price = 8;
	var php_price = 20;
	var jsp_price = 60;
	var crontab_price = 25;
	var ssh_price = 40;
	var ftp_count_price = 30;
	var ftp_anon_price = 30;
	var ssl_price = 80;
	var ip_price = 125;
	var stat_price = 25;
	var log_price = 30;
	var site_unlim = 250;
	var mysql_price = 0;
	var postgres_price = 50;
	var interbase_price = 90;
	var bd_users_count_price = 2;
	var bd_count_price = 2;
	var summ = 0;
	var summ_usd = 0;
	var summ_dom = 0;


		
	var site_size = !isNaN(parseInt(gbi('site_size').value))&&gbi('site_size').value;
	var site_count = !isNaN(parseInt(gbi('site_count').value))&&gbi('site_count').value;
	var ftp_count = !isNaN(parseInt(gbi('ftp_count').value))&&gbi('ftp_count').value;
	var mail_size = !isNaN(parseInt(gbi('mail_size').value))&&gbi('mail_size').value;
	var db_size = !isNaN(parseInt(gbi('db_size').value))&&gbi('db_size').value;
	var period = gbi('period').value;
	
	if (site_size>=2100)
		site_price = 0.1;
	else
		if(site_size<=100)
			site_price = 0.25;
		else
			site_price = site_price - (site_size*0.000062);
	
	if(period<1||period>12)
		period = 1;

	if(gbi('site_unlim').checked) {
		site_count_price = 0;
		summ+=site_unlim;
	}
	summ+= site_size * site_price + mail_size * mail_price + db_size * db_price;

	if (site_size>0) {
		if(site_count<1)
			site_count=1;
		if(ftp_count<1)
			ftp_count=1;
		summ+= site_count * site_count_price + ftp_count * ftp_count_price;
		if (gbi('ssi').checked)
			summ+=ssi_price;
		if (gbi('cgi').checked)
			summ+=cgi_price;
		if (gbi('php').checked)
			summ+=php_price;
		if (gbi('jsp').checked)
			summ+=jsp_price;
		if (gbi('crontab').checked)
			summ+=crontab_price;
		if (gbi('ssh').checked)
			summ+=ssh_price;
/*
		if (gbi('anon_ftp').checked)
			summ+=ftp_anon_price;

		if (gbi('ssl').checked)
			summ+=ssl_price;

		if (gbi('ip').checked)
			summ+=ip_price;
*/
		if (gbi('stat').checked)
			summ+=stat_price;

	}

	if (gbi('db_mysql').checked) {
		summ+=mysql_price;
		summ+=(!isNaN(parseInt(gbi('mysql_user_count').value))&&gbi('mysql_user_count').value)*bd_users_count_price;
		summ+=(!isNaN(parseInt(gbi('mysql_db_count').value))&&gbi('mysql_db_count').value)*bd_count_price;
	}

	if (gbi('db_postgres').checked) {
		summ+=postgres_price;
		summ+=(!isNaN(parseInt(gbi('postgres_user_count').value))&&gbi('postgres_user_count').value)*bd_users_count_price;
		summ+=(!isNaN(parseInt(gbi('postgres_db_count').value))&&gbi('postgres_db_count').value)*bd_count_price;
	}
/*
	if (gbi('db_interbase').checked) {
		summ+=interbase_price;
	}
*/
	
// Domains	
	for(var i = 0; i <= domain_count; i++)
		if (domain_status[i]==1)
			summ_dom+=domain_price[i];

	summ = Math.round(summ) * period;
	var itog = summ+summ_dom;
	summ_usd = (Math.round(itog/usd_rate*100))/100;
	if(summ_usd>99.99)
	    summ_usd = Math.round(summ_usd);
	gbi('hosting_summ').innerHTML = "<strong>"+summ+"</strong> руб.";
	gbi('domain_summ').innerHTML = "<strong>"+summ_dom+"</strong> руб.";
	gbi('itogo_summ').innerHTML = "<span class=\"h3\" >"+itog+"</span> руб. (&#8776;$"+summ_usd+")";
	
//	setTimeout("calc()", 3000);
	global_summ = summ;
	if(summ>=50)
		disable_submit(false);

}

