window.reEmail = /^([\w\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/i;
window.reEmail1 = /^([a-z0-9\.\-\_])+\@(([a-zA-Z0-9\-\_])+\.)+([a-zA-Z0-9]{2,4})+$/i;

var w3cDOM = (typeof document.getElementById != "undefined" && typeof document.createElement != "undefined") ? true : false;

// Fake window.onLoad.
var initJS = function() {};

function listenEvent (target, type, listener) {
    if( target==window && type=='load' ) {
        var tmp = initJS;
        initJS = function() {tmp(); listener();};
    } else if (typeof target.addEventListener != "undefined") {
        target.addEventListener (type, listener, false);
    } else if (typeof target.attachEvent != "undefined") {
        target.attachEvent ("on" + type, listener);
    }
}

function unlistenEvent (target, type, listener) {
    if (typeof target.removeEventListener != "undefined") {
        target.removeEventListener (type, listener, false);
    } else if (typeof target.detachEvent != "undefined") {
        target.detachEvent ("on" + type, listener);
    }
}


window.reEmail = /^([\w\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/i;

function restorePassword(email, success, error) {
    new Ajax.Request('/plugins/ajax/restore_password.php', {
        parameters : 'email=' + email.value,
        onSuccess  : function(transport, json) {
            $('messageRestore').innerHTML = (json.success) ? '<span style="color:green;">'+success+'</span>' : '<span class="messageError">'+error+'</span>';
        }
    });
}

function doLogin(message, msg_blocked, msg_denied) {
    new Ajax.Request('/plugins/ajax/login.php', {
        parameters : 'login=' + $('authEmail').value + '&password=' + $('authPassword').value,
        onSuccess  : function(transport, json) {
            if (json.success==1) {
                document.location = '/userarea/list/';
            } else if (json.success==2) {
                if ($('messageLogin')) {
                    $('messageLogin').innerHTML = '<span class="messageError">'+msg_blocked+'</span>';
                } else {
                    alert(msg_blocked);
                }
            } else if (json.success==3) {
                if ($('messageLogin')) {
                    $('messageLogin').innerHTML = '<span class="messageError">'+msg_denied+'</span>';
                } else {
                    alert(msg_denied);
                }
            } else {
                if ($('messageLogin')) {
                    $('messageLogin').innerHTML = '<span class="messageError">'+message+'</span>';
                } else {
                    alert(message);
                }
            }
        }
    });
}

function doLoginHeader(message, msg_blocked, msg_denied) {
    new Ajax.Request('/plugins/ajax/login.php', {
        parameters : 'login=' + $('authEmailHeader').value + '&password=' + $('authPasswordHeader').value,
        onSuccess  : function(transport, json) {
            if (json.success==1) {
                document.location = '/userarea/list/';
            } else if (json.success==2) {
                if ($('messageLogin')) {
                    $('messageLogin').innerHTML = '<span class="messageError">'+msg_blocked+'</span>';
                } else {
                    alert(msg_blocked);
                }
            }  else if (json.success==3) {
                if ($('messageLogin')) {
                    $('messageLogin').innerHTML = '<span class="messageError">'+msg_denied+'</span>';
                } else {
                    alert(msg_denied);
                }
            } else {
                if ($('messageLogin')) {
                    $('messageLogin').innerHTML = '<span class="messageError">'+message+'</span>';
                } else {
                    alert(message);
                }
            }
        }
    });
}

function getEnums(parent, element, selected, first, onComplete) {
    new Ajax.Request('/plugins/ajax/enums.php', {
        parameters : 'name=' + parent,
        onSuccess : function(transport, json) {
            var el;
            var select = $(element);
            select.innerHTML = '';
            if (first !== undefined && first !== null) {
                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);
            }
            if (typeof onComplete == "function") {
            	onComplete();
            }
        }
    });
}

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 showHideFullBlock(){
    if(document.getElementById('smallBlock').style.display=='block'){
        document.getElementById('smallBlock').style.display='none';
    }else{
        document.getElementById('smallBlock').style.display='block';
    }
    if(document.getElementById('fullBlock').style.display=='block'){
        document.getElementById('fullBlock').style.display='none';
    }else{
        document.getElementById('fullBlock').style.display='block';
    }
}

function toggle(el, display) {
    if (typeof(el) == 'string') el = $(el);
    el.style.display = (el.style.display == 'none') ? '' : 'none';
}


function filterString(event) {
    var keyCode = (event.charCode) ? event.charCode : event.keyCode;
    return ((keyCode == 46) || (keyCode == 32) || (keyCode == 37) || (keyCode == 39) || (keyCode == 8) || (keyCode == 13) || (keyCode == 37) || (keyCode == 39) || (keyCode >= 65 && keyCode <= 90) || (keyCode >= 97 && keyCode <= 122) || (keyCode >= 1040 && keyCode <= 1103));
}

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

function filterVolume(event) {
    var keyCode = (event.charCode) ? event.charCode : event.keyCode;
    if(event.currentTarget){
    	targetElem=event.currentTarget;
    }else{
    	targetElem=event.srcElement;
    }
    if(targetElem.value.length==1){
        return (keyCode == 44 || keyCode == 46 || keyCode==8); // . or , 
    } else if (targetElem.value.length < 3) {
    	return ( (keyCode == 0) || (keyCode == 8) || (keyCode == 9) || (keyCode > 47 && keyCode < 58));
    } else {
    	return ( (keyCode == 0) || (keyCode == 8) || (keyCode == 9));
    }
}

function filterColor(event) {
    var keyCode = (event.charCode) ? event.charCode : event.keyCode;
    return ((keyCode == 0) || (keyCode == 8) || (keyCode == 13)  || (keyCode == 32) || (keyCode == 45) || (keyCode >= 1040 && keyCode <= 1103));
}

function filterVIN(event) {
    var keyCode = (event.charCode) ? event.charCode : event.keyCode;
    return ((keyCode == 46) || (keyCode == 0) || (keyCode == 8) || (keyCode == 9) || (keyCode == 37) || (keyCode == 39) || (keyCode > 47 && keyCode < 58) || (keyCode >= 65 && keyCode <= 90) || (keyCode >= 97 && keyCode <= 122));
}

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

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

function setCookie(cookieName, cookieValue, nDays, sPath) {
    var today = new Date();
    var expire = new Date();
    if (nDays == null || nDays == 0) nDays = 1;
    if (sPath == null) sPath = '/';
    expire.setTime(today.getTime() + 3600000 * 24 * nDays);
    document.cookie = cookieName + "=" + escape(cookieValue) +
        (cookieDomain ? ";domain=" + cookieDomain : "") +
        ";expires=" + expire.toGMTString() + ';path=' + sPath;
}

function showPhoto(uri, caption, num) {
    $('imgPhotoPreview').src = uri;
    $('captionPhoto').innerHTML = caption;
    $('imgPhotoPreviewHref').href = uri.replace('-large.','-original.');
    printLink=$('print-link').href;
    if(printLink.indexOf('photonum')==-1){
    	if(printLink[printLink.length-1]=='/'){
    		$('print-link').href+= 'photonum/' + num + '/';
    	}else{
    		$('print-link').href+= '/photonum/' + num + '/';
    	}
    }else{
    	$('print-link').href = $('print-link').href.replace(/photonum.*/,'') + 'photonum/' + num + '/';
    }
}

function sendIncorrectInfo(adId) {
    var reason   = $('incorrect-reason');
    var comments = $('incorrect-comments');

    new Ajax.Request('/plugins/ajax/incorrect.php', {
        parameters : 'reason=' + reason.value + '&comments=' + comments.value + '&adid=' + adId,
        onSuccess  : function(transport, json) {
            if (json && json.message) {
                alert(json.message);
            } else {
                alert('Ошибка при отправке сообщения');
            }
            reason.value = '';
            comments.value = '';
            $('warningBlock').style.display = 'none';
        }
    });
}

function sendMessageToAuthor(adID) {
    var oName = $('feedbackName');
    var oEmail = $('feedbackEmail');
    var oMessage = $('feedbackMessage');
    var oPrice = $('feedbackPrice');
    var oCaptcha = $('feedbackCaptcha');
    var oCopy = $('feedbackCopy');
    var adID = $('adID');

    if (oName.value.replace(/\s/, '').length == 0) {
        alert('Укажите Ваше имя!');
        return false;
    }

    if (!reEmail.test(oEmail.value)) {
        alert('Укажите Ваш e-mail!');
        return false;
    }

    if (oMessage.value.replace(/\s/, '').length == 0) {
        alert('Укажите Ваше сообщение!');
        return false;
    }

    if (oCaptcha.value.replace(/\s/, '').length == 0) {
        alert('Укажите код антиспама!');
        return false;
    }

    new Ajax.Request('/plugins/ajax/send_feedback.php', {
        parameters : 'name='    + oName.value    + '&' +
        'ad='      + adID.value     + '&' +
        'email='   + oEmail.value   + '&' +
        'message=' + oMessage.value + '&' +
        'price='   + oPrice.value   + '&' +
        'captcha=' + oCaptcha.value + '&' +
        'copy='    + oCopy.checked,
        onSuccess : function(transport, json) {
            if (json.success) {
                alert('Ваше сообщение отослано автору объявления');
                document.location = document.location ;//+ '?rand='+Math.random();
            } else if (!json.captcha) {
                alert('Укажите корректный код антиспама');
            } else {
                alert('Неизвестная ошибка');

            }
        }
    });
}
function addCompanySendMessage() {
    var oCompanyName = $('company_name');
    var oCompanyAddress = $('company_address');
    var oContactPhone = $('contact_phone');
    var oContactEmail = $('contact_email');
    var oContactPerson = $('contact_person');
    var oDescription = $('company_description');
    var oCaptcha = $('captcha');
    var oCategory = $('category');
    var oRegion = $('region');
    
    if (oCompanyName.value.replace(/\s/, '').length == 0) {
        alert('Укажите название компании!');
        return false;
    }
    
    if (oCompanyAddress.value.replace(/\s/, '').length == 0) {
        alert('Укажите адрес компании!');
        return false;
    }

    if (oContactPhone.value.replace(/\s/, '').length == 0) {
        alert('Укажите контактный телефон!');
        return false;
    }

    if (!reEmail.test(oContactEmail.value)) {
        alert('Укажите контактный e-mail!');
        return false;
    }

    if (oDescription.value.replace(/\s/, '').length == 0) {
        alert('Укажите описание видов деятельности организации!');
        return false;
    }
    
    if (oContactPerson.value.replace(/\s/, '').length == 0) {
        alert('Укажите контактное лицо!');
        return false;
    }

    if (oCaptcha.value.replace(/\s/, '').length == 0) {
        alert('Укажите код антиспама!');
        return false;
    }

    new Ajax.Request('/plugins/ajax/add_company.php', {
        parameters : 'company_name='    + oCompanyName.value    + '&' +
        'company_address='   + oCompanyAddress.value   + '&' +
        'contact_phone=' + oContactPhone.value + '&' +
        'contact_email='   + oContactEmail.value   + '&' +
        'contact_person='   + oContactPerson.value   + '&' +
        'description='   + oDescription.value   + '&' +
        'category='   + oCategory.value   + '&' +
        'region='   + oRegion.value   + '&' +
        'captcha=' + oCaptcha.value,
        onSuccess : function(transport, json) {
            if (json.success) {
                alert('Ваше сообщение отправлено');
                document.location = document.location ;//+ '?rand='+Math.random();
            } else if (!json.captcha) {
                alert('Укажите корректный код антиспама');
            } else {
                alert('Неизвестная ошибка');

            }
        }
    });
}


function sendToFriend(message, subject, email, success, errorCapcha, errorSenderEmail, errorRecipientEmail, errorMail) {
    var oSenderName     = $('sendSenderName');
    var oRecipientName  = $('sendRecipientName');
    var oSenderEmail    = $('sendSenderEmail');
    var oRecipientEmail = $('sendRecipientEmail');
    var oComments       = $('sendComments');
    var oAdID           = $('sendAdID');
    var oAdTitle        = $('sendAdTitle');
    var oAdText         = $('sendAdText');
    var oMessage        = $('sendMessage');
    var oSenderVercode  = $('sendervercode');

    if (!reEmail.test(oSenderEmail.value)) {
        alert( errorSenderEmail);
        /*
        oMessage.innerHTML = errorSenderEmail;
        oMessage.style.display = '';
        */
        return false;
    }

    if (!reEmail.test(oRecipientEmail.value)) {
        alert(errorRecipientEmail);
        /*
        oMessage.innerHTML = errorRecipientEmail;
        oMessage.style.display = '';
        */
        return false;
    }

    new Ajax.Request('/plugins/ajax/send_to_friend.php', {
        parameters : 'subject=' + subject + '&email=' + email + '&message=' + encodeURIComponent(message) + '&' +
        'sender_email=' + oSenderEmail.value + '&' +
        'sender_name=' + oSenderName.value + '&' +
        'recipient_email=' + oRecipientEmail.value + '&' +
        'recipient_name=' + oRecipientName.value + '&' +
        'comments=' + oComments.value + '&' +
        'ad_id=' + oAdID.value + '&' +
        'ad_title=' + oAdTitle.value + '&' +
        'ad_text=' + ((oAdText.innerHTML) ? oAdText.innerHTML : '' + '&' +'vercode=' +oSenderVercode.value),
        onSuccess  : function(transport, json) {
            if (json.success) {
                alert(success);
                document.location = document.location + '?rand='+Math.random();
                /*
                oMessage.innerHTML = success;
                oMessage.style.display = '';
                */
            } else {
                if(!json.reason){
                    alert(errorMail);
                }else{
                    if(json.reason=='kapcha'){
                        alert(errorCapcha);
                    }
                }
                /*
                oMessage.innerHTML = errorMail;
                oMessage.style.display = '';
                */
            }
        },
        onFailed : function() {
            alert(errorMail);
            /*
            oMessage.innerHTML = errorMail;
            oMessage.style.display = '';
            */
        }
    });

    return true;
}




function updateUserContactInfo() {
	var oPassword		= $('userinfoPassword');
    var oPasswordRepeat	= $('userinfoConfirm');
    var oName    		= $('userinfoFirstName');
	var oContactPhone	= $('userinfoPhone');
	var oContactMobile	= $('userinfoMobile');
	var oContactICQ		= $('userinfoICQ');
	var oContactStreet	= $('userinfoStreet');
	var oContactSite	= $('userinfoSite');
    //

    //var reSymbols = /^[a-z]+$/i;
    var reSymbols = /^[a-zA-Z0-9]+$/i;

    if( oPassword.value != '' ) {
    	    oPassword.value = oPassword.value.replace(/\s/, '');
    		if (oPassword.value.length < 6) {
        		alert('Пароль должен быть длиннее 5и символов');
        		return false;
    		}

		    if (!reSymbols.test(oPassword.value)) {
		        alert('Пароль может содержать только буквы латинского алфавита и цифры');
		        return false;
    		}
    }

    if (oName.value.length < 1) {
        alert('Введите имя');
        return false;
    }

    if (oName.value.length > 40) {
        alert('Имя превышает допустимые 40 символов. Пожалуйста, введите корректное Имя');
        return false;
    }

    var reName = /^[а-я\w\s\-\']+$/i;
    if(!reName.test(oName.value)){
        alert('Введите корректное имя');
        return false;
    }
    
    var rePhone = /^[\d\-]*$/i;
    if(!rePhone.test(oContactPhone.value)){
        alert('Введите корректный номер контактного телефона');
        return false;
    }
    
    if(!rePhone.test(oContactMobile.value)){
        alert('Введите корректный номер дополнительного телефона');
        return false;
    }
    
    if( oContactPhone.value.length > 20 || oContactMobile.value.length > 20 ) {
		alert('Телефон не может быть длиннее 20 символов');
		return false;
	}
    

	var reICQ = /^\d*$/i;
    if(!reICQ.test(oContactICQ.value)){
        alert('Введите корректный номер ICQ');
        return false;
    }

	if( oContactICQ.value.length > 9 ) {
		alert('ICQ не может быть длиннее 9 символов');
		return false;
	}

	if(oContactStreet.length>100){
        alert('Адрес не может быть длиннее 100 символов');
        return false;
    }

    var reAddress = /^[a-zа-я\-\'\s]*$/i;
    if(!reAddress.test(oContactStreet.value)){
        alert('Введите корректный адрес');
        return false;
    }

    if(oContactSite.value.length>40){
        alert('Адрес сайта не может быть длиннее 40 символов');
        return false;
    }

    var reSite = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/;
	if(!reSite.test(oContactSite.value) && oContactSite.value.length!=0){
		alert('Введите корректный адрес cайта');
		return false;
	}

	return true;
}

function signUp() {
    var params = '';
    var oEmail			= $('authEmail');
    var oPassword		= $('authPassword');
    var oPasswordRepeat	= $('authPasswordRepeat');
    var oAgree    		= $('contactAgree');
    var oSubscribe    		= $('contactSubscribe');
    var oName    		= $('contactFirstName');
    var oContactStreet	= $('contactStreet');
    var oContactSite	= $('contactSite');
    var oContactPhone	= $('contactPhone');
    var oContactMobile	= $('contactMobile');
    var oContactICQ		= $('contactICQ');

    var reSymbols = /^[a-zA-Z0-9]+$/i;

    lockSendButton();


    if (!reEmail1.test(oEmail.value)) {
        oEmail.focus();
        unLockSendButton();
        alert('Укажите корректный email');
        return false;
    }

    oPassword.value = oPassword.value.replace(/\s/, '');

    if (oPassword.value.length < 1) {
        unLockSendButton();
        alert('Введите пароль');
        return false;
    }

    if (oPassword.value.length < 6) {
        unLockSendButton();
        alert('Пароль должен быть длиннее 5и символов');
        return false;
    }

    if (!reSymbols.test(oPassword.value)) {
        unLockSendButton();
        alert('Пароль может содержать только буквы латинского алфавита и цифры');
        return false;
    }

    if (oPassword.value != oPasswordRepeat.value) {
        unLockSendButton();
        alert('Подтвердите пароль');
        return false;
    }

    if (oName.value.length < 1) {
        unLockSendButton();
        alert('Введите имя');
        return false;
    }

    if (oName.value.length > 40) {
        unLockSendButton();
        alert('Имя превышает допустимые 40 символов. Пожалуйста, введите корректное Имя');
        return false;
    }

    var reName = /^[а-я\w\s\-\']+$/i;
    if(!reName.test(oName.value)){
    	unLockSendButton();
        alert('Введите корректное имя');
        return false;
    }

    if(oContactStreet.length>100){
    	unLockSendButton();
        alert('Адрес не может быть длиннее 100 символов');
        return false;
    }

    var reAddress = /^[a-zа-я\-\'\d]*$/i;
    if(!reAddress.test(oContactStreet.value)){
    	unLockSendButton();
        alert('Введите корректный адрес');
        return false;
    }

    if(oContactSite.length>40){
    	unLockSendButton();
        alert('Адрес сайта не может быть длиннее 40 символов');
        return false;
    }

    var reSite = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/;
	if(!reSite.test(oContactSite.value) && oContactSite.value.length!=0){
		unLockSendButton();
		alert('Введите корректный адрес cайта');
		return false;
	}

	var rePhone = /^[\d\-]*$/i;
    if(!rePhone.test(oContactPhone.value)){
    	unLockSendButton();
        alert('Введите корректный номер контактного телефона');
        return false;
    }
    
    if(!rePhone.test(oContactMobile.value)){
    	unLockSendButton();
        alert('Введите корректный номер дополнительного телефона');
        return false;
    }
    
	
	if( oContactPhone.value.length > 20 || oContactMobile.value.length > 20 ) {
		unLockSendButton();
		alert('Телефон не может быть длиннее 20 символов');
		return false;
	}
	
	var reICQ = /^\d*$/i;
    if(!reICQ.test(oContactICQ.value)){
    	unLockSendButton();
        alert('Введите корректный номер ICQ');
        return false;
    }

	if( oContactICQ.value.length > 9 ) {
		unLockSendButton();
		alert('ICQ не может быть длиннее 9 символов');
		return false;
	}


    if (!oAgree.checked) {
        unLockSendButton();
        alert('Для регистрации вы должны согласиться с нашими условиями');
        return false;
    }
    if ($('contactSubscribe').checked) {
        subscribe = 1;
    }

    new Ajax.Request('/plugins/ajax/check_user.php', {
        parameters : 'login=' + oEmail.value + '&' + 'captcha='    + $('contactCaptcha').value,
        onSuccess  : function(transport, json) {
            if (json.success!=0) {
                unLockSendButton();
                if (json.success == 3){
                    $('contactCaptcha').focus();
                    $('contactCaptcha').value='';
                    alert("Неверный код антиспама");
                    regetCaptcha();
                }else{
                    alert('Пользователь с таким e-mail уже существует');
                }
            } else {
                new Ajax.Request('/plugins/ajax/sign_up.php', {
                    parameters : 'password='   + oPassword.value              + '&' +
                    'login='      + oEmail.value                 + '&' +
                    'first_name=' + $('contactFirstName').value  + '&' +
                    //'last_name='  + $('contactLastName').value   + '&' +
                    'phone='      + $('contactPhone').value      + '&' +
                    'mobile='     + $('contactMobile').value     + '&' +
                    'icq='        + $('contactICQ').value        + '&' +
                    'dob='        + $('contactYear').value + '-' + $('contactMonth').value + '-' + $('contactDay').value + '&' +
                    'city='       + $('contactCity').value       + '&' +
                    'street='     + $('contactStreet').value     + '&' +
                    //'building='   + $('contactBuilding').value   + '&' +
                    //'zip='        + $('contactZIP').value        + '&' +
                    //'fax='        + $('contactFax').value        + '&' +
                    'subscribe='  + $('contactSubscribe').checked  + '&' +
                    'site='       + $('contactSite').value		 + '&' +
                    'captcha='    + $('contactCaptcha').value,

                    onSuccess : function(transport, json) {
                        if (json && json.success){
                            unLockSendButton();
                            if (json.success == 2){
                                $('contactCaptcha').focus();
                                $('contactCaptcha').value='';
                                alert("Неверный код антиспама");
                                regetCaptcha();
                            }else{
                                window.location.href='/userarea/?rnd='+Math.random();
                            }
                        } else {
                            alert('Произошла ошибка при регистрации');
                        }

                    },
                    onFailure : function() {
                        unLockSendButton();
                        alert('Неизвестная ошибка');
                    }
                });
            }
        }
    });

    return true;
}



function sendComment(id, docid) {
	
    var oEmail			= $('login');
    var oPassword		= $('password');
    var oBody		= $('body');

    var reSymbols = /[^\w]/i;

    //	lockSendButton();
   
    if (oEmail && !reEmail.test(oEmail.value)) {
        oEmail.focus();
        unLockSendButton();
        alert('Укажите корректный email');
        return false;
    }

    if (oPassword){
        oPassword.value = oPassword.value.replace(/\s/, '');
    }

    if (oPassword && oPassword.value == ''){
        unLockSendButton();
        alert('Введите пароль');
        return false;
    }
    
    if (oBody) {
    	oBody.value = oBody.value.strip();
    	if (oBody.value == '') {unLockSendButton();
	        alert('Введите текст комментария');
	        return false;
    	}
    }

    var params = (oEmail ? {login: oEmail.value, password: oPassword.value, body: oBody.value, parent: id, doc_id: docid} : {body: oBody.value, parent: id, doc_id: docid});

    new Ajax.Request('/plugins/ajax/addcomment.php', {
        parameters : params,
        onSuccess  : function(transport, json) {
            if (json.success == 1) {
                //alert('Комментарий умпешно добавлен');

                document.location = document.location;
                unLockSendButton();
            } else if (json.success == -1) {
                alert('Не введен текст комментария');
                oBody.focus();
            }  else if (json.success == 3) {
                alert('Указанному пользователю запрещен доступ к данной части сайта.');
                oBody.focus();
            } 
            else {
                alert('Неправильный логин/пароль');
                oPassword.focus();
            }
        },
        onFailed : function() {
            unLockSendButton();
            alert('Неизвестная ошибка');
        }
    });

    return false;
}

function regetCaptcha(){
    $('captchaImg').writeAttribute('src','/vendors/kcaptcha/?time=' + Math.random());
}

function regetCaptchaForAd(adId){
    $('captchaImg').writeAttribute('src','/vendors/kcaptcha/index.php?adid='+adId+'&method=feedback&time=' + Math.random());
}

function lockSendButton(){
    //	$('contactSend').up(3).insert(new Element('img', {id: 'ajax-loader',style: 'margin:3px 0 0 10px',src: '/webroot/delivery/pic/ajax-loader.gif'}));
    $('contactSend').value="Отправка";
    $('contactSend').writeAttribute('disabled', 'disabled');
}

function unLockSendButton(){
    //	if($('ajax-loader')) $('ajax-loader').remove();
    $('contactSend').value="Отправить";
    $('contactSend').removeAttribute('disabled');
}

function mainClassifiedCheckboxClick() {
    var ch1 = $('classified-check-1').checked;
    var ch2 = $('classified-check-2').checked;

    if (ch1 && !ch2) {
        $('classified-check-form').action = '/cars/passenger/new/';
    } else if (!ch1 && ch2) {
        $('classified-check-form').action = '/cars/passenger/used/';
    } else {
        $('classified-check-form').action = '/cars/passenger/';
    }
}

function prolongAd(adID) {
    var newDate = new Date();
    newDate = new Date(newDate.valueOf() + 86400000 * 14);
    if (!confirm('Объявление будет вновь опубликовано на сайте до '
        + newDate.getDate() + '.' + (newDate.getMonth() + 1) + '.' + newDate.getFullYear()
        + '. Вы действительно хотите продлить срок действия объявления?')) return false;
    new Ajax.Request('/plugins/ajax/prolong_ad.php', {
        parameters : 'ad_id=' + adID,
        onSuccess : function(transport, json) {
            if (json && json.success) {
                alert('Срок действия объявления продлен');
                document.location.reload();
            } else {
                alert('Произошла ошибка при продлении срока действия объявления');
            }
        }
    });
}


function choosen_actions(ad_id, action) {
    new Ajax.Request('/plugins/ajax/choosen_actions.php', {
        parameters : 'ad_id=' + ad_id + '&action=' + action,
        onSuccess  : function(transport, json) {
            if (json.success==1){
                if(json.action == 'delete')
                {
                    $('choosen_actions_cont').innerHTML = '<a href="#" onclick="choosen_actions('+ json.ad_id +', \'add\');"><span class="ico-fav"></span> В избранное</a>';
                }
                else
                {
                    $('choosen_actions_cont').innerHTML = '<a href="#" onclick="choosen_actions('+ json.ad_id +', \'delete\');"><span class="ico-fav del-fav"></span> Удалить из избранного</a>';
                }
                if(json.count > 0)
                {
                    if(json.type == 1)
                    {
                        $('choosed_count').innerHTML = '<a href="/userarea/choosed/">Избранное: ' + json.count + '</a>';
                    }
                    else
                    {
                        $('choosed_count').innerHTML = '<a href="/choosed/">Избранное: ' + json.count + '</a>';
                    }
                }
                else
                {
                    $('choosed_count').innerHTML = 'Избранное: 0';
                }
            }else{
                alert('Произошла ошибка');
            }
        }
    });
    return false;
}


function choosen_deleteAd(ad_id) {
    if (!confirm('Подтвердите удаление')) return false;
    new Ajax.Request('/plugins/ajax/choosen_actions.php', {
        parameters : 'ad_id=' + ad_id + '&action=delete',
        onSuccess  : function(transport, json) {
            if (json.success==1){
                if(json.count > 0)
                {
                    $('ad-row-' + ad_id + '-1').parentNode.removeChild($('ad-row-' + ad_id + '-1'));
                    if(json.type == 1)
                    {
                        $('choosed_count').innerHTML = '<a href="/userarea/choosed/">Избранное: ' + json.count + '</a>';
                    }
                    else
                    {
                        $('choosed_count').innerHTML = '<a href="/choosed/">Избранное: ' + json.count + '</a>';
                    }

                    $('choosen_count_list').innerHTML = json.count;
                    alert('Объявление удалено');
                }
                document.location.reload();                
            }else{
                alert('Произошла ошибка');
            }
        }
    });
}

function choosen_clearList() {
    if (!confirm('Вы действительно хотите очистить список избранного? Данная операция необратима.')) return false;
    new Ajax.Request('/plugins/ajax/choosen_actions.php', {
        parameters : 'ad_id=0&action=delete_all',
        onSuccess  : function(transport, json) {
            if (json.success==1){
                document.location.reload();
            }else{
                alert('Произошла ошибка');
            }
        }
    });
}

function regionsSelectMain()
{
    new Ajax.Request('/plugins/ajax/regions_options.php', {
        onSuccess: function(transport) {
            var str = '<select id="main-regions-selector-select">';
            for (var i in transport.responseJSON) {
                str += '<option value="' + i + '" domain="' + transport.responseJSON[i].domain + '"';
                if (transport.responseJSON[i].region == $('main-regions-current').innerHTML) {
                    str += ' selected="selected"';
                }
                str += '>' + transport.responseJSON[i].region + '</option>';
            }
            str += '</select>';
            $('main-regions-selector').innerHTML = str;
            $('main-regions-selector-select').onchange = function() {
                var select = $('main-regions-selector-select');
                var domain = select.options[select.selectedIndex].attributes.getNamedItem('domain').nodeValue;
                document.location.href = "http://" + domain + "/";
            }
        }
    });
    return false;
}

function sendFeedback() {
	var subject = $("feedbackSubject").value;
	var fio = $("feedbackFio").value;
	var email = $("feedbackEmail").value;
	var phone = $("feedbackPhone").value;
	var msg = $("feedbackMsg").value;

	if( subject == 0 || subject == "0" ) {
		alert( "Выберите тему письма" );
		return false;
	}

	if ( fio == '' ) {
		alert( "Вы должны указать ФИО" );
		return false;
	}

	if ( !reEmail.test( email ) ) {
        alert('Укажите корректный email');
        return false;
    }

    if ( msg == '' ) {
		alert( "Вы должны ввести сообщение" );
		return false;
	}

	new Ajax.Request('/plugins/ajax/feedback.php', {
		method: "post",
        parameters : {
        	subject: 	subject,
			fio: 		fio,
			email: 		email,
			phone: 		phone,
			msg: 		msg
        },
        onSuccess  : function(transport, json) {

            if (json.success!=0) {
				alert( "Ваше сообщение было отправлено администрации сайта" );
				document.getElementById( "feedbackForm" ).reset();
            } else {
               alert( "Произошла ошибка, попробуйте отправить позже" );
            }
        }
    });
}



function getAbsolutePos(el)
	{
	var r = { x: el.offsetLeft, y: el.offsetTop };
	if (el.offsetParent)
		{
		var tmp = getAbsolutePos(el.offsetParent);
		r.x += tmp.x;
		r.y += tmp.y;
		}
	return r;
	}


var currentHint=false;
var hintTimeOut=false;

function showHint(id){
	hintTimeOut=true;
	var savedCurrentHint=currentHint;
	if (currentHint) {
		hideHint();
	}
	if (id!=savedCurrentHint){
		if (document.onclick==undefined) {
			document.onclick = hideHintTimeOut;
		}
		$('hintBlockContent').innerHTML=$(id).innerHTML;
		position=getAbsolutePos($(id).parentNode);
		$('hintBlock').style.left=position.x+40+"px";
		$('hintBlock').style.top=position.y+10+"px";
		$('hintBlock').style.display="block";
		currentHint=id;
	}
}

function hideHintTimeOut(){
	setTimeout('hideHintT()',100);
}

function hideHintT(){
	if (currentHint && !hintTimeOut) {
		$('hintBlock').style.display="none";
		currentHint=false;
	}
	hintTimeOut=false;
}

function hideHint(){
	if (currentHint) {
		$('hintBlock').style.display="none";
		currentHint=false;
	}
}

function goMainAutoAds() {
	var action;
	var ch1 = $('filter-new').checked;
	var ch2 = $('filter-used').checked;

	if (ch1 && !ch2) action = '/cars/passenger/new/?search';
	else if (!ch1 && ch2) action = '/cars/passenger/used/?search';
	else action = '/cars/passenger/?search';

	if( $('filter-make').value != 0 ) {
		action += '&make=' + $('filter-make').value;
	}

	if( $('filter-model').value != 0 ) {
		action += '&model=' + $('filter-model').value;
	}

	if( $('filter-price-from').value != -1 && $('filter-price-from').value != "" && $('filter-price-from').value != "от" ) {
		action += '&price-from=' + $('filter-price-from').value;
	}

	if( $('filter-price-to').value != -1 && $('filter-price-to').value != ""  && $('filter-price-to').value != "до") {
		action += '&price-to=' + $('filter-price-to').value;
	}

	if( ( parseInt( $('filter-price-to').value ) < parseInt( $('filter-price-from').value ) ) && ( parseInt( $('filter-price-to').value ) != -1 && parseInt( $('filter-price-from').value ) != -1 && parseInt( $('filter-price-to').value ) != "NaN" && parseInt( $('filter-price-from').value ) != "NaN") ) {
		alert( 'Неверно указаны границы стоимости' );
		return false;
	}

	action += '&price-currency=' + $('filter-price-currency').value;

	var regions = $( 'filter-region' );
	if( regions.value != 0 ) for( var i=0; i<regions.options.length; i++ )
		if( regions.options[ i ].selected ) action = 'http://' + regions.options[ i ].getAttribute( "domain" ) + action;

	document.location.href = action;	
	return false;
}

function getEnumsPrice(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 !== undefined && first !== null) {
                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].data;
                if (selected) el.selected = (selected == json.items[i].id);
                el.innerHTML = json.items[i].data;
                select.appendChild(el);
            }
        }
    });
}