/**
 *
 * Full rеgistration users
 *
 * @subpackage users
 * @name   userFullRegistration
 * @last 03.07.2009
 *
 **/

var redirect_status = '';

/**
 *
 * Fill selection element list of values
 * TODO: Pass keys for data parameters (c_id, c_descr)
 * @subpackage users
 * @name   fillSelect
 * @last 07.08.2009
 * @params
 * 			selectId - string 		- attribute 'id' of selection element
 * 			data - array of objects - array of objects with properties c_id & c_descr
 * 			dataFields - array of strings - array of strings for data field names
 * 			preItems - object 		- has items for pre-insert in selection element
 * 			selItemValue - integer 	- value of selected option
 * 			fNotClear - boolean (default=false) - flag pointed to erase list (false) or not (true)
 *
 *
 */


function tugglePhotoRefsCode() {

    jQuery('#guiPhotoRefsCode').toggle("slow", function () {
        if (jQuery('#guiImgArrowCodeBlog').attr('src') == '/public/img/arrowUp.gif') {
            jQuery('#guiImgArrowCodeBlog').attr('src','/public/img/arrowDown.gif');
        } else{
            jQuery('#guiImgArrowCodeBlog').attr('src','/public/img/arrowUp.gif');
        }
    });

}

function fillSelect(selectId, data, dataFields, preItems, selItemValue, fNotClear) {
    if (!fNotClear) {
        jQuery.each(jQuery('#' + selectId + ' > option'), function() {
            jQuery(this).remove();
        });
    }

    jQuery.each(preItems, function(key, val) {
        jQuery('#' + selectId).append(new Option (val, key));
    });

    if (data.length) {
        for (var i = 0; i < data.length; i++) {
            jQuery("<option>").attr("value", data[i][dataFields[0]])
            .text(data[i][dataFields[1]])
            .appendTo('#' + selectId);
        //alert(data[i][dataFields[1]]);
        // var option = new Option (data[i][dataFields[1]], data[i][dataFields[0]]);
        // jQuery('#' + selectId).add(option);
        }
    }

    if(selItemValue != undefined) {
        jQuery.each(jQuery('#' + selectId + ' > option'), function() {
            if (jQuery(this).val() == selItemValue) {
                jQuery(this).attr('selected', 'true');
            }
        });
    }
}

function chngPwdKeyUp(min) {
    var firstEl = jQuery('#guiStrPassword').val();
    var secondEl = jQuery('#guiStrPassword2').val();

    var firstElErr = document.getElementById('guiStrPasswordMsg');
    var firstElErr2 = document.getElementById('guiStrPasswordMsg2');
    var secondElErr = document.getElementById('guiStrPassword2Msg');

    if (firstEl.length < min){
        firstElErr2.style.display = 'block';
        firstElErr.style.display = 'none';
        if (firstEl == '' || (firstEl != secondEl)) {
            secondElErr.style.display = 'none';
        }
    } else if (firstEl.length >= min) {
        firstElErr.style.display = 'inline';
        firstElErr2.style.display = 'none';
        if (firstEl == secondEl) {
            secondElErr.style.display = 'inline';
        } else {
            secondElErr.style.display = 'none';
        }
    }


}

function chngPwdSuccess() {
    var validFirstElem = (document.getElementById('guiStrPasswordMsg').style.display == 'inline');
    var validSecondElem = (document.getElementById('guiStrPassword2Msg').style.display == 'inline');
    if (validSecondElem && validFirstElem) {
        return true;
    }
    return false;
}

// /user/pay-history - нажатие на ссылку "приостановить заявку"
function pausePHOrder(order_id, catalog_ident) {
    jQuery.post(
        '/user/pause-pay-history-order', {
            'id_order' 	: order_id
        }, function(data) {
            if (data['code']) {

            } else {
                window.location.href = '/user/pay-history/' + catalog_ident;
            }
        }, 'json'
        );

    return false;
}
// /user/paid-advertising - нажатие на ссылку "приостановить заявку"
function pausePLHOrder(order_id) {
    jQuery.post(
        '/user/pause-pay-limit', {
            'id_order' 	: order_id
        }, function(data) {
            if (data['code']) {

            } else {
                window.location.href = '/user/paid-advertising/';
            }
        }, 'json'
        );

    return false;
}

