function trim(str){
     s = str.replace(/^(\s)*/, '');
     s = s.replace(/(\s)*$/, '');
     return s;
}


function bookmark (URI, title) {
	if (typeof window.external != "undefined" && navigator.userAgent.indexOf("MSIE") != -1) {
		window.external.AddFavorite (URI, title);
	} else if (typeof window.opera != "undefined") {
		alert ("Нажмите [Ctrl] + [T] для добавления этой страницы в избранное.");
	} else {
		alert ("Нажмите [Ctrl] + [D] для добавления этой страницы в избранное.");
	}
}

// login
function sendLoginForm() {
	uname = Ext.get('login');
	passwd = Ext.get('password');
	Ext.Ajax.request({
		url: '/controllers/login.php',
		success: successLogin,
		failure: failureAlert,
		headers: {},
		params: {
			loginUsername: uname.dom.value,
			loginPassword:passwd.dom.value
		}
	});
}

function successLogin(response, options) {
	var res = Ext.decode(response.responseText);
	if(res.success==true){		
		if(Ext.get('return') && Ext.get('return').dom.value!=''){			
			var redirect_url = Ext.get('return').dom.value;	
			if (redirect_url.match('search')){
				Ext.Ajax.request({
					url: '/ajax/saveSAlert.php',
					callback: function (options, success, response) {
							var res = Ext.decode(response.responseText);					
							if (res.success==true && res.url_goto){
								goTo(res.url_goto);						
							}
							else if (res.success==true){
								goTo('/myadverts/alerts/');
							}
							else alert('Ошибка при сохранении подписки'); 	
						},
					params: {url:redirect_url}		
				});		
			}
			else {
				if(res.usertype == 'pseller' && redirect_url == '/myadverts/') {
					goTo('/psellerAdverts/');
				} else {
					goTo(redirect_url);
				}				
			}	
		}else{
			var redirect_url = '/myadverts/';
			if(res.usertype == 'pseller' && redirect_url == '/myadverts/') {
				goTo('/psellerAdverts/');
			} else {
				goTo(redirect_url);
			}
		}
		
	}else{
		Ext.get('error').dom.style.display="block";
	}

}
// end login


// register & restore password
function sendRegisterForm() {
	hideAllErrorMessages();

	errors = false;
	agreement = document.getElementById('agreement');
	if(agreement.checked == false) {
		document.getElementById('agreement_error_message').style.display = 'block';
		errors = true;
	}

	email = document.getElementById('email');
	if(email.value.length == 0) {
		document.getElementById('empty_email_error_message').style.display = 'block';
		errors = true;
	}

	password = document.getElementById('password');
	if(password.value.length == 0) {
		document.getElementById('empty_password_error_message').style.display = 'block';
		errors = true;
	}

	passwordConfirm = document.getElementById('passwordConfirm');
	if(passwordConfirm.value.length == 0) {
		document.getElementById('empty_confirm_password_error_message').style.display = 'block';
		errors = true;
	}

	if(errors) {
		document.getElementById('errors_panel').style.display = 'block';
		if(document.location.href.search('#top') != -1) {
			document.location = document.location;
		} else {
			document.location += '#top';
		}
		return false;
	}


	Ext.Ajax.request({
		form: 'registerForm',
		success: successRegister,
		failure: failureAlert,
		params: {action: 'register'}
	});

	return false;
}

function checkUserExists() {
	email = Ext.get('email').dom.value;

	Ext.Ajax.request({
		url: '/ajax/register.php',
		success: successUserExists,
		failure: function(){},
		params: {f_email: email,
		action: 'check_user_exists'}
	});
}


function successRegister(response, options) {
	hideAllErrorMessages();
	var res = Ext.decode(response.responseText);
	if(res.success==true){
		// auth
		uname = Ext.get('email');
		passwd = Ext.get('password');
		Ext.Ajax.request({
			url: '/controllers/login.php',
			success: successLogin,
			failure: failureAlert,
			headers: {},
			params: {
				loginUsername: uname.dom.value,
				loginPassword: passwd.dom.value
			}
		});
	}else{
		showRegisterErrors(res.errors);
		document.location += '#top'
	}
	return false;
}

function showRegisterErrors(errors) { //TODO: написать нормально функцию
	for(i=0; i<errors.length; i++) {
		key = errors[i]['type'] + '_error_message';
		if (document.getElementById(key)) document.getElementById(key).style.display = 'block';

		key = errors[i]['field'] + '_error_icon';
		if (document.getElementById(key)) document.getElementById(key).style.display = 'inline';

		key = errors[i]['field'];

		document.getElementById(key).className += ' field_error';
	}
	if (document.getElementById('errors_panel')) document.getElementById('errors_panel').style.display = 'block';

}

function successUserExists(response, options) {
	var res = Ext.decode(response.responseText);
	if(res.success==false){
		hideAllErrorMessages();
		showRegisterErrors(res.errors);
	} else {
		document.getElementById('user_unique_error_message').style.display = 'none';
		hidePanelIfEmpty();
	}
	return false;
}

function failureAlert() {
	document.getElementById('alerts').style.display = 'block';
	document.getElementById('ajax_error_alert').style.display = 'block';

	return false;
}

function hideAllErrorMessages()
{
	document.getElementById('errors_panel').style.display = 'none';

	box = document.getElementById('errors_panel');
	for(i=0; i<box.childNodes.length; i++) {
		if(box.childNodes[i].id) {
			box.childNodes[i].style.display = "none";
		}
	}

	error_icons = Ext.query('div[class="error_icon"]');
	for(i=0; i<error_icons.length; i++) {
		if(error_icons[i].id) {
			error_icons[i].style.display = "none";
		}
	}
}

function hidePanelIfEmpty(){

	is_empty = true;

	panel = document.getElementById('errors_panel');
	for(i=0; i<panel.childNodes.length; i++) {
		if(typeof(panel.childNodes[i].style) != 'undefined' && panel.childNodes[i].style.display != 'none') {
			is_empty = false;
		}
	}

	if(is_empty) {
		document.getElementById('errors_panel').style.display = 'none';
	}
}

function isEmail(v) {
	//	var reg = /^([A-Z]+@([^@\.]{2,}\.)+[^@\.]{2,})?$/i;
	var reg = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	return reg.test(v);
}

