
/**
 *
 * Show editor for fast answer to posts
 *
 * @name showPostAnswerBlock
 * @last 11.09.2009
 */
var editor;
var lightEditor;

var idComment  = 0;
var currEditor = '';

var profileType = 'catalog';

function setUpAdminParams(){
    jQuery('#guiBtnSaveCatalogAdminParams').attr('disabled',true);

    var option  = {};

    option['cid']   = jQuery('#idRecord').val();
    option['breit'] = jQuery('#guiStrBarterReit').val();
    option['cpos']  = jQuery('#guiStrCatalogFixedPlace').val();
    option['stop_pay_hour']  = jQuery('#guiStrFreezPay').val();
    option['is_fraze_reit']  = jQuery('input:checkbox[id=guiChkFrazeBarterRait]:checked').val();
    option['is_fraze_pos']   = jQuery('input:checkbox[id=guiChkTouchCurrentPlace]:checked').val();
    option['id_chapter']     = jQuery('#guiMoveChapter option:selected').val();
    option['is_brake_blocked'] = jQuery('input:checkbox[id=guiChkBrakeBlocked]:checked').val();

    if (option['is_fraze_reit'] == undefined) {
        option['is_fraze_reit'] = 0;
    }

    if (option['is_fraze_pos'] == undefined) {
        option['is_fraze_pos'] = 0;
    }

    if (option['is_brake_blocked'] == undefined) {
        option['is_brake_blocked'] = 0;
    }

    jQuery.ajax({
        type     : "POST",
        url      : "/catalog/update-admin-params",
        async    : false,
        data     : option,
        dataType : "json",
        success  : function(data){

            if (!(data.code > 0)) {
                alert('Данные успешно сохранены!');
                location.reload(true);
            }else{
                alert(data.message);
            }
        },
        error    : function (){}
    });
}


function checkAdminOptions(obj){
    if (!jQuery(obj).attr('checked')) {
        showPopUpWindow('guiConfirmForm');
        jQuery('#guiBlockMessage').html('После снятие галочки, Вы больше не добавите Фирму в данном аккаунте!');
        jQuery('#guiHeaderMessage').css({
            'color':'#d90606'
        });
        jQuery('#guiBtnConfirmWin').val('Вернуть установку');
        jQuery('#guiBtnConfirmWin').bind('click',function(){
            jQuery(obj).attr('checked',true);
            closeModal();
        });
    }
}

jQuery(function(){
    if (jQuery('#catalogAnchors').attr('id') == 'catalogAnchors') {
    //setTimeout(function(){jQuery(this).scrollTop(jQuery('a#catalogAnchors').position().top-200)},800);
    }

    // /catalog/index - форма поиска - выбор страны из списка
    if (jQuery('#srchCountry').attr('id') == 'srchCountry') {
        jQuery('#srchCountry').change(function() {
            var idcountry = jQuery(this).val();
            jQuery.post(
                '/user/get-region-list', {
                    'idcountry' : idcountry,
                    'filter':'catalog'
                }, function(ret) {
                    jQuery('#srchRegion').attr('disabled', true);
                    var options = '<option value="0">все области</option>';

                    if (ret['code']) {

                    } else {
                        if (ret['list'].length) {
                            for (region in ret['list']) {
                                options += '<option value="' + ret['list'][region]['r_id']
                                + '">' + ret['list'][region]['r_descr'] + '</option>';
                            }

                            jQuery('#srchRegion').attr('disabled', false);
                        }
                        jQuery('#srchRegion').html(options);
                    }

                    jQuery('#srchRegion').trigger('change');
                }, 'json'
                );
        });
    }

    // /catalog/index - форма поиска - выбор региона из списка
    if (jQuery('#srchRegion').attr('id') == 'srchRegion') {
        jQuery('#srchRegion').change(function() {
            var idregion = jQuery(this).val();
            jQuery.post(
                '/user/get-city-list', {
                    'idregion' : idregion,
                    'filter' : 'catalog'
                }, function(ret) {
                    jQuery('#srchTown').attr('disabled', true);
                    var options = '<option value="0">все города</option>';

                    if (ret['code']) {

                    } else {
                        var status = 0;
                        if (ret['list'].length) {
                            for (region in ret['list']) {
                                status = 1;
                                options += '<option value="' + ret['list'][region]['c_id']
                                + '">' + ret['list'][region]['c_descr'] + '</option>';
                            }

                            jQuery('#srchTown').attr('disabled', false);
                        }else{

                        }
                        jQuery('#srchTown').html(options);
                    }
                }, 'json'
                );
        });
    }

    if (jQuery('#guiStrFirmDescr').val() != undefined) {
        var firmName = jQuery('#guiStrFirmDescr').val();
        if (firmName.length == 0 || firmName.length > 55) {
            jQuery('#guiStrFirmDescr').css({
                'background-color': 'pink'
            });
        }
        jQuery('#guiStrFirmDescr').keyup(function(){
            var firmName = jQuery(this).val();
            if (firmName.length == 0 || firmName.length > 55) {
                jQuery(this).css({
                    'background-color': 'pink'
                });
            } else {
                jQuery(this).css({
                    'background-color': 'white'
                });
            }
        });

        jQuery('#guiStrWeb').blur(function(){
            if (jQuery(this).val() != '') {
                jQuery.post('/user/check-catalog-url',{
                    'guiStrWeb': jQuery(this).val()
                }, function(data) {
                    if(data) {
                        jQuery('#guiStrWeb').css({
                            'background-color': 'white'
                        })
                    } else {
                        jQuery('#guiStrWeb').css({
                            'background-color': 'pink'
                        })
                    }
                }, 'json');
            } else {
                jQuery('#guiStrWeb').css({
                    'background-color': 'white'
                })
            }
        });

        jQuery('#guiStrEMail').blur(function(){
            if (jQuery(this).val() != '') {
                jQuery.post('/user/check-catalog-email',{
                    'guiStrEMail': jQuery(this).val()
                }, function(data) {
                    if(data) {
                        jQuery('#guiStrEMail').css({
                            'background-color': 'white'
                        })
                    } else {
                        jQuery('#guiStrEMail').css({
                            'background-color': 'pink'
                        })
                    }
                }, 'json');
            } else {
                jQuery('#guiStrEMail').css({
                    'background-color': 'white'
                })
            }
        });

        /*jQuery('#addCatalog').submit(function() {
			var ownEmail = jQuery('#guiStrEMailHdn').val();
			if (jQuery(this).val() != '' && ownEmail != jQuery(this).val() ) {
				jQuery.post('/user/check-catalog-email',{
					'guiStrEMail': jQuery(this).val()
				}, function(data) {
					if(data.code) {
						jQuery(this).css({'background-color': 'white'})
					} else {
						jQuery(this).css({'background-color': 'pink'})
					}
				}, 'json');
			} else {
				jQuery(this).css({'background-color': 'white'})
			}
		});*/

        jQuery('#guiCountrySelectCat').change(function() {
            jQuery('#guiRegionSelectCat').attr('disabled',true);
            jQuery('#guiTownSelectCat').attr('disabled',true);

            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) {
                        //  alert(data.list[0]);
                        if (data.list[0] != undefined) {
                            fillSelect('guiRegionSelectCat',
                                data.list,
                                ['r_id', 'r_descr'], {
                                    '0' : 'все области'
                                }/*, data.list[0].c_id*/);

                            jQuery('#guiRegionSelectCat').attr("disabled", false);

                        //jQuery('#guiTownSelectDiv').removeAttr("disabled");
                        //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('guiRegionSelectCat',
                            {},
                                [], {
                                    '0' : 'все области'
                                }/*, data.list[0].c_id*/);
                            jQuery('#guiRegionSelectCat').attr("disabled", true);

                        //document.getElementById('guiTownSelectDiv').disabled=true;
                        //jQuery('#guiTownLabelDiv').attr({disabled: "true"});
                        //jQuery('#guiTownSelectDiv').css({display: 'none'});
                        //jQuery('#guiTownLabelDiv').css({display: 'none'});
                        }
                    }
                    jQuery('#guiRegionSelectCat').trigger('change');
                },
                error: function() {}
            });
        //jQuery("#guiCountrySelect option:selected").val();
        });

        jQuery('#guiRegionSelectCat').change(function() {
            jQuery('#guiTownSelectCat').attr('disabled',true);
            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('guiTownSelectCat',
                                data.list,
                                ['c_id', 'c_descr'], {
                                    '0' : 'все города'
                                }/*, data.list[0].c_id*/);
                            jQuery('#guiTownSelectCat').attr("disabled", false);

                        //jQuery('#guiTownSelectDiv').removeAttr("disabled");
                        //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('guiTownSelectCat',
                            {},
                                [], {
                                    '0' : 'все города'
                                }/*, data.list[0].c_id*/);
                            jQuery('#guiTownSelectCat').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();
        });

        var selectedCountry = jQuery('#guiCountrySelectCat option:selected').val();
        var selectedRegion = jQuery('#guiRegionSelectCat option:selected').val();
        var selectedTown = jQuery('#guiTownSelectCat option:selected').val();
        if (selectedCountry == 0 && selectedRegion == 0 && selectedTown == 0) {
            jQuery('#guiCountrySelectCat').trigger('change');
        }

        var minSumHdn = parseInt(jQuery('#minSumHdn').val());
        var maxSumHdn = parseInt(jQuery('#maxSumHdn').val());
        // labels
        var minLbl = minSumHdn; // min
        var maxLbl = maxSumHdn; // max
        var mLbl = parseInt((minSumHdn + maxSumHdn) / 2); // middle
        var mMinLbl = parseInt((minSumHdn + mLbl) / 2); // min-middle
        var mMaxLbl = parseInt((mLbl + maxSumHdn) / 2); // middle-max


        jQuery('#minLbl').text(minLbl + '$');
        jQuery('#mMinLbl').text(mMinLbl + '$');
        jQuery('#mLbl').text(mLbl + '$');
        jQuery('#mMaxLbl').text(mMaxLbl + '$');
        jQuery('#maxLbl').text(maxLbl + '$');

        var starCount	= 6;
        var starStep 	= (maxLbl - minLbl) / starCount;
        var stars 		= new Array();
        stars[0]		= minLbl;
        for(var i = 1; i <= starCount; i++) {
            stars.push(minLbl + starStep * i);
        }

        jQuery('#minmaxSumSlider').slider({
            range: true,
            min: minSumHdn,
            max: maxSumHdn,
            step: 50,
            values: [jQuery('#minSum').val(), jQuery('#maxSum').val()],
            slide: function (event, ui) {
                var minValue = ui.values[0];
                var maxValue = ui.values[1];

                jQuery('#minSum').val(minValue);
                jQuery('#maxSum').val(maxValue);

                for (var i = 0; i <= starCount; i++) {
                    if ((minValue >= stars[i]) && (minValue <= stars[i+1])) {
                        jQuery('#minStars').attr('src', '/public/img/stars-' + i + '.gif');
                    }

                    if ((maxValue >= stars[i]) && (maxValue <= stars[i+1])) {
                        jQuery('#maxStars').attr('src', '/public/img/stars-' + i + '.gif');
                    }
                }
            }
        });

        //инициализируем звезданутость при загрузке
        for (var i = 0; i <= starCount; i++) {
            if ((jQuery('#minSum').val() >= stars[i]) && (jQuery('#minSum').val() <= stars[i+1])) {
                jQuery('#minStars').attr('src', '/public/img/stars-' + i + '.gif');
            }

            if ((jQuery('#maxSum').val() >= stars[i]) && (jQuery('#maxSum').val() <= stars[i+1])) {
                jQuery('#maxStars').attr('src', '/public/img/stars-' + i + '.gif');
            }
        }
    }

    if (jQuery('#guiBnrSrc').val() != undefined) {
        // путь к баннерам
        var bnrUrl	= jQuery('#guiBnrUrlHdn').val();
        var refUrl	= jQuery('#guiRefUrlHdn').val();
        var recId  	= jQuery('#guiRecordIdHdn').val();

        // ссылки и всплывающие подсказки для баннеров
        var refType = new Array();
        jQuery('#guiBnrRf > option').each(function(i){
            var refTitle = jQuery(this).text();
            //refTitle = refTitle.replace(/"/gi, "&quot;");
            refTitle = "Svadbaruneta";//refTitle.replace(/'/gi, "&apos;");
            refType.push([jQuery(this).val(), refTitle]);
        });

        // при изменении размера грузим соответствующие баннеры, выбираем первый баннер и изменяем ссылку в textarea
        jQuery('#guiBnrSz').change(function() {
            var szType = jQuery('#guiBnrSz').val();
            jQuery('#bnr_standard_tbl').css('display', 'none');
            jQuery('#bnr_small_tbl').css('display', 'none');
            jQuery('#bnr_big_tbl').css('display', 'none');
            jQuery('#bnr_' + szType + '_tbl').css('display', 'inline');

            var rfType = jQuery('#guiBnrRf').val();
            jQuery('#guiBnrSrc').val("<!--www.svadbaruneta.ru counter-->\n<a href='" + refUrl + recId + '/' + jQuery('#bnr_' + szType + '_tbl .banner:first').attr('id') + '/' + refType[rfType-1][0] + "' title='Свадьба Рунета - социальная свадебная сеть' target='_blank'><img src='" + bnrUrl + recId + '/' + jQuery('#bnr_' + szType + '_tbl .banner:first').attr('id') + "' border='0' alt='Свадьба Рунета - социальная свадебная сеть' /></a>\n<!--www.svadbaruneta.ru counter-->");

            jQuery('#bnr_' + szType + '_tbl input[name=banner]:first').attr('checked', 'true');
        });

        // при изменении ссылки выбираем первый баннер и изменяем ссылку в textarea
        jQuery('#guiBnrRf').change(function() {
            var idSelInp = jQuery('input[name=banner]:checked').attr('id');
            var idSelImg = jQuery('label[for=' + idSelInp + '] > img').attr('id');
            var rfType = jQuery('#guiBnrRf').val();
            jQuery('#guiBnrSrc').val("<!--www.svadbaruneta.ru counter-->\n<style>#svadba_button{vertical-align:top;display:inline-block;margin:0px;background:#fff url(http://www.svadbaruneta.ru/img/favicon31.gif) no-repeat scroll left top;width:88px;height:31px;text-decoration:none;text-align:right;border: 1px solid #DFDFDF;font-size:14px;font-weight:regular;font-family:Tahoma;color:#FF0000 !important;overflow:hidden;line-height:13px;padding:0px 3px 0px 0px;}</style><a id='svadba_button' href='" + refUrl + recId + '/' + idSelImg + '/' + refType[rfType-1][0] + "' title='Свадьба Рунета - социальная свадебная сеть' target='_blank'><img width='1' height='1' src='" + bnrUrl + recId + '/' + idSelImg + "' border='0' alt='Свадьба Рунета - социальная свадебная сеть' />Свадьба<br />Рунета</a>\n<!--www.svadbaruneta.ru counter-->");

        //jQuery('input[name=banner]:first').attr('checked', 'true');
        });

        // назначаем каждому изображению событие: при щелчке изменяем ссылку в textarea
        jQuery('.banner').each(function(i){
            jQuery(this).click(function() {
                var rfType = jQuery('#guiBnrRf').val();
                jQuery('#guiBnrSrc').val("<!--www.svadbaruneta.ru counter-->\n<style>#svadba_button{vertical-align:top;display:inline-block;margin:0px;background:#fff url(http://www.svadbaruneta.ru/img/favicon31.gif) no-repeat scroll left top;width:88px;height:31px;text-decoration:none;text-align:right;border: 1px solid #DFDFDF;font-size:14px;font-weight:regular;font-family:Tahoma;color:#FF0000 !important;overflow:hidden;line-height:13px;padding:0px 3px 0px 0px;}</style><a id='svadba_button' href='" + refUrl + recId + '/' + jQuery(this).attr('id') + '/' + refType[rfType-1][0] + "' title='Свадьба Рунета - социальная свадебная сеть' target='_blank'><img width='1' height='1' src='" + bnrUrl + recId + '/' + jQuery(this).attr('id') + "' border='0' alt='Свадьба Рунета - социальная свадебная сеть' />Свадьба<br />Рунета</a>\n<!-- www.svadbaruneta.ru counter-->");
            });
        });

        // аналогично назначаем каждой радиокнопке такое же событие
        jQuery('input[name=banner]').change(function() {
            var rbtn_id = jQuery(this).attr('id')
            var id = jQuery('label[for=' + rbtn_id + '] > img').attr('id');
            var rfType = jQuery('#guiBnrRf').val();
            jQuery('#guiBnrSrc').val("<!--www.svadbaruneta.ru counter-->\n<style>#svadba_button{vertical-align:top;display:inline-block;margin:0px;background:#fff url(http://www.svadbaruneta.ru/img/favicon31.gif) no-repeat scroll left top;width:88px;height:31px;text-decoration:none;text-align:right;border: 1px solid #DFDFDF;font-size:14px;font-weight:regular;font-family:Tahoma;color:#FF0000 !important;overflow:hidden;line-height:13px;padding:0px 3px 0px 0px;}</style><a id='svadba_button' href='" + refUrl + recId + '/' + id + '/' + refType[rfType-1][0] + "' title='Свадьба Рунета - социальная свадебная сеть' target='_blank'><img width='1' height='1' src='" + bnrUrl + recId + '/' + id + "' border='0'  alt='Свадьба Рунета - социальная свадебная сеть' />Свадьба<br />Рунета</a>\n<!--www.svadbaruneta.ru counter-->");
        });

        // первая инициализация поля при загрузке страницы
        var rfType = jQuery('#guiBnrRf').val();
        var szType = jQuery('#guiBnrSz').val();
        var idSelInp = jQuery('input[name=banner]:checked').attr('id');
        var idSelImg = jQuery('label[for=' + idSelInp + '] > img').attr('id');
        jQuery('#guiBnrSrc').val("<!--www.svadbaruneta.ru counter-->\n<style>#svadba_button{vertical-align:top;display:inline-block;margin:0px;background:#fff url(http://www.svadbaruneta.ru/img/favicon31.gif) no-repeat scroll left top;width:88px;height:31px;text-decoration:none;text-align:right;border: 1px solid #DFDFDF;font-size:14px;font-weight:regular;font-family:Tahoma;color:#FF0000 !important;overflow:hidden;line-height:13px;padding:0px 3px 0px 0px;}</style><a id='svadba_button' href='" + refUrl + recId + '/' + idSelImg + '/' + refType[rfType - 1][0] + "' title='Свадьба Рунета - социальная свадебная сеть' target='_blank'>Свадьба<br />Рунета<img width='1' height='1' src='" + bnrUrl + recId + '/' + idSelImg + "' border='0' alt='Свадьба Рунета - социальная свадебная сеть' /></a>\n<!--www.svadbaruneta.ru counter-->");
    }

    // слайдер по диапазону стоимости
    if (jQuery('#slideMoneyDiv').attr('id') == 'slideMoneyDiv') {
        var minMoneyDiv			= jQuery('#hdnMinMoneyDiv').val();
        var maxMoneyDiv			= jQuery('#hdnMaxMoneyDiv').val();
        var minMoneyNDiv		= jQuery('#hdnMinMoneyNDiv').val();
        var maxMoneyNDiv		= jQuery('#hdnMaxMoneyNDiv').val();

        /*var id_valute = jQuery('#hdnValuteType').val();
		var valute_divider = parseInt(jQuery('#hdnValute option[value=' + id_valute + ']').text());*/

        // создание слайдера и инициализация его начальными значениями
        initSlider('slideMoneyDiv', 0, 1000, 1, minMoneyDiv, maxMoneyDiv, true, function (event, ui) {
            var minValue = ui.values[0];
            var maxValue = ui.values[1];

            jQuery('#hdnMinMoneyDiv').val(minValue);
            jQuery('#hdnMaxMoneyDiv').val(maxValue);

            jQuery('#minMoneyDiv').val(sliderToReal(minValue));
            jQuery('#maxMoneyDiv').val(sliderToReal(maxValue));
        });

        // создание слайдера и инициализация его начальными значениями
        initSlider('slideMoneyNDiv', 0, 1000, 1, minMoneyNDiv, maxMoneyNDiv, true, function (event, ui) {
            var minValueNDiv = ui.values[0];
            var maxValueNDiv = ui.values[1];

            jQuery('#hdnMinMoneyNDiv').val(minValueNDiv);
            jQuery('#hdnMaxMoneyNDiv').val(maxValueNDiv);

            jQuery('#minMoneyNDiv').val(sliderToReal(minValueNDiv));
            jQuery('#maxMoneyNDiv').val(sliderToReal(maxValueNDiv));
        });

        // поле минимальной суммы (запрет ввода отличных от цифр символов)
        jQuery('#minMoneyDiv').keypress(function(e) {
            if((e.which >= 48 && e.which <= 57) || e.which == 8 || e.which == 0) {
                return true;
            }

            return false;
        });
        // поле минимальной суммы (проверка попадания в диапазон и синхронизация слайдера)
        jQuery('#minMoneyDiv').blur(function() {
            var min = sliderToReal(jQuery('#slideMoneyDiv').slider('option', 'min'));
            var cur = jQuery(this).val();
            var max = sliderToReal(jQuery('#slideMoneyDiv').slider('values', 1));

            if (cur < min) {
                cur = min;
                jQuery(this).val(cur);
            } else if (cur > max) {
                cur = max;
                jQuery(this).val(cur);

            }

            var slider_cur = realToSlider(cur);
            jQuery('#hdnMinMoneyDiv').val(slider_cur);
            jQuery('#slideMoneyDiv').slider('values', 0, slider_cur);
        });

        // поле максимальной суммы (запрет ввода отличных от цифр символов)
        jQuery('#maxMoneyDiv').keypress(function(e) {
            if((e.which >= 48 && e.which <= 57) || e.which == 8 || e.which == 0) {
                return true;
            }

            return false;
        });
        // поле максимальной суммы (проверка попадания в диапазон и синхронизация слайдера)
        jQuery('#maxMoneyDiv').blur(function() {
            var min = sliderToReal(jQuery('#slideMoneyDiv').slider('values', 0));
            var cur = jQuery(this).val();
            var max = sliderToReal(jQuery('#slideMoneyDiv').slider('option', 'max'));

            if (cur < min) {
                cur = min;
                jQuery(this).val(cur);

            } else if (cur > max) {
                cur = max;
                jQuery(this).val(cur);
            }

            var slider_cur = realToSlider(cur);
            jQuery('#hdnMaxMoneyDiv').val(slider_cur);
            jQuery('#slideMoneyDiv').slider('values', 1, slider_cur);
        });

        // поле минимальной суммы (запрет ввода отличных от цифр символов)
        jQuery('#minMoneyNDiv').keypress(function(e) {
            if((e.which >= 48 && e.which <= 57) || e.which == 8 || e.which == 0) {
                return true;
            }

            return false;
        });
        // поле минимальной суммы (проверка попадания в диапазон и синхронизация слайдера)
        jQuery('#minMoneyNDiv').blur(function() {
            var min = sliderToReal(jQuery('#slideMoneyNDiv').slider('option', 'min'));
            var cur = jQuery(this).val();
            var max = sliderToReal(jQuery('#slideMoneyNDiv').slider('values', 1));

            if (cur < min) {
                cur = min;
                jQuery(this).val(cur);
            } else if (cur > max) {
                cur = max;
                jQuery(this).val(cur);

            }

            var slider_cur = realToSlider(cur);
            jQuery('#hdnMinMoneyNDiv').val(slider_cur);
            jQuery('#slideMoneyNDiv').slider('values', 0, slider_cur);
        });

        // поле максимальной суммы (запрет ввода отличных от цифр символов)
        jQuery('#maxMoneyNDiv').keypress(function(e) {
            if((e.which >= 48 && e.which <= 57) || e.which == 8 || e.which == 0) {
                return true;
            }

            return false;
        });
        // поле максимальной суммы (проверка попадания в диапазон и синхронизация слайдера)
        jQuery('#maxMoneyNDiv').blur(function() {
            var min = sliderToReal(jQuery('#slideMoneyNDiv').slider('values', 0));
            var cur = jQuery(this).val();
            var max = sliderToReal(jQuery('#slideMoneyNDiv').slider('option', 'max'));

            if (cur < min) {
                cur = min;
                jQuery(this).val(cur);

            } else if (cur > max) {
                cur = max;
                jQuery(this).val(cur);
            }

            var slider_cur = realToSlider(cur);
            jQuery('#hdnMaxMoneyNDiv').val(slider_cur);
            jQuery('#slideMoneyNDiv').slider('values', 1, slider_cur);
        });

        // переводит значение из реальной системы исчисления в систему исчисления слайдера
        function realToSlider(real) {
            var slider = Math.round(real);

            var id_valute = jQuery('#hdnValuteType').val();
            var valute_divider = parseInt(jQuery('#hdnValute option[value=' + id_valute + ']').text());

            if (valute_divider == 1) {
                if (real > 0 && real <= 25) {
                    var tmpValue = (real - 1) / 24;
                    slider = tmpValue * 250;
                } else if (real > 25 && real <= 100) {
                    var tmpValue = (real - 25) / 75;
                    slider = tmpValue * 250 + 250;
                } else if (real > 100 && real <= 1000) {
                    var tmpValue = (real - 100) / 900;
                    slider = tmpValue * 250 + 500;
                } else if (real > 1000 && real <= 15000) {
                    var tmpValue = (real - 1000) / 14000;
                    slider = tmpValue * 250 + 750;
                }
            } else {
                if (real > 0 && real <= 1000) {
                    var tmpValue = (real - 100) / 900;
                    slider = tmpValue * 250;
                } else if (real > 1000 && real <= 5000) {
                    var tmpValue = (real - 1000) / 4000;
                    slider = tmpValue * 250 + 250;
                } else if (real > 5000 && real <= 50000) {
                    var tmpValue = (real - 5000) / 45000;
                    slider = tmpValue * 250 + 500;
                } else if (real > 50000 && real <= 500000) {
                    var tmpValue = (real - 50000) / 450000;
                    slider = tmpValue * 250 + 750;
                }
            }

            return Math.round(slider);
        }
        // переводит значение из системы исчисления слайдера в реальную систему исчисления
        function sliderToReal(slider) {
            var real = Math.round(slider);

            var id_valute = jQuery('#hdnValuteType').val();
            var valute_divider = parseInt(jQuery('#hdnValute option[value=' + id_valute + ']').text());

            if (valute_divider == 1) {
                if (slider > 0 && slider <= 250) {
                    var tmpValue = slider / 250;
                    real = tmpValue * 24 + 1;
                } else if (slider > 250 && slider <= 500) {
                    var tmpValue = (slider - 250) / 250;
                    real = tmpValue * 75 + 25;
                } else if (slider > 500 && slider <= 750) {
                    var tmpValue = (slider - 500) / 250;
                    real = tmpValue * 900 + 100;
                } else if (slider > 750 && slider <= 1000) {
                    var tmpValue = (slider - 750) / 250;
                    real = tmpValue * 14000 + 1000;
                }
            } else {
                if (slider > 0 && slider <= 250) {
                    var tmpValue = slider / 250;
                    real = tmpValue * 900 + 100;
                } else if (slider > 250 && slider <= 500) {
                    var tmpValue = (slider - 250) / 250;
                    real = tmpValue * 4000 + 1000;
                } else if (slider > 500 && slider <= 750) {
                    var tmpValue = (slider - 500) / 250;
                    real = tmpValue * 45000 + 5000;
                } else if (slider > 750 && slider <= 1000) {
                    var tmpValue = (slider - 750) / 250;
                    real = tmpValue * 450000 + 50000;
                }
            }

            return Math.round(real);
        }
    }

    if (jQuery('#slideStars').attr('id') == 'slideStars') {
        minStars			= jQuery('#hdnMinStars').val();
        maxStars			= jQuery('#hdnMaxStars').val();

        initSlider('slideStars', 0, 7, 1, minStars, maxStars, true, function (event, ui) {
            var minValue = ui.values[0];
            var maxValue = ui.values[1];

            jQuery('#minStars').attr('src', '/public/img/stars-' + minValue + '.gif');
            jQuery('#hdnMinStars').val(minValue);

            jQuery('#maxStars').attr('src', '/public/img/stars-' + maxValue + '.gif');
            jQuery('#hdnMaxStars').val(maxValue);
        });
    }

    // /catalog/index - форма поиска - смена типа поиска (стоимость | ценовой сегмент)
    function changeMoneyType() {
        var type = jQuery(this).attr('rel');
        var links = '';

        if (type == 'price-segment-type') {
            links += '<a href="javascript:void(0)" class="dotedLink" id="changeMoneyType" rel="cost-type">стоимость</a>&nbsp;&nbsp;<span class="redSpan">ценовой сегмент</span>';
            jQuery('#cost-type').fadeOut('fast', function() {
                jQuery('#price-segment-type').fadeIn('slow');
            });
        } else if (type == 'cost-type') {
            links += '<span class="redSpan">стоимость</span>&nbsp;&nbsp;<a href="javascript:void(0)" class="dotedLink" id="changeMoneyType" rel="price-segment-type">ценовой сегмент</a>';
            jQuery('#price-segment-type').fadeOut('fast', function() {
                jQuery('#cost-type').fadeIn('slow');
            });
        }

        jQuery('#hdnMoneyType').val(type);
        jQuery('#moneyType').html(links);
        // jQuery(this) нельзя - мы изменили ссылки
        jQuery('#changeMoneyType').click(changeMoneyType);
    }
    // /catalog/index - форма поиска - смена типа поиска - начальная инициализация
    if (jQuery('#changeMoneyType').attr('id') == 'changeMoneyType') {
        jQuery('#changeMoneyType').click(changeMoneyType);
    }

    // /catalog/index - форма поиска - смена типа валюты (рубли | доллары | евро)
    function changeValuteType() {
        var sel_el = jQuery(this);
        var unsel_el = jQuery('.redSpan.changeValuteType');

        unsel_el.addClass('dotedLink');
        unsel_el.attr('href', 'javascript:void(0)');
        unsel_el.removeClass('redSpan');

        sel_el.removeClass('dotedLink');
        sel_el.addClass('redSpan');
        sel_el.removeAttr('href');

        var is_thousand_div = jQuery('#hdnValute > option[value=' + sel_el.attr('rel') + ']').text();

        if (is_thousand_div == 1) {
            jQuery('#thousand_div').css('display', 'block');
            jQuery('#no_thousand_div').css('display', 'none');
        } else {
            jQuery('#thousand_div').css('display', 'none');
            jQuery('#no_thousand_div').css('display', 'block');
        }

        jQuery('#hdnValuteType').val(sel_el.attr('rel'));
        // jQuery(this) нельзя - мы изменили ссылки
        jQuery('.changeValuteType').click(changeValuteType);
    }
    if (jQuery('.changeValuteType').hasClass('changeValuteType')) {
        jQuery('.changeValuteType').click(changeValuteType);
    }

    // /catalog/index - форма поиска - смена типа ценового сегмента (низкий | средний | высокий)
    function changeSegmentType() {
        var sel_el = jQuery(this);
        var unsel_el = jQuery('.redSpan.changeSegmentType');

        unsel_el.addClass('dotedLink');
        unsel_el.attr('href', 'javascript:void(0)');
        unsel_el.removeClass('redSpan');

        sel_el.removeClass('dotedLink');
        sel_el.addClass('redSpan');
        sel_el.removeAttr('href');

        jQuery('#hdnSegmentType').val(sel_el.attr('rel'));
        // jQuery(this) нельзя - мы изменили ссылки
        jQuery('.changeSegmentType').click(changeSegmentType);
    }
    if (jQuery('.changeSegmentType').hasClass('changeSegmentType')) {
        jQuery('.changeSegmentType').click(changeSegmentType);
    }

    // /user/add-catalog - поля поиска - (по имени и фамилии | по названию фирмы)
    function changeFrmSnmSrchType() {
        var sel_el 		= jQuery(this);
        var unsel_el 	= jQuery('.redSpan.frmSnmCtlgSrch');

        unsel_el.addClass('dotedLink');
        unsel_el.attr('href', 'javascript:void(0)');
        unsel_el.removeClass('redSpan');

        sel_el.removeClass('dotedLink');
        sel_el.addClass('redSpan');
        sel_el.removeAttr('href');

        if (sel_el.attr('id') == 'byfirm') {
            jQuery('#guiSrchByNameDiv').fadeOut('fast', function() {
                jQuery('#guiSrchByFirmDiv').fadeIn('slow');
            });
        } else {
            jQuery('#guiSrchByFirmDiv').fadeOut('fast', function() {
                jQuery('#guiSrchByNameDiv').fadeIn('slow');
            });
        }

        jQuery('#hdnFrmSnmCtlgSrch').val(sel_el.attr('id'));
        jQuery('.frmSnmCtlgSrch').click(changeFrmSnmSrchType);
    }
    if (jQuery('.frmSnmCtlgSrch').hasClass('frmSnmCtlgSrch')) {
        jQuery('.frmSnmCtlgSrch').click(changeFrmSnmSrchType);
    }
});