// /user/pay-history/ - нажатие на ссылку "отменить/удалить заявку"
function deletePHOrder(order_id, catalog_ident) {
    jQuery.post(
        '/user/delete-pay-history-order', {
            'id_order' : order_id
        }, function(data) {
            if (data['code']) {

            } else {
                window.location.href = '/user/pay-history/' + catalog_ident;
            }
        }, 'json'
        );

    return false;
}
// /user/paid-advertising/ - нажатие на ссылку "отменить/удалить заявку"
function deletePLHOrder(id_order) {
    jQuery.post(
        '/user/delete-pay-limit', {
            'id_order' : id_order
        }, function(data) {
            if (data['code']) {

            } else {
                window.location.href = '/user/paid-advertising/';
            }
        }, 'json'
        );

    return false;
}

///user/pay-history/ - нажатие на ссылку "повторить заявку"
function repeatPHOrder(order_id, catalog_ident) {
    jQuery.post(
        '/user/repeat-pay-history-order', {
            'id_order' : order_id
        }, function(data) {
            if (data['code']) {

            } else {
                window.location.href = '/user/pay-history/' + catalog_ident;
            }
        }, 'json'
        );

    return false;
}

/**
 *
 * @access public
 * @return void
 **/
jQuery(document).ready(function(){
    jQuery(function () {

        // /user/pay-history - блокировка кнопки отправки заявки до согласия с правилами и выбора пункта из списка
        if (jQuery('#guiRulesPHBtn').attr('id') == 'guiRulesPHBtn') {
            jQuery(':radio[name=GuiRadioDay]').change(function() {
                if ((jQuery(':radio[name=GuiRadioDay]:checked').val() == undefined) || !jQuery('#guiRulesPHCh').attr('checked')) {
                    jQuery('#guiRulesPHBtn').attr('disabled', true);
                } else {
                    jQuery('#guiRulesPHBtn').attr('disabled', false);
                }
            });

            jQuery('#guiRulesPHCh').change(function() {
                if (jQuery(this).attr('checked') && (jQuery(':radio[name=GuiRadioDay]:checked').val() != undefined)) {
                    jQuery('#guiRulesPHBtn').attr('disabled', false);
                } else {
                    jQuery('#guiRulesPHBtn').attr('disabled', true);
                }
            });

        }

        /////////////////////////////////// user screen resolution cookies ////////////////////////////////////////////
        var date = new Date();
        date.setTime(date.getTime() + 31536000);

        var opts = {
            hoursToLive: 8760, // время жизни в часах
            path: '/'
        };
        jQuery.cookies.set('scrres', screen.width + 'x' + screen.height, opts);
        //////////////////////// user profile page /////////////////////////////////////////////////////////////////////
        var options = {
            //closeText: 'Закрыть',
            //dayNames: ['Воскресенье', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота'],
            changeMonth: true,
            changeYear: true,
            showOn: 'button',
            buttonImage: '/public/img/calendar.gif',
            buttonImageOnly: true,
            showAnim: 'size',
            dayNamesMin: ['Вс', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб'],
            dateFormat: 'dd.mm.yy',
            firstDay: 1,
            monthNamesShort: ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'],
            monthNames: ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь']
        };
        jQuery.datepicker.setDefaults(options);

        var dateBirth = new Date;
        var lastBirthYear = dateBirth.getFullYear();
        dateBirth.setFullYear(lastBirthYear);

        //var maxBirthDate = new Date();
        //maxBirthDate

        options = {
            defaultDate: dateBirth,
            yearRange: '1900:' + lastBirthYear
        //maxDate:
        };
        jQuery("#guiDtBirth").datepicker(options);

        var dateWedding = new Date;
        var lastWeddingYear = dateWedding.getFullYear()+1;
        dateWedding.setFullYear(lastWeddingYear);

        options = {
            yearRange: '1900:' + lastWeddingYear
            };

        jQuery("#guiDtWedding").datepicker(options);
        jQuery("#guiDtWeddingInPast").datepicker(options);

        jQuery('#guiCountrySelect').change(function() {
            var selVal = jQuery(this).val();
            jQuery.ajax({
                type: 'POST',
                url: '/user/get-region-list',
                data: {
                    idcountry : selVal
                },
                dataType: 'json',
                success: function(data) {
                    if(!data.code) {
                        if (data.list[0]) {
                            fillSelect('guiRegionSelect',
                                data.list,
                                ['r_id', 'r_descr'], {
                                    '0' : 'все области'
                                }/*, data.list[0].c_id*/);
                            //jQuery('#guiTownSelectDiv').removeAttr("disabled");
                            jQuery('#guiRegionSelect').attr("disabled", false);
                        //document.getElementById('guiTownSelectDiv').disabled=false;
                        //jQuery('#guiTownLabelDiv').attr("disabled", "false");
                        //jQuery('#guiTownSelectDiv').css({display: 'block'});
                        //jQuery('#guiTownLabelDiv').css({display: 'block'});
                        } else {
                            //jQuery('#guiTownSelectDiv').removeAttr("enabled");
                            fillSelect('guiRegionSelect',
                            {},
                                [], {
                                    '0' : 'все области'
                                }/*, data.list[0].c_id*/);
                            jQuery('#guiRegionSelect').attr("disabled", true);

                        //document.getElementById('guiTownSelectDiv').disabled=true;
                        //jQuery('#guiTownLabelDiv').attr({disabled: "true"});
                        //jQuery('#guiTownSelectDiv').css({display: 'none'});
                        //jQuery('#guiTownLabelDiv').css({display: 'none'});
                        }
                    }
                    jQuery('#guiRegionSelect').trigger('change');
                },
                error: function() {}
            });
        //jQuery("#guiCountrySelect option:selected").val();
        });

        jQuery('#guiRegionSelect').change(function() {
            var selVal = jQuery(this).val();
            jQuery.ajax({
                type: 'POST',
                url: '/user/get-city-list',
                data: {
                    idregion : selVal
                },
                dataType: 'json',
                success: function(data) {
                    if(!data.code) {
                        if (data.list[0]) {
                            fillSelect('guiTownSelect',
                                data.list,
                                ['c_id', 'c_descr'], {
                                    '0' : 'все города'
                                }/*, data.list[0].c_id*/);
                            //jQuery('#guiTownSelectDiv').removeAttr("disabled");
                            jQuery('#guiTownSelect').attr("disabled", false);
                        //document.getElementById('guiTownSelectDiv').disabled=false;
                        //jQuery('#guiTownLabelDiv').attr("disabled", "false");
                        //jQuery('#guiTownSelectDiv').css({display: 'block'});
                        //jQuery('#guiTownLabelDiv').css({display: 'block'});
                        } else {
                            //jQuery('#guiTownSelectDiv').removeAttr("enabled");
                            fillSelect('guiTownSelect',
                            {},
                                [], {
                                    '0' : 'все города'
                                }/*, data.list[0].c_id*/);
                            jQuery('#guiTownSelect').attr("disabled", true);

                        //document.getElementById('guiTownSelectDiv').disabled=true;
                        //jQuery('#guiTownLabelDiv').attr({disabled: "true"});
                        //jQuery('#guiTownSelectDiv').css({display: 'none'});
                        //jQuery('#guiTownLabelDiv').css({display: 'none'});
                        }
                    }
                },
                error: function() {}
            });
        //jQuery("#guiCountrySelect option:selected").val();
        });

        jQuery('#profileForm').validate({
            submitHandler: function(form) {
                var dt_arr = jQuery('#guiDtBirth').val().split('.');
                if (dt_arr.length == 3) {
                    var dt = new Date;
                    dt.setFullYear(dt_arr[2]);
                    dt.setMonth(dt_arr[1]-1);
                    dt.setDate(dt_arr[0]);
                    var month = (dt.getMonth() + 1) + "";
                    var day = (dt.getDate()) + "";
                    month = month.length == 1 ? "0".concat(month) : month;
                    day = day.length == 1 ? "0".concat(day) : day;
                    jQuery('#guiDtBirth').val(day + '.' + month + '.' + dt.getFullYear());
                } else if (jQuery('#guiDtBirth').val() != '') {
                    return;
                }

                var dt_arr      = jQuery('#guiDtWedding').val().split('.');
                var dt_arr_past = jQuery('#guiDtWeddingInPast').val().split('.');

                if (dt_arr_past.length == 3) {
                    var dt = new Date;
                    dt.setFullYear(dt_arr_past[2]);
                    dt.setMonth(dt_arr_past[1]-1);
                    dt.setDate(dt_arr_past[0]);

                    var month = (dt.getMonth() + 1) + "";
                    var day = (dt.getDate()) + "";
                    month = month.length == 1 ? "0".concat(month) : month;
                    day = day.length == 1 ? "0".concat(day) : day;
                    jQuery('#guiDtWeddingInPast').val(day + '.' + month + '.' + dt.getFullYear());
                } else if (jQuery('#guiDtWeddingInPast').val() != '') {
                    return;
                }

                if (dt_arr.length == 3) {
                    var dt = new Date;
                    dt.setFullYear(dt_arr[2]);
                    dt.setMonth(dt_arr[1]-1);
                    dt.setDate(dt_arr[0]);
                    var month = (dt.getMonth() + 1) + "";
                    var day = (dt.getDate()) + "";
                    month = month.length == 1 ? "0".concat(month) : month;
                    day = day.length == 1 ? "0".concat(day) : day;
                    jQuery('#guiDtWedding').val(day + '.' + month + '.' + dt.getFullYear());
                } else if (jQuery('#guiDtWedding').val() != '') {
                    return;
                }

                var web_site = jQuery('#guiStrWebSite').val();
                if(web_site && web_site.indexOf("http://", 0) == -1) {
                    web_site = 'http://' + web_site;
                    jQuery('#guiStrWebSite').val(web_site);
                }
                /*if (web_site && (web_site.indexOf('http://') != 0)
				&& (web_site.indexOf('https://') != 0)
				&& (web_site.indexOf('ftp://') != 0)) {
				web_site = 'http://' + web_site;
			}*/
                jQuery('#guiStrWebSite').val(web_site);

                document.getElementById('profileForm').submit();
            },
            focusInvalid: false,
            focusCleanup: false,
            rules: {
                guiStrLogin: {
                    required: true,
                    remote: {
                        url: '/user/check-login',
                        type: 'post',
                        data: {
                            isprofile: true,
                            ident: jQuery('#guiDivIdent').val()
                        }
                    }
                }
            },
            messages: {
                guiStrLogin: {
                    required: 'Имя не может быть пустым',
                    remote: 'Это имя занято'
                }
            },
            errorPlacement: function(error, element) {
                var er = element.attr('id');
                jQuery('#' + er).next('span').css({
                    'color' : 'red'
                }).html(error);
            }
        });

        jQuery('#guiDtBirth').mask('99.99.9999');
        jQuery('#guiDtWedding').mask('99.99.9999');
        jQuery('#guiDtWeddingInPast').mask('99.99.9999');

        var selectedCountry = jQuery('#guiCountrySelect option:selected').val();
        var selectedRegion = jQuery('#guiRegionSelect option:selected').val();
        var selectedTown = jQuery('#guiTownSelect option:selected').val();
        if (selectedCountry == 0 && selectedRegion == 0 && selectedTown == 0) {
            jQuery('#guiCountrySelect').trigger('change');
        }
    });
});
/**
 *
 * @access public
 * @return void
 **/
function initForgotFormValidate() {
    jQuery('#forgotForm').validate({
        submitHandler: function(form) {
            var options = {
                type: 'POST',
                url: '/user/remind-password',
                dataType: 'json',
                success: function(data) {
                    switch (data.code) {
                        case 3:
                            closeModal();
                            showPopUpWindow('guiBlockedIPForm');
                            jQuery('#guiBlockMessage').css({
                                'color': 'red'
                            }).html(data.message);
                            //setTimeout("closeModal();showPopUpWindow('guiAuthForm');", 3000);
                            break;
                        case 2:
                            doShake([data.control]);
                            jQuery('#forgotForm').resetForm();
                            jQuery('#' + data.control).focus();
                            break;
                        case 1:
                            jQuery('#' + data.control).next().css({
                                'color': 'red'
                            }).html(data.message);
                            jQuery('#' + data.control).focus();
                            break;
                        case 0:
                            jQuery('#guiSubmit').css({
                                'display': 'none'
                            });
                            jQuery('#guiSuccess').css({
                                'display': 'block',
                                'color' : 'red'
                            }).html(data.message);
                            setTimeout("closeModal();showPopUpWindow('guiAuthForm');", 3000);
                            break;
                        default:
                            break;
                    }
                },
                error: function() {}
            };
            jQuery(form).ajaxSubmit(options);
        },
        focusInvalid: false,
        focusCleanup: false,
        rules: {
            guiStrEmail: {
                required: true,
                email: true
            }
        },
        messages: {
            guiStrEmail: {
                required: '',
                email: ''
            }
        },
        errorPlacement: function(error, element) {
            var er = element.attr('id');
            jQuery('#' + er).next('div').css({
                'color' : 'red'
            }).html(error);
        }
    });
}

/**
 *
 * @access public
 * @return void
 **/

function initAuthFormValidate() {



    jQuery('#authForm').validate({



        submitHandler: function(form) {
            var options = {
                type: 'post',
                url: '/user/login',
                dataType: 'json',
                success: function(data) {
                    jQuery('#errDiv').html('');
                    if (data.code > 0) {
                        if (data.code == 4) {
                            closeModal();
                            showPopUpWindow('guiBlockedIPForm');

                            jQuery('#guiH3Caption').html('Аккаунт заблокирован');
                            jQuery('#guiBlockMessage').css({
                                'color': 'red'
                            }).html(data.message);
                        }else if (data.code == 5) {
                            closeModal();
                            showPopUpWindow('guiBlockedIPForm');

                            jQuery('#guiH3Caption').css({
                                'color': 'red'
                            }).html('Аккаунт не активирован');
                            jQuery('#guiBlockMessage')/*.css({'color': 'red'})*/.html(data.message);
                        }
                        else if (data.code == 3) {
                            closeModal();
                            showPopUpWindow('guiBlockedIPForm');

                            jQuery('#guiH3Caption').html('IP заблокирован');
                            jQuery('#guiBlockMessage').css({
                                'color': 'red'
                            }).html(data.message);
                        } else {
                            doShake(['guiStrEmail', 'guiStrPassword']);
                            jQuery('#guiStrPassword'/* + data.control */).next().css({
                                'color': 'red'
                            }).html(data.message);
                            jQuery('#guiStrEmail'/* + data.control */).focus();
                            //jQuery('#guiStrPassword').clearFields();
                            jQuery('#authForm').resetForm();
                        //jQuery('#errDiv').html(data.message);
                        }
                    } else {
                        // code = 0
                        closeModal();
                        var redirect = jQuery('#guiStrRedirect').val();

                        if (data.visit == '1' && data.id > 0) {
                            window.location.href = "/user/profile-edit/"+data.id;
                        }else
                        if (!(redirect === undefined)) {
                            if (redirect.length > 0) {
                                window.location.href = redirect;
                            }else{
                                window.location.href = window.location.href;
                            }
                        }else
                            window.location.href = window.location.href;
                        jQuery('#' + data.control).next().css({
                            'color': 'green'
                        }).html(data.message);
                    }
                },
                error: function() {
                    jQuery('#errDiv').html('Извините произошла ошибка,<br>попробуйте еще раз');
                }
            };
            jQuery(form).ajaxSubmit(options);
        },
        focusInvalid: false,
        focusCleanup: false,
        rules: {
            guiStrEmail: {
            //required: true,
            //email: true
            //remote: '/user/check-email'
            },
            guiStrPassword: {
        //required: true
        //minlength: 6,
        //maxlength: 20
        }
        },
        messages: {
            guiStrEmail: {
            //required: '',
            //email: ''
            //required: 'С вашей почтой что-то не так:(',
            //email: 'С вашей почтой что-то не так:('
            //remote: 'Эта Эл. почта уже используется'
            },
            guiStrPassword: {
        //required: ''
        //required: 'Слишком короткий пароль, надо от 6 знаков.'
        //minlength: '',
        //maxlength: ''
        }
        },
        /*success: function(label) {

			switch (label.attr('for')) {
			 case 'guiStrLogin':
				label.css({'color' : 'green'}).html('Это имя свободно');
				break;
			 case 'guiStrEmail':
				label.css({'color' : 'green'}).html('Эту Эл. почту можно использовать');
				break;
			 case 'guiStrCapcha':
				label.css({'color' : 'green'}).html('Все замечательно');
				break;
			}
		},*/
        errorPlacement: function(error, element) {
            //doShake(['guiStrEmail', 'guiStrPassword']);
            var er = element.attr('id');
            jQuery('#' + er).next('div').css({
                'color' : 'red'
            }).html(error);
        }
    });
}

/**
 *
 * @access public
 * @return void
 **/
function initRegistrationValidate(){
    //1. init capcha string
    getCaptchaString();

    // 2. init jquery validation plugin
    jQuery('#registrationForm').validate({
        submitHandler: function(form) {
            jQuery('#guiHdnRegistration').attr('disabled',true);

            var options = {
                type: 'post',
                url: '/user/registration',
                dataType: 'json',
                success: function(data) {
                    jQuery('#errDiv').html('');

                    if (data.code > 0) {
                        jQuery('#guiHdnRegistration').attr('disabled',false);
                        if(data.control) {
                            if (data.control == 'guiStrCapcha' && (data.code >= 8)) {
                                doShake(['guiStrCapcha']);
                                jQuery('#guiStrCapcha').val('');
                                jQuery('#guiStrCapcha').focus();
                                jQuery('#guiHdnCaptchaIdent').val(data.capcha_id);
                                jQuery('#guiSpnCaptcha').html(data.capcha_descr);
                            }

                            jQuery('#'+data.control).next('div').html(data.message);
                            jQuery('#'+data.control).next('div').css({
                                'color': 'red'
                            });
                            jQuery('#'+data.control).focus();
                        } else {
                            //jQuery('#errDiv').html(data.message);
                            jQuery('div:last').css({
                                'color' : 'red'
                            }).html(data.message);
                        }
                        jQuery('#guiStrDescr').html(data.capcha_descr);
                        jQuery('#guiIntCapcha').val(data.capcha_id);
                    } else {
                        jQuery('#guiHdnRegistration').attr('disabled',false);
                        closeModal();

                        showPopUpWindow('guiAlertWindow');
                        jQuery('#guiDivMessage').html('<p><b>Проверьте свою электронную почту и пройдите по ссылке в письме, чтобы подтвердить  регистрацию!</b></p>');

                        setTimeout(function(){
                            closeModal();

                        },20000);
                        /*
                             if (data.visit == '1' && data.id > 0) {
			 			      window.location.href = "/user/profile-edit/"+data.id;
			 			     }else if (redirect_status.length > 0 ) {
                              window.location.href = redirect_status;
			 			     }else{
			 			           location.reload(true);
						          }*/

                        if(data.control) {
                            jQuery('#gui'+data.control).next('div').html(data.message);
                        } else {
                            jQuery('#errDiv').html(data.message);
                        }
                    }
                },
                error: function() {
                    jQuery('#errDiv').html('Извините произошла ошибка,<br>попробуйте еще раз');
                }
            };
            jQuery(form).ajaxSubmit(options);
        },
        focusInvalid: false,
        focusCleanup: false,
        rules: {
            guiStrLogin: {
                required: true,
                remote: {
                    url: '/user/check-login',
                    type: 'POST'
                }
            },
            guiStrEmail: {
                required: true,
                email: true,
                remote: {
                    url: '/user/check-email',
                    type: 'POST'
                }
            },
            guiStrPassword: {
                required: true,
                minlength: 8,
                maxlength: 20
            },
            guiBoolSex: {
                required: true
            }/*,
			guiStrCapcha: {
				required: true,
				remote:{
				 url: '/user/validate-captcha',
                 type: "GET",
                 data: {
                   identcaptcha: function() {
                     return jQuery("#guiHdnCaptchaIdent").val();
                   }
				 }/*,
				 success: function(data) {
				 alert(data);
				  if (data) {
				  	if (data.code == 0) {
                      alert('Hi');
				    }
				  }
				 }
			   }
			}*/
        },
        messages: {
            guiStrLogin: {
                required: 'Укажите Ваше имя',
                remote: 'Это имя уже занято, попробуйте другое'
            },
            guiStrEmail: {
                required: 'С вашей почтой что-то не так:(',
                email: 'С вашей почтой что-то не так:(',
                remote: 'Эта Эл. почта уже используется'
            },
            guiStrPassword: {
                required: 'Слишком короткий пароль, надо от 8 знаков.',
                minlength: 'Слишком короткий пароль, надо от 8 знаков.',
                maxlength: 'Ограничение поля 20 знаков'
            },
            guiBoolSex: {
                required: 'Бесполые существа на сайт не допускаются!!!'
            }/*,
			guiStrCapcha: {
				required: true,
				remote: 'Ошибочка однако, попробуйте ещё раз'
			}*/
        },
        success: function(label) {

            //	alert('succ');

            switch (label.attr('for')) {
                case 'guiStrLogin':
                    label.css({
                        'color' : 'green'
                    }).html('Это имя свободно');
                    break;
                case 'guiStrEmail':
                    label.css({
                        'color' : 'green'
                    }).html('Эту Эл. почту можно использовать');
                    break;
            /*case 'guiStrCapcha':
				label.css({'color' : 'green'}).html('Все замечательно');
				break;*/
            }
        },
        errorPlacement: function(error, element) {
            var er = element.attr('id');
            jQuery('#' + er).next('div').css({
                'color' : 'red'
            }).html(error);
        }
    });
}

/**
*
* @access public
* @return void
**/
function getCaptchaString(){
    jQuery.ajax({
        type: "POST",
        url:  "/user/get-captcha/",
        async: true,
        dataType: "json",
        success: function(data) {

            jQuery('#guiHdnCaptchaIdent').val('0');
            jQuery('#guiStrCapcha').val('');

            if (data.code == 0) { /** if no any error */
                var arrCpt = data.capcha;
                if (arrCpt) {
                    jQuery('#guiHdnCaptchaIdent').val(arrCpt.sc_id);
                    jQuery('#guiSpnCaptcha').html(arrCpt.sc_descr);
                }
            }
        },
        error: function() {
            jQuery('#guiHdnCaptchaIdent').val('0');
        }
    });
}
/**
 *
 * @access public
 * @return void
 **/
function addCatalogService(catId){

    // добавление комментария
    var option = {};
    jQuery('#guiRulesPHBtn').attr('disabled',true);

    option['service_id'] = jQuery("input[name=GuiRadioDay]:checked").val();
    option['cat_ident']  = catId;
    option['ballance']    = jQuery('#guiBallance').val();

    jQuery.ajax({
        type     : "POST",
        url      : "/user/add-pay-history",
        async    : false,
        data     : option,
        dataType : "json",
        success  : function(data){
            if (!(data.code > 0)) {

                showPopUpWindow('guiAlertWindow');
                jQuery('#guiDivMessage').html('<p><b>Ваша заявка активирована!</b></p>');
                jQuery('#guiRulesPHBtn').attr('disabled',false);

                location.reload(true);

                return false;
            }else{
                alert(data.message);
            }
        },
        error    : function (){}
    });
}
/**
 *
 * @access public
 * @return void
 **/
function addPayLimitService(){

    // добавление комментария
    var option = {};

    option['ph_limit_id'] = jQuery("input[name=GuiRadioDay]:checked").val();
    option['ballance']    = jQuery('#guiBallance').val();

    jQuery.ajax({
        type     : "POST",
        url      : "/user/add-pay-limit",
        async    : false,
        data     : option,
        dataType : "json",
        success  : function(data){
            if (!(data.code > 0)) {

                showPopUpWindow('guiAlertWindow');
                jQuery('#guiDivMessage').html('<p><b>Ваша заявка активирована!</b></p>');

                location.reload(true);

                return false;
            }else{
                alert(data.message);
            }
        },
        error    : function (){}
    });
}



function addShowVote(){

    var option = {};

    option['ph_limit_id'] = jQuery("#votepay").val();
    option['ballance']    = jQuery('#guiBallance').val();
    option['photoid']	 = jQuery ('#photoid').val();

    jQuery.ajax({
        type     : "POST",
        url      : "/user/add-pay-limit",
        async    : false,
        data     : option,
        dataType : "json",
        success  : function(data){
            if (!(data.code > 0)) {

                showPopUpWindow('guiAlertWindow');
                jQuery('#guiDivMessage').html('<p><b>Ваша заявка активирована!</b></p>');

                location.reload(true);

                return false;
            }else{
                alert(data.message);
            }
        },
        error    : function (){}
    });
}

/**
*
* @access public
* @return void
**/
function activatePayCatalog(order_id, catalog_ident){
    jQuery.post(
        '/user/activate-pay-history-order', {
            'id_order' : order_id
        }, function(data) {
            if (data['code']) {

            } else {

                window.location.href = '/user/pay-history/' + catalog_ident;
            }
        }, 'json'
        );

    return false;
}


function deleteInterestFirm(idFirm){
    if (parseInt(idFirm) > 0) {

        showPopUpWindow('guiDeleteInterestFirm');
        jQuery('#guiHdnIdRecord').val(idFirm);
        return false;
    }
}

function deleteInterestFirmAction(){

    var option = {};

    option['id_firm']  = jQuery('#guiHdnIdRecord').val();

    if (!(parseInt(option['id_firm']) > 0)) {
        return false;
    }

    jQuery.ajax({
        type     : "POST",
        url      : "/user/del-interest-firm",
        async    : false,
        data     : option,
        dataType : "json",
        success  : function(data){
            if (!(data.code > 0)) {

                showPopUpWindow('guiAlertWindow');
                jQuery('#guiDivMessage').html('<p><b>Запись удалена успешно!</b></p>');

                location.reload(true);

                return false;
            }else{
                alert(data.message);
            }
        },
        error    : function (){}
    });
}

/**
*
* @access public
* @return void
**/
//var shakeanemo = false;

function shake(field) {
    if (!document.getElementById(field).style.marginTop) {
        document.getElementById(field).style.marginTop = '0px';
    }
    if (!document.getElementById(field).style.marginLeft) {
        document.getElementById(field).style.marginLeft = '0px';
    }
    var topW = parseInt(document.getElementById(field).style.marginTop);
    var leftW = parseInt(document.getElementById(field).style.marginLeft);

    document.getElementById(field).style.backgroundColor = '#FF4444';
    setTimeout("document.getElementById('" + field + "').style.backgroundColor = 'white';", 1000);

    var flag = -1;
    var dt = 15;
    var time = dt;

    var i = 8;
    while (i--) {
        setTimeout("document.getElementById('" + field + "').style.marginLeft = '" + (leftW - 6 * flag) + "px';", time);
        time += dt;
        setTimeout("document.getElementById('" + field + "').style.marginTop = '" + (topW - 4 * flag) + "px';", time);
        time += dt;
        flag = -flag;
    }
    setTimeout("document.getElementById('" + field + "').style.marginLeft = '" + leftW + "px';", time);
    time += dt;
    setTimeout("document.getElementById('" + field + "').style.marginTop = '" + topW + "px';", time);
/*time += dt;
	setTimeout("shakeanemo = false;", time);*/
}

function doShake(fields){
    //shakeanemo = true;
    for(var i = 0; i < fields.length; i++) {
        shake(fields[i]);
    }
}