function isUrl(v) {
	var reg =/^(?:(?:https?|ftp|telnet):\/\/(?:[a-z0-9_-]{1,32}(?::[a-z0-9_-]{1,32})?@)?)?(?:(?:[a-z0-9-]{1,128}\.)+(?:com|net|org|mil|edu|arpa|gov|biz|info|aero|inc|name|[a-z]{2})|(?!0)(?:(?!0[^.]|255)[0-9]{1,3}\.){3}(?!0|255)[0-9]{1,3})(?:\/[a-z0-9.,_@%&?+=\~\/-]*)?(?:#[^ '\"&<>]*)?$/i;
	return reg.test(v);
}

function validateUrl(){	
	url = Ext.get('id_site');	
	//console.log(email);
	url = url.dom;
	if(!isUrl(url.value)) {
		if ($('url_error_icon').style.display!='inline') {
			url.className = url.className+=' field_error';
			$('url_error_icon').style.display = 'inline';
		}
	} else {
		if ($('url_error_icon').style.display=='inline')
		url.className = trim(url.className.replace('field_error',''));
		$('url_error_icon').style.display = 'none';
	}
}

function validateEmail(){	
	if(!(email = Ext.get('email')))
		email = Ext.get('id_email');	
	//console.log(email);
	email = email.dom;
	if(!isEmail(email.value)) {
		if ($('email_error_icon').style.display!='inline') {
			email.className = email.className+=' field_error';
			$('email_error_icon').style.display = 'inline';
		}
	} else {
		if ($('email_error_icon').style.display=='inline')
		email.className = trim(email.className.replace('field_error',''));
		$('email_error_icon').style.display = 'none';
	}
}

function validateLogin(){
	email = Ext.get('login');
	email = email.dom;
	if(!isEmail(email.value)) {
		if ($('email_error_icon').style.display!='inline') {
			email.className = email.className+=' field_error';
			$('email_error_icon').style.display = 'inline';
		}
	} else {
		if ($('email_error_icon').style.display=='inline')
		email.className = trim(email.className.replace('field_error',''));
		$('email_error_icon').style.display = 'none';
	}
}

function validateLoginPassword(){
	var password = document.getElementById('password');
	var password_length = document.getElementById('password_length').innerHTML;
	if(password.value.length < password_length) {
		if ($('password_error_icon').style.display!='inline') {
			password.className += ' field_error';
			$('password_error_icon').style.display = 'inline';
		}
	} else {
		if($('password_error_icon').style.display=='inline'){
			password.className = trim(password.className.replace('field_error',''));
			$('password_error_icon').style.display = 'none';
		}
	}
}

function validatePassword(){
	var password = document.getElementById('password');
	var password_length = document.getElementById('password_length').innerHTML;
	if(password.value.length < password_length) {
		if ($('password_error_icon').style.display!='inline') {
			password.className += ' field_error';
			$('password_error_icon').style.display = 'inline';
		}
	} else {
		if($('password_error_icon').style.display=='inline'){
			password.className = trim(password.className.replace('field_error',''));
			$('password_error_icon').style.display = 'none';
		}
		checkConfirmPassword();
	}
}

function validateFieldFromTo(field){	
	var from_field = document.getElementById(field+'_from');
	var to_field = document.getElementById(field+'_to');
	if(parseInt(from_field.value)>parseInt(to_field.value) )
		document.getElementById(field+'_to').value = from_field.value;
}
function validateFieldFromToMulti(field){
	var from_field = document.getElementById('id_'+field+'_from');
	var to_field = document.getElementById('id_'+field+'_to');
	if(parseInt(from_field.value)>parseInt(to_field.value) )
		document.getElementById('id_'+field+'_to').value = from_field.value;
}

function checkConfirmPassword() {
	var password = Ext.get('password').dom;
	var confirm = Ext.get('passwordConfirm').dom;
	if(password.value !=  confirm.value) {
		if($('passwordConfirm_error_icon').style.display != 'inline'){
			confirm.className += ' field_error';
			$('passwordConfirm_error_icon').style.display = 'inline';
		}
	} else {
		if($('passwordConfirm_error_icon').style.display == 'inline'){
			confirm.className =  trim(confirm.className.replace('field_error',''));
			$('passwordConfirm_error_icon').style.display = 'none';
		}
	}
}

function switchDisplayRegisterAdditionalInfo() {
	block = Ext.get('additional_info');
	block.enableDisplayMode()

	if(block.isDisplayed()) {
		block.hide();
	} else {
		block.show();
	}
}

function goToRestore(){
	var path = '/login/restore/';
	var email = $('login').value;
	if(email) {
		path = path + '?email=' + email;
	}
	
	window.location = path;
}

function setDefaultEmailToRestoreField() {
	email =	getValueFromURL('email', document.location.toString());
	if(email){
		$('email').value = email;
	}
}

function sendRestorePasswordForm() {
	document.getElementById('errors_panel').style.display = 'none';
	document.getElementById('message_panel').style.display = 'none';
	document.getElementById('alerts').style.display = 'none';
	Ext.Ajax.request({
		form: 'resorePasswordForm',
		success: successRestorePassword,
		failure: failureAlert,
		params: {action: 'restore'}
	});
	return false;
}

function activatePassword() {
	var input_key  = getValueFromURL('key', document.location.toString());

	if(input_key !== false){
		Ext.Ajax.request({
			url: '/ajax/restorePassword.php',
			success: successActivatePassword,
			failure: failureAlert,
			params: {key: input_key,
			action: 'activate'}
		});
	}
}

function successActivatePassword(response, options) {
	var res = Ext.decode(response.responseText);
	if(res.success){
		$('activate_password_success').style.display = 'block';
		$('message_panel').style.display = 'block';
	} else {
		hideAllErrorMessages();
		document.getElementById('message_panel').style.display = 'none';
		errors = res.errors;
		for(i=0; i<errors.length; i++) {
			key = errors[i]['type'] + '_error_message';
			$(key).style.display = 'block';
		}
		$('errors_panel').style.display = 'block';
	}
}


function successRestorePassword(response, options) {

	var res = Ext.decode(response.responseText);
	if(res.success){
		$('message_panel').style.display = 'block';
		$('activate_password_success').style.display = 'block';
		$('errors_panel').style.display = 'none';
		$('restore_block').style.display = 'none'
	} else {
		$('message_panel').style.display = 'none';
		errors = res.errors;
		for(i=0; i<errors.length; i++) {
			key = errors[i]['type'] + '_error_message';
			$(key).style.display = 'block';
		}
		$('errors_panel').style.display = 'block';
		$('user_not_exists_link').style.display = 'inline';
	}
	return false;
}
// end register & restore password

// send message to ad's author
function sendMes2AuthorForm(id) {
	Ext.Ajax.request({
		form: 'mes2authorForm',
		success: successMes2AuthorForm,
		failure: failureMes2AuthorForm,
		params: {action: 'mes2author', 'ad_id': id}
	});
	return false;
}
function successMes2AuthorForm(response, options) {
	//reloadCaptha('mes2author_captcha', 'ad_id');

	var res = Ext.decode(response.responseText);
	if(res.success==true){
		alert('Сообщение отправлено');
		hideIconErrs('mes2authorForm');
		//showhide('author','show');
		blockSwitch($('contactCollapsedLink'));
		$('mes2authorForm').reset();
	}else{
		showIconErrs(res.errors, 'mes2au_');
		alert('Заполните верно форму');
	}
}
function failureMes2AuthorForm() {
	//reloadCaptha('mes2author_captcha', 'ad_id');
	alert('Ошибка связи с сервером');
}
function reloadCaptha(img, id, uni) {
	var ad_id = Ext.get(id).getValue();
	if(!uni) uni='';
	Ext.get(img).dom.src='/kcaptcha/index.php?id='+uni+ad_id+'&rand='+Math.random();
}
function clrForm(f) {
	var m = Ext.query('#'+f+' .inp');
	for(var i=0; i<m.length; i++) {
		m[i].firstChild.value = '';
	}
}
function hideIconErrs(idcont) {
	var m = Ext.query('#'+idcont+' .error_icon');
	for(var i=0; i<m.length; i++) hideFieldErr(Ext.get(m[i]).prev());
	clrForm(idcont);
}
function hideFieldErr(inp) {
	inp.parent().removeClass('error_label');
	inp.next().dom.style.display = 'none';
}
function showFieldErr(inp) {
	inp.parent().addClass('error_label');
	inp.next().dom.style.display = 'inline';
}
function showIconErrs(err, prefix) {
	for(i=0; i<err.length; i++) {
		showFieldErr(Ext.get(prefix + err[i]['field']).prev());
	}
}
function checkfield(el, v) {
	v = v.split('|');
	el = Ext.get(el);
	var er = false;
	for(i=0;i<v.length;i++) {
		if(v[i]=='empty' && el.getValue()=='') { er = true; break; }
		if(v[i]=='email' && !isEmail(el.getValue())) { er = true; break; }
	}
	if(er) showFieldErr(el);
	else hideFieldErr(el);
}
function checkfieldT(inp, v) {
	setTimeout(function(el){ return function() { checkfield(el, v) } }(inp), 100);
}
// end send message to ad's author

// incorrect ad message
function sendIncorrectAdForm(id) {
//alert('1');
	Ext.Ajax.request({
		form: 'incorrectadForm',
		success: successIncorrectAdForm,
		failure: failureIncorrectAdForm,
		params: {'ad_id': id}
	});
	return false;
}
function successIncorrectAdForm(response, options) {
	var res = Ext.decode(response.responseText);
	if(res.success==true){
		alert('Сообщение отправлено');
		hideIncorrectAdForm();
	}else{
		alert('Не удалось отправить сообщение');
	}
}
function failureIncorrectAdForm() {
	alert('Ошибка связи с сервером.');
}
// end incorrect ad message

// userarea contact info
function sendUserareaContactInfoForm() {
	Ext.Ajax.request({
		form: 'userareaContactInfoForm',
		success: successContactInfoUpdate,
		failure: failureAlert,
		params: {action: 'contact_info'}
	});
	return false;
}

function sendUserareaUpdatePasswordForm() {
	hideAllErrorMessages();

	errors = false;
	
	old_password = document.getElementById('old_password');
	if(old_password.value.length < 6) {
		document.getElementById('wrong_old_password_error_message').style.display = 'block';
		errors = true;
	}

	password = document.getElementById('password');
	if(password.value.length == 0) {
		document.getElementById('empty_password_error_message').style.display = 'block';
		errors = true;
	}

	passwordConfirm = document.getElementById('passwordConfirm');
	if(passwordConfirm.value.length == 0) {
		document.getElementById('empty_confirm_password_error_message').style.display = 'block';
		errors = true;
	}

	if(passwordConfirm.value != password.value) {
		document.getElementById('wrong_confirm_password_error_message').style.display = 'block';
		errors = true;
	}

	if(errors) {
		document.getElementById('errors_panel').style.display = 'block';
		return false;
	}

	Ext.Ajax.request({
		form: 'userareaUpdatePasswordForm',
		success: successPasswordUpdate,
		failure: failureAlert,
		params: {action: 'password'}
	});
	return false;
}

function successPasswordUpdate(response, options) {
	hideAllErrorMessages();
	var res = Ext.decode(response.responseText);
	if(res.success==true){
		document.getElementById('update_password_success_message').style.display = 'block';
		document.getElementById('update_user_info_success_message').style.display = 'none';
		update_logo_message = document.getElementById('update_logo_success_message');
		if(update_logo_message) {
			update_logo_message.style.display = 'none';
		}

		delete_logo_message = document.getElementById('delete_logo_success_message');
		if(delete_logo_message) {
			delete_logo_message.style.display = 'none';
		}

		document.getElementById('alerts').style.display = 'none';
		document.getElementById('errors_panel').style.display = 'none';
		document.getElementById('message_panel').style.display = 'block';

		document.getElementById('changePasswordBlock').style.display = 'none';
		document.getElementById('changePasswordLink').style.display = 'block';
		
		document.getElementById('old_password').value='';
		document.getElementById('password').value='';
		document.getElementById('passwordConfirm').value='';
	}else{
		document.getElementById('message_panel').style.display = 'none';
		showRegisterErrors(res.errors);
	}
	return false;
}

function hideAllSuccessMessages(){
	document.getElementById('message_panel').style.display = 'none';

	box = document.getElementById('message_panel');
	for(i=0; i<box.childNodes.length; i++) {
		if(box.childNodes[i].id) {
			box.childNodes[i].style.display = "none";
		}
	}
}

function successContactInfoUpdate(response, options) {
	hideAllErrorMessages();
	var res = Ext.decode(response.responseText);
	hideAllSuccessMessages();
	if(res.success==true){
		document.getElementById('update_user_info_success_message').style.display = 'block';

		document.getElementById('alerts').style.display = 'none';
		document.getElementById('errors_panel').style.display = 'none';
		document.getElementById('message_panel').style.display = 'block';

		document.getElementById('changePasswordBlock').style.display = 'none';
		document.getElementById('changePasswordLink').style.display = 'block';		
		
		if(document.location.href.search('#top') != -1) {
			document.location = document.location;
		} else {
			document.location += '#top';
		}
		return false;		

	}else{
		showRegisterErrors(res.errors);
	}
	return false;
}

function successLogoUpdate(){
	hideAllSuccessMessages();
	document.getElementById('update_logo_success_message').style.display = 'block';

	document.getElementById('alerts').style.display = 'none';
	document.getElementById('errors_panel').style.display = 'none';
	document.getElementById('message_panel').style.display = 'block';

	document.getElementById('changeLogoBlock').style.display = 'none';
	document.getElementById('changeLogoLink').style.display = 'block';
}

function refreshLogo(url){
	img = $('img_logo');
	if(img == null) {
		elImg = document.createElement('IMG');
		elImg.id='img_logo';
		$('logo_block').appendChild(elImg);
	}
	$('img_logo').src = url;
}

function failureLogoUpdate(elem)
{
	$('message_panel').style.display = 'none';

	hideAllErrorMessages();
	$('errors_panel').style.display = 'block';
	$(elem).style.display = 'block';
}


function goToUserareaAds() {
	goTo('/myadverts/');
}

function showPasswordFields() {
	document.getElementById('changePasswordBlock').style.display = 'block';
	document.getElementById('changePasswordLink').style.display = 'none';
}

function deletePsellerLogo()
{
	Ext.Ajax.request({
		url: '/ajax/userareaInfo.php',
		success: successDeleteLogo,
		failure: failureAlert,
		params: {action: 'delete_pseller_logo'}
	});
}

function successDeleteLogo()
{
	hideAllSuccessMessages();
	img = $('img_logo');
	if(img != null){
		img.src = '';
		document.getElementById('delete_logo_success_message').style.display = 'block';
		document.getElementById('message_panel').style.display = 'block';

		document.getElementById('changeLogoBlock').style.display = 'none';
		document.getElementById('changeLogoLink').style.display = 'block';
	}
}
// end userarea contact info

// link to friend
function sendLink2FriendForm(id) {
	Ext.Ajax.request({
		form: 'linktofriendForm',
		success: successLink2FriendForm,
		failure: failureLink2FriendForm,
		params: {action: 'l2f', 'ad_id': id}
	});
	return false;
}
function successLink2FriendForm(response, options) {
	//reloadCaptha('l2f_captcha', 'ad_id', 'l2f');

	var res = Ext.decode(response.responseText);
	if(res.success==true){
		alert('Сообщение отправлено');
		hideIconErrs('linktofriendForm');
		hideLinkToFriendForm();
		reloadCaptha('mes2fried_captcha', 'ad_id', 'l2f');
	}else{
		showIconErrs(res.errors, 'l2f_');
		alert('Заполните верно форму');
	}
	return false;
}
function failureLink2FriendForm() {
	//reloadCaptha('l2f_captcha', 'ad_id', 'l2f');
	alert('Ошибка сервера');
}

function showLinkToFriendForm(){
	hideIncorrectAdForm();
	$('linkToFiriend').style.display = 'block';
	$('sendLinkToFriedLink').className = 'act';
}

function hideIncorrectAdForm(){
	$('incorrect_comments').value = '';
	$('incorrectAd').style.display = 'none';
	$('incorrectAdLink').className = '';
}

function hideLinkToFriendForm(){
	$('linktofriendForm').reset();
	$('linkToFiriend').style.display = 'none';
	$('sendLinkToFriedLink').className = '';
}

function showIncorrectAdForm(){
	hideLinkToFriendForm();	
	$('incorrectAd').style.display = 'block';
	$('incorrectAdLink').className = 'act';
}
// end link to friend

function setCookie2 (name, value, expires, path, domain, secure) {
	if (!path && $('default_cookie_path')) {
		path=$('default_cookie_path').value;
	}
	if (!domain && $('site_cookie_path')) {
		domain=$('site_cookie_path').value;
	}
	document.cookie = name + "=" + escape(value) +
	((expires) ? "; expires=" + expires : "") +
	((path) ? "; path=" + path : "") +
	((domain) ? "; domain=" + domain : "") +
	((secure) ? "; secure" : "");
}

function getCookie2(name) {
	var cookie = " " + document.cookie;
	var search = " " + name + "=";
	var setStr = null;
	var offset = 0;
	var end = 0;
	if (cookie.length > 0) {
		offset = cookie.indexOf(search);
		if (offset != -1) {
			offset += search.length;
			end = cookie.indexOf(";", offset)
			if (end == -1) {
				end = cookie.length;
			}
			setStr = unescape(cookie.substring(offset, end));
		}
	}
	return(setStr);
}


function show_need_prices(my_curr){
	var coll = document.getElementsByTagName("span");
	for(var i=0; i<coll.length; i++){
		if (coll[i].className == "RUR" || coll[i].className == "USD" || coll[i].className == "EUR" || coll[i].className == "DEFAULT"){
			coll[i].style.display = "none";
		}
	}
	for(var i=0; i<coll.length; i++){
		if (coll[i].className == my_curr){
			coll[i].style.display = "inline";
		}
	}
}

function show_need_links(my_curr){
	var btn_rur = document.getElementById('RUR');
	var btn_usd = document.getElementById('USD');
	var btn_eur = document.getElementById('EUR');
	var btn_def = document.getElementById('DEFAULT');
	var btn_need = document.getElementById(my_curr);
	if (my_curr == "DEFAULT"){
		btn_rur.className = "";
		btn_rur.style.cursor = "pointer";
		btn_rur.style.display = "";

		btn_usd.className = "";
		btn_usd.style.cursor = "pointer";
		btn_usd.style.display = "";

		btn_eur.className = "";
		btn_eur.style.cursor = "pointer";
		btn_eur.style.display = "";

		btn_def.className = "";
		btn_def.style.display = "none";
	}
	else {
		btn_rur.className = "";
		btn_rur.style.cursor = "pointer";
		btn_rur.style.display = "none";

		btn_usd.className = "";
		btn_usd.style.cursor = "pointer";
		btn_usd.style.display = "none";

		btn_eur.className = "";
		btn_eur.style.cursor = "pointer";
		btn_eur.style.display = "none";

		btn_def.className = "";
		btn_def.style.cursor = "pointer";
		btn_def.style.display = "none";

		btn_need.className = "selected";
		btn_need.style.cursor = "default";
		btn_need.style.display = "";
		btn_def.style.display = "";
	}
}

function ch_m(my_curr){
	if (my_curr != "") {
		setCookie2("curr_currency", my_curr);
	}
	else {
		my_curr = getCookie2("curr_currency");
	}
	
	if (my_curr != null) {
		show_need_prices (my_curr);
		show_need_links (my_curr);
	}
}

function goToMyHighlight(id) {
	Ext.Ajax.request({
		url: '/ajax/actvsPayment.php',
		callback: function (options, success, response) {
			var res = Ext.decode(response.responseText);
			if (res.success && res.status=='wait'){
				alert('Уважаемый пользователь!У Вас есть неоплаченный платеж. Другие услуги для этого объявления будут доступны после оплаты или удаления данного платежа.');
				goTo('/ajax/payment.php?id='+id+'&op='+res.product+'&price=1&cab=1');					
			}
			else if (res.success && res.status=='no_payment')
				goTo('/myadverts/highlight/'+id+'/');
			else
				alert(res.message || 'Ошибка. Свяжитесь с администратором');	
		},
		params: {op:'is_wait',id:id,'act':'highlight'}
	});
	
	return false;
}

function goToMyPushUp(id) {
	//goTo('/myadverts/pushup/'+id+'/');
	Ext.Ajax.request({
		url: '/ajax/actvsPayment.php',
		callback: function (options, success, response) {
			var res = Ext.decode(response.responseText);
			if (res.success && res.status=='wait'){
				alert('У Вас есть неоплаченный платеж. Другие услуги для этого объявления будут доступны после оплаты или удаления данного платежа.');
				goTo('/ajax/payment.php?id='+id+'&op='+res.product+'&price=1&cab=1');					
			}
			else if (res.success && res.status=='no_payment')
				goTo('/ajax/payment.php?id='+id+'&op=pushup&price=1&cab=1');
			else if (res.success && res.status=='payment_exist')
					alert('Уважаемый пользователь! Вы можете '+res.mess+' свое объявление не чаще одного раза в сутки, начиная со второго дня подачи.');			
			else
				alert(res.message || 'Ошибка. Свяжитесь с администратором');				
		},
		params: {op:'is_wait',id:id,'act':'pushup'}
		});
	//goTo('/ajax/payment.php?id='+id+'&op=pushup&price=1&cab=1');
	return false;
}

function goToMyProlong(id,ispay) {
	if(ispay) {
		Ext.Ajax.request({
			url: '/ajax/actvsPayment.php',
			callback: function (options, success, response) {
				var res = Ext.decode(response.responseText);
				if (res.success && res.status=='wait'){
					alert('Уважаемый пользователь!У Вас есть неоплаченный платеж. Другие услуги для этого объявления будут доступны после оплаты или удаления данного платежа.');
					goTo('/ajax/payment.php?id='+id+'&op='+res.product+'&price=1&cab=1');				
				}
				else if (res.success && res.status=='no_payment')
					goTo('/ajax/payment.php?id='+id+'&op=prolong&price=1&cab=1');
				else if (res.success && res.status=='payment_exist')
					alert('Уважаемый пользователь! Вы можете '+res.mess+' свое объявление не чаще одного раза в сутки, начиная со второго дня подачи.');			
				else
					alert(res.message || 'Ошибка. Свяжитесь с администратором');	
			},
			params: {op:'is_wait',id:id,'act':'activate'}
		});
		
		//goTo('/myadverts/prolong/'+id+'/');
	}
	else {
		Ext.Ajax.request({
			url: '/ajax/payment.php',
			success: function(response) {
				var res = Ext.decode(response.responseText);
				if(res.success > 0){
					updFinDate(res);
					showMsgBox('ad_prolong');
				}else if(res.success == -3){
					showMsgBox('ad_err_activatelimit');
				}else{
					alert(res.message || 'Ошибка. Свяжитесь с администратором');
				}
			},
			failure: function(response) {},
			headers: {},
			params: {
				op:'prolong',
				id:id
			}
		});
	}
	return false;
}

function updFinDate(res) { Ext.get('fin'+res.id).update(res.to); }
function setHPP(tr, id, ispay, is_hightlight, is_prolong, disable, min_qi, btns) {
	var li = tr.child('li.lft');
	if (btns!=undefined && btns!=null){
		li.insertHtml('beforeBegin', btns);
	}
	else{	
		var dis_button;			
		if (disable==0) dis_button = '<a class="up" onclick="return goToMyPushUp('+id+');" >Поднять</a>'; 
		if (disable==1 && min_qi>=0) dis_button = '<a class="up up-inactive" title="Поднять можно объявление с ИК>='+min_qi+'" >Поднять</a>';
		if (dis_button==undefined)dis_button='';	
		if (is_hightlight > 0 && is_prolong > 0)
			li.insertHtml('beforeBegin', '<a class="highlight" onclick="return goToMyHighlight('+id+');" >Выделить</a><a class="prodlit" onclick="return goToMyProlong('+id+','+ispay+');">Продлить</a>'+dis_button+'');
		else if (is_hightlight > 0 && is_prolong == 0)
			li.insertHtml('beforeBegin', '<a class="highlight" onclick="return goToMyHighlight('+id+');" >Выделить</a>');			
		else if (is_hightlight == 0 && is_prolong > 0)
			li.insertHtml('beforeBegin', '<a class="prodlit" onclick="return goToMyProlong('+id+','+ispay+');">Продлить</a>'+dis_button+'');				
	}		
	li.remove();
}

function goToMyActivate(inp,id,ispay) {
//
//	var tr = Ext.get('tit'+id).parent('tr');
//	var tmp = tr.child('div.no-active');
//	if(tmp) tmp.parent().update('<div class="yes-active"><span class="ico-set"></span>активно</div>');
//	var del = tr.next().child('div[align=right]');
//	if(del) del.remove();
//	setHPP(tr.next('tr'), id, 0);
//	updFinDate(res);
//
//	return;
//

	if(ispay) {
		Ext.Ajax.request({
		url: '/ajax/actvsPayment.php',
		callback: function (options, success, response) {
			var res = Ext.decode(response.responseText);
			if (res.success && res.status=='wait'){
				alert('У Вас есть неоплаченный платеж. Другие услуги для этого объявления будут доступны после оплаты или удаления данного платежа.');
				goTo('/ajax/payment.php?id='+id+'&op='+res.product+'&price=1&cab=1');					
			}
			else if (res.success && res.status=='no_payment')
				goTo('/ajax/payment.php?id='+id+'&op=activate&price=1&cab=1');
			else if (res.success && res.status=='payment_exist')
					alert('Уважаемый пользователь! Вы можете '+res.mess+' свое объявление не чаще одного раза в сутки, начиная со второго дня подачи.');			
			else if (res.success && res.status=='moderate_bad'){
				var tit = Ext.get('tit'+id);
					var tmp = tit.first('.red');
					if(tmp) tmp.remove();
					tit.insertHtml('beforeEnd','<div class="red">Ваше объявление отклонено модератором. Если вы хотите сделать объявление активным, пожалуйста, отредактируйте его.</div>');				
			}else
				alert(res.message || 'Ошибка. Свяжитесь с администратором');				
		},
		params: {op:'is_wait',id:id,'act':'activate'}
	});
		//goTo('/myadverts/activate/'+id+'/');
		
	}
	else {
		Ext.Ajax.request({
			url: '/ajax/payment.php',
			success: function(response) {
				var res = Ext.decode(response.responseText);				
				if(!res.success) {
					showMsgBox('ad_err_activate');
				}else if(res.success > 0){
					var tr = Ext.get('tit'+id).parent('tr');
					var tmp = tr.child('div.no-active');
					//if(tmp) tmp.parent().update('<div class="yes-active"><span class="ico-set"></span>активно</div>'+res.status);

					if(tmp) tmp.parent().update(res.status);
					var del = tr.next().child('div[align=right]');
					
					if(del) del.remove();
					
					var is_prolong;
					var is_hightlight;
					var disable;
					var min_qi;
					
					if (res.is_prolong!=undefined) is_prolong = res.is_prolong;
					else is_prolong = 2;
					
					if (res.is_hightlight!=undefined) is_hightlight = res.is_hightlight;
					else is_hightlight = 2;
					
					if (res.disable!=undefined) disable = res.disable;
					else disable = 2;
					
					if (res.min_qi!=undefined) min_qi = res.min_qi;					
					else min_qi = -1;
					
					if(tr.next('tr').dom.className != 'rowAction') {
						setHPP(tr.next('tr').next('tr'), res.id, res.ispay, is_hightlight, is_prolong, disable, min_qi, res.btns);	
					} else {
						setHPP(tr.next('tr'), res.id, res.ispay, is_hightlight, is_prolong, disable, min_qi, res.btns);
					}	
					updFinDate(res);
				}else if(res.success == -3){
					showMsgBox('ad_err_activatelimit');
				}else if(res.success == -5 && res.gotoUrl){ 
					goTo(res.gotoUrl);
				}else if (res.success == -1){
					var tit = Ext.get('tit'+id);
					var tmp = tit.first('.red');
					if(tmp) tmp.remove();
					tit.insertHtml('beforeEnd','<div class="red">Ваше объявление отклонено модератором. Если вы хотите сделать объявление активным, пожалуйста, отредактируйте его.</div>');
				}
			},
			failure: function(response) {},
			headers: {},
			params: {
				op:'activate',
				js:1,
				id:id
			}
		});
	}
	return false;
}

function showMsgBox(id) {
	alert(Ext.get(id).dom.innerHTML);
}

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

function elHide(id){
	if ($(id)) {
		$(id).style.display="none";
	}
}

function elShow(id,inline){
	if ($(id)) {
		if (inline) {
			$(id).style.display="inline";
		} else {
			$(id).style.display="block";
		}
	}
}

function hideMainFilters(){
	elHide('more-filters');
	elHide('extend-search');
	elShow('simple-search');
	if ($('site_cookie_path')) {
		$pathCookie=$('site_cookie_path').value;
	} else {
		$pathCookie=false;
	}
	setCookie2('filterFormStyle',0,false,'/',$pathCookie);

}

function showMainFilters(){
	elHide('simple-search');
	elShow('extend-search');
	elShow('mainFiltersButtonBlock');
	elHide('mainFiltersButtonBlock2');
	if ($('site_cookie_path')) {
		$pathCookie=$('site_cookie_path').value;
	} else {
		$pathCookie=false;
	}
	setCookie2('filterFormStyle',1,false,'/',$pathCookie);

}

function showMoreFilters(){
	elShow('more-filters');
	elHide('mainFiltersButtonBlock');
	elShow('mainFiltersButtonBlock2');
	if ($('site_cookie_path')) {
		$pathCookie=$('site_cookie_path').value;
	} else {
		$pathCookie=false;
	}
	setCookie2('filterFormStyle',2,false,'/',$pathCookie);
}

function hideMoreFilters(){
	elHide('more-filters');
	elHide('mainFiltersButtonBlock2');
	elShow('mainFiltersButtonBlock');
	if ($('site_cookie_path')) {
		$pathCookie=$('site_cookie_path').value;
	} else {
		$pathCookie=false;
	}
	setCookie2('filterFormStyle',1,false,'/',$pathCookie);
}


function resetFilters(formName){
	//not cleaning fields in buf
	if($('object_type') != null) {
		var object_type_field = $('object_type').value;
	}
		
	elements=$(formName).elements;
	try {
	setGlobalFilterRegion(false);
	} catch (e){}
	$(formName).reset();
	for (el in elements) {
		if(elements[el] && elements[el].name == 'object_type') continue;
		if (elements[el] && elements[el].name) {
			elName=elements[el].name;
			if ($(elName+"_value_1")) {
				setFilterValue(elName,elements[el].value,$(elName+"_value_1").firstChild, formName);
			} else {
				if (elements[el].type=='checkbox') {
					elements[el].checked=false;
                    if (elements[el].onchange) elements[el].onchange();
				} else {
					if (elements[el].value==1290 && elements[el].id=='sp_place'){}
					else if(elements[el].value ){
						elements[el].value='';
						if (elements[el].name=='date_create')
							elements[el].value = 'за все время';
					}
				}
			}
		}
	}
	if ($('advSO'))
		document.getElementById('advSO').style.display = "none";
	if($('clear_fres'))	
		document.getElementById('clear_fres').style.display = "none";
	if($('adv_id')) $('adv_id').innerHTML='Расширенный поиск';
		
	
	// return not cleanin fields
	if($('object_type') != null) {
		$('object_type').value = object_type_field;
	}	
}

function clearFilterValue(name,formName){
	i=1;
	$(formName)[name].value='';
	while ($(name+'_value_'+i)){
		$(name+'_value_'+i).className='';
		i++;
	}
}

function setFilterValue(name,value,el, formName){
	if(!el) return false;

	clearFilterValue(name,formName);
	$(formName)[name].value=value;
	el.parentNode.className='selected';
}

function showFiltersPriceSelect(){
	if ($('select_price').style.display=='block') {
		elHide('select_price');
	} else {
		elShow('select_price');
	}
}

function setFiltersPrice(value, el){
	el.value=value;
	elHide('select_price');
}

function setFiltersCustomPrice(el){
	from=$('custom_price_from').value;
	fromN=Number(from);
	to=$('custom_price_to').value;
	toN=Number(to);
	value='';
	if (from!='') {
		if ((to=='' || toN<fromN)) {
			value = 'больше ' + fromN;
		} else {
			value += 'от '+ from;
		}
	}
	if (to!=''){
		if (toN>fromN) {
			if (fromN==0) {
				value = 'меньше ' + toN;
			} else {
				value += ' до '+ to;
			}
		}
	}
	if (value==''){
		value="любая";
	}
	el.value=value;
	elHide('select_price');
}





function showFiltersRangeSelect(id){
	if ($(id).style.display=='block') {
		elHide(id);
	} else {
		elShow(id);
	}
}

function setFiltersRange(id, value, el){
	el.value=value;
	elHide(id);
}

function setFiltersCustomRange(el){
	from=$('custom_' + el.id +'_from').value;
	fromN=Number(from);
	to=$('custom_' + el.id +'_to').value;
	toN=Number(to);
	value='';
	if (from!='') {
		if ((to=='' || toN<fromN)) {
			value = 'больше ' + fromN;
		} else {
			value += 'от '+ from;
		}
	}
	if (to!=''){
		if (toN>fromN) {
			if (fromN==0) {
				value = 'меньше ' + toN;
			} else {
				value += ' до '+ to;
			}
		}
	}
	if (value==''){
		value="любая";
	}
	el.value=value;
	elHide('select_' + el.id +'');
}




function goTo(url) {
	window.location = url;
}

function getCategories(el) {
	$('waitMessage').style.display = '';
	Ext.Ajax.request({
		url: '/ajax/categories.php',
		success: successToGetCategories,
		failure: failureToGetCategories,
		params: {category: el.value}
	});
}

function updateCategories(aCategories) {
	var oCategories = $('oCategories');
	var el = document.createElement('OPTION');
	oCategories.innerHTML = '';
	el.value = '0';
	el.selected = true;
	el.appendChild(document.createTextNode('Выберите раздел'));
	oCategories.appendChild(el);
	for (var i = 0, n = aCategories.length; i < n; i ++) {
		el = document.createElement('OPTION');
		el.value = aCategories[i].uri;
		el.appendChild(document.createTextNode(aCategories[i].title));
		oCategories.appendChild(el);
	}
}

function successToGetCategories(response, options) {
	var res = Ext.decode(response.responseText);
	$('waitMessage').style.display = 'none';
	if (res && res.item && res.item.title) {
		var oCategoriesNavigation = $('categoriesNavigation');
		var oCategories = $('oCategories');
		var linkEl = document.createElement('A');
		linkEl.href = '/addAdvert/step1/?category=' + res.item.prev_uri;
		linkEl.onclick = function() { replaceAnchorBySelect(this); return false; }
		linkEl.appendChild(document.createTextNode(res.item.title));
		oCategoriesNavigation.appendChild(linkEl);
		linkEl = document.createTextNode(' ');
		oCategoriesNavigation.appendChild(linkEl);
		if (res.categories.length>0){
			var linkEl = document.createElement('SPAN');
			linkEl.className="arrow";
			linkEl.appendChild(document.createTextNode('→'));
			oCategoriesNavigation.appendChild(linkEl);
			linkEl = document.createTextNode(' ');
			oCategoriesNavigation.appendChild(linkEl);

			updateCategories(res.categories);
		} else {
			oCategories.style.display = 'none';
			document.location = '/addAdvert/step2/?category=' + res.item.uri;
			$('waitMessage').style.display = '';
			return true;
		}
	} else {
		alert('Ошибка связи. Попробуйте повторить позже.');
	}
}

function getValueFromURL(name,str){
	 urlChunk = str.split('?');
	if(!urlChunk[1]) return false;
	 gets=urlChunk[1].split('&');
	 for (i=0; i<gets.length; i++){
		  getEl=gets[i].split('=');
		  if (getEl[0]==name){
			   return getEl[1];
			  }
	}
	return false;
}

/*********************/
function replaceAnchorBySelect(_this) {
	//wizardSelectCategory();

	var message = $('waitMessage');
	var oCategories = $('oCategories');
	var parentNode = _this.parentNode;
	var el = {};
	while (el = _this.nextSibling) {
		parentNode.removeChild(el);
	}

	if (arguments.length == 2) {
		var temp = arguments[1]; //for search alert editing
	}else{
		var temp = getValueFromURL('category', _this.href);
	}

	Ext.Ajax.request({
		url: '/ajax/categories.php',
		success: function(response, options) {
			var res = Ext.decode(response.responseText);
			if (res && res.categories && res.categories.length>0) {
				updateCategories(res.categories);
			} else {
				alert('Ошибка связи. Попробуйте повторить позже.');
			}
		},
		failure: failureToGetCategories,
		params: {category: temp}
	});

	parentNode.removeChild(_this);
	oCategories.style.display = '';

	return false;
}
/*********************/

function failureToGetCategories() {
	$('waitMessage').style.display = 'none';
	alert('Ошибка связи. Попробуйте повторить позже.');
}

function viewObject(name){
	var obj = eval(name), i;
	if(!obj) {
		alert("\""+name+"\" ia not an object");
		return;
	}
	var w_Test = open("","Test","width=600,height=500,scrollbars=1");
	if(!w_Test)	{
		alert("Cannot open window for "+name);
		return;
	}

	w_Test.document.open();

	for(i in obj) w_Test.document.write(name+"."+i+"="+obj[i]+"<br>");

	w_Test.document.close();
}


function closeSelectCols(){
	elHide('select_cols');
	elHide('select_cols_close');
}

function createFilter(el){
	//var preURL = el.action;
	var eqSymbol = '=';
	var url = '';
	var chSymbol = ',';
	var savedValues = new Object();
	if (el.elements){
		//url = preURL;
		for (i=0; i<el.elements.length; i++){
			elName=el.elements[i].name;


			if (elName!='test' && elName!='test1' && elName!='' && elName.indexOf('sp_')!=0) {
				//alert(el.elements[i].name + ':' + Ext.get(el.elements[i]).isVisible());
				elValue=el.elements[i].value;
				if (el.elements[i].type=='checkbox') {
					elValue=(el.elements[i].checked ? 1 : 0);
				}
				if (el.elements[i].type=='radio') {
					elValue=(el.elements[i].checked ? el.elements[i].value : '');
				}
				if (el.elements[i].type=='checkbox' && elName.indexOf('ch_')==0 && elValue!=0) {
					elChName = elName.split('_')[1];
					if (savedValues[elChName]){
						savedValues[elChName]+=chSymbol+el.elements[i].value;
					} else {
						savedValues[elChName]=el.elements[i].value;
					}
					elValue='';
				}

				if (elValue!=''){
					elValue = elValue.toString().replace(/=/, ' ');
					elValue = elValue.toString().replace(/\//, ' ');
					url+=elName+eqSymbol+encodeURIComponent(elValue)+"/";
				}
			}
		}

		for (elName in savedValues) {
			url+=elName+eqSymbol+encodeURIComponent(savedValues[elName])+"/";
		}
	}
	return url;
	//return false;
}

function submitFilters(form, form2, form3){

	var form = form || $('filters');
	var basehref = '';
	basehref=form.action.replace('http://' + document.domain, '');

	var object_type = $('object_type');
	if(object_type) {
		switch(object_type.value) {
			case 'flat':
				form2 = $('filters_flat');
			break;
			
			case 'building_complex':
				form2 = $('filters_building_complex');
			break;
		}
	}

	var searchstring = createFilter(form);
	if(form2) searchstring+= createFilter(form2);
	if(form3) searchstring+= createFilter(form3);
	
	if(searchstring!=''){
		if(window.location.href.search('/psellerAdverts') != -1) {
			var url_keywords = document.location.href.match(/keywords=[^\/]+/);
			if(url_keywords !== null) {	
				document.location = basehref + '/search/' + searchstring  + url_keywords + '/';	 	
			} else {
				document.location = basehref + '/search/' + searchstring;	
			}
			
		} else {
		Ext.Ajax.request({
			url: '/ajax/setquery.php',	
			success: function()
				{
					document.location = basehref + '/search/' + searchstring;
				},		
			params: {str: basehref +'/search/' + searchstring}
		});
		}
	}else{
		document.location = basehref + '/';
	}
	return false;
}

function submitFiltersType(form, form2, type){	
	var form = form || $('filters');
	var basehref = '';
	basehref=form.action.replace('http://' + document.domain, '');
	if (type=="sale") {
		basehref=form.action.replace('rent','sale');
	} else if (type=="rent") {
		basehref=form.action.replace('sale','rent');
	} else
		alert(form);
	var searchstring = createFilter(form);
	if(form2) searchstring+= createFilter(form2);
		
	//alert(searchstring);
	var cat = 'classified'+basehref.replace('http://' + document.domain, '');
	//alert(cat);
	if(searchstring!=''){
		//updFilters(cat,searchstring)
		document.location = basehref + '/search/' + searchstring + 'dontsearch=1/';
	}else{
		//updFilters(cat,'')
		document.location = basehref + '/';
	}
	return false;
}

function updFilters(cat_uri,searchstring){
	if (document.getElementById('search_reload') ){	
		Ext.Ajax.request({
			url: '/ajax/reloadfilters.php',
			callback: function (options, success, response) {
				var res = Ext.decode(response.responseText);
				
				if($("searchPanelSwitch") && $("advancedSearchForm")){
					var olinks = $("searchPanelSwitch").getElementsByTagName("SPAN");
					var oForm = $("advancedSearchForm");
					var is_adv;
					if(oForm.style.display=='block')
						is_adv = '1';
				}
									
				document.getElementById('search_reload').innerHTML='';
				document.getElementById('search_reload').innerHTML=res.buffer;
				if($("searchPanelSwitch") && $("advancedSearchForm")){				
					var olinks = $("searchPanelSwitch").getElementsByTagName("SPAN");
					var oForm = $("advancedSearchForm");
					if(is_adv=='1'){					
						oForm.style.display = "block";
						olinks[0].style.display = "none";
						olinks[1].style.display = "";							
					}
					else {					
						oForm.style.display = "none";
						olinks[0].style.display = "";
						olinks[1].style.display = "none";							
					}
				}
				
			},
			params: {category: cat_uri,searchstring:searchstring}
		});
	}	
}

function submitPsellersSearch(){
	query_str = document.getElementById('query_string').value;
	query_str = query_str.replace('/','');
/*	if(query_str.length == 0) {
		return false;
	}
*/
	if($('search_pselelrs').checked) {
		searchstring = '/powerSellers/list/search/keywords=' + encodeURIComponent(query_str) + '/';
		window.location = searchstring;
	} else if($('search_adverts').checked) {
		searchstring = '/powerSellers/ads_list/search/keywords=' + encodeURIComponent(query_str) + '/';
		window.location = searchstring;
	}
	return false;
}

function submitPowerAreaSearchForm()
{
	var	query = $('query_string');
	var keywords = query.value;
	var place = "";
	var place_element = $('region_hidden').value;
	if( place_element != "" ) {
		place = "place=" + encodeURI(place_element) + "/";
	}
	var uri = document.location.href;
	uri = uri.replace(/\/place=[^\/]*/, "");

	var url_keywords_arr = uri.match(/\/keywords=[^\/]*/);
	keywords = encodeURIComponent(keywords.replace('/',''));
	
	if(url_keywords_arr !== null) {
		uri = uri.replace(url_keywords_arr[0], '');
		document.location = uri + 'keywords=' + keywords + '/' + place;
	} else if(uri.search('search') != -1) {
		document.location = uri + 'keywords=' + keywords + '/' + place;
	} else {
		document.location = uri  + 'search/keywords=' + keywords + '/' + place;
	}	
	
	return false;
}

function saveCustomColumns(){

	var form = $('customcolumns');
	var customColumns = new Array();
	for(i=0; i<form.elements.length; i++){
		//alert(form.elements[i].name);
		if(form.elements[i].checked){
			customColumns.push(form.elements[i].name);
		}
	}

	setCookie2('customcolumns', customColumns.toString());
	document.location.reload();

	return false;
}

function openSelectCols(){
	if ($('select_cols').style.display!='block') {
		elShow('select_cols');
		elShow('select_cols_close');
	} else {
		closeSelectCols();
	}
}

function getRegions(el,isalert) {	
	if ($('oRegions').style.display != 'none') {
		$('waitMessageRegions').style.display = '';
		$('oRegions').style.display = 'none';
		Ext.Ajax.request({
			url: '/ajax/regions.php',
			success: successToGetRegions,
			failure: failureToGetRegions,
			params: {region: el.value,isalert:isalert}
		});
	}
}

function updateRegions(aRegions) {
	var oRegions = $('oRegions');
	var el = document.createElement('OPTION');
	oRegions.innerHTML = '';
	el.value = '0';
	el.selected = true;	
	el.appendChild(document.createTextNode('Выберите регион'));
	oRegions.appendChild(el);
	
	for (var i = 0, n = aRegions.length; i < n; i ++) {
		el = document.createElement('OPTION');
		el.value = aRegions[i].uri;
		el.appendChild(document.createTextNode(aRegions[i].title));
		oRegions.appendChild(el);
	}
	//console.log(oRegions);
}

function successToGetRegions (response, options) {
	var res = Ext.decode(response.responseText);
	if(res.item.uri.split('/').length <= 3) getAdAddStatus(res.item.uri);
	$('waitMessageRegions').style.display = 'none';
	if (res && res.item && res.item.title) {
		$('id_region').value=res.item.uri;
		if ($('id_region_Informap_Id')){
			$('id_region_Informap_Id').value=res.item.Informap_Id;
		}
		var oRegionsNavigation = $('regionsNavigation');
		var oRegions = $('oRegions');
		var linkEl = document.createElement('A');
		linkEl.href = '?region=' + res.item.prev_uri;
		linkEl.onclick = function() { replaceAnchorBySelectRegions(this); return false; }
		linkEl.appendChild(document.createTextNode(res.item.title));
		oRegionsNavigation.appendChild(linkEl);
		linkEl = document.createTextNode(' ');
		oRegionsNavigation.appendChild(linkEl);		
		//console.log(res);
		if (res.regions.length>0){
			if((res.item.prev_uri!='russia/' && res.isalert) || !res.isalert){
				var linkEl = document.createElement('SPAN');
				linkEl.className="arrow";
				linkEl.appendChild(document.createTextNode('→'));
				oRegionsNavigation.appendChild(linkEl);				
				linkEl = document.createTextNode(' ');
				oRegionsNavigation.appendChild(linkEl);								
				updateRegions(res.regions);				
				oRegions.style.display = '';	
			}	
				
			if(res.item.prev_uri=='russia/' && res.isalert)
				oRegions.style.display = 'none';			
				
		} else {
			oRegions.style.display = 'none';
			return true;
		}				
		if($('id_category').value!='')
			if($('ad_id_alert') && $('ad_id_alert').value)
				updAlertFilters($('ad_id_alert').value, $('id_category').value.slice(11));
			else 		
				updAlertFilters('', $('id_category').value.slice(11));;
	} else {
		alert('Ошибка связи. Попробуйте повторить позже.');
	}
	
	if((res.item.prev_uri!='russia/' && res.isalert) || !res.isalert)
		$('oRegions').style.display = 'inline';		
}


function replaceAnchorBySelectRegions(_this) {
	//wizardSelectCategory();
	var message = $('waitMessageRegions');
	var oRegions = $('oRegions');
	var parentNode = _this.parentNode;
	var el = {};
	
	while (el = _this.nextSibling) {
		parentNode.removeChild(el);
	}	
	//alert(getValueFromURL('region',_this.href));
	//alert($('id_category').value);
	Ext.Ajax.request({
		url: '/ajax/regions.php',
		success: function(response, options) {			
			var res = Ext.decode(response.responseText);
			//alert( res.regions);
			if (res && res.regions && res.regions.length>0) {
				$('id_region').value=res.item.uri;
				if ($('id_region_Informap_Id')){
					$('id_region_Informap_Id').value=res.item.Informap_Id;
					if ($('street_id')){
						$('street_id').value='';
					}
					if ($('blockAdressMap') && $('blockAdressMap').style.display=='block') {
						hideExtGeoMap();
					}
					
				}
				updateRegions(res.regions);				
				if($('id_category').value!=''){
					if($('ad_id_alert') && $('ad_id_alert').value)
						updAlertFilters($('ad_id_alert').value, $('id_category').value.slice(11));
					else	
						updAlertFilters('', $('id_category').value.slice(11));
				}
			} else {
				alert('Ошибка связи. Попробуйте повторить позже.');
			}
		},
		failure: failureToGetRegions,
		params: {region: getValueFromURL('region',_this.href)}
	});

	parentNode.removeChild(_this);
	oRegions.style.display = '';
	return false;
}

function failureToGetRegions() {
	$('waitMessageRegions').style.display = 'none';
	alert('Ошибка связи. Попробуйте повторить позже.');
	$('oRegions').style.display= 'inline';
}

function filterInteger(event) {
	//if (event.target.value.)
	var keyCode = (event.charCode) ? event.charCode : event.keyCode;	
	var target = event.target || event.srcElement;
	
	if ( ((keyCode == 44) || (keyCode == 46)) && ( (target.value.indexOf('.')!=-1) || (target.value.indexOf(',')!=-1) )){
		return false;
	}
		
	return ((keyCode == 44) || (keyCode == 46) || (keyCode == 0) || (keyCode == 8) || (keyCode == 9) || (keyCode == 37) || (keyCode == 39) || (keyCode > 47 && keyCode < 58));
}

function filterPhone(event) {
	var keyCode = (event.charCode) ? event.charCode : event.keyCode;	
	return ((keyCode == 40) || (keyCode == 41) || (keyCode == 43) || (keyCode == 45) || (keyCode == 46) || (keyCode == 0) || (keyCode == 8) || (keyCode == 9) || (keyCode == 37) || (keyCode == 39) || (keyCode > 47 && keyCode < 58));
}

function filterRooms(event) {
	var keyCode = (event.charCode) ? event.charCode : event.keyCode;	
	return ((keyCode == 8)||(keyCode == 44) || (keyCode > 47 && keyCode < 58) || (keyCode > 37 && keyCode < 40));
}
function filterNumbers(event) {
	var keyCode = (event.charCode) ? event.charCode : event.keyCode;	
	return ((keyCode == 8)||(keyCode > 47 && keyCode < 58) || (keyCode > 37 && keyCode < 40));
}

function filterIcq(event) {
	var keyCode = (event.charCode) ? event.charCode : event.keyCode;
	return ((keyCode == 45) || (keyCode == 46) || (keyCode == 0) || (keyCode == 8) || (keyCode == 9) || (keyCode == 37) || (keyCode == 39) || (keyCode > 47 && keyCode < 58));
}

function delred(el){
//	console.log(el.parentNode);
	
	if (el.parentNode.className.match('error_label') && el.value!=''){
		el.parentNode.className='';
		//if(elt1 = document.getElementById("t1tag"))
			//elt1.parentNode.removeChild(elt1);		
	}
}
function getOffsetRect(elem) {
    
    var box = elem.getBoundingClientRect()
    var body = document.body
    var docElem = document.documentElement
 
    var scrollTop = window.pageYOffset || docElem.scrollTop || body.scrollTop
    var scrollLeft = window.pageXOffset || docElem.scrollLeft || body.scrollLeft
 
    var clientTop = docElem.clientTop || body.clientTop || 0
    var clientLeft = docElem.clientLeft || body.clientLeft || 0
 
    var top  = box.top +  scrollTop - clientTop
    var left = box.left + scrollLeft - clientLeft
 
    return { top: Math.round(top), left: Math.round(left) }
}
function getOffsetSum(elem) {
    var top=0, left=0
    while(elem) {
        top = top + parseInt(elem.offsetTop)
        left = left + parseInt(elem.offsetLeft)
        elem = elem.offsetParent        
    }
 
    return {top: top, left: left}
}

function getOffset(elem) {
    if (elem.getBoundingClientRect) {
        // "правильный" вариант
        return getOffsetRect(elem)
    } else {
        // пусть работает хоть как-то
        return getOffsetSum(elem)
    }
}


function formAddSubmit(elForm, dontSkipEmpty, btn){
	flagSend=true;
	var range = false;	
	
	
	if (necessaryFields && necessaryFields.length>0){
		for (i=0; i<necessaryFields.length; i++) {
			//console.log(necessaryFields[i]);
			if ($('id_'+necessaryFields[i]) || ($('id_'+necessaryFields[i]+'_from') && $('id_'+necessaryFields[i]+'_to')) ) {
				if ($('id_'+necessaryFields[i])){
					el=$('id_'+necessaryFields[i]);
					//console.log(el);
					//console.log(el.value.length);
					if (typeof el.value == 'string' && el.type!='file')
						el.value = trim(el.value);	
				
					if (el.value==''){	
						if (!(el.type=='file' && $('ajax_form')))	{								
							markFieldInvalid(el.parentNode);
							flagSend=false;}
					}
				}else if($('id_'+necessaryFields[i]+'_from') && $('id_'+necessaryFields[i]+'_to')){	
					elFrom=$('id_'+necessaryFields[i]+'_from');
					elTo=$('id_'+necessaryFields[i]+'_to');
					if (elFrom.value=='' && elTo.value==''){
						markFieldInvalid(elFrom.parentNode);
						markFieldInvalid(elTo.parentNode);
						flagSend=false;
					}
				}	
				
			}
		}
	}
	//alert(1);
	var errorFill = false; 
	
	if(Ext.query("[class*=field_error]").length>0) {		
		flagSend=false;
		errorFill = true; 
	}
	
	if (flagSend){
		var eqSymbol = '=';
		var params = new Array();
		if (elForm.elements){
			for (i=0; i<elForm.elements.length; i++){
				elName=elForm.elements[i].name;
				if (elName && elName!='') {
					elValue=elForm.elements[i].value;
					
					if (elForm.elements[i].type=='checkbox') {
						elValue=(elForm.elements[i].checked ? 1 : 0);
					}

					if (typeof elValue == 'string'){
						elValue = trim(elValue);
					}
					
					if (elValue!='' || dontSkipEmpty){
						params[elName]=encodeURIComponent(elValue);
					}
				}
			}
		}
		
		if(btn){
			var oldValue = btn.value;
			btn.value = 'Ждите...';
			btn.disabled = true;
			Ext.get(btn).parent('div').replaceClass('btn-a', 'btn-b');
		}
		
		if ($('axaj_form') || $('ajax_form')) {			
			return true;
			
		} else {		
			Ext.Ajax.request({
				url: elForm.action,
				success: function(response, options) {
					var res = Ext.decode(response.responseText);
					if (res.isedit && res.success) {
						goTo(res.url);
					} else if (!res.isedit && res.success && res.ad_id && res.url) {
						if(res.message) alert(res.message);
						goTo(res.url);	
					} else if (!res.isedit && res.success && res.ad_id) {
						if(res.message) alert(res.message);
						goTo('/addAdvert/step3/?id=' + res.ad_id);
					}else if((elForm.name=='form_add_multi' || elForm.name=='form_edit_multi') && res.success){
						goTo(res.url);
					}
					else alert('Ошибка. ' + res.message);
				},
				failure:  function(response, options) {
					alert('Ошибка связи. Попробуйте повторить позже.');
				},
				params: params
			});
		}
	}else{	
	  	  if(errorFill){
	  	  	alert('Заполните корректно поля.');
	  	  	return false;
	  	  }
		   var elements = document.getElementsByTagName('*');
		   var elemLength = elements.length;

		   for (var i = 0; i < elemLength; i++) {
		   	if (elements[i].className.replace(/^\s*(.*?)\s*$/, '$1')=='error_label'){
				var position = getOffset(elements[i]);			
				break;		         
		    }
		   }
		window.scrollTo(position.left,position.top-30);	
//		if(document.location.href.search('#t1') != -1) {			
//			document.location = document.location;
//		} else {			
//			document.location += '#t1';
//		}
		return false;
	
	}

	return false;
}




function markFieldInvalid(el){
//console.log(el);
	if (el.tagName=='LABEL' && el.className.replace(/^\s*(.*?)\s*$/, '$1')!='error_label') {
		el.className+=' error_label';
	} else if (el.tagName!='LABEL'){
		el.className+=' field_error';
	}
}

function clearFieldInvalid(el){
	if (el.tagName=='LABEL') {
		el.className=el.className.replace('error_label','');
	} else {
		el.className=el.className.replace('field_error','');
	}
}


UserPhoto = function(config) {
	if (typeof config == 'object') {
		for (var prop in config) {
			this[prop] = config[prop];
		}
	}

	this.uploadedPhotos = new Array();
	for (var i = 0; i < this.maxPhotoCount; ++i) {
		this.uploadedPhotos[i] = (i >= config.loaded ? 0 : 1);
	}
}

UserPhoto.prototype.maxPhotoCount = 20;
UserPhoto.prototype.photosInRow = 4;
UserPhoto.prototype.removeUrl = '/ajax/remove_photo.php';

UserPhoto.prototype.countPhotos = function () {
	for (var i = 0; i < this.maxPhotoCount; ++i) {
		if (this.uploadedPhotos[i] == 0) {
			return i;
		}
	}
	return this.maxPhotoCount;
}


UserPhoto.prototype.getDeleteOnClickHandler = function(scope, i, unifiedid) {
	return function() {
		scope.remove(i, unifiedid);
		return false;
	}
}

UserPhoto.prototype.getDeleteOnClickHandlerForEdit = function(scope, i, unifiedid) {
	return function() {
		scope.remove(i, unifiedid, 'session only');
		return false;
	}
}

UserPhoto.prototype.getNextNodeParent = function () {
	var i = this.countPhotos();
	var newNodeParent;
	if (i == 0) {
		newNodeParent = $('downloaded-photo-tr-first');
	} else if (i % this.photosInRow == 0) {
		newNodeParent = document.createElement('TR');
		$('downloaded-photo-tr-first').parentNode.appendChild(newNodeParent);
	} else {
		newNodeParent = $('downloaded-photo-' + i).parentNode;
	}
	return newNodeParent;
}

UserPhoto.prototype.showUploadBlock = function (){
	var i = this.countPhotos();
	if ($("input-file-upload").value=='' || i == this.maxPhotoCount) {
		return false;
	}

	var origin 	= $('downloaded-photo-');
	var node 	= origin.cloneNode(true);
	var textplace= node.getElementsByTagName('IMG')[0].parentNode.parentNode;
	//var span 	= node.getElementsByTagName('SPAN')[0];
	//var input  	= node.getElementsByTagName('LABEL')[0];
	var label  	= node.getElementsByTagName('INPUT')[0];
	label.style.visibility="hidden";
	//input.style.visibility="hidden";
	//span.style.visibility="hidden";
	node.id += (i + 1);
	this.getNextNodeParent().appendChild(node);
	$('photoUploadButton').value="Ждите...";
	$('photoUploadButton').disabled=true;
	textplace.innerHTML="<div style='height:57px; font-size: 12px; font-weight: bold; color: #aaaaaa'>Загрузка...</div>";
	node.style.display = '';
	
	calculatePhotoWeight(i);

	return true;
}

UserPhoto.prototype.clearUploadForm = function() {
	$('input-file-upload').value='';
	$('photoUploadButton').value='Загрузить еще фото';
}

UserPhoto.prototype.hideUploadBlock = function() {
	var i = this.countPhotos();
	if (i == this.maxPhotoCount) {
		return false;
	}

	var block = $('downloaded-photo-' + Number(i+1));
	if(!block) return false;
	var parentNode = block.parentNode;
	$('photoUploadButton').disabled=false;
	$('photoUploadButton').value="Загрузить фото";
	parentNode.removeChild(block);
}

UserPhoto.prototype.doneUpload = function(src, width, height, tempname, unifiedid, caption) {
	var inp = $('input-file-upload');
	if (inp) {
		var parentNode = inp.parentNode;
		if (parent) {
			parentNode.removeChild(inp);
			inp = document.createElement('INPUT');
			inp.type = 'file';
			inp.name = 'photo';
			inp.id   = 'input-file-upload';
			inp.size = 30;
			inp.onchange = function(){ $('photoUploadButton').style.display='inline';}
			parentNode.appendChild(inp);

		}
	}

	var i = this.countPhotos();
	if (i == this.maxPhotoCount) {
		return false;
	}

	var origin 	= $('downloaded-photo-');
	var node 	= origin.cloneNode(true);
	var img 	= node.getElementsByTagName('IMG')[0];
	var link 	= node.getElementsByTagName('A')[0];
	//var label 	= node.getElementsByTagName('LABEL')[0];
	//var input  	= node.getElementsByTagName('INPUT')[0];
	var filename= node.getElementsByTagName('INPUT')[0]; // 1

	node.id += (i + 1);

	img.src = src;

	//label.setAttribute('for', (i + 1));
	//input.id 	+= (i + 1);
	//if (caption) {
	//	input.value = caption;
	//}
	filename.id += (i + 1);
	filename.value = tempname;

	link.onclick = this.getDeleteOnClickHandler(this, i, unifiedid);

	if (unifiedid) {
		link.setAttribute('unifiedid', unifiedid);
	}

	this.getNextNodeParent().appendChild(node);

	node.style.display = '';

	if (this.countPhotos() == this.maxPhotoCount) {
		$('downloaded-photo-form').style.display = 'none';
	}

	this.uploadedPhotos[i] = 1;
}

UserPhoto.prototype.remove = function(i, unifiedid) {
	
	// TODO rewrite
	var block = $('downloaded-photo-' + (i+1));
	var src = block.getElementsByTagName('IMG')[0].src;
	var parentNode = block.parentNode;

	parentNode.removeChild(block);

	var count = this.countPhotos();

	for (var j = i+1; j < count; ++j) {
		var node = $('downloaded-photo-' + (j+1));
		node.id = 'downloaded-photo-' + j;

		var link  = node.getElementsByTagName('A')[0];
		var linkUnifiedId = link.getAttribute('unifiedid');
		link.onclick = this.getDeleteOnClickHandler(this, j-1, linkUnifiedId);

		//var label = node.getElementsByTagName('LABEL')[0];
		//label.setAttribute('for', 'ad-caption-' + j);

		//		var input = node.getElementsByTagName('INPUT')[0];
		//		input.id = 'ad-caption-' + j;

		var filename = node.getElementsByTagName('INPUT')[0]; //1
		filename.id = 'filename-' + j;

		if (j % this.photosInRow == 0) {
			// Move cell to previous row
			var parentNode = node.parentNode;
			parentNode.removeChild(node);
			$('downloaded-photo-' + (j-1)).parentNode.appendChild(node);
			if (j == count - 1) {
				// Removing last empty row
				parentNode.parentNode.removeChild(parentNode);
			}
		}
	}
	this.uploadedPhotos[count-1] = 0;

	Ext.Ajax.request({
		url: this.removeUrl,
		success:  function() {
			$('downloaded-photo-form').style.display = '';
			calculatePhotoWeight(i,'rem',count);
		},
		failure:  function() {},
		params: {photo: src, id: i, unid: unifiedid, rand: (this.rand ? this.rand : 0), op: (arguments[2] ? arguments[2] : '') }
	});

	return false;
}

UserPhoto.prototype.getCaptions = function(paramName, elementPrefix) {
	elementPrefix = elementPrefix || 'ad-caption-';
	paramName = paramName || 'add-captions';
	var result = Array();
	for (var i = 0; i < this.maxPhotoCount; ++i) {
		if (this.uploadedPhotos[i] == 1 && $(elementPrefix + (i + 1))) {
			result.push(paramName + '[]=' + $F(elementPrefix + (i + 1)));
		}
	}
	return result.join('&');
}

UserPhoto.prototype.getPhotos = function(elementPrefix) {
	elementPrefix = elementPrefix || 'ad-caption-';

	var ph_count = this.countPhotos();
	var params = [];
	for (i = 0; i < ph_count; i++){
		if ($('filename-'+(i+1))){
			params['photo-' + $F('filename-'+(i+1))] = $F(elementPrefix+(i+1));
		}
	}

	return params;
}

// power sellers list

function showSendPsellerRequestForm(){
	document.getElementById('sendPsellerRequest').style.display = 'block';
	return false;
}

function hideSendPsellerRequestForm(){
	document.getElementById('sendPsellerRequest').style.display = 'none';
	return false;
}

function changePowersRegion() {
	root_path = $('root_region_path').innerHTML;
	region = $('regions').value;

	if(region.length > 0){
		new_path = 'http://' + region + '.' + root_path;
	} else {
		new_path = 'http://' + root_path;
	}

	window.location = new_path;
}

function psellerRequestSuccess(){
	alert('Заявка успешно отправлена');
	hideSendPsellerRequestForm();
}

function psellerRequestFailure(message){
	alert(message);
}

function showLogoBlock(){
	document.getElementById('changeLogoBlock').style.display = 'block';
	document.getElementById('changeLogoLink').style.display = 'none';
}

function sendPsellerareaContactInfoForm() {
	// validation
	var not_empty_fields = new Array();
	not_empty_fields[0] = 'title';
	not_empty_fields[1] = 'address';
	not_empty_fields[2] = 'phone';

	for(i=0; i<not_empty_fields.length; i++){
		name = not_empty_fields[i];
		if($(name).value.length == 0) {
			alert('Пожалуйста, заполните все поля формы, отмеченные красной звёздочкой');
			return false;
		}
	}

	// send form
	Ext.Ajax.request({
		form: 'psellerareaContactInfoForm',
		success: successContactInfoUpdate,
		failure: failureAlert,
		params: {action: 'pseller_contact_info'}
	});
	return false;
}


function sendPsellerareaDetailsForm() {
	Ext.Ajax.request({
		form: 'psellerareaDetailsForm',
		success: successDetailsUpdate,
		failure: failureAlert,
		params: {action: 'pseller_detail_info'}
	});
	return false;
}

function successDetailsUpdate(response, options) {
	document.getElementById('alerts').style.display = 'none';
	document.getElementById('message_panel').style.display = 'block';
	return false;
}

function selectAll(tableid, checked) {
	var list = Ext.query('#'+tableid+' input[type="checkbox"]');
	for(i=0; i<list.length; i++) {
		list[i].checked = checked;
	}
}

function submitSearchForm(){
	var form = form || $('filters');
	var basehref = '';
	var searchstring = 'search';

	if(form.action!=''){
		basehref=form.action;
	}else{
		if(window.location.href.search('/search/')!=-1){
			basehref=window.location.href.substr(0, window.location.href.search('/search/'));
		}else if(window.location.href.search('/info/')!=-1){
			basehref=window.location.href.substr(0, window.location.href.search('/info/'));
		}else {
			basehref=window.location.href;
		}
	}

	for(i=0; i<form.elements.length; i++){
		if(form.elements[i].name!='' && form.elements[i].value!=''){
			searchstring+='/' + form.elements[i].name + '=' + encodeURIComponent(form.elements[i].value.replace('/',''));
		}
	}

	searchstring+='/';
	if(searchstring=='/search/'){
		return false;
	}
	
	var last_symbol = basehref.length;
	last_symbol --;
	
	if(basehref.substr(last_symbol) != '/') {
		basehref += '/';
	}

	window.location=basehref + '' + searchstring;
	return false;
}

// end power sellers list

// ad statictic
function showAdStatistic(){
	var uri_params = window.location.pathname.split('/');

	var ad_id = parseInt(uri_params[2]);

	if(uri_params[3] != 'statistic'){
		return false;
	}

	var create_date = parseInt($('ad_date_create').innerHTML);

	Ext.Ajax.request({
		url: '/counter/ad_statistic.php',
		success: successShowAdStatistic,
		failure: failureShowAdStatistic,
		params: {id: ad_id,
		date: create_date}
	});
}

function successShowAdStatistic(response, options) {
	var res = Ext.decode(response.responseText);
	if(res.success == true){
		displayStatisticParams(res.hits, res.day_hits);
	} else {
		displayStatisticParams('неизвестно', 'неизвестно');
	}
}

function failureShowAdStatistic() {
	displayStatisticParams('неизвестно', 'неизвестно');
}

function displayStatisticParams(hits, day_hits){
	$('ad_stat').style.display = 'block';
	$('stat_hits').innerHTML = hits;
	$('stat_day_hits').innerHTML = day_hits;
}

// end ad statistic

function checkFilterFormStyle(){
	if ($('advancedSearchForm')) {
		$filterStyle = getCookie2('filterFormStyle');
		if (!$filterStyle || $filterStyle=='') $filterFormStyle=0;
		switch($filterStyle){
			case '1':
				var olinks = $("searchPanelSwitch").getElementsByTagName("SPAN");
				var oForm = $("advancedSearchForm");
				oForm.style.display = "";
				olinks[0].style.display = "none";
				olinks[1].style.display = "";
			break;
		}
	}
}


function getCategoriesSelect(el,id) {
	if ($('oCategories').style.display!='none') {
		$('oCategories').style.display='none';
		$('waitMessage').style.display = '';
		$('alertFilters').innerHTML='<span class="flt-left">Подождите, идет загрузка...</span>';
		Ext.Ajax.request({
			url: '/ajax/categories.php',
			success: successToGetCategoriesSelect,
			failure: failureToGetCategoriesSelect,
			params: {category: el.value,id:id}
		});
	}
}

function successToGetCategoriesSelect(response, options) {
	var res = Ext.decode(response.responseText);
	$('waitMessage').style.display = 'none';
	if (res && res.item && res.item.title) {
		var oCategoriesNavigation = $('categoriesNavigation');
		var oCategories = $('oCategories');
		$('oCategories').style.display='inline';
		var linkEl = document.createElement('A');
		linkEl.href = '?category=' + res.item.prev_uri;
		if (res.item.uri.match('foreign')) {					
			document.getElementById('regionsNavigation').innerHTML = 'Россия<span class="blue">»</span> Зарубежье';
			document.getElementById('id_region').value = 'russia/foreign-region/';
			document.getElementById('oRegions').style.display = 'none';			
		}else {			
			document.getElementById('regionsNavigation').innerHTML = 'Россия&nbsp; <span class="blue">»</span> &nbsp;';
				$('waitMessageRegions').style.display = '';
				$('oRegions').style.display = 'none';
				
				Ext.Ajax.request({
					url: '/ajax/regions.php',
					success: successToGetRegions,
					failure: failureToGetRegions,
					params: {region: 'russia/moscow-region/',isalert:1}
				});			
		}
		linkEl.onclick = function() { replaceAnchorBySelectSelect(this, res.item.prev_uri); return false; }
		linkEl.appendChild(document.createTextNode(res.item.title));
		oCategoriesNavigation.appendChild(linkEl);
		linkEl = document.createTextNode(' ');
		oCategoriesNavigation.appendChild(linkEl);
		
		if (res.categories.length>0){
			var linkEl = document.createElement('SPAN');
			linkEl.className="arrow";
			linkEl.appendChild(document.createTextNode('→'));
			oCategoriesNavigation.appendChild(linkEl);
			linkEl = document.createTextNode(' ');
			oCategoriesNavigation.appendChild(linkEl);
			updateCategories(res.categories);
		} else {
			oCategories.style.display = 'none';
//			return true;
		}
		//alert(document.getElementById('filters'));
		//alert(res.item['uri']);
		if (document.getElementById('alertFilters')){
			if(res.categories['0'])
				updAlertFilters(res.id,res.categories['0']['uri']);
			else
				updAlertFilters(res.id, res.item['uri']);
		}
	
		//document.getElementById('filters').innerHTML='';
		
		
		$('id_category').value='classified/'+res.item.uri; //Кто здесь??
		
		
	} else {
		alert('Ошибка связи. Попробуйте повторить позже.');
	}
}

function updAlertFilters(id,cat_uri){	
	if (document.getElementById('alertFilters')){	
		Ext.Ajax.request({
			url: '/ajax/alertfilters.php',
			callback: function (options, success, response) {
				var res = Ext.decode(response.responseText);
			//alert(res.buffer);
				document.getElementById('alertFilters').innerHTML='';
				document.getElementById('alertFilters').innerHTML=res.buffer;
				if($('id_region').value=='russia/')  $('filter_area_metro').style.display = 'none';
				else $('filter_area_metro').style.display = '';				
				if(cat_uri=='new/');
					setAdvertObjectType('flat');
			},
			params: {category: cat_uri,id:id,region:$('id_region').value}
		});
	}	
}

function failureToGetCategoriesSelect() {
	$('waitMessage').style.display = 'none';
	alert('Ошибка связи. Попробуйте повторить позже.');
	$('oCategories').style.display='none';
}

function replaceAnchorBySelectSelect(_this) {
	//wizardSelectCategory();

	if (arguments.length > 0) {
		var temp = arguments[1]; //for search alert editing
	}else{
		var temp = getValueFromURL('region',_this.href);
	}

	var message = $('waitMessage');
	var oCategories = $('oCategories');
	var parentNode = _this.parentNode;
	var el = {};
	while (el = _this.nextSibling) {
		parentNode.removeChild(el);
	}
	Ext.Ajax.request({
		url: '/ajax/categories.php',
		success: function(response, options) {
			var res = Ext.decode(response.responseText);
			if (res && res.categories && res.categories.length>0) {
				updateCategories(res.categories);
				$('id_category').value='';
			} else {
				alert('Ошибка связи. Попробуйте повторить позже.');
			}
		},
		failure: failureToGetCategories,
		params: {category: temp}
	});
	parentNode.removeChild(_this);
	oCategories.style.display = '';

	return false;
}

function checkFilterRestore(){
	var chSymbol = ',';
	formsIds = new Array('filters1','filters2');
	for (k=0; k<formsIds.length; k++) {
		if (el=$(formsIds[k])){
			if (el.elements){
				for (i=0; i<el.elements.length; i++){
					elName=el.elements[i].name;
					if (elName.indexOf('sp_')==0) {
						elValue=el.elements[i].value;
						/* for checkboxes */
						j=1;
						testElName='ch_'+elName.replace('sp_','')+'_'+j;
						while (el[testElName] && el[testElName].type=='checkbox') {
							if ((elValue+chSymbol).indexOf(el[testElName].value)>-1) {
								el[testElName].checked=true;
							}
							j++;
							testElName='ch_'+elName.replace('sp_','')+'_'+j;
						}
						/* --- */

					}
				}
			}
		}
	}
}

function sh_phone(chk, div) {
	if(chk.checked) elShow(div);
	else elHide(div);
}

function deleteAd(id) {
	if(confirm('Вы действительно хотите удалить объявление?')) goTo('/ajax/deleteAd.php?id='+id);
}
function editAd(id) {
	goTo('/editAdvert/'+id+'/');
}


function changeOfferClass(el,id){	
	if (el.className==''){	
		document.getElementById(id).className='';	
		el.className = 'act';
		if (id=='offer_rent')
			document.getElementById('offertype').value = 'Продажа';
		else 	
			document.getElementById('offertype').value = 'Аренда';
	}
}
function changeMarket(el,field,val){	
	var hidd_fld = document.getElementById(field);	
	var hidd_val = hidd_fld.value;
	if (el.className==''){	
		el.className = 'act';
		//console.log(hidd_val.toString().match(val));
		if (hidd_val.toString().match(val)==null){
			hidd_val +=','+val;
			document.getElementById(field).value = hidd_val;
		}
	}else {
		el.className = '';
		//console.log(hidd_val.toString().match(val));
		if (hidd_val.toString().match(val)!=null){
			hidd_val = hidd_val.replace(','+val,'');
			//console.log(hidd_val);
			document.getElementById(field).value = hidd_val;
		}
	}
}



function loadModel(id,source){
	Ext.Ajax.request({
		url: '/ajax/load_auto_models.php',
		success: function(response, options) {
			var res = Ext.decode(response.responseText);
			if (res && res.models) {
				select=$(id);
				select.innerHTML = '';
				/*	el = document.createElement('OPTION');
				el.value = '';
				el.innerHTML = 'любая';
				select.appendChild(el);
				*/
				for (var i = 0; i < res.models.length; i++) {
					el = document.createElement('OPTION');
					el.value = res.models[i];
					el.innerHTML = res.models[i];
					select.appendChild(el);
				}
			} else {
				alert('Ошибка связи. Попробуйте повторить позже.');
			}
		},
		failure: function(response, options) {
			alert('Ошибка связи. Попробуйте повторить позже.');
		},
		params: {name: source.value}
	});
}


function getEnums(parent, element, selected, first) {
	new Ajax.Request('/plugins/ajax/enums.php', {
		parameters : 'name=' + parent,
		onSuccess : function(transport, json) {
			var el;
			var select = $(element);
			select.innerHTML = '';
			if (first) {
				el = document.createElement('OPTION');
				el.value = 'любая';
				el.innerHTML = first;
				select.appendChild(el);
			}
			for (var i = 0, n = json.items.length; i < n; i ++) {
				el = document.createElement('OPTION');
				el.value = json.items[i].id;
				if (selected) el.selected = (selected == json.items[i].id);
				el.innerHTML = json.items[i].data;
				select.appendChild(el);
			}
		}
	});
}

Ext.onReady(function(){
	//checkFilterFormStyle();
	checkFilterRestore();
	setTimeout ("htmlblocks();", 1000);
});

Ext.EventManager.on(window, 'load', function(){
	htmlblocks();
	if(window.console && window.console.firebug){
		//			alert('Для корректной и быстрой работы сайта отключите Firebug.');
	}
});
function htmlblocks(){
 var blocks = document.getElementsByTagName ("div");
 var y = 0;
 for (var x = 0; x < blocks.length; x++){
  if (blocks[x].id.indexOf ('ad_ph') > -1 && blocks[x].className == 'htmlbl' && blocks[x].style.display != "none"){
   blocks[x].style.clear = "";
   if (y % 3 == 0){blocks[x].style.clear = "left";}
   blocks[x].style.height = "";
   y++;
  }
 }
}



function formAlertSubmit(elForm, btn, takeempty){
	flagSend=true;
	if (necessaryFields && necessaryFields.length>0){
		for (i=0; i<necessaryFields.length; i++) {
			if ($('id_'+necessaryFields[i])) {
				el=$('id_'+necessaryFields[i]);
				if (necessaryFields[i] == 'email' && !isEmail(el.value)){
					if (necessaryFields[i]=='category')
						markFieldInvalid($('oCategories'));
					else
						markFieldInvalid(el.parentNode);
					flagSend=false;
				}
				if (el.value=='') {
					if (necessaryFields[i]=='category')
						markFieldInvalid($('oCategories'));
					else
						markFieldInvalid(el.parentNode);
					flagSend=false;
				}
			}
		}
	}
	if(!flagSend) {		
		if(document.location.href.search('#top') != -1) {
			document.location = document.location;
		} else {
			document.location += '#top';
		}
		return false;
	}
	
	
	if (flagSend){
		var eqSymbol = '=';
		var params = new Array();
		if (elForm.elements){
			for (i=0; i<elForm.elements.length; i++){
				elName=elForm.elements[i].name;
				if (elName && elName!='') {
					elValue=elForm.elements[i].value;
					if (elForm.elements[i].type=='checkbox') {
						elValue=(elForm.elements[i].checked ? 1 : 0);
					}else if (elForm.elements[i].type=='radio'){
						elValue=(elForm.elements[i].checked ? elForm.elements[i].value : '');
					}					
					if (elValue!='' || (takeempty && elForm.elements[i].type!='radio' && elForm.elements[i].type!='checkbox')){
						params[elName]=encodeURIComponent(elValue);
					}
				}
			}
		}

		var oldValue = btn.value;
		btn.value = 'Ждите';
		btn.disabled = true;
		//		console.log(btn);
	
		Ext.Ajax.request({
			url: elForm.action,
			success: function(response, options) {
				var res = Ext.decode(response.responseText);
				if (res && res.alert_id) {
					goTo(res.url_togo);
				} else {
					alert('Ошибка связи. Попробуйте повторить позже.');
					btn.value = oldValue;
					btn.disabled = false;
				}
			},
			failure:  function(response, options) {
				alert('Ошибка связи. Попробуйте повторить позже.');
				btn.value = oldValue;
				btn.disabled = false;
			},
			params: params
		});
	}

	return false;
}

function deleteAlerts(){
	
	var del_sa = Ext.query('input:checked[class="sa_chkbox"]');

	if (!del_sa.length){
		alert('Подписки не выбраны');
		return;
	}

	if (!confirm('Вы уверены, что хотите удалить выбранные подписки?')) return;

	var ids = '';
	for (i=0; i<del_sa.length; i++){
		if(del_sa[i].id) {
			ids += del_sa[i].id.substring(3) + ',';
		}
	}

	Ext.Ajax.request({
		url: '/ajax/searchalert.php',
		success: function(response, options) {
			goTo('/myadverts/alerts/');
		},
		failure:  function(response, options) {
			alert('Ошибка связи. Попробуйте повторить позже.');
			goTo('/myadverts/alerts/');
		},
		params: {'ids': ids, 'op': 'deleteall'}
	});

}
function deleteNoActiveAlert(id){
	Ext.Ajax.request({
		url: '/ajax/searchalert.php',
		success: function(response, options) {
			goTo('/myadverts/alerts/');
		},
		failure:  function(response, options) {
			alert('Ошибка связи. Попробуйте повторить позже.');
			goTo('/myadverts/alerts/');
		},
		params: {'id': id, 'op': 'deleteNoActive'}
	});

}



function checkAll(className){
	
	if($('ch_ch').innerHTML=='Отметить все'){
		$('ch_ch').innerHTML='Снять выделение';
		var a = Ext.query('input[class="' + className + '"]');
		Ext.each(a, function (item, index) {item.checked = true});
	}else {
		$('ch_ch').innerHTML='Отметить все';
		var a = Ext.query('input[class="' + className + '"]');
		Ext.each(a, function (item, index) {item.checked = false});
	}
}

function fastSearch(form, attr, value){
	var form = form || $('filters');
	var basehref = '';
	basehref=form.action.replace('http://' + document.domain, '');
	if(value != ''){
		document.location = basehref + '/search/'+attr+'=' + value;
	}else{
		document.location = basehref + '/';
	}
	return false;
}

function getAdAddStatus(reg) {
	Ext.Ajax.request({
		url: '/ajax/categories.php',
		success: function(response, options) {
			var res = Ext.decode(response.responseText);
			var p = Ext.get('categoriesNavigation').parent();
			var ul = p.prev('ul'); if(ul) ul.remove();
			p.insertHtml('beforeBegin',res.limits);
		},
		params: {'isinpackage': 1, 'category': getValueFromURL('category', window.location.href), 'region': reg}
	});
}

function loadVideoContent(){
	maxWidth = 470;
	maxHeight = 370;
	allowSites = new Array('youtube.com','smotri.com','rutube.ru','video.yandex.ru');
	videoContentAreaValue = $('videoContentArea').value;
	if (videoContentAreaValue!='') {
		elHide('videoContentDeleteButton');
		$('videoContentBlock').innerHTML=((window.ActiveXObject)?"<!-- -->":"")+videoContentAreaValue;
		errorMessage='';
		try {
			flash=$('videoContentBlock').firstChild;
			objectHeight=flash.height;
			objectWidth=flash.width;
			objectName=false;
			embedName=false;
			embedHeight=false;
			embedWidth=false;
			if (window.ActiveXObject && flash.tagName=="EMBED") {
				objectName=flash.src;
				objectWidth=flash.width;
				objectHeight=flash.height;
			} else {
				flashChilds=flash.childNodes;
				for (i=0; i<flashChilds.length; i++){
					if (flashChilds[i].tagName=='EMBED') {
						embedName=flashChilds[i].src;
						embedWidth=flashChilds[i].width;
						embedHeight=flashChilds[i].height;
					} else if (flashChilds[i].tagName=='PARAM' && flashChilds[i].name=='video' || flashChilds[i].name=='movie') {
						objectName=flashChilds[i].value;
					}
				}
			}
			if (window.ActiveXObject || window.opera){
				embedName=objectName;
				embedWidth=objectWidth;
				embedHeight=objectHeight;
			}
			if (objectName==embedName && objectWidth==embedWidth && objectHeight==embedHeight) {
				if (objectWidth*1>maxWidth){
					errorMessage+='Ширина ролика должна быть не более '+maxWidth+'.<br />';
				}
				if (objectHeight*1>maxHeight){
					errorMessage+='Высота ролика должна быть не более '+maxHeight+'.<br />';
				}
				siteAllow=false;
				for (i=0; i<allowSites.length && !siteAllow; i++){
					if (objectName.indexOf(allowSites[i])>-1) {
						siteAllow=true;
					}				
				}
				if (!siteAllow) {
					errorMessage+='Ролик должен быть размещен только на следующих сервисах: '+allowSites.join(', ')+'.<br />';
				}
			} else {
				errorMessage='Не валидный html-код видео-ролика, проверьте правильность кода.<br />';
			}
		} catch (e){
			errorMessage='Не валидный html-код видео-ролика, проверьте правильность кода.<br />';
		}
		
		if (errorMessage=='') {
			elShow('videoContentDeleteButton',true);
			$('id_video').value=videoContentAreaValue;
		} else {
			$('videoContentBlock').innerHTML='<div class="errorVideo"><b>Ошибка</b><br /><br />'+errorMessage+'</div>';
			elShow('videoContentDeleteButton',true);
			$('id_video').value='';
		}
	}
}

function deleteVideoContent(){
	$('videoContentArea').value='';
	$('videoContentBlock').innerHTML='';
	elHide('videoContentDeleteButton');
	$('id_video').value='';
}

function setSort(el,url){
	document.location=url+"sort/"+el.value+"/";
}

//var favorites_cookie_name = 'favorites';
//var compare_cookie_name = 'compare';


function incFavCounter(val,type){
	var favCounter;
	var favC2;
	var text;
	if (type=='compare') favCounter= Ext.get('compareCount-1');
	else favCounter= Ext.get('clipboardCount-1');
	if (favCounter){
		var count = parseInt(favCounter.dom.innerHTML) + val;
		if (count<0) count = 0;
		favCounter.update(count);
		if (type=='compare'){
			favCounter= Ext.get('compareCount-1').dom.innerHTML;
			
			var last_digit = favCounter.substring(favCounter.length-1,favCounter.length);
			if (last_digit=='1') text='объект';
			if (last_digit=='2' || last_digit=='3' || last_digit=='4') text='объекта';
			if (last_digit=='5' || last_digit=='6' || last_digit=='7' || last_digit=='8' || last_digit=='9' || last_digit=='0')
				text='объектов';
			var compareText= Ext.get('compareText-1');
			compareText.update(text);	
		}
		if (type=='compare') favC2 = Ext.get('compareCount-2');
		else favC2 = Ext.get('clipboardCount-2');
		if(favC2){
			favC2.update(count);
		}
	}
}

function toggleFav(id, obj,type){
	if (!obj) return false;	
	img = Ext.get(obj);
	var all_compare = getCookie2('compare');
	
	if(type == 'compare' && !img.hasClass('act')){
		if (all_compare)
			if (all_compare.replace(' ','')!=',' && all_compare.replace(' ','')!=''){
				var re = /,(\d+),/;
				var tmp_str = all_compare.match(re);
				var one_id = tmp_str[1];
				Ext.Ajax.request({
					url: '/ajax/checkCategory.php',
					asynchronous:false,
					callback: function (options, success, response) {
						var res = Ext.decode(response.responseText);
						if (res.success=='0') {	
							alert('Внимание! К сравнению допускаются только объявления одной категории!');							
						}
						else{
							favoritesAdd(id,type);
							incFavCounter(1,type);
							
							if(type == 'compare') obj.setAttribute('title','Удалить из сравнения');
							else obj.setAttribute('title','Удалить из блокнота');
							
							img.addClass('act');		
							img.setStyle('cursor', 'pointer');							
						}
					},
					params: {id: id, new_id: parseInt(one_id)}
				});
			}
	}	

	img.setStyle('cursor', 'wait');
	
	if (!img.hasClass('act')&& type != 'compare' || (type == 'compare' && (!(all_compare)|| all_compare.replace(' ','')==',' ))){
		favoritesAdd(id,type);
		incFavCounter(1,type);
		
		if(type == 'compare') obj.setAttribute('title','Удалить из сравнения');
		else obj.setAttribute('title','Удалить из блокнота');
				
		//img.removeClass('ico-1');		
		img.addClass('act');		
		img.setStyle('cursor', 'pointer');		
	}else if(img.hasClass('act')){
		favoritesDel(id,type);
		incFavCounter(-1,type);
		
		if(type == 'compare') obj.setAttribute('title','Добавить в сравнение ');
		else obj.setAttribute('title','Добавить в блокнот');
						
		img.removeClass('act');		
	//	img.addClass('ico-1');		
		img.setStyle('cursor', 'pointer');		
	}
}

function favoritesToggleCompare(id, obj){	
	if (!obj) return false;	
	img = Ext.get(obj);
	img.setStyle('cursor', 'wait');
	if (img.hasClass('add')){
		favoritesAdd(id);
		incFavCounter(1);
		img.removeClass('add');		
		img.addClass('addAct');		
		img.setStyle('cursor', 'pointer');			
	}else if (img.hasClass('addAct')){
		favoritesDel(id);
		incFavCounter(-1);
		img.removeClass('addAct');		
		img.addClass('add');		
		img.setStyle('cursor', 'pointer');			
	}	
}

function deleteAll(){
	if (!confirm('Вы действительно хотите удалить все объявления из вашего блокнота?')) return;
	setFavorites(',', 1);
	window.location.href='/clipboard/';
}

function deleteAllCompare(){
	cur_cookie = getCookie2('compare');	
	if(cur_cookie==null || cur_cookie==',' ) alert('Вы не добавили ни одного объявления для сравнения');
	else {
		if (!confirm('Вы действительно хотите очистить список сравнения?')) return;
		setFavorites(',', 1,'compare');	
		document.location.reload();
	}
}
function makecomment (id){
	Ext.Ajax.request({
		form: 'makecommentForm_'+id,
		callback: function (options, success, response) {
					var res = Ext.decode(response.responseText);
					if (res.success==true){
						toggleTr(+id);	
						var span = Ext.get('c_id_'+id);
						if(res.comments=='')span.update('Добавить комментарий');
						else span.update(res.comments);
					}
					else alert('Ошибка при сохранении комментария'); 							
										
				},
		params: {'ad_id': id}
	});
	return false;
}

function savesalert(url){	
	Ext.Ajax.request({
		form: 'form_alert',
		callback: function (options, success, response) {
					var res = Ext.decode(response.responseText);					
					if (res.success==true && res.url_goto){
						goTo(res.url_goto);						
					}
					else if (res.success==true){
						//goTo('/myadverts/alerts/edit/'+res.id+'/');
						goTo('/myadverts/alerts/');
					}
					else alert('Ошибка при сохранении подписки'); 	
				},
		params: {url:url}		
	});
}

function advertpageAdd(id, obj){
	//obj = Ext.get(obj);
	//obj.remove();
	favoritesAdd(id);
	incFavCounter(1);
	div_del = document.getElementById('del_ad');	
	div_add = document.getElementById('add_ad');
	div_del_top = document.getElementById('del_ad_top');	
	div_add_top = document.getElementById('add_ad_top');	
	div_add.style.display="none";
	div_del.style.display="";
	div_add_top.style.display="none";
	div_del_top.style.display="";
	//window.location.href='/clipboard/';
}
function advertpageAddComp(id, obj){	
	var all_compare = getCookie2('compare');
	
	if (all_compare){
		if (all_compare.replace(' ','')!=',' && all_compare.replace(' ','')!=''){
			var re = /,(\d+),/;
			var tmp_str = all_compare.match(re);
			var one_id = tmp_str[1];
			Ext.Ajax.request({
				url: '/ajax/checkCategory.php',
				asynchronous:false,
				callback: function (options, success, response) {
					var res = Ext.decode(response.responseText);
					if (res.success=='0') alert('Внимание! К сравнению допускаются только объявления одной категории!');							
					else addtoCompare(id);					
				},
				params: {id: id, new_id: parseInt(one_id)}
			});
		}
		else {
			addtoCompare(id);			
		}
	}else addtoCompare(id);
}

function addtoCompare(id) {
	favoritesAdd(id,'compare');
	incFavCounter(1,'compare');
	div_del = document.getElementById('del_comp');	
	div_add = document.getElementById('add_comp');
	div_del_top = document.getElementById('del_comp_top');	
	div_add_top = document.getElementById('add_comp_top');	
	div_add.style.display="none";
	div_del.style.display="";
	div_add_top.style.display="none";
	div_del_top.style.display="";	
}
function toggleTr(id){
	div_el = document.getElementById('form_'+id);
	make = document.getElementById('c_id_'+id);	
	if(div_el.style.display=='none') {
		div_el.style.display="";
		make.style.display="none";
	}
	else {
		div_el.style.display="none";
		make.style.display="";
	}

	//if()
}

function deleteFavs(){

	//	function removeTr(response, options, obj) {
	//obj = Ext.get(obj);
	//obj.parent('tr').remove();
	//	}

	var del_favs = Ext.query('input:checked[class="fav_chkbox"]');

	var ids = ',';

	for (i=0; i<del_favs.length; i++){
		if(del_favs[i].id) {
			favoritesDel(del_favs[i].id.substring(3));
		}
	}
	if (del_favs.length) window.location.href='/clipboard/';
}

function printFavs(sort, dir){	
	var print_favs = Ext.query('input:checked[class="fav_chkbox"]');
	var print_str = '';	
	for (i=0; i<print_favs.length; i++){
		if(print_favs[i].id) {
			print_str =  print_favs[i].id.substring(3) + ','+ print_str;
		}
	}	
	if (print_favs.length) document.location='/clipboard/print/sort/'+sort+':'+dir+'?fav='+print_str;
	else alert('Вы не выбрали ни одного объявления.');
}

function setFavorites(favs, remove,type){
	var modifer = (remove ? -1 : 1);
	var dd = new Date();
	var expire_days = ($('site_cookie_lifetime')) ? $('site_cookie_lifetime').value : 20;
	//alert(expire_days);
	dd.setDate(dd.getDate() + modifer * expire_days);
	//alert(dd.getDate());
	//alert(dd.toGMTString());
	//alert($('site_cookie_path').value);	
	//console.log(favorites_cookie_name);
	//console.log(favs);
	if(type=='compare') setCookie2('compare', favs, dd.toGMTString(), '/', $('site_cookie_path').value);
	else setCookie2('favorites', favs, dd.toGMTString(), '/', $('site_cookie_path').value);
}

function favoritesAdd(id,type){
	var cur_cookie;
	if(type=='compare') cur_cookie = getCookie2('compare');
	else cur_cookie = getCookie2('favorites');
	
	if (!cur_cookie) cur_cookie = ',';
	cur_cookie = cur_cookie + id + ',';
	setFavorites( cur_cookie,0,type );
}

function favoritesDel(id,type){
	var cur_cookie;
	if(type=='compare') cur_cookie = getCookie2('compare');
	else cur_cookie = getCookie2('favorites');
	if (!cur_cookie) return;
	cur_cookie = cur_cookie.replace(','+id, '');

	setFavorites(cur_cookie,0,type);
}

function favoritesDelfromAd(id){	
	favoritesDel(id);
	incFavCounter(-1);
	div_del = document.getElementById('del_ad');	
	div_add = document.getElementById('add_ad');
	div_del_top = document.getElementById('del_ad_top');	
	div_add_top = document.getElementById('add_ad_top');	
	div_add.style.display="";
	div_add_top.style.display="";
	div_del.style.display="none";
	div_del_top.style.display="none";
}
function compareDelfromAd(id){	
	favoritesDel(id,'compare');
	incFavCounter(-1,'compare');
	div_del = document.getElementById('del_comp');	
	div_add = document.getElementById('add_comp');
	div_del_top = document.getElementById('del_comp_top');	
	div_add_top = document.getElementById('add_comp_top');	
	div_add.style.display="";
	div_add_top.style.display="";
	div_del.style.display="none";
	div_del_top.style.display="none";
}

function showhide(theId, divID) {
	var el = document.getElementById(divID+ '-' + theId);
	var ellink = document.getElementById(divID+ '-'  + theId + '-i');
	
	if (el.style.display=="none") {
		el.style.display="";
		ellink.className="minus";
	}

	else {
		el.style.display="none";
		ellink.className="";
   }

	return false;
}

function checkPrice(region,category){	
	if (category==undefined) var category = $('id_category').value;
	if (region==undefined) var region = $('id_region').value;
	
	if((category=='classified/secondary/rent/' || category=='49') && $('id_rentType').value=='долгосрочная аренда' && region.match('moscow')){
		Ext.Ajax.request({
				url: '/ajax/convertPrice.php',
				callback: function (options, success, response) {
					var res = Ext.decode(response.responseText);
					var price = res.data;
					if (region.match('outside') && ($('id_roomsForRent').value!='' || $('id_rooms').value=='комната') && price<parseInt(document.getElementById('room_mscreg').innerHTML)){
						alert("Уважаемый пользователь! По данным статистики стоимость аренды комнаты в Вашем регионе не может быть менее "+document.getElementById('room_mscreg').innerHTML+" руб. Укажите, пожалуйста, корректную стоимость. В противном случае, цена не будет опубликована на сайте");						
					}
					if (region.match('outside') && ($('id_roomsForRent').value=='' && $('id_rooms').value!='комната') && price<parseInt(document.getElementById('flat_mscreg').innerHTML)){
						alert("Уважаемый пользователь! По данным статистики стоимость аренды квартиры в Вашем регионе не может быть менее "+document.getElementById('flat_mscreg').innerHTML+" руб. Укажите, пожалуйста, корректную стоимость. В противном случае, цена не будет опубликована на сайте");						
					}
					if (region.match('outside')==null && ($('id_roomsForRent').value=='' && $('id_rooms').value!='комната') && price<parseInt(document.getElementById('flat_msc').innerHTML)){
						alert("Уважаемый пользователь! По данным статистики стоимость аренды квартиры в Вашем регионе не может быть менее "+document.getElementById('flat_msc').innerHTML+" руб. Укажите, пожалуйста, корректную стоимость. В противном случае, цена не будет опубликована на сайте");						
					}
					if (region.match('outside')==null && ($('id_roomsForRent').value!='' || $('id_rooms').value=='комната') && price<parseInt(document.getElementById('room_msc').innerHTML)){
						alert("Уважаемый пользователь! По данным статистики стоимость аренды комнаты в Вашем регионе не может быть менее "+document.getElementById('room_msc').innerHTML+" руб. Укажите, пожалуйста, корректную стоимость. В противном случае, цена не будет опубликована на сайте");						
					}				
				},
				params: {price: $('id_price').value, currency: $('id_price_currency').value}
			});
		
		
		
	}
}

function calculateWeight(obj){
		var inp = Ext.get(obj);
		var value_weight = document.getElementById('weight_'+ inp.id).innerHTML;
		var fill_str = document.getElementById('fill_stat').innerHTML.toString();
		var ind_quality = parseFloat(document.getElementById('ind_quality').innerHTML);
		
		var bar = document.getElementById('bar');
		var width = bar.style.width.toString();
		var width_int = parseInt(width.substr(0,width.length-2));		
		
		var all_fields = parseInt(document.getElementById('all').innerHTML);
		var bar_one = parseInt(230/all_fields);
		
		var pos = fill_str.search(inp.id);
		var add_id = inp.id + '!';
		var fill_field = parseInt(document.getElementById('filled').innerHTML);
		if($('weight_id_informap'))		
			var value_informap = parseFloat(document.getElementById('weight_id_informap').innerHTML);
		
		//console.log($('id_id_informap').value);
		if (obj.value!='' && parseInt(obj.value)!=0 && pos<0) {
			document.getElementById('fill_stat').innerHTML = fill_str + add_id;
			ind_quality = ind_quality + parseFloat(value_weight);
			bar.style.width = width_int + bar_one + 'px';
			fill_field++;
		}
		else if (obj.value=='' && parseInt(obj.value)!=0 && pos>=0) {
			document.getElementById('fill_stat').innerHTML = fill_str.substr(0,pos)+fill_str.substr(pos+add_id.length,fill_str.length);
			ind_quality = ind_quality - parseFloat(value_weight);
			bar.style.width = width_int - bar_one + 'px';
			fill_field--;
			}
		if($('weight_id_informap'))	{
			var pos_informap = document.getElementById('fill_stat').innerHTML.toString().search('id_informap');
			if(inp.id=='id_mapHouseNr' && $('id_id_informap').value!='' && pos_informap<0){
				ind_quality = ind_quality + value_informap;
				document.getElementById('fill_stat').innerHTML = document.getElementById('fill_stat').innerHTML.toString() + 'id_informap!';
			}	
			if(inp.id=='id_mapHouseNr' && $('id_id_informap').value=='' && pos_informap>=0){
				ind_quality = ind_quality - value_informap;	
				var fill_str_informap = document.getElementById('fill_stat').innerHTML.toString();
				document.getElementById('fill_stat').innerHTML = fill_str_informap.substr(0,pos_informap)+fill_str_informap.substr(pos_informap+'id_informap!'.length,fill_str_informap.length);				
			}		
		}
		document.getElementById('ind_quality').innerHTML = ind_quality;
		document.getElementById('filled').innerHTML = fill_field;
		document.getElementById('id_quality_index').value = ind_quality;	
}

function calculatePhotoWeight(i,str,count){		
	var ind_quality = parseFloat(document.getElementById('ind_quality').innerHTML);
	if (i==0 && str!='rem'){   //first foto
		ind_quality = ind_quality + parseFloat(document.getElementById('main_photo').innerHTML);
	}else if (i==0 && str=='rem'&& count==1){   //first foto
		ind_quality = ind_quality - parseFloat(document.getElementById('main_photo').innerHTML);
	}else if (i>0 && str!='rem' && i<=5){
		ind_quality = ind_quality + parseFloat(document.getElementById('add_photo').innerHTML);
	}else if (i>=0 && str=='rem' && count<=6){
		ind_quality = ind_quality - parseFloat(document.getElementById('add_photo').innerHTML);
	}
	
	document.getElementById('ind_quality').innerHTML = ind_quality;
	document.getElementById('id_quality_index').value = ind_quality;
}

function exptoExcel(){	
	var exp_favs = Ext.query('input:checked[class="fav_chkbox"]');	
	var ids = '';	
	for (i=0; i<exp_favs.length; i++){
		if(exp_favs[i].id) {
			ids += exp_favs[i].id.substring(3)+',';
		}
	}
	ids = ids.substr(0,ids.length-1);
	if(ids.length > 0)
		window.location = '/clipboard/expExcel/?f='+ids;
	else alert('Не выбрано ни одно объявление!!!');	
}

function isNotMax(e){
	e = e || window.event;
	//console.log(e.srcElement);
	var target = e.target || e.srcElement;

	var code=e.keyCode?e.keyCode:(e.which?e.which:e.charCode)
	switch (code){
		case 13:
		case 8:
		case 9:
		case 46:
		case 37:
		case 38:
		case 39:
		case 40:
		return true;
	}
	return target.value.length <= target.getAttribute('maxlength');
}


function compareFromFav(){	
	var exp_favs = Ext.query('input:checked[class="fav_chkbox"]');	
	var ids = '';
	var add_id;	
	var st;
	for (i=0; i<exp_favs.length; i++){
		if(exp_favs[i].id) {
			ids += exp_favs[i].id.substring(3)+',';
		}
	}
	ids = ids.substr(0,ids.length-1);
	
	all_compare = getCookie2('compare');
	var re = /(\d+)/g;
	if(all_compare)
		var tmp_str = all_compare.match(re);
	//console.log(tmp_str);

	if(ids.length > 0){
			Ext.Ajax.request({
			url: '/ajax/checkCategory.php',
			callback: function (options, success, response) {
				var res = Ext.decode(response.responseText);
				if (res.success=='0') alert('Внимание! К сравнению допускаются только объявления одной категории!');							
				else {
					for (i=0; i<exp_favs.length; i++){
						add_id = parseInt(exp_favs[i].id.substring(3));
						if(exp_favs[i].id) {
							if(tmp_str){
								for(j=0; j<tmp_str.length; j++){
									st = false;
									
									if(add_id==parseInt(tmp_str[j])){
										st = true;
										break;										
									}	
								}								
								if (!st){									
									favoritesAdd(add_id,'compare');
									incFavCounter(1,'compare');
								}								
							}
							else{
								favoritesAdd(add_id,'compare');
								incFavCounter(1,'compare');
							}	
								
						}
					}
				goTo('/compare/');						
				}				
			},
			params: {ids: ids}
		});
			
	
	}
		
	else alert('Не выбрано ни одно объявление!!!');	
}

var oldStreetName='';
var savedStreets=false;
var streetsSelectActive=false;
var mapHouseNr_obj = false;
var mapsearch_submit_obj = false;

function getLikedStreet(el, event){
// delete it
//$('id_region_Informap_Id').value = 5;

	// for mapsearch
	if(mapsearch_submit_obj === false) {
		mapsearch_submit_obj = $('mapsearch_submit');
		if(!mapsearch_submit_obj) mapsearch_submit_obj = null;
	} else if(mapsearch_submit_obj !== null){
		mapsearch_submit_obj.disabled = false;
	}
	
	if(mapHouseNr_obj === false) {
		mapHouseNr_obj = $('id_mapHouseNr');
		if(!mapHouseNr_obj) mapHouseNr_obj = null;
	} else if(mapHouseNr_obj !== null) {
		mapHouseNr_obj.disabled = false;
	}

	
	if (!$('id_region_Informap_Id') || $('id_region_Informap_Id').value=='' || Number($('id_region_Informap_Id').value)<0 || $('id_region_Informap_Id').value=='null') {
		return true;
	}
	region = $('id_region_Informap_Id').value;
	if (el.value!='') {
		newStreetName=el.value;
		if (oldStreetName!=newStreetName){
			if (!oldStreetName || newStreetName.substr(0,2)!=oldStreetName.substr(0,2) || savedStreets==false) {			
				savedStreets=false;
				Ext.Ajax.request({
					url: '/ajax/getLikedStreet.php',
					callback: function (options, success, response) {
						var res = Ext.decode(response.responseText);
						if (res.success && res.success>0 && res.list){
							if (res.success==2) {
								savedStreets=res.list;
								showFromSavedStreets(newStreetName);
							} else {
								showLikedStreet(res.list);
							}
						} else {
							hideLikedStreet();
						}
					},
					params: {street: el.value,region:region}
				});
			} else {
				showFromSavedStreets(newStreetName);
			}
			clearHouse();
			oldStreetName=newStreetName;
		} else {
			if (event) {
				if (event.charCode) {
					if (event.keyCode!=40){
						return true;
					}
				}
				if (event.keyCode && event.keyCode!=40){
					return true;
				}
				if ($('id_likedStreetSelect') && $('id_likedStreet').style.display=='block') {
					try{
						$('id_likedStreetSelect').focus();
						$('id_likedStreetSelect').selectedIndex=0;
					} catch (e){;}
				}
			}
		}
	} else {
		oldStreetName='';
		hideLikedStreet();
	}
	return true;
}

function showFromSavedStreets(newStreetName){
	tmpArray = new Array();
	newStreetNameLC = newStreetName.toLowerCase();
	for (i=0; i<savedStreets.length && tmpArray.length<10; i++){
		if (savedStreets[i]['FullName'].toLowerCase().indexOf(newStreetNameLC)>-1) {
			tmpArray.push(savedStreets[i]);
		}
	}
	if (tmpArray.length>0) {
		showLikedStreet(tmpArray);
	} else {
		hideLikedStreet();
	}
}

function hideLikedStreet(){
	setTimeout('hideLikedStreetOnTime()',100);
}


function hideLikedStreetOnTime(){
	if (!streetsSelectActive) {
		if ($('id_likedStreet').style.display=='block'){
			$('id_likedStreet').style.display='none';
		}
	}
	
	// for search on map
	if(mapsearch_submit_obj === false) {
		mapsearch_submit_obj = $('mapsearch_submit');
		if(!mapsearch_submit_obj) mapsearch_submit_obj = null;
	} else if(mapsearch_submit_obj !== null){
		mapsearch_submit_obj.disabled = false;
}

	// for search on map
	if(mapHouseNr_obj === false) {
		mapHouseNr_obj = $('id_mapHouseNr');
		if(!mapHouseNr_obj) mapHouseNr_obj = null;
	} else if(mapHouseNr_obj !== null) {
		mapHouseNr_obj.disabled = false;
	}
}

function showLikedStreet(list){
	// for mapsearch
	if(list.length == 1) {
		if(mapsearch_submit_obj === false) {
			mapsearch_submit_obj = $('mapsearch_submit');
			if(!mapsearch_submit_obj) mapsearch_submit_obj = null;
		} else if(mapsearch_submit_obj !== null){
			mapsearch_submit_obj.disabled = true;
		}	

		if(mapHouseNr_obj === false) {
			mapHouseNr_obj = $('id_mapHouseNr');
			if(!mapHouseNr_obj) mapHouseNr_obj = null;
		} else if(mapHouseNr_obj !== null) {
			mapHouseNr_obj.disabled = true;
		}
	}
	
	html='<select onclick="setSelectStreet(this, event)" onkeypress="setSelectStreet(this, event)" id="id_likedStreetSelect" size="'+list.length+'" onfocus="streetsSelectActive=true" onblur="streetsSelectActive=false; hideLikedStreet()">';
	for (var i=0; i<list.length; i++) {
		html+='<option value="' +list[i]['UID'] + '">'+list[i]['FullName']+'</option>';
	}
	html+='</select>';
	$('id_likedStreet').innerHTML=html;
	if ($('id_likedStreet').style.display!='block'){
		$('id_likedStreet').style.display='block';
	}
}

function setSelectStreet(el,event){
	if (el.selectedIndex>-1){
		if (event && el.selectedIndex==0) {
			if (event.charCode) {
				if (event.keyCode==38){
					$('id_mapStreet').focus();
					return false;
				}
			}
			if (event.keyCode && event.keyCode==38){
				
				$('id_mapStreet').focus();
				return false;
			}
		}
		setMapStreet(el.options[el.selectedIndex],event);
	}
}

function setMapStreet(value, event){
	if (event) {
		if (event.charCode) {
			if (event.keyCode!=13){
				return false;
			}
		}
		if (event.keyCode && event.keyCode!=13){
			return false;
		}
	}
	$('id_mapStreet').value=value.innerHTML;
	// for search on map
	if($('street_id') != null) {
		$('street_id').value = value.value;
	}
	$('id_mapStreet').focus();
	
	hideLikedStreet();
	oldStreetName=value.innerHTML;

}


var oldHouseName='';
var savedHouses=false;
var savedHousesIDs=false;
var houseStreet=false;
var housesSelectActive=false;

function getLikedHouse(el, event){

	// for search on map
	if(mapsearch_submit_obj === false) {
		mapsearch_submit_obj = $('mapsearch_submit');
		if(!mapsearch_submit_obj) mapsearch_submit_obj = null;
	} else if(mapsearch_submit_obj !== null){
		mapsearch_submit_obj.disabled = false;
	}

	if (!$('id_region_Informap_Id') || $('id_region_Informap_Id').value=='' || Number($('id_region_Informap_Id').value)<0 || $('id_region_Informap_Id').value=='null') {
		return true;
	}
	street = $('id_mapStreet').value;
	region = $('id_region_Informap_Id').value;
	if (el.value!='' && street!='') {
		newHouseName=el.value;
		if (oldHouseName!=newHouseName || oldStreetName!=street){
			if (!oldHouseName || newHouseName[0]!=oldHouseName[0] || savedHouses==false) {			
				savedHouses=false;
				Ext.Ajax.request({
					url: '/ajax/getLikedHouse.php',
					callback: function (options, success, response) {
						var res = Ext.decode(response.responseText);
						if (res.success && res.success>0 && res.list){
							if (res.success==2) {
								savedHouses=res.list;
								houseStreet=res.street;
								savedHousesIDs= new Array();
								for (var item=0; item<savedHouses.length; item++){
									savedHousesIDs[savedHouses[item]['FullNumber'].toLowerCase()]=savedHouses[item]['AddressID'];
								}
								showFromSavedHouses(newHouseName);
								checkInforMapID();
							} else {
								showLikedHouse(res.list);
							}
						} else {
							hideLikedHouse();
						}
					},
					params: {street: street,house: el.value,region: region}
				});
			} else {
				showFromSavedHouses(newHouseName);
			}
			if (oldHouseName==newHouseName){
				if (event) {
					if (event.charCode) {
						if (event.keyCode!=40){
							return true;
						}
					}
					if (event.keyCode && event.keyCode!=40){
						return true;
					}
					if ($('id_likedHouseSelect') && $('id_likedHouse').style.display=='block') {
						try{
							$('id_likedHouseSelect').focus();
							$('id_likedHouseSelect').selectedIndex=0;
						} catch (e){;}
					}
				}
			}
			oldHouseName=newHouseName;
		} else {
			if (event) {
				if (event.charCode) {
					if (event.keyCode!=40){
						return true;
					}
				}
				if (event.keyCode && event.keyCode!=40){
					return true;
				}
				if ($('id_likedHouseSelect') && $('id_likedHouse').style.display=='block') {
					try{
						$('id_likedHouseSelect').focus();
						$('id_likedHouseSelect').selectedIndex=0;
					} catch (e){;}
				}
			}
		}
	} else {
		oldHouseName='';
		hideLikedHouse();
	}
	checkInforMapID();
	return true;
}

function showFromSavedHouses(newHouseName){
	tmpArray = new Array();
	newHouseNameLC = newHouseName.toLowerCase();
	for (i=0; i<savedHouses.length && tmpArray.length<10; i++){
		if (savedHouses[i]['FullNumber'].toLowerCase().indexOf(newHouseNameLC)>-1) {
			tmpArray.push(savedHouses[i]);
		}
	}
	if (tmpArray.length>0) {
		showLikedHouse(tmpArray);
	} else {
		hideLikedHouse();
	}
}

function hideLikedHouse(){
	checkInforMapID();
	setTimeout('hideLikedHouseOnTime()',100);
}


function hideLikedHouseOnTime(){
	if (!housesSelectActive) {
		if ($('id_likedHouse').style.display=='block'){
			$('id_likedHouse').style.display='none';
		}
	}
	// for search on map
	if(mapsearch_submit_obj === false) {
		mapsearch_submit_obj = $('mapsearch_submit');
		if(!mapsearch_submit_obj) mapsearch_submit_obj = null;
	} else if(mapsearch_submit_obj !== null){
		mapsearch_submit_obj.disabled = false;
}
}

function showLikedHouse(list){
// for mapsearch
	if(list.length == 1) {
		if(mapsearch_submit_obj === false) {
			mapsearch_submit_obj = $('mapsearch_submit');
			if(!mapsearch_submit_obj) mapsearch_submit_obj = null;
		} else if(mapsearch_submit_obj !== null){
			mapsearch_submit_obj.disabled = true;
		}
	}

	html='<select onclick="setSelectHouse(this, event)" onkeypress="setSelectHouse(this, event)" id="id_likedHouseSelect" size="'+list.length+'" onfocus="housesSelectActive=true" onblur="housesSelectActive=false; hideLikedHouse()">';
	for (var i=0; i<list.length; i++) {
		html+='<option>'+list[i]['FullNumber']+'</option>';
	}
	html+='</select>';
	$('id_likedHouse').innerHTML=html;
	if ($('id_likedHouse').style.display!='block'){
		$('id_likedHouse').style.display='block';
	}
}

function setSelectHouse(el,event){
	if (el.selectedIndex>-1){
		if (event && el.selectedIndex==0) {
			if (event.charCode) {
				if (event.keyCode==38){
					$('id_mapHouseNr').focus();
					return false;
				}
			}
			if (event.keyCode && event.keyCode==38){
				$('id_mapHouseNr').focus();
				return false;
			}
		}
		setMapHouse(el.options[el.selectedIndex].innerHTML,event);
	}
}

function setMapHouse(value, event){
	if (event) {
		if (event.charCode) {
			if (event.keyCode!=13){
				return false;
			}
		}
		if (event.keyCode && event.keyCode!=13){
			return false;
		}
	}
	$('id_mapHouseNr').value=value;
	$('id_mapHouseNr').focus();
	hideLikedHouse();
	oldHouseName=value;

	

}

function checkInforMapID(){
	mapID='';
	if (savedHouses && houseStreet.toLowerCase()==$('id_mapStreet').value.toLowerCase()) {
		oldHouseNameLC=$('id_mapHouseNr').value.toLowerCase();
		if (!(mapID = savedHousesIDs[$('id_mapHouseNr').value.toLowerCase()])) {
			mapID='';
		} 
	}
	$('id_id_informap').value=mapID;
	
//	if (mapID!=''){
//		
//		//var inp = Ext.get(obj);
//		var value_weight = parseFloat(document.getElementById('weight_id_informap').innerHTML);
//		var ind_quality = parseFloat(document.getElementById('ind_quality').innerHTML);
//		document.getElementById('ind_quality').innerHTML = ind_quality+value_weight;
//		document.getElementById('id_quality_index').value = ind_quality+value_weight;		
//	}
}

function clearHouse(){
	if ($('id_mapHouseNr')) {
		if ($('id_mapHouseNr').value!=''){
			if($('fill_stat') != null) {
			var fill_str = document.getElementById('fill_stat').innerHTML.toString();
			var pos = fill_str.search('id_mapHouseNr');
			var ind_quality = parseFloat(document.getElementById('ind_quality').innerHTML);
			var value_weight = parseFloat(document.getElementById('weight_id_mapHouseNr').innerHTML);
			var fill_field = parseInt(document.getElementById('filled').innerHTML);
			document.getElementById('fill_stat').innerHTML = fill_str.substr(0,pos)+fill_str.substr(pos+'id_mapHouseNr!'.length,fill_str.length);
			ind_quality = ind_quality - value_weight;
			fill_field--;
			if($('weight_id_informap')){
				var value_informap = parseFloat(document.getElementById('weight_id_informap').innerHTML);
				var pos_informap = document.getElementById('fill_stat').innerHTML.toString().search('id_informap');
				//console.log(pos_informap);
				//console.log($('id_id_informap').value);
				if($('id_id_informap').value!='' && pos_informap>=0){
					ind_quality = ind_quality - value_informap;	
					var fill_str_informap = document.getElementById('fill_stat').innerHTML.toString();
					document.getElementById('fill_stat').innerHTML = fill_str_informap.substr(0,pos_informap)+fill_str_informap.substr(pos_informap+'id_informap!'.length,fill_str_informap.length);				
				}
			}			
			
			document.getElementById('ind_quality').innerHTML = ind_quality;
			document.getElementById('filled').innerHTML = fill_field;
			document.getElementById('id_quality_index').value = ind_quality;
		}
		}
		$('id_mapHouseNr').value='';
		oldHouseName='';
		savedHouses=false;
		savedHousesIDs=false;
		houseStreet=false;
		checkInforMapID();
	}
}

function chAdv(){
	if($('adv_id')) $('adv_id').innerHTML='Изменить';	
	if($('clear_fres'))
		document.getElementById('clear_fres').style.display = '';	
}

function checkUsergotoRegister(url,el){
	//hideAllErrorMessages();

	Ext.Ajax.request({
		form: 'form_alert',
		callback: function (options, success, response) {
			var res = Ext.decode(response.responseText);
			if(res.success){
				if (!url.match('search')) url = url+'search/';
				goTo(res.goTo+'?email='+el.email.value+'&return='+url.replace('http://' + document.domain,''));
			}
			else {
				document.getElementById('wrong_email_error_message').style.display = 'block';										
			}
		}
	});
	
}

function replaceDot(el){
	el.value=el.value.replace(/,/g, '.');
} 

function changeGoogleCR(){
	mapChilds = $('map').childNodes;
	for (childIndex = 0; childIndex<mapChilds.length; childIndex++){
		if (mapChilds[childIndex].innerHTML.indexOf('Geocentre Consulting - ')>-1){
			mapChilds[childIndex].innerHTML = '<a href="http://www.google.com/intl/ru_ALL/help/terms_maps.html" target="_blank" style="color: rgb(119, 119, 204);">Условия использования</a><br /><span>Данные карты ©2008 AND, Geocentre Consulting</span>';
			childIndex=9999; 
		}
	}
}

/*
function openPlanImagePopup(ad_id) {
	popup = window.open('/photos/plan/?ads='+ad_id,'popup', 'width=620,height=520,scrollbars=yes');
	popup.focus();	
}

function open3dPopup(ad_id) {
	popup = window.open('/photos/plan/?ads='+ad_id+'&type=3dplan','popup', 'width=620,height=520,scrollbars=yes');
	popup.focus();	
}
*/

function openSms(){
		popup = window.open('/help/addandmanage/smsPrice/','popup','width=620,height=520,scrollbars=yes');
		popup.focus();	
	}

function loadPlanImage(adID){
	Ext.Ajax.request({
		url: '/ajax/getAdvert2dPlan.php',
		success: function(response, options) {
				  var res = Ext.decode(response.responseText);
				  $('planImage').src = res.url;
				  $('planImage').style.display = "block";
				},
		failure: function(){},
		headers: {},
		params: {ad_id: adID}
	});
}

function hideFilters(){
	$("advancedSearchForm_flat").style.display = 'none';
	$("advancedSearchForm_building_complex").style.display = 'none';
	var olinks = $("searchPanelSwitch").getElementsByTagName("SPAN");
	olinks[0].style.display = "";
	olinks[1].style.display = "none";
}
function setAdvertObjectType(type) {
	try {
		$('object_type').value = type;

		if ($('object_type')!=null){
		$('object_type').value = type;

		if(type == 'flat') {
			$('filter_price_star').style.display = "none";
			$('filter_price_notice').style.display = "none";
			$('object_type_link_flat').className = "act";	
			$('object_type_link_building_complex').className = "";	
			if($("advancedSearchForm_building_complex").style.display!='none') {
				$("advancedSearchForm_building_complex").style.display = 'none';
				$("advancedSearchForm_flat").style.display = 'block';
			}
			
	//		$('currency_flat').style.display = ''; 
	//		$('currency_building_complex').style.display = 'none';
				
			var currency_arr = Array();
			currency_arr[0] = 'тыс. руб.';
			currency_arr[1] = 'тыс. дол.';
			currency_arr[2] = 'тыс. евро';			
				
		} else if(type == 'building_complex') {
			$('filter_price_star').style.display = "";
			$('filter_price_notice').style.display = "";
			$('object_type_link_flat').className = "";	
			$('object_type_link_building_complex').className = "act";
			if($("advancedSearchForm_flat").style.display!='none') {
				$("advancedSearchForm_flat").style.display = 'none';
				$("advancedSearchForm_building_complex").style.display = 'block';
			}
			
			//$('currency_flat').style.display = 'none'; 
			//$('currency_building_complex').style.display = '';
			var currency_arr = Array();
			currency_arr[0] = 'руб.';
			currency_arr[1] = 'дол.';
			currency_arr[2] = 'евро';				
		}
		
		var options = $('currency').options;
		for(i=0; i<options.length; i++) {
			options[i].text = currency_arr[i];	
		}
		
		var olinks = $("searchPanelSwitch").getElementsByTagName("SPAN");
		switch(type){
			case 'flat':
				var oForm = $("advancedSearchForm_flat");
			break;
			
			case 'building_complex' :
				var oForm = $("advancedSearchForm_building_complex");
			break;	
		}
		
		if(oForm.style.display!="none"){
			olinks[0].style.display = "none";
			olinks[1].style.display = "";
		}
		else {
			olinks[0].style.display = "";
			olinks[1].style.display = "none";
		}
	}	
} catch ( e ) {  }

}

function lockMetres(type) {

	switch(type) {
		case 'flat':
			$('kitchen_from').value="";
			$('kitchen_to').value="";
			$('kitchen_from').disabled="disabled"
			$('kitchen_to').disabled="disabled"
		break;
		
		case 'building_complex':
			$('meters_kitchen_from').value="";
			$('meters_kitchen_to').value="";
			$('meters_kitchen_from').disabled="disabled"
			$('meters_kitchen_to').disabled="disabled"
		break;
	}
}
function delPayment(p_id){
	if(confirm('Вы действительно хотите удалить платеж?')) 
	Ext.Ajax.request({
		url: '/ajax/actvsPayment.php',
		callback: function (options, success, response) {
			var res = Ext.decode(response.responseText);					
			if (res.success==true){
				document.location.reload();						
			}else alert('Ошибка при удалении платежа'); 	
		},
		params: {id:p_id,op:'delete'}		
	});		
		
}

function checkFreePlanning() {
	if($('free_planning_flat').checked){
		Ext.select('#kitchen_from,#kitchen_to').set({value: '',disabled: 'disabled'}).addClass('no_activ');
	} else {
		Ext.select('#kitchen_from,#kitchen_to').removeClass('no_activ').each(function(i){
			i.dom.removeAttribute('disabled');
		});
	}
	
	if($('free_planning_building_complex').checked){
		Ext.select('#meters_kitchen_from,#meters_kitchen_to').set({value: '', disabled: 'disabled'}).addClass('no_activ');
	} else {
		Ext.select('#meters_kitchen_from,#meters_kitchen_to').removeClass('no_activ').each(function(i){
			i.dom.removeAttribute('disabled');
		});
	}
}

function checkFreePlanningAdd() {
	if($('id_free_planning').checked){
		Ext.select('#id_meters_kitchen_from,#id_meters_kitchen_to').each(function(i){
			i.set({value: '',disabled: 'disabled'});
			i.dom.value='';			
		});
	} else {
		Ext.select('#id_meters_kitchen_from,#id_meters_kitchen_to').each(function(i){
			i.dom.removeAttribute('disabled');
		});
	}	
}

/*
function switchAdListMode(type){
	
	switch(type) {
		case 'list':
			$('ad_map').style.display = 'none';
			$('ad_list').style.display = '';
			//if($('banners_column') != null) {
			try{
				$('banners_column').style.display = '';
			} catch (e) {}

		//	}
			$('ad_map_link').className = '';
			$('ad_list_link').className = 'act';
		break;
		
		case 'map':
			//if($('ad_map').innerHTML == '') {
				//loadAdsMap();
			///}
			$('ad_map').style.display = '';		
			$('ad_list').style.display = 'none';
			try{
				$('banners_column').style.display = 'none';
			} catch (e) {}
			$('ad_map_link').className = 'act';
			$('ad_list_link').className = '';
		break;
	}
}
*/
	
function openActionsArchivePopup() {
	popup = window.open('/psellerAdverts/actionsArchive/', 'popup', 'width=1200,height=700');
	popup.focus();	
	}

function sendMapsearchForm() {
	path = $('default_path').value + 'search' + '/region=' + $('mapsearch_region').value + '/sity=' + $('mapsearch_sity').value;
	
	if($('street_id').value != '') {
		path += '/street=' + $('street_id').value;
}

	 path += '/street_title=' + $('id_mapStreet').value;

	 if($('id_id_informap').value != '') {
		path += '/building=' + $('id_id_informap').value;
	 } else {
    	path += '/own_building=' + $('id_mapHouseNr').value;
	 }
	 
	 path += '/';
	 
	document.location = path;
	 
	return false;
}

function mapsearchSelectRegionController() {
	var region_id = $('mapsearch_region').value;
	
	if(region_id == -1) {
		return false;
	}
	
	$('mapsearch_sity').disabled = false;
	
	Ext.Ajax.request({
		url: '/ajax/mapsearch_filter_controller.php',
		callback: function (options, success, response) {
			var res = Ext.decode(response.responseText)
			$('sity_select_container').innerHTML = res.text;	
		},
		params: {action:'get_sity',parent:region_id}		
	});		
	
	// delete it
//$('id_mapStreet').disabled = false;
	
}


function mapsearchSelectSityController() {
	if( $('mapsearch_sity').value != '' && Number($('mapsearch_sity').value)>-1) {
		$('id_region_Informap_Id').value =  $('mapsearch_sity').value;
		$('id_mapStreet').disabled = false;
	}
	$('id_mapStreet').value='';
	$('street_id').value='';
	$('id_mapHouseNr').value='';
	$('id_id_informap').value='';
}

function actionListShow(){
	document.getElementById('actionzz').style.display = 'block';
	return false;
}

function actionListHide(){
	document.getElementById('actionzz').style.display = 'none';
	return false;
}

function secShow(){
	document.getElementById('secondpop').style.display = 'block';
	return false;
}

function secHide(){
	document.getElementById('secondpop').style.display = 'none';
	return false;
}

function hideGeoForm(){
	elHide('idPopupGeo');
	$('geo_form_link').style.display = "";	
	$('geo_form').style.display = "none";
	resetGeoFilter('geo_filter');
	controlGeoSubmit();
	return false;
}

function initGeoForm(){
	hideGeoForm();
}

function resetGeoFilter(formName) {
	elements=$(formName).elements;
	$(formName).reset();
	for (el in elements) {
		if (elements[el] && elements[el].name) {
				if (elements[el].type=='checkbox') {
					elements[el].checked=false;
				}
		}
	}

	$('geo_logic_or').checked='checked';
	$('geo_logic_and').checked='';
	
	$('geo_distance').selectedIndex = 0;
}

function showGeoForm(){
	$('geo_form_link').style.display = "none";	
	$('geo_form').style.display = "";
	return false;
}

function submitGeoFilter(form) {
	var searchstring = createFilter(form);
	pos = document.location.href.search('geo_');
	if(pos !== -1) {
		base_string = document.location.href.substr(0,pos);
	}	else {
		base_string = document.location.href;
	}
	
	document.location = base_string + searchstring;
	return false;
}

function controlGeoSubmit() {
	el = $('geo_filter');
	is_checked = false;
	if(el) {
				for (i=0; i<el.elements.length; i++){
					if (el.elements[i].type=='checkbox' && el.elements[i].checked) {
						is_checked = true;
					}
				}
	}
	
	if(is_checked) {
		$('geo_filter_submit').disabled = false;
	} else {
		$('geo_filter_submit').disabled = true;
	}
}

function controlRwStation(){
	if($('region_206') && $('region_206').className === 'act') {
		$('rwstation').style.display = "";
	} else {
		$('rwstation').style.display = "none";		
	}
}

function hideExtGeoMapMessage(){
	elHide('extMapMessage');
}

function showExtGeoMap(){
	elHide('extMapMessage');
	elHide('blockAdressText');
	if ($('cont_street').innerHTML.length>10){
		var savedStreet=$('id_mapStreet').value;
		$('cont_street_dop').innerHTML=$('cont_street').innerHTML;
		$('cont_street').innerHTML='';
		$('id_mapStreet').value=savedStreet;
		var savedHouse=$('id_mapHouseNr').value;
		$('cont_house_dop').innerHTML=$('cont_house').innerHTML;
		$('cont_house').innerHTML='';
		$('id_mapHouseNr').value=savedHouse;
	}
	$('extMapGeoAddress').innerHTML=$('id_mapStreet').value+', '+$('id_mapHouseNr').value;
	showExtMapGeoGMap();
	elShow('blockAdressMap');
}

function hideExtGeoMap(){
	if ($('cont_street_dop').innerHTML.length>10){
		var savedStreet=$('id_mapStreet').value;
		$('cont_street').innerHTML=$('cont_street_dop').innerHTML;
		$('cont_street_dop').innerHTML='';
		$('id_mapStreet').value=savedStreet;
		var savedHouse=$('id_mapHouseNr').value;
		$('cont_house').innerHTML=$('cont_house_dop').innerHTML;
		$('cont_house_dop').innerHTML='';
		$('id_mapHouseNr').value=savedHouse;
	}
	$('extMapGeoAddress').innerHTML='';
	elHide('blockAdressMap');
	elShow('blockAdressText');
}

function checkExtMapGeo(){
	if ($('cont_street').innerHTML.length>10){
		if (!$('id_region_Informap_Id') || $('id_region_Informap_Id').value=='' || Number($('id_region_Informap_Id').value)<0 || $('id_region_Informap_Id').value=='null') {
			elHide('extMapMessage');
			return true;
		}
		if ($('id_id_informap').value==='' && $('id_mapStreet').value!='' && $('id_mapHouseNr').value!=''){
			elShow('extMapMessage');
		} else {
			elHide('extMapMessage');
		}
	}
}

function changeExtMapGeoAdress(){
	elHide('extMapGeoAdressText');
	elShow('extMapGeoAdressForm');
	$('extMapGeoButtonNext').className='';
}

function saveExtMapGeoAdress(){
	if ($('id_mapStreet').value=='' || $('id_mapHouseNr').value=='') {
		alert('Заполните поля адреса.');
		return false;
	}
	$('extMapGeoAddress').innerHTML=$('id_mapStreet').value+', '+$('id_mapHouseNr').value;
	showExtMapGeoGMap();
	elHide('extMapGeoAdressForm');
	elShow('extMapGeoAdressText');
	$('extMapGeoButtonNext').className='greenBrd';
}

function saveExtMapGeo(){
	$('id_informap_tmp_id').value=frames["extMapGeoGMap"].document.getElementById('new_id_informap').value;
	alert('Координаты объекта сохранены.');
}

function showExtMapGeoGMap(){
	$('extMapGeoGMap').src= '/ajax/map_new_point.php?settlement='+$('id_region_Informap_Id').value+'&street='+$('street_id').value;
}

function isOnlyRoom(el){
	if (el.value=='комната'){
		$('id_neighbours').disabled = false;
	}else{
		$('id_neighbours').value = '';
		$('id_neighbours').disabled = true;
	}
}


function switchSelectAll(id){
	var el, label;
	el=$(id+'_selectall');
	label=$(id+'_selectall_text');
	if (!el.checked){
		selectAll(id, false);
		label.innerHTML='Отметить все объявления';
	} else {
		selectAll(id, true);
		label.innerHTML='Снять выделение';
	}

}


function goToMultiAddStep2(el){
	document.location = '/addMultiAdvert/step2/?category=' + el.value;
}

function formAddMultiSubmit(el) {
	var params = '';
	Ext.Ajax.request({
		url: '/ajax/adMultiCreate.php',
		success: function(response, options) {
		var res = Ext.decode(response.responseText);
			if (res.success) {
				goTo(res.url);
			} else if (!res.success) {
				if(res.message) alert(res.message);
			}
		},
		failure:  function(response, options) {
			alert('Ошибка связи. Попробуйте повторить позже.');
			return false;
		},
		params: params
	});
	
	return false;
}

function prolongMultiAdvert(advert_id){
	return multiAdvertOperations(advert_id, 'prolong');
}

function multiAdvertOperations(advert_id, action) {
	Ext.Ajax.request({
		url: '/ajax/multiAdvertOperations.php',
		success: function(response, options) {
		var res = Ext.decode(response.responseText);
			if (res.success) {
				if(res.message) alert(res.message);
			} else if (!res.success) {
				if(res.message) alert(res.message);
			}
		},
		failure:  function(response, options) {
			alert('Ошибка связи. Попробуйте повторить позже.');
			return false;
		},
		params: { action: action,
						  advert_id: advert_id
		}  
	});
	return false;
}

function deleteMultiAdvert(id) {
	if(confirm('Вы действительно хотите удалить объявление?')) goTo('/ajax/deleteMultiAd.php?id='+id);
}

function multiAdvertSendController(response){
	var res=response;
	if(res.success){
		goTo(res.url);
	} else {
		alert('Ошибка. ' + res.message);	
		var btn;
		var edit = false;		
		if (!(btn = $('save_button'))){
			btn = $('edit_button');
			edit = true;
		}		
		if (edit){
			btn.value = 'Сохранить';
			Ext.get('edit_button').parent('div').replaceClass('btn-b', 'btn-a');
		}else{	
			btn.value = 'Подать';
			Ext.get('save_button').parent('div').replaceClass('btn-b', 'btn-a');
		}
		btn.disabled = false;		
	}
}