// когда-то это была функция сокращающая код, но после внесения бесчисленных множеств изменений заказчиками
// практически весь код оказался вынесенным из функции оставив от нее лишь заглушку :(
function initSlider(div_id, min, max, step, val1, val2, range, slide) {
    jQuery('#' + div_id).slider({
        range	: range,
        min		: min,
        max		: max,
        step	: step,
        values	: [val1, val2],
        slide	: slide
    });
}

function sendBannerMail() {

    jQuery('#sndBnrMsg').css('display', 'none');
    jQuery('#GuiSend').attr('disabled', true);
    jQuery.post(
        '/user/send-banner-mail', {
            'bnrsrc' : jQuery('#guiBnrSrc').val()
            ,
            'id'     : jQuery('#guiRecordIdHdn').val()
        }, function(data) {
            if (data.code) {
            // ошибка отправки
            } else {

            }
            jQuery('#GuiSend').attr('disabled', false);
            jQuery('#sndBnrMsg').text(data.message);
            jQuery('#sndBnrMsg').css('display', 'inline');
        }, 'json'
        );
}

function deleteCatalog() {
    var catalog_id = jQuery('#idRecord').val();
    var path       = "";
    if (jQuery('#path')) {
        path = jQuery('#path').val();
    }
    jQuery.post(
        '/user/delete-item',
        {
            'catid': catalog_id
        },
        function(data) {
            if (data.code) {
                // ошибка удаления
                alert('При удалении возникла ошибка');
            } else {
                if (path) {
                    window.location.href = path;
                }else{
                    window.location.href = '/user/my-catalog';
                }
            }
        },
        'json'
        );
}

/**
 * set new params for catalog item
 *
 * @name UpdateCatalogItem
 * @author Batechko Dmitry <ReptileDB@bigmir.net>
 * @last Batechko Dmitry 13.10.2009
 *
 */
function UpdateCatalogItem(){

    jQuery('#guiBtnUpdateCatalog').attr('disabled',true);
    var option = {};

    option['id_chapter'] = jQuery('select[@name=guiSelSetChapter] option:selected').val();
    option['idRecord'] = jQuery('#idRecord').val();
    option['is_allow_comments'] = jQuery('input:checkbox[id=allowComments]:checked').val();
    option['meta_title'] = jQuery('#meta_title').val();
    option['meta_keywords'] = jQuery('#meta_keywords').val();
    option['meta_description'] = jQuery('#meta_description').val();

    
    if (option['is_allow_comments'] == undefined) {
        option['is_allow_comments']    = 0;
    }

    jQuery.ajax({
        type     : "POST",
        url      :  "/user/update-catalog",
        async    : false,
        data     : option,
        dataType : "json",
        success  : function(data){
            if (data.code) {
                alert('При изминении параметров произошла ошибка.');
            }
            else {

                showPopUpWindow('guiAlertWindow');
                jQuery('#guiDivMessage').html('<p><b>Параметры успешно изменены!</b></p>');
                setTimeout(function(){
                    closeModal();
                    location.reload(true);
                },1500);
            }
        },
        error    : function (){}
    });
}

/**
 * edit catalog item
 *
 * @name EditCatalogItem
 * @author Batechko Dmitry <ReptileDB@bigmir.net>
 * @last Batechko Dmitry 14.10.2009
 *
 */
function EditCatalogItem(){
    var option = {};
    option['idRecord'] = jQuery('#idRecord').val();

    jQuery('#guiBtnCatalogEdit').attr('disabled',true);

    jQuery.ajax({
        type     : "POST",
        url      :  "/catalog/edit-item",
        async    : false,
        data     : option,
        dataType : "json",
        success  : function(data){
            if (data.code) {
                alert('Ошибка при попытке открытия записи на редактирование.');
            }
            else {
                window.location.href = data.url;
            }
        },
        error    : function (){
            alert("Error");
        }
    });
}


/**
 *
 * @access public
 * @return void
 **/
function showCatalogEditor(){
    lightEditor = CKEDITOR.replace('guiTxtLingthAnswerOnTopic', {
        customConfig: '/js/ckconfig-light.js'
    })
}

function setSelectedValut(idVal){
    var title = '';

    var currValutId     = jQuery('#guiHdnCurrChangeValutId').val();
    var isDividing      = jQuery('#guiHdnIsDividing'+idVal).val();
    var isDividingOld   = jQuery('#guiHdnIsDividing'+currValutId).val();
    var shortDescrValut = jQuery('#guiHdnShortDescr' + idVal).val();

    if (idVal == currValutId) {
        return false;
    }

    jQuery('#guiSpnMinOrderSum').html(shortDescrValut);
    jQuery('#guiSpnMidOrderSum').html(shortDescrValut);
    jQuery('#guiSpnMaxOrderSum').html(shortDescrValut);

    // установка текущей валюты
    jQuery('#guiHdnCurrChangeValutId').val(idVal);

    //1. Пересчитываем курс
    var currValutRate = jQuery('#guiHdnCurrValut').val();
    var newValutRate  = jQuery('#guiHdnValut'+idVal).val();
    var multipl       = 1;
    var divid         = 1;

    if (isDividingOld == "1") {
        multipl = 1;
    }

    if (parseInt(isDividing) === 1) {
        jQuery('#guiSpnMinOrderSum').html(/*'тысяч ' + */shortDescrValut);
        jQuery('#guiSpnMidOrderSum').html(/*'тысяч ' + */shortDescrValut);
        jQuery('#guiSpnMaxOrderSum').html(/*'тысяч ' + */shortDescrValut);
        divid = 1;
    }

    var minSumm = jQuery('#minSum').val()*multipl;
    var midSumm = jQuery('#midleSum').val()*multipl;
    var maxSumm = jQuery('#maxSum').val()*multipl;
    //toFixed

    minSumm = (minSumm * currValutRate) / newValutRate / divid;
    midSumm = (midSumm * currValutRate) / newValutRate / divid;
    maxSumm = (maxSumm * currValutRate) / newValutRate / divid;

    jQuery('#minSum').val(minSumm.toFixed(2));
    jQuery('#midleSum').val(midSumm.toFixed(2));
    jQuery('#maxSum').val(maxSumm.toFixed(2));

    var iter = 0;

    //2. Меняем стилевое оформление ссылок

    jQuery('td#guiTdLangPanel > a').each(function(i) {

        if (idVal === this.id) {
            jQuery('#'+this.id).attr('class','redSpan')
            // .removeAttr('onclick')
            .removeAttr('href');
            jQuery('#guiHdnSelectedValutId').val(this.id);
        }else{
            jQuery('#'+this.id)
            //.removeAttr('onclick')
            .attr('class','dotedLink')
            .attr('href','javascript:void(0);')
            //	  .click(function(){setSelectedValut(this.id); });

            jQuery('#guiHdnCurrValut').val(newValutRate);
        }
        iter++;
    });
}




function checkInputValue(type){
    var currValutId     = parseInt(jQuery('#guiHdnSelectedValutId').val());
    var isDividing      = jQuery('#guiHdnIsDividing'+currValutId).val();
    var shortDescrValut = jQuery('#guiHdnShortDescr' + currValutId).val();
    var result          = '';

    var minValue = parseFloat(jQuery('#minSum').val());
    var midValue = parseFloat(jQuery('#midleSum').val());
    var maxValue = parseFloat(jQuery('#maxSum').val());

    jQuery('#guiSpnMinOrderSum').html(shortDescrValut);
    jQuery('#guiSpnMidOrderSum').html(shortDescrValut);
    jQuery('#guiSpnMaxOrderSum').html(shortDescrValut);

    jQuery('#guiDivErrorMinValue').hide();

    if (parseInt(isDividing) === 1) {
        jQuery('#guiSpnMinOrderSum').html(/*'тысяч ' + */shortDescrValut);
        jQuery('#guiSpnMidOrderSum').html(/*'тысяч ' + */shortDescrValut);
        jQuery('#guiSpnMaxOrderSum').html(/*'тысяч ' + */shortDescrValut);
    }


    if (parseInt(type) > 0) { // проверяем все поля
        switch(parseInt(type)){
            case 1: // обработка минимального
                if (minValue < 0) {
                    jQuery('#guiDivErrorMinValue').html('Минимальное сумма не может быть меньше или равняться нулю!');
                    jQuery('#guiDivErrorMinValue').show();

                    doCatalogShake(['minSum']);
                    setTimeout("jQuery('#guiDivErrorMinValue').hide(2);jQuery('#minSum').val('1');jQuery('#minSum').focus();",1000);
                }
                break;
            case 2: // обработка среднего
                if (midValue < 0) {
                    jQuery('#guiDivErrorMidValue').html('Среднее сумма не может быть меньше или равняться нулю!');
                    jQuery('#guiDivErrorMidValue').show();

                    doCatalogShake(['midleSum']);
                    setTimeout("jQuery('#guiDivErrorMidValue').hide(2);jQuery('#midleSum').val('1');jQuery('#midleSum').focus();",1000);
                }else if (midValue < minValue) {
                    jQuery('#guiDivErrorMidValue').html('Среднее сумма не может быть меньше чем минимальная сумма.');
                    jQuery('#guiDivErrorMidValue').show();

                    doCatalogShake(['midleSum']);
                    setTimeout("jQuery('#guiDivErrorMidValue').hide(2);jQuery('#midleSum').val(jQuery('#minSum').val());jQuery('#midleSum').focus();",3000);
                }else if (midValue > maxValue) {
                    jQuery('#guiDivErrorMidValue').html('Среднее сумма не может быть больше чем максимальная.');
                    jQuery('#guiDivErrorMidValue').show();

                    doCatalogShake(['midleSum']);
                    setTimeout("jQuery('#guiDivErrorMidValue').hide(2);jQuery('#midleSum').val(jQuery('#maxSum').val());jQuery('#midleSum').focus();",3000);
                }
                break;
            case 3: // обработка максимального
                if (maxValue < 0) {
                    jQuery('#guiDivErrorMaxValue').html('Максимальная сумма не может быть меньше или равняться нулю!');
                    jQuery('#guiDivErrorMaxValue').show();

                    doCatalogShake(['maxSum']);
                    setTimeout("jQuery('#guiDivErrorMaxValue').hide(2);jQuery('#maxSum').val('1');jQuery('#maxSum').focus();",1000);
                }else if (maxValue < midValue || maxValue < minValue) {
                    jQuery('#guiDivErrorMaxValue').html('Максимальная сумма не может быть меньше чем средняя или минимальная сумма.');
                    jQuery('#guiDivErrorMaxValue').show();

                    doCatalogShake(['maxSum']);
                    setTimeout("jQuery('#guiDivErrorMaxValue').hide(2);jQuery('#maxSum').val(jQuery('#midleSum').val());jQuery('#maxSum').focus();",3000);
                }
                break;
        } // switch
    }

    if (parseInt(isDividing) === 1 && (maxValue > 999 || midValue > 999 || minValue > 999)) {
        if (minValue > 999) {
            jQuery('#guiDivErrorMinValue').html('Сумма не может быть больше 999 тысяч.');
            jQuery('#guiDivErrorMinValue').show();

            doCatalogShake(['minSum']);
            setTimeout("jQuery('#guiDivErrorMinValue').hide(2);jQuery('#minSum').val('999');jQuery('#minSum').focus();",3000);
        }

        if (midValue > 999) {
            jQuery('#guiDivErrorMidValue').html('Сумма не может быть больше 999 тысяч.');
            jQuery('#guiDivErrorMidValue').show();

            doCatalogShake(['midleSum']);
            setTimeout("jQuery('#guiDivErrorMidValue').hide(2);jQuery('#midleSum').val('999');jQuery('#midleSum').focus();",3000);
        }

        if (maxValue > 999) {
            jQuery('#guiDivErrorMaxValue').html('Сумма не может быть больше 999 тысяч.');
            jQuery('#guiDivErrorMaxValue').show();

            doCatalogShake(['maxSum']);
            setTimeout("jQuery('#guiDivErrorMaxValue').hide(2);jQuery('#maxSum').val('999');jQuery('#maxSum').focus();",3000);
        }



    }
}

function doCatalogShake(fields){
    //shakeanemo = true;
    for(var i = 0; i < fields.length; i++) {
        shake(fields[i]);
    }
}


function submitCatalog(){
    var result = false;

    jQuery('#guiBtnSaveCatalog').attr('disabled',true);

    //1. Название фирмы
    var descr = jQuery('#guiStrFirmDescr').val();
    //2. Раздел
    var chapter = jQuery('#guiChapterSelectCat option:selected').val();
    //3. Страна
    var country = jQuery('#guiCountrySelectCat option:selected').val();
    //4. Регион
    var region = jQuery('#guiRegionSelectCat option:selected').val();
    //5. Город
    var city = jQuery('#guiTownSelectCat option:selected').val();
    //6. Краткая информация
    var short = jQuery('#guiStrShortDescr').attr('value');
    //7. Адрес сайта
    var siteLink = jQuery('#guiStrWeb').attr('value');

    var minValue = parseFloat(jQuery('#minSum').val());
    var midValue = parseFloat(jQuery('#midleSum').val());
    var maxValue = parseFloat(jQuery('#maxSum').val());
    var verticalAlign = -150;

    if (!descr.length) {
        jQuery('#guiDivErrorDescr').html('Название фирмы - поля обязательное для заполнения!');
        jQuery('#guiDivErrorDescr').show();

        jQuery(this).scrollTop(jQuery('a#descrAnchors').position().top+verticalAlign);

        setTimeout("jQuery('#guiDivErrorDescr').animate({ opacity: \"hide\" }, 1500);jQuery('#guiStrFirmDescr').focus();",3000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return result;
    }

    if (!(chapter > 0) && chapter != undefined) {
        jQuery('#guiDivErrorChapter').html('Не выбран раздел каталога!');
        jQuery('#guiDivErrorChapter').show();

        jQuery(this).scrollTop(jQuery('a#chapterAnchors').position().top+verticalAlign);

        setTimeout("jQuery('#guiDivErrorChapter').animate({ opacity: \"hide\" }, 1500);jQuery('#guiChapterSelectCat').focus();",3000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return result;
    }

    if (!(country > 0)) {
        jQuery('#guiDivErrorCountry').html('Укажите местоположение полностью!');
        jQuery('#guiDivErrorCountry').show();

        jQuery(this).scrollTop(jQuery('a#cityAnchors').position().top+verticalAlign);

        setTimeout("jQuery('#guiDivErrorCountry').animate({ opacity: \"hide\" }, 1500);jQuery('#guiCountrySelectCat').focus();",3000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return result;
    }

    if (!(region > 0)) {
        jQuery('#guiDivErrorCountry').html('Укажите местоположение полностью!');
        jQuery('#guiDivErrorCountry').show();

        jQuery(this).scrollTop(jQuery('a#cityAnchors').position().top+verticalAlign);

        setTimeout("jQuery('#guiDivErrorRegion').animate({ opacity: \"hide\" }, 1500);jQuery('#guiRegionSelectCat').focus();",3000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return result;
    }

    if (!(city > 0)) {
        jQuery('#guiDivErrorCountry').html('Укажите местоположение полностью!');
        jQuery('#guiDivErrorCountry').show();

        jQuery(this).scrollTop(jQuery('a#cityAnchors').position().top+verticalAlign);

        setTimeout("jQuery('#guiDivErrorCity').animate({ opacity: \"hide\" }, 1500);jQuery('#guiTownSelectCat').focus();",3000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return result;
    }

    if (!short.length) {
        jQuery('#guiDivErrorShortDescr').html('Введите которкое описание каталога!');
        jQuery('#guiDivErrorShortDescr').show();

        jQuery(this).scrollTop(jQuery('a#shortAnchors').position().top+verticalAlign);

        setTimeout("jQuery('#guiDivErrorShortDescr').animate({ opacity: \"hide\" }, 1500);jQuery('#guiStrShortDescr').focus();",3000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return result;
    }

    if (siteLink.length) {
        if(siteLink.indexOf("www.", 0) == -1) {
            siteLink = 'www.'+siteLink
        }

        var regexp = new RegExp("(^(http\://|https\://|ftp\://)|(www.))+(([a-zA-Z0-9\.-]+\.[a-zA-Z]{2,4})|([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}))(/[a-zA-Z0-9%:/-_\?\.'~]*)?");

        if (!regexp.test(siteLink)) {
            jQuery('#guiDivErrorWebSite').html('Ссылка не соответсвует формату.');
            jQuery('#guiDivErrorWebSite').show();

            jQuery(this).scrollTop(jQuery('a#webSiteLinkAnchors').position().top+verticalAlign);

            setTimeout("jQuery('#guiDivErrorWebSite').animate({ opacity: \"hide\" }, 1500);jQuery('#guiStrWeb').focus();",3000);

            jQuery('#guiBtnSaveCatalog').attr('disabled',false);

            return result;
        }

    //  if(!(siteLink.indexOf("http://", 0) == -1)) {
    // siteLink = 'http://' + siteLink;
    //jQuery('#guiStrWeb').val(siteLink);
    //  }
    }

    if (minValue < 0) {
        jQuery('#guiDivErrorMinValue').html('Минимальное сумма не может быть меньше или равняться нулю!');
        jQuery('#guiDivErrorMinValue').show();

        doCatalogShake(['minSum']);
        setTimeout("jQuery('#guiDivErrorMinValue').animate({ opacity: \"hide\" }, 1500);jQuery('#minSum').val('1');jQuery('#minSum').focus();",5000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return false;
    }else if(minValue > maxValue){
        jQuery('#guiDivErrorMinValue').html('Минимальное сумма не может быть больше максимально допустимой!');
        jQuery('#guiDivErrorMinValue').show();

        doCatalogShake(['minSum']);
        setTimeout("jQuery('#guiDivErrorMinValue').hide(2);jQuery('#minSum').focus();",5000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return false;
    }

    if (midValue < 0) {
        jQuery('#guiDivErrorMidValue').html('Среднее сумма не может быть меньше или равняться нулю!');
        jQuery('#guiDivErrorMidValue').show();

        doCatalogShake(['midleSum']);
        setTimeout("jQuery('#guiDivErrorMidValue').hide(2);jQuery('#midleSum').focus();",5000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return false;
    }else if (midValue < minValue) {
        jQuery('#guiDivErrorMidValue').html('Среднее сумма не может быть меньше чем минимальная сумма.');
        jQuery('#guiDivErrorMidValue').show();

        doCatalogShake(['midleSum']);
        setTimeout("jQuery('#guiDivErrorMidValue').hide(2);jQuery('#midleSum').focus();",5000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return false;
    }else if (midValue > maxValue) {
        jQuery('#guiDivErrorMidValue').html('Среднее сумма не может быть больше чем максимальная.');
        jQuery('#guiDivErrorMidValue').show();

        doCatalogShake(['midleSum']);
        setTimeout("jQuery('#guiDivErrorMidValue').hide(2);jQuery('#midleSum').focus();",5000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return false;
    }

    if (maxValue < 0) {
        jQuery('#guiDivErrorMaxValue').html('Максимальная сумма не может быть меньше или равняться нулю!');
        jQuery('#guiDivErrorMaxValue').show();

        doCatalogShake(['maxSum']);
        setTimeout("jQuery('#guiDivErrorMaxValue').hide(2);jQuery('#maxSum').val('1');jQuery('#maxSum').focus();",5000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return false;
    }else if (maxValue < minValue) {
        jQuery('#guiDivErrorMaxValue').html('Максимальная сумма не может быть меньше чем средняя или минимальная сумма.');
        jQuery('#guiDivErrorMaxValue').show();

        doCatalogShake(['maxSum']);
        setTimeout("jQuery('#guiDivErrorMaxValue').hide(2);jQuery('#maxSum').focus();",5000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return false;
    }else if (maxValue < midValue) {
        jQuery('#guiDivErrorMaxValue').html('Максимальная сумма не может быть меньше чем средняя или минимальная сумма.');
        jQuery('#guiDivErrorMaxValue').show();

        doCatalogShake(['maxSum']);
        setTimeout("jQuery('#guiDivErrorMaxValue').hide(2);jQuery('#maxSum').focus();",5000);
        jQuery('#guiBtnSaveCatalog').attr('disabled',false);
        return false;
    }

    /*
    body = jQuery('#'+Editor.divName+' #editorTextArea').val();
    if (jQuery.trim(body) == '' ||  body.length == 0) {
        Editor.ModalClose();
        showPopUpWindow('guiAlertWindow');
        jQuery('#guiDivMessage').html('<p><b>Введите текст</b></p>');
        return false;
    }
    */
    
    return true;
}

function showCatalogImageBox(){
    showPopUpWindow('guiForumImageForm');
}



/**
 *
 * Get capcha
 *
 * @name getCaptchaStringForCatalogRegistrationForm
 * @author Sergey Donchenko <sergey.donchenko@gmail.com>
 * @last 09.09.2009 Sergey Donchenko
 *
 */
function getCaptchaStringForCatalogRegistrationForm(){
    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 initCatalogRegistrationForm(){
    // 1. Загрузка капчи
    jQuery('#guiSpnCaptcha').html('загрузка ...');
    getCaptchaStringForCatalogRegistrationForm();

    // 2. Инициализация формы
    jQuery('#guiFrmCatRegForm').validate({
        submitHandler: function(form) {
            var body = CKEDITOR.instances['guiTxtLingthAnswerOnTopic'].document.getBody();
            var data = strip_tags(jQuery.trim(CKEDITOR.instances['guiTxtLingthAnswerOnTopic'].getData()));

            if (jQuery.trim(data) == '' && data.length == 0) {
                alert('Введите текст сообщения');
                CKEDITOR.instances['guiTxtLingthAnswerOnTopic'].focus();
                return false;
            }

            var txtBody = CKEDITOR.instances['guiTxtLingthAnswerOnTopic'].getData();

            if (!txtBody.length) {
                jQuery('#guiDivPostEditor').html('Введите комментарий в текстовую область!');
                return;
            }else{
                jQuery('#guiHdnPostMessage').val(txtBody);
            }

            jQuery('#guiAddNewComment').attr('disabled',true);

            var options = {
                type: 'post',
                url: '/catalog/light-registration',
                dataType: 'json',
                success: function(data) {

                    if (data.code > 0) {
                        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('#guiAddNewComment').attr('disabled',false);
                            }else
                            if(data.control == 'guiStrEmail'){
                                jQuery('#guiDivEmailError').html(data.message);
                                jQuery('#guiDivEmailError').css({
                                    'color': 'red'
                                });
                                jQuery('#guiDivEmailError').focus();
                                jQuery('#guiAddNewComment').attr('disabled',false);
                            }else
                            if(data.control == 'guiStrLogin'){
                                jQuery('#guiDivLoginError').html(data.message);
                                jQuery('#guiDivLoginError').css({
                                    'color': 'red'
                                });
                                jQuery('#guiAddNewComment').attr('disabled',false);
                            }

                            jQuery('#'+data.control).focus();
                            jQuery('#'+data.control).next('div').html(data.message);
                            jQuery('#'+data.control).next('div').css({
                                'color': 'red'
                            });
                            jQuery('#'+data.control).focus();
                        }else{
                            jQuery('div:last').css({
                                'color' : 'red'
                            }).html(data.message);
                        }
                        jQuery('#guiStrDescr').html(data.capcha_descr);
                        jQuery('#guiIntCapcha').val(data.capcha_id);
                        jQuery('#guiAddNewComment').attr('disabled',false);
                    }else{
                        if(data.control) {
                            jQuery('#gui'+data.control).next('div').html(data.message);
                            jQuery('#guiAddNewComment').attr('disabled',false);
                        } else {
                            jQuery('#errDiv').html(data.message);
                            jQuery('#guiAddNewComment').attr('disabled',false);
                        }


                        showPopUpWindow('guiAlertWindow');
                        jQuery('#guiDivMessage').html('<p><b>Ваше сообщение успешно добавленно!</b></p>');
                        jQuery('#guiFastAnswerBlock').hide();

                        location.reload(true);
                    }

                },
                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'
                }
            }
        },
        messages: {
            guiStrLogin: {
                required: 'Укажите Ваше имя',
                remote: 'Это имя уже занято, попробуйте другое'
            },
            guiStrEmail: {
                required: 'С вашей почтой что-то не так:(',
                email: 'С вашей почтой что-то не так:(',
                remote: 'Эта Эл. почта уже используется'
            }
        },
        success: function(label) {
            switch (label.attr('for')) {
                case 'guiStrCatalogLogin':
                    label.css({
                        'color' : 'green'
                    }).html('Это имя свободно');
                    break;
                case 'guiStrCatalogEmail':
                    label.css({
                        'color' : 'green'
                    }).html('Эту Эл. почту можно использовать');
                    break;
            }
        },
        errorPlacement: function(error, element) {
            var er = element.attr('id');
            jQuery('#' + er).next('div').css({
                'color' : 'red'
            }).html(error);
        }

    });
}


/**
  * Show autorization form
  *
  * @name catalogAutorization
  * @author Sergey Donchenko <sergey.donchenko@gmail.com>
  * @last 10.09.2009 Sergey Donchenko
  * @params
  *         uid  - user's identificator
  *
 */

function catalogAutorization(uid){

    var txtBody = CKEDITOR.instances['guiTxtLingthAnswerOnTopic'].getData();

    jQuery('#guiDivPostEditor').html('');

    if (!txtBody.length) {
        alert('Введите комментарий в текстовую область!');
        CKEDITOR.instances['guiTxtLingthAnswerOnTopic'].focus();
        return;
    }else{
        jQuery('#guiHdnPostMessage').val(txtBody);
    }

    if (arrWindow===undefined) {
        return;
    }

    var options = {
        containerId : 'modalContainer',
        onShow : function() {
            jQuery(':input[id="guiStrEmail"]').focus();
        }
    };

    var dialog = jQuery('#popUpWindow');
    jQuery('#popUpWindow').html(arrWindow['guiAuthForm']);

    // init validator
    initCatalogAuthorizationForm();

    //init dialog form
    dialog.modal(options);

    var usAgent = navigator.userAgent.toLowerCase();
    if(usAgent.indexOf("safari") != -1){
        var F = document.forms;
        for(var j=0; j<F.length; ++j) {
            var f = F[j];
            for (var i=0; i<f.length; ++i) {
                if (f[i].type.toLowerCase() == "password") {
                    var el = f[i];
                    el.type = "text";
                    el.style.cssText = "-webkit-text-security: disc";
                }
            }
        }
    }
}
/**
 * Add to interesting
 *
 * @name addToInteresting
 * @author Batechko Dmitry <ReptileDB@bigmir.net>
 * @last   Batechko Dmitry 24.12.2009
 *
 */
function addToInteresting(){
    jQuery('#addToInteresting').attr('disabled',true);

    var option      = {};
    option['cat-item-ident']   = jQuery('#cat-item-ident').val();
    jQuery.ajax({
        type     : "POST",
        url      : "/catalog/add-favorite",
        async    : false,
        data     : option,
        dataType : "json",
        success  : function(data){
            if (!(data.code > 0)) {

                jQuery('#guiTdInInterest').html(data.html);
                jQuery('#guiPInterestStruct').html('<img src="/public/img/red-heart-comment.gif" border="0" class="statusImg" />&nbsp;<a href="javascript:void(0)" title="Удалить фирму из избранных" id="del-favorite-link" class="dashedLink" onclick="deleteInterestFirmAction();">эта фирма находится в избранном</a>');
                jQuery('#guiPFavoriteCountTab').html(data.html);

            /*jQuery('#guiSpanConsistInInterest').html(data.newcount);
*/
            //location.reload(true);
            }else{
                alert(data.message);
            }
        },
        error    : function (){
            alert('Error');
        }
    });
}

function deleteInterestFirmAction(){

    var option = {};
    jQuery('#delInteresting').attr('disabled',true);

    option['id_firm']  = jQuery('#del-item-ident').val();
    ;

    if (!(parseInt(option['id_firm']) > 0)) {
        alert(option['id_firm']);
        return false;
    }

    jQuery.ajax({
        type     : "POST",
        url      : "/user/del-interest-firm",
        async    : false,
        data     : option,
        dataType : "json",
        success  : function(data){
            if (!(data.code > 0)) {

                jQuery('#guiTdInInterest').html(data.html);
                jQuery('#guiPInterestStruct').html('<img src="/public/img/addToFav.png" border="0" class="statusImg" />&nbsp;<a href="javascript:void(0)" id="add-favorite-link" class="dashedLink" onclick="addToInteresting();">добавить в избранное</a>');
                jQuery('#guiPFavoriteCountTab').html(data.html);
            }else{
                alert(data.message);
            }
        },
        error    : function (){}
    });
}

/**
 * Init forum authoriazation form
 *
 * @name initForumAuthorizationForm
 * @author Sergey Donchenko <sergey.donchenko@gmail.com>
 * @last 10.09.2009 Sergey Donchenko
 *
 */

function initCatalogAuthorizationForm(){

    jQuery('#authForm').validate({
        submitHandler: function(form) {
            var dt      = {};
            var txtBody = CKEDITOR.instances['guiTxtLingthAnswerOnTopic'].getData(); // Текстовое содержимое редактора

            dt['catalogCommentsBody']       = txtBody;
            dt['catalogAddCommentsItem']    = '1';
            dt['catalogCommentParentIdent'] = jQuery('#guiHdnPostParent').val();
            dt['catalogIdent']              = jQuery('#hdnItemId').val();

            var options = {
                type: 'post',
                url: '/user/login',
                data: dt,
                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 {
                            doShake(['guiStrEmail', 'guiStrPassword']);
                            jQuery('#guiStrPassword').next().css({
                                'color': 'red'
                            }).html(data.message);
                            jQuery('#guiStrEmail').focus();
                            jQuery('#authForm').resetForm();
                        }
                    }else{
                        // all ok.
                        closeModal();
                        location.reload(true);
                    }
                },
                error: function() {
                    jQuery('#errDiv').html('Извините произошла ошибка,<br>попробуйте еще раз');
                }
            };
            jQuery(form).ajaxSubmit(options);
        },
        focusInvalid: false,
        focusCleanup: false,
        errorPlacement: function(error, element) {
            var er = element.attr('id');
            jQuery('#' + er).next('div').css({
                'color' : 'red'
            }).html(error);
        }
    });
}





