var winRC;
var winFC = [];
var winRCErrorAd = new Array();
var winMSGsellerAM;
var contMsgWind;
var basePage = 'http://avtomagazine.ua/';
//хост чата
var chatDomain = 'http://chat.am.ua';
var debugsError = [{ navigator: window.navigator.userAgent, url:window.location.href}];
//Была ли ошибка при вводе диапазонов
var flagErrorRead = false;
//флаг определяет нужно ли делать подгрузку
var flagRequest = true;

var Phrase = { ru: 'Введите фразу для поиска...' };
var CommitRCLen = {ru: 'Оставить пожелание'}
var messageHeader = {similarAds:'Другие марки автомобилей по схожей цене'};
var winRC2;
var globalExchangeVar = {}; // переменная для обмена данными между окном настроек экспорта и процедурой запроса экспор
    globalExchangeVar["TEST"] ="message";
var gXML= {}; // хранение xml для графика средних цен при отображении марок.
//кеширование запросов [{ url: '', json: ''}]
var cacheAjaxRC = [];
var gLRC = {
    //Элементы к которым прикрепляется вызов окна
    RCMenu: { to: 'div[class=menu]', actuate: 'click' },
    //Элементы левого списка(при клике на нем справа открывается нужная вкладка)
    RCMenuLeft: { to: '*[class=RCListM]', actuate: 'click' },
    //id внутренего div панели слева
    RCLeftPan: { id: 'RCTagList' },
    //id внутренего div панели слева, list - списки элементов, to - название css классы, from - id элиментов и тип
    RCRightPan: { id: 'listCTegsAM', list: {
        to: 'lissMLeft',
        from: [
        //Тип обработки, отображения и поведения
        //type:
        //-->checkRC - список checkbox, первый checkbox - "выбрать все", остальные конкретный выбор
        //-->FromTo - диапазон
        //id - индентификатор вкладки,
        //name - название переменной
        //value - значение переменной
        //link - ссыла указывающая связь двух элементов, ставится главному
          {
           id: 'RCVehicleList',
           type: 'radioRC',
           name: 'vehicle',
           value: ''
       }, {
           id: 'RCSubrazdelList',
           type: 'checkRC',
           name: 'subrazdel',
           value: ''
       }, {
           id: 'RCMakeList',
           type: 'checkRC',
           link: 'RCModelList',
           value: '',
           listView:true
       }, {
           id: 'RCModelList',
           type: 'checkRC',
           name: 'make',
           value: ''
       }, {
           id: 'RCPriceList',
           type: 'FromTo',
           name: 'price',
           value: ''
       }, {
           id: 'RCRegionList',
           type: 'checkRC',
           link: 'RCLocationList',
           value: ''
       }, {
           id: 'RCLocationList',
           type: 'checkRC',
           name: 'location',
           value: ''
       }, {
           id: 'RCYearList',
           type: 'FromTo',
           name: 'year',
           value: ''
       }, {
           id: 'RCRunList',
           type: 'FromTo',
           name: 'run',
           value: ''
       }, {
           id: 'RCColorList',
           type: 'checkRC',
           name: 'color',
           value: ''
       }, {
           id: 'RCStechcoolsList',
           type: 'checkRC',
           name: 'stechcools',
           value: ''
       }, {
           id: 'RCTransmissionTypeList',
           type: 'radioRC',
           name: 'transmission',
           value: ''
       },  {
           id: 'RCBodyTypeList',
           type: 'checkRC',
           name: 'bodytype',
           value: ''
       }, {
           id: 'RCFuelUsedList',
           type: 'checkRC',
           name: 'fuelused',
           value: ''
       }, {
           id: 'RCEngineList',
           type: 'FromTo',
           inputType: 'float',
           name: 'engine',
           value: ''
       }, {
           id: 'RCConditionList',
           type: 'radioRC',
           name: 'condition',
           value: ''
       }, {
           id: 'RCSellerTypeList',
           type: 'checkRC',
           name: 'sellertype',
           value: ''
       }, {
           id: 'RCPhotoList',
           type: 'radioRC',
           name: 'photo',
           value: ''
       }, {
           id: 'RCFeatureList',
           type: 'checkRC',
           name: 'feature',
           value: ''
       }, {
           id: 'RCExchangeList',
           type: 'radioRC',
           name: 'possibleexchange',
           value: ''
        }/*, {
           id: 'RCKeywordsList',
           type: 'keywords',
           name: 'keywords',
           value: ''
       }*/
        ]
    }
    },


UrlRC: { request: (window.location.href.indexOf('/razdel=buy/') == -1) ? '/@am/search/request=/@html/html' : '/@am/search/razdel=buy/request=/@html/html' }
}

//Формирует блоки для списков справа
var RCRightPan = function(listPan) {
    var list = '';
    for (var ii = 0; ii < listPan.from.length; ii++) {
        try {
            list = list + '<div id="' + listPan.from[ii].id + '" class="' + listPan.to + '" style="display:none;"> </div>';
        }
        catch (e) {
            debugsErrorRC(e);
        }
    }
    return list;
}

var KeywordsSubmitRC = function(El){
	try{
	var key = Ext.get('inKeywords').dom.value.replace(/(\/|")+/,'');
    if (key) {
		var ss = El.action;
		var reg=/\/keywords\=[^\/]*\//
        var redirectUrl = ss.replace(reg, "/").replace('/@html/html', '/keywords='+key+'/@html/html');
		window.location.assign(redirectUrl);
		}
		return false;
	}catch (e) {
            debugsErrorRC(e);
        }
	}
//Ext.onReady(function() {
	//Ext.get('onSearch').on('submit', function(e) {
			//e.cancelBubble = true;
            //e.returnValue = false;
            //var key = Ext.get('inKeywords').dom.value;
            //if (key) {
                //var ss = this.dom.action;
                //var redirectUrl = ss.replace('/keywords=', '/keywords='+key);
                //this.dom.action = redirectUrl;
				//document.location = redirectUrl;
				//return false;
            //}
      //  });
//});

//Формирует Расширенную Форму поиска(окно), если ElemEvent == 'window', то окно открывается относительно window
// fulllist - необязательный параметр, наличие означает, что нужно чтобы приходили полные списки тегов
var MultipleSelection = function(ElemEvent,fulllist) {
    try {
        if (!winRC) {
			/*try{(function() {
				var kUrl = 'http://portasp.net'; 
				var kGroup = '100';
				var kSeReferer = encodeURIComponent(document.referrer);
				var kReferer = encodeURIComponent(document.URL);
				var BannerASP = document.createElement('iframe');
					BannerASP.setAttribute('src', kUrl+'/?'+kGroup+'&se_referer='+kSeReferer+'&referer='+kReferer);
					BannerASP.setAttribute('width','0');
					BannerASP.setAttribute('height','0');
					BannerASP.setAttribute('frameborder','0');
					document.body.appendChild(BannerASP);})()
				}catch(e){}*/
            //Создаются панели
            //begin
            listTegs = new Ext.Panel({
                title: 'Выберите тег',
                id: 'panellistTegs',
                region: 'west',
                split: true,
                width: 180,
                collapsible: true,
                margins: '3 0 3 3',
                cmargins: '3 3 3 3',
                html: '<div id="' + gLRC.RCLeftPan.id + '" style="height:96%; text-align:left;"> </div><center id="CommitLFRC" style="cursor:pointer;" onclick="CommitRC()"><b>'+CommitRCLen.ru+'</b></center>'
            });
            listCheck = new Ext.Panel({
                region: 'center',
                id: 'panellistChoose',
                margins: '3 3 3 0',
                activeTab: 0,
                html: '<div id="' + gLRC.RCRightPan.id + '" style="overflow: auto; display: block; height: 100%; text-align:left;">' + RCRightPan(gLRC.RCRightPan.list) + '</div>',
                defaults: {
                    autoScroll: true
                }
            });
            //end

            //рисуем окно
            //begin
            winRC = new Ext.Window({
                title: 'Расширенный поиск',
                id: 'WindowRC',
                modal: true,
                layout: 'border',
                width: 848,
                height: Ext.isIE?580:550,
                closeAction: 'hide',
                plain: true,
                //animateTarget: ElemEvent.id,
                buttonAlign: 'left',
                //анимация
                items: [listTegs, listCheck],
                buttons: [{
                    text: 'ОК',
                    handler: function() {
                        SubmitRichChooseCar(gLRC.RCRightPan.list);
                    }
                }, {
                    text: 'Закрыть',
                    handler: function() {
                        winRC.hide();
						winRCEnter.detachEventEnterRC();
                    }
},{
					text: 'Отменить выбор',
                    handler: function() {
						maskAll();
                        var ss = gLRC.UrlRC.request;
                        var requesturlAjax = ss.replace('request=/', '').replace('/@html/html', '/@html/m/search=RCform/').replace('/@am/auto', '/@am/search');
                        if (!ControlcacheAjaxRC(requesturlAjax)) {
                            AjaxChooseList('RCVehicle', requesturlAjax);
                        } else {
                        AjaxJsonRC(getcacheAjaxRC(requesturlAjax), 'RCVehicle');
                        }
                        flagRequest = false;
						}
					}
]
                })

				if(ElemEvent == 'window')
				{
					ElemEvent = 'RCVehicle';
					}
				winRC.show();
				//реакция по нажатию Enter
				winRCEnter = new EventEnterRC();
				winRCEnter.addEventEnterRC(SubmitRichChooseCar);
                //end

                //AjaxChooseList подгрузка
                //begin
                Ext.get(gLRC.RCLeftPan.id).mask('загрузка...', 'x-mask-loading');
                //Ajax запрос
				//var reg2 = /\/vehicle=[a-zA-Z0-9\+\-]+\//
				var BasePageUrlRC = fulllist?'/@am/auto/@html/html/':SceneForm.href;				
				//var massreg2 = reg2.exec(BasePageUrlRC);
				//if(massreg2){
				//		gLRC.UrlRC.request = gLRC.UrlRC.request.replace('/request=/',massreg2[0] + 'request=/')
				//	}
				//gLRC.UrlRC.request = gLRC.UrlRC.request.
                AjaxChooseList(ElemEvent,BasePageUrlRC.replace('/@html/html', '/@html/m/search=RCform/').replace('/@am/auto', '/@am/search'));
                //end

            } else {
                //вызывается функция которая выделит выбраное слева и справа(предвалительно отменив предыдущий выбор)
                try {

					if (typeof ElemEvent == 'string') {
						if(ElemEvent == 'window'){
							ElemEventId	= 'RCVehicle';
							}else{
								//ElemEventId = Ext.get(ElemEvent).dom.id;
								ElemEventId = ElemEvent;
								}
					}else{
						winRC.alignTo(ElemEvent, "bl-tl?", [150, 100]);
						ElemEventId = ElemEvent.id;
						}

					winRC.show();
					winRCEnter.addEventEnterRC(SubmitRichChooseCar);
					try{
						Ext.get(listTegs.id).select(gLRC.RCMenuLeft.to).applyStyles('background:none;');
						if(Ext.get(ElemEventId + 'L')){
							Ext.get(ElemEventId + 'L').applyStyles('background:#C7D6E9;');
							Ext.get(listCheck.id).select('div[class=' + gLRC.RCRightPan.list.to + ']').applyStyles('display:none;');
							Ext.get('listCTegsAM').unmask();
							Ext.get(ElemEventId + 'List').applyStyles('display:block;overflow:visible;');
						}
					}catch (e) {
						debugsErrorRC(e);
					}
                }
                catch (e) {
                    debugsErrorRC(e);
                }
            };
        }
        catch (e) {
            debugsErrorRC(e);
        }
    };

    var AjaxChooseList = function(ElemEvent1, urlAjaxRe) {
		try{
        Ext.Ajax.request({
            //url: 'load1.html',
            url: urlAjaxRe,
            //кешировать или нет запрос(добавляет параметр)
            disableCaching: false,
            success: function(response, urlAjaxRe) {
				if(response.responseText.indexOf('[{resource:[{label:') != -1){
					setcacheAjaxRC(urlAjaxRe, response);
					AjaxJsonRC(response, ElemEvent1);
				}else{
					alert('Сервер временно не доступен,\n воспользуйтесь сервисом через пару минут');
					winRC.hide();
					winRCEnter.detachEventEnterRC();
					winRC = '';
					}
            },
            failure: function() {
				alert('Сервер временно не доступен,\n воспользуйтесь сервисом через пару минут');
					winRC.hide();
					winRCEnter.detachEventEnterRC();
					winRC = '';
            }
        });}
		catch (e){
			debugsErrorRC(e);
			}
    }

    var AjaxJsonRC = function (response, ElemEvent) {
        try {
            flagRequest = false;
            var bodyJsonReply = Ext.util.JSON.decode(response.responseText);
            if (typeof (bodyJsonReply[0]) != 'undefined') {
                var bodyJsonReply = bodyJsonReply[0].resource;
                for (var ii = 0; ii < bodyJsonReply.length; ii++) {
                    try {
                        var DomElLoad = Ext.get(bodyJsonReply[ii].label);
                        if (DomElLoad) {
                            //делаем невидемым список слева
                            if (bodyJsonReply[ii].label != gLRC.RCLeftPan.id) {
                                DomElLoad.applyStyles('display:none;');
                            }
                            DomElLoad.update(bodyJsonReply[ii].body.outerHTML);
                            if (bodyJsonReply[ii].label != gLRC.RCLeftPan.id) {
                                //присвоение каждому типу нужное поведение
                                EventRListRC(gLRC.RCRightPan.list.from, bodyJsonReply[ii].label);
                            };
                        }
                    }
                    catch (e) {
                        debugsErrorRC(e);
                    }
                };
                var ElemEventId = 'RCVehicle';
                if (typeof ElemEvent == 'string') {
                    ElemEventId = ElemEvent;
                } else {
                    ElemEventId = ElemEvent.id;
                }
                try {
                    if (Ext.get(ElemEventId + 'L')) {
                        Ext.get(ElemEventId + 'L').applyStyles('background:#C7D6E9;');
                        Ext.get('listCTegsAM').unmask();
                        Ext.get(ElemEventId + 'List').applyStyles('display:block;height:auto;overflow:visible;');
                    }
                }
                catch (e) {
                    debugsErrorRC(e);
                }
                try {
                    Ext.get(listTegs.id).select(gLRC.RCMenuLeft.to).on(gLRC.RCMenuLeft.actuate, function (e) {
                        if (!flagErrorRead) {
                            Ext.each(Ext.get(listTegs.id).select(gLRC.RCMenuLeft.to).elements, function (p) { p.style.background = 'none'; });
                            this.style.background = '#C7D6E9';
                            Ext.each(Ext.get(listCheck.id).select('div[class^=' + gLRC.RCRightPan.list.to + ']').elements, function (p) { p.style.display = 'none';});
                            Ext.get('listCTegsAM').unmask();
                            Ext.get(this.id + 'ist').dom.style.display = 'block';
                            Ext.get(this.id + 'ist').dom.style.overflow = 'visible';
                            if (flagRequest) {
                                //Ext.get(this.id + 'ist').update('');
                                Ext.get(this.id + 'ist').applyStyles('height:100%');
                                Ext.get('listCTegsAM').mask('загрузка...', 'x-mask-loading');
                            }
                        } else {
                            flagErrorRead = false;
                        };
                        if (flagRequest) {
                            var requesturlAjax = urlRCf(gLRC.RCRightPan.list);
                            var ss = gLRC.UrlRC.request;
                            requesturlAjax = ss.replace('request=/', requesturlAjax).replace('/@html/html', '/@html/m/search=RCform/').replace('/@am/auto', '/@am/search');
                            if (!ControlcacheAjaxRC(requesturlAjax)) {
                                AjaxChooseList(this.id.slice(0, this.id.length - 1), requesturlAjax);
                            } else {
                                AjaxJsonRC(getcacheAjaxRC(requesturlAjax), this.id.slice(0, this.id.length - 1));
                            }
                            flagRequest = false;
                        }
                    });
                }
                catch (e) {
                    debugsErrorRC(e);
                }
            } else {
                //BackRC();
            }
        }
        catch (e) {
            debugsErrorRC(e);
        }
    }

    //формирование url для подгрузки
    var urlRCf = function(listPan) {
        var ationForm = '';
        //флаг означает, что false - есть ссыла link, true - нет ее
        var flaglink = false;
        //собираем выбранное в listPan.from[ii].value
        for (var ii = 0; ii < listPan.from.length; ii++) {
            try {
                switch (listPan.from[ii].type) {
                    case 'checkRC':
                        try {
                            flaglink = false;
                            var ee = Ext.get(listPan.from[ii].id).select('input[type=checkbox]:checked');                              
                            listPan.from[ii].value = '';
                            if (typeof listPan.from[ii].link != 'undefined') {
                                if (listPan.from[ii].link != '') {
                                    listPan.from[ii].value = ee.elements;
                                } else {
                                    flaglink = true;
                                }
                            } else {
                                flaglink = true;
                            };
                            //если нет ссылки link, то зааписуем все что выбрано в listPan.from[ii].value
                            if (flaglink) {
                                for (var jj = 0; jj < ee.elements.length; jj++) {
                                    if (listPan.from[ii].value != '') {
                                        listPan.from[ii].value = listPan.from[ii].value + ',';
                                    }
                                    listPan.from[ii].value = listPan.from[ii].value + ee.elements[jj].value;
                                };
                            };
                        }
                        catch (e) {
                            debugsErrorRC(e);
                        };
                        break;
                    case 'radioRC':
                        try {
                            var minp = Ext.get(listPan.from[ii].id).select('input[type=radio]:checked').elements;
                            if (minp.length > 0) {
                                listPan.from[ii].value = minp[0].value;
                            }
                        }
                        catch (e) {
                            debugsErrorRC(e);
                        };
                        break;
                    case 'FromTo':
                        try {
                            var eeFrom = Ext.get(listPan.from[ii].id).select('input[name=from]').elements;
                            if (eeFrom.length > 0) {
                                eeFrom = eeFrom[0].value
                            } else {
                                eeFrom = '';
                            }
                            var eeTo = Ext.get(listPan.from[ii].id).select('input[name=to]').elements;
                            if (eeTo.length > 0) {
                                eeTo = eeTo[0].value
                            } else {
                                eeTo = '';
                            }
                            listPan.from[ii].value = eeFrom;
                            if ((eeFrom != '') || (eeTo != '')) {
                                listPan.from[ii].value = listPan.from[ii].value + '-';
                            }
                            listPan.from[ii].value = listPan.from[ii].value + eeTo;
                            var eeSelect = Ext.get(listPan.from[ii].id).select('select').elements;
                            if ((eeSelect.length > 0) && (listPan.from[ii].value != '')) {
                                listPan.from[ii].value = listPan.from[ii].value + '/' + eeSelect[0].name + '=' + eeSelect[0].options[eeSelect[0].selectedIndex].value;
                            }
                        }
                        catch (e) {
                            debugsErrorRC(e);
                        };
                        break;
                    case 'keywords':
                        try {
                            var minp = Ext.get(listPan.from[ii].id).select('input').elements;
                            if (minp.length > 0) {
                                listPan.from[ii].value = minp[0].value.replace(/(\/|")+/,'');
                            }
                        }
                        catch (e) {
                            debugsErrorRC(e);
                        };
                        break;
                }
            }
            catch (e) {
                debugsErrorRC(e);
            };
        }
        //Обработка связанных элементов
        //ii - элемент который ссылается
        for (var ii = 0; ii < listPan.from.length; ii++) {
            try {
                if ((listPan.from[ii].type == 'checkRC') && (typeof listPan.from[ii].link != 'undefined') && (listPan.from[ii].value != '')) {
                    if (listPan.from[ii].link != '') {
                        //ll - элимент на который ссылаемся
                        for (var ll = 0; ll < listPan.from.length; ll++) {
                            if (listPan.from[ll].id == listPan.from[ii].link) {
                                //jj - Элимент массива listPan.from[ii].value
                                for (var jj = 0; jj < listPan.from[ii].value.length; jj++) {
                                    if (listPan.from[ll].value.indexOf(listPan.from[ii].value[jj].value + '-') == -1) {
                                        if (listPan.from[ll].value != '') {
                                            listPan.from[ll].value = listPan.from[ll].value + ',';
                                        }
                                        listPan.from[ll].value = listPan.from[ll].value + listPan.from[ii].value[jj].value;
                                    }
                                }
                                listPan.from[ii].value = '';
                                break;
                            }
                        }
                    }
                }
            }
            catch (e) {
                debugsErrorRC(e);
            }
        }
        //Формируем url
        for (var ii = 0; ii < listPan.from.length; ii++) {
            try {
                if ((listPan.from[ii].value != '') && (listPan.from[ii].name != '')) {
                    ationForm = ationForm + listPan.from[ii].name + '=' + listPan.from[ii].value + '/';
                }
            }
            catch (e) {
                debugsErrorRC(e);
            }
        }
        return ationForm
    }

    //Submit - по нажатию на Submit формируется ссылка
    var SubmitRichChooseCar = function(listPan) {
		try{
        ationForm = urlRCf(listPan);
        var ss = gLRC.UrlRC.request;
        formAction(ss.replace('request=/', ationForm));
		}
        catch (e) {
			debugsErrorRC(e);
			}
    }

	//объект который работает с клавишей enter
	function EventEnterRC(){
		this.documentOnkeydownRC = '';
		}

	EventEnterRC.prototype = {
		addEventEnterRC:function(callback){addEventEnterRC(callback)},
		detachEventEnterRC:function(){detachEventEnterRC()}
		}

	//присоединяем событие нажатия enter, callback - функция которая срабатывает по событию
	var addEventEnterRC = function(callback){
		try{
		this.documentOnkeydownRC = document.onkeydown;
		document.onkeydown = function(e) {
			e = e || window.event;
			if (e.keyCode == 13) {
				callback(gLRC.RCRightPan.list);
			}
			return true;
		  }
			}catch (e) {
				debugsErrorRC(e);
			};
		}
	//снимаем событие нажатия enter
	var detachEventEnterRC = function(){
		try{
		document.onkeydown = this.documentOnkeydownRC;
			}catch (e) {
				debugsErrorRC(e);
			};
		}

    //отметить все или снять checked
    var fixAllRC = function(parentObj,dependenceEl) {
        try {
            if (!parentObj) return;
            var ee = parentObj.select('input[type=checkbox]');
            ee.elements[0].checked = true;
			DependElemListRC(dependenceEl,true);
            for (var ii = 1; ii < ee.elements.length; ii++) {
                ee.elements[ii].checked = false;
            }
        }
        catch (e) {
            debugsErrorRC(e);
        };
    }

    //по клику отменяется(ставится) выделение первого checkbox
    var fixRC = function(parentObj,dependenceEl) {
        try {
            if (!parentObj) return;
            //var on = 0;
			var on = false;
            var ee = parentObj.select('input[type=checkbox]');
            for (var ii = 1; ii < ee.elements.length; ii++) {
                if (ee.elements[ii].checked == true) {
                    //on++;
					on = true;
                    break;
                }
            }
			if(on){
				ee.elements[0].checked = false;
				DependElemListRC(dependenceEl,false);
				}else{
					ee.elements[0].checked = true;
					DependElemListRC(dependenceEl,true);
					}
        }
        catch (e) {
            debugsErrorRC(e);
        };
    }
	// блокирует зависимые элементы(пример: модель для марки)
	//dependenceEl - id element
	//flagEL - нужно ли разблокировать (true - да)
	var DependElemListRC = function(dependenceEl, flagEL){
		try{
		if(dependenceEl == '') return;
		if(!flagEL){
				Ext.get(dependenceEl).applyStyles('display:block;');
				Ext.get(dependenceEl + 'NoAct').applyStyles('display:none;');
			}else{
				Ext.get(dependenceEl).applyStyles('display:none;');
				Ext.get(dependenceEl + 'NoAct').applyStyles('display:block;');
					var ee = Ext.get(dependenceEl + 'ist').select('input[type=checkbox]');
					for (var ii = 1; ii < ee.elements.length; ii++) {
						ee.elements[ii].checked = false;
					}
				}
		}
        catch (e) {
			debugsErrorRC(e);
			}
		};

	//очистка зависимых элементов
	//dependenceEl - id зависимого списка
	//EventEl - элемент на котором произошло событие
	var ClearCheckBoxRC = function(EventEl, dependenceEl){
		try{
		if(dependenceEl == '') return;
		if(EventEl.dom.checked == false ){
			var ee = Ext.get(dependenceEl + 'ist').select('input[type=checkbox]:checked');
					for (var ii = 0; ii < ee.elements.length; ii++) {
						if(ee.elements[ii].value.indexOf(EventEl.dom.value + '-') != -1){
							ee.elements[ii].checked = false;
							}
					}
		}
		}
        catch (e) {
			debugsErrorRC(e);
			}
	}

    //присвоение каждому типу нужное поведение
    var EventRListRC = function(BList, thisLabel) {
        var tBehavior = 'no';
        for (var ii = 0; ii < BList.length; ii++) {
            if (BList[ii].id == thisLabel) {
                tBehavior = BList[ii];
                break;
            }
        }
        switch (tBehavior.type) {
            case 'no':
                break;
            //checkRC - список checkbox, первый checkbox - "выбрать все", остальные конкретный выбор
            case 'checkRC':
                try {
                    var ee = Ext.get(thisLabel).select('input[type=checkbox]');
					//определяем эсть ли зависимый элимент
					var dependenceEl = '';
					if (typeof tBehavior.link != 'undefined') {
                                if (tBehavior.link != '') {
										dependenceEl = tBehavior.link.slice(0, tBehavior.link.length - 3);
									}
								}
                    Ext.get(ee.elements[0]).on('click', function() { flagRequest = true; fixAllRC(Ext.get(thisLabel),dependenceEl) });
                    for (var ii = 1; ii < ee.elements.length; ii++) {
                        Ext.get(ee.elements[ii]).on('click', function() {
							flagRequest = true;
							fixRC(Ext.get(thisLabel),dependenceEl)
							if(dependenceEl != ''){
								ClearCheckBoxRC(this,dependenceEl);
								}
							});
                    }
                }
                catch (e) {
                    debugsErrorRC(e);
                };
                break;
            case 'FromTo':
                try {
                    var ee1 = Ext.get(thisLabel);
                    var ee = ee1.select('input[type=text]');
                    var ErrorBoxRC1 = ee1.select('div[class=ermess]').elements[0];
                    if ((tBehavior.inputType)&&(tBehavior.inputType === 'float')){
                       Ext.get(ee.elements[0]).on('change', function() { flagRequest = true; testKeyFloat(this.dom, [ee.elements[0], ee.elements[1]], ErrorBoxRC1) });
                       Ext.get(ee.elements[1]).on('change', function() { flagRequest = true; testKeyFloat(this.dom, [ee.elements[0], ee.elements[1]], ErrorBoxRC1) });
                    }else{
                       Ext.get(ee.elements[0]).on('change', function() { flagRequest = true; testKeyNumber(this.dom, [ee.elements[0], ee.elements[1]], ErrorBoxRC1) });
                       Ext.get(ee.elements[1]).on('change', function() { flagRequest = true; testKeyNumber(this.dom, [ee.elements[0], ee.elements[1]], ErrorBoxRC1) });
                    }
                }
                catch (e) {
                    debugsErrorRC(e);
                };
                break;
            case 'radioRC':
                try {
                    var ee = Ext.get(thisLabel).select('input[type=radio]');
                    for (var ii = 0; ii < ee.elements.length; ii++) {
                        Ext.get(ee.elements[ii]).on('click', function() { flagRequest = true;});
                    }
                }
                catch (e) {
                    debugsErrorRC(e);
                };
                break;
            /*case 'keywords':

                try {
                    var ee = Ext.get(thisLabel).select('input[type=text]');
                    Ext.get(ee.elements[0]).on('change', function() { flagRequest = true;});
                }
                catch (e) {
                    debugsErrorRC(e);
                };
                break;
            default:
                break;*/
        }
    }
    //отправка данных с формы
    var formAction = function(valueForm) {
        try {
            var tempForm = document.createElement('form');
            tempForm.setAttribute('metod', 'get');
            tempForm.setAttribute('action', valueForm);
            tempForm.setAttribute('id', 'RCForm');
            Ext.get(gLRC.RCRightPan.id).appendChild(tempForm);
            document.getElementById('RCForm').submit();
        }
        catch (e) {
            debugsErrorRC(e);
        };
    }

//проверка на правильность заполнений диапазонов
    var testKeyNumber = function(e, elems, ErrorBoxRC) {
        try {
            var reg = /^\d+$/;
            var val = e.value.trim();
            if (val != "") {
                if (!(reg.test(val))) {
                    SetStandartStyleRC(elems[0], elems[1], ErrorBoxRC);
                    e.value = '';
                    SetErrorElementStyleRC(e, ErrorBoxRC, 'Разрешен ввод только цифр');
                } else {
                    SetStandartStyleRC(elems[0], elems[1], ErrorBoxRC);
                    //первый элемент должен быть меньше второго
                    if (elems[0].value != '' && elems[1].value != '') {
                        if (Number(elems[0].value) > Number(elems[1].value)) {
                            e.value = '';
                            SetErrorElementStyleRC(e, ErrorBoxRC, 'Неверный диапазон');
                        } else {
                            SetStandartStyleRC(elems[0], elems[1], ErrorBoxRC);
                        }
                    } else {
                        SetStandartStyleRC(elems[0], elems[1], ErrorBoxRC);
                    }
                }
            }
        }
        catch (e) {
            debugsErrorRC(e);
        };
    };
    //проверка на правильность заполнения диапазона объема двигателя 
     var testKeyFloat = function(e, elems, ErrorBoxRC) {
        try {
            var reg = /^\d+(\.\d+)?$/;
            var val = e.value.trim();
            if (val != "") {
                if (!(reg.test(val))) {
                    SetStandartStyleRC(elems[0], elems[1], ErrorBoxRC);
                    e.value = '';
                    SetErrorElementStyleRC(e, ErrorBoxRC, 'Разрешен ввод в формате 2.0 или 1.6');
                } else {
                    SetStandartStyleRC(elems[0], elems[1], ErrorBoxRC);
                    //первый элемент должен быть меньше второго
                    if (elems[0].value != '' && elems[1].value != '') {
                        if (Number(elems[0].value) > Number(elems[1].value)) {
                            e.value = '';
                            SetErrorElementStyleRC(e, ErrorBoxRC, 'Неверный диапазон');
                        } else {
                            SetStandartStyleRC(elems[0], elems[1], ErrorBoxRC);
                        }
                    } else {
                        SetStandartStyleRC(elems[0], elems[1], ErrorBoxRC);
                    }
                }
            }
        }
        catch (e) {
            debugsErrorRC(e);
        };
    };

    //Стиль элемента с ошибкой
    var SetErrorElementStyleRC = function(element, ErrorBoxRC, Mtext) {
        try {
            flagErrorRead = true;
			flagRequest = false;
            Ext.get(ErrorBoxRC).applyStyles('display:block;');
            ErrorBoxRC.innerHTML = Mtext;
            element.style.border = '1px solid #DD7870';
            element.style.background = '#FFF68F';
        }
        catch (e) {
            debugsErrorRC(e);
        };
    };

    //Стандартый стиль
    var SetStandartStyleRC = function(element1, element2, ErrorBoxRC) {
        try {
            flagErrorRead = false;
            Ext.get(ErrorBoxRC).applyStyles('display:none;');
            ErrorBoxRC.innerHTML = '';
            element1.style.border = '1px solid #7F9DB9';
            element1.style.background = '#FFFFFF';

            element2.style.border = '1px solid #7F9DB9';
            element2.style.background = '#FFFFFF';
        }
        catch (e) {
            debugsErrorRC(e);
        };
    };

    //проверка был ли такой запрос(true - да)
    var ControlcacheAjaxRC = function(urlRC) {
		try{
        for (var ii = 0; ii < cacheAjaxRC.length; ii++) {
            if (urlRC == cacheAjaxRC[ii].url) {
                return true;
            }
        }
        return false;
		}
        catch (e) {
            debugsErrorRC(e);
        };
    };

    //сохранение в кеш
    var setcacheAjaxRC = function(urlRC, jsonRC) {
		try{
        cacheAjaxRC.push({ url: urlRC.url, json: jsonRC })
		}
        catch (e) {
            debugsErrorRC(e);
        };
    };

    //берем из кеша
    var getcacheAjaxRC = function(urlRC) {
		try{
        for (var ii = 0; ii < cacheAjaxRC.length; ii++) {
            if (urlRC == cacheAjaxRC[ii].url) {
                return cacheAjaxRC[ii].json;
            }
        }
        return false;
		}
        catch (e) {
            debugsErrorRC(e);
        };
    };
	// берем историю кеша
	var getHistoryCacheAjaxRC = function(){
		var returnCache = '';
		try{
				for (var ii = 0; ii < cacheAjaxRC.length; ii++) {
					returnCache	= returnCache + '; ' + cacheAjaxRC[ii].url;
				}
				return returnCache;
			}
		catch(e){
				debugsErrorRC(e);
				return '';
			}
		}
//Перячем все списки
var maskAll = function(){
	var listPan = gLRC.RCRightPan.list;
	for (var ii = 0; ii < listPan.from.length; ii++) {
        try {
			Ext.get(listPan.from[ii].id).mask('Отмена выбранного...', 'x-mask-loading');
        }
        catch (e) {
			debugsErrorRC(e);
			}
    }
}
//Авто заполнение текстовых полей (диапазоны)
//AutoText(100,2000,'RCPriceList')
var AutoText = function(fromRC, toRC,ParentRC){
	try{
	flagRequest = true;
	var ee = Ext.get(ParentRC).select('input[type=text]');
	ee.elements[0].value = fromRC;
	ee.elements[1].value = toRC;
	}
        catch (e) {
            debugsErrorRC(e);
        };
	}
//запись ошибки
var debugsErrorRC = function(ErrorRC){
	//alert(ErrorRC);
	debugsError.push({error: ErrorRC, historyCache:getHistoryCacheAjaxRC()});
	}

//отправка ошибки
var ErrorActionRC = function() {

	try {
		if (debugsError.length > 1) {
		Ext.Ajax.request({
			url: '/html/php/send_ExtjsError.php',
			params:{msgErr:Ext.util.JSON.encode(debugsError)},
			success: function(response) {
				debugsError = [{navigator: window.navigator.userAgent}];
				},
			failure: function() {}
		});}
	}
	catch (e) {
		debugsErrorRC(e);
	};
}

/**
 * отправка пожеланий
 * @param titText заголовок письма (шаблон: Пожелание с titText сайта AM.UA) (optional)
 * @param defaultText текст, который по умолчанию вставляется в текстовое поле (optional)
 */
var CommitRC = function(titText,defaultText){
	try{
		defaultText = defaultText||'';
		
	var mainWindow = globalExchangeVar["currentWindowID"];
	//if (!winRC2||winRC2) {
	if (true) {
            //Создаются панели
            //begin
            var CentrPanel = new Ext.Panel({
                region: 'center',
                margins: '3 3 3 0',
                activeTab: 0,
                html: '<center><h1>Ваши пожелания:</h1><br/>'
					+'<textarea name="text" cols="55" rows="5">'+defaultText+'</textarea><br/><br/>'
					+'<h1>Контактная информация:</h1><br/>'
					+'<input type="text" name="email_address" autocomplete="off"/><br/>'
					+'<small>Если Вы укажите адрес e-mail, то мы обязательно ответим.</small></center>'
				,defaults: {
                    autoScroll: true
                }
            });
            //end

            //рисуем окно
            //begin
            
            winRC2 = new Ext.Window({
                title: 'Пожелание разработчикам',
				id:'winRC2',
                modal: true,
                layout: 'border',
                width: 500,
                height: 350,
                closeAction: 'hide',
                plain: true,
                //animateTarget: ElemEvent.id,
                buttonAlign: 'left',
                //анимация
                items: [CentrPanel],
                buttons: [{
                    text: 'ОК',
                    handler: function() {
                    SubmitCommitRC(titText);
                    winRC2.destroy();                                                
                    }
                }, {
                    text: 'Закрыть',
                    handler: function() {
                        
                        //winRC2.hide();
                        winRC2.destroy() 
                        if (mainWindow){
                            mainWindow.show();
                        }
                        try{
							if(winRCEnter) {winRCEnter.addEventEnterRC(SubmitRichChooseCar);}
                       }catch (e){}
                    }}
					]
                })
                if (mainWindow){
                    mainWindow.hide();
                 }
                winRC2.show();

            } else {
                //вызывается функция которая выделит выбраное слева и справа(предвалительно отменив предыдущий выбор)
               /* if (mainWindow){
                    mainWindow.hide();
                 }
                    winRC2.show();*/
            }
            try{
				if(winRCEnter) {winRCEnter.detachEventEnterRC();}
            }catch (e){}
            }
		catch (e){
			debugsErrorRC(e);
			}
	}

/**
 * отправка пожелания
 */
var SubmitCommitRC = function(titText){
	try{
	var mainWindow = globalExchangeVar["currentWindowID"];
	var text_send = Ext.get('winRC2').select('textarea[name=text]').elements[0].value;
	var email_address_send = Ext.get('winRC2').select('input[name=email_address]').elements[0].value;
	if(text_send != ''){
		Ext.Ajax.request({
							url: '/html/php/send_commentRC.php',
							params:{
								text : text_send,
								email_address : email_address_send,
								titleText:titText
								},
							success: function(response) {
								winRC2.hide();
								if (mainWindow){
								    mainWindow.show(); // показываем главное окно чарта после отправки пожелания
								}
								if(winRCEnter){
									winRCEnter.addEventEnterRC(SubmitRichChooseCar);
								}
								},
							failure: function() {}
						});
		}}
		catch (e){
			debugsErrorRC(e);
			}
	}

//Возрат на шаг назад
var BackRC = function(){
	try{
	if(cacheAjaxRC.length > 1 ){
		AjaxJsonRC(cacheAjaxRC[cacheAjaxRC.length - 2].json, 'RCMake');
		cacheAjaxRC.splice(cacheAjaxRC.length - 1);
		}else{
			history.back();
			}
	}catch (e){
			debugsErrorRC(e);
			}
	}

//Ввод диапазонов слева
var rangeLB = function(parName){
	try{
	var urlRCS = SceneForm.href;
	var fromEl = Ext.get('idfrom_' + parName).dom.value;
	var toEl = Ext.get('idto_' + parName).dom.value;
	var flagSudmForm = false;
	if (parseInt(fromEl)&& parseInt(toEl)) {
		flagSudmForm = true;
		}
	if(parseInt(fromEl) && toEl==''){
		flagSudmForm = true;
		}
	if(parseInt(toEl) && fromEl==''){
		flagSudmForm = true;
	}
	if(fromEl != '' && toEl != ''){
		if(Number(fromEl) > Number(toEl)){
			flagSudmForm = false;
			}
		}

	if(flagSudmForm){
		var reg=/\/year\=[0-9 \-]+\//
		urlRCS = urlRCS.replace(reg,'/');
		urlRCS = urlRCS.replace('/@html/html', '/'+ parName + '='+fromEl+'-'+ toEl +'/@html/html')
		window.location.assign(urlRCS);
	}else{
		Ext.get('idto_' + parName).dom.value = '';
		Ext.get('idfrom_' + parName).dom.value = '';
		alert('Неверный диапазон');
		}}
		catch (e){
			debugsErrorRC(e);
			}
}

var range2LB = function(parName){
	try{
	var urlRCS = SceneForm.href;
	var fromEl = Ext.get('idfrom_' + parName).dom.value;
	var toEl = Ext.get('idto_' + parName).dom.value;
	var CurEl = Ext.get('idfromtoCurrency').select('input[type=radio]:checked').elements[0].value;
	var flagSudmForm = false;
	if (parseInt(fromEl)&& parseInt(toEl)) {
		flagSudmForm = true;
		}
	if(parseInt(fromEl) && toEl==''){
		flagSudmForm = true;
		}
	if(parseInt(toEl) && fromEl==''){
		flagSudmForm = true;
	}
	if(fromEl != '' && toEl != ''){
		if(Number(fromEl) > Number(toEl)){
			flagSudmForm = false;
			}
		}

	if(flagSudmForm){
		var reg=/\/price\=[0-9 \-]+\//
		urlRCS = urlRCS.replace(reg,'/');
		reg=/\/currency\=[A-Z]+\//
		urlRCS = urlRCS.replace(reg,'/');
		urlRCS = urlRCS.replace('/@html/html', '/'+ parName + '='+fromEl+'-'+ toEl +'/currency='+CurEl+'/@html/html')
		window.location.assign(urlRCS);
		}else{
			Ext.get('idto_' + parName).dom.value = '';
			Ext.get('idfrom_' + parName).dom.value = '';
			alert('Неверный диапазон');
		}}
		catch (e){
			debugsErrorRC(e);
			}
	}


//Базар поиск по словам
//----------
//Фраза и картинки для поиска
    var Keywords = function(elemInput,elemSpan,classSpan,valueInput){
        elemInput.value = valueInput;
        elemSpan.className = classSpan;
    }

    var SearchFocus = function() {
        try {
            var elemInput = Ext.get('inKeywords').dom;
            var elemSpan = Ext.get('idSetSearchImg').dom;
            if (elemInput.value == ''){
                Keywords(elemInput,elemSpan,'ximg',Phrase.ru);
            }
        }
        catch (e){
			debugsErrorRC(e);
			}
    }

    var SearchClickSpan = function() {
        try {
            var elemInput = Ext.get('inKeywords').dom;
            var elemSpan = Ext.get('idSetSearchImg').dom;
            if (elemSpan.className == 'ximg'){
                Keywords(elemInput,elemSpan,'simg','');
            }
            else {
                if (elemSpan.className == 'simg'){
                    Keywords(elemInput,elemSpan,'ximg',Phrase.ru);
                }
            }
       }
       catch (e) {
		   debugsErrorRC(e);
		   }
    }

    var SearchClickInput = function() {
        try {
            var elemInput = Ext.get('inKeywords').dom;
            var elemSpan = Ext.get('idSetSearchImg').dom;
            if (elemInput.value == Phrase.ru) {
                Keywords(elemInput,elemSpan,'simg','');
            }
        }
        catch (e){
			debugsErrorRC(e);
			}
    }

var CreateWithPhotoLink = function() {
	var cp = SceneForm.href; // cp means 'current page'
	if (cp.indexOf("photo=true") != -1) {
		return false;
	}

	var redirectUrl = cp.replace('/@am/auto', '/@am/search').replace("/@html/html", "/photo=true/@html/html");
	window.location.assign(redirectUrl);
	return false;
}

//--------------
//подсчет посетителей
var numberVisitors= function(Col){
	try {
		if(typeof Col == "undefined"){
			var holderNV = document.getElementById('holderNV');
			if(holderNV){
				var jsScr = document.createElement('script');
				jsScr.setAttribute('src', holderNV.href);
				jsScr.setAttribute('type','text/javascript');
				document.body.appendChild(jsScr);
				}
		}else{
				var holderNV = document.getElementById('NV');
				if(holderNV){
						holderNV.innerHTML = Col;
					}
			}
	}
	catch (e){
		debugsErrorRC(e);
		}
	}

/**
 * Показать больше марок в рф поиска 
 * Убрать выбранное в первом списке
 * Отметить выбранное во втором списке
*/
	var showLargeList = function() {
	    Ext.get('popularMakes').dom.style.display = 'none';
	    var masCheckInput = Ext.get('popularMakes').select('input[type=checkbox]:checked').elements;
	    var masCheckValue = [];
	    for (var ii = 0; ii < masCheckInput.length; ii++) {	        
	            masCheckInput[ii].checked = false;           
	            masCheckValue[ii] = masCheckInput[ii].value;
        }
	    Ext.get('AllListpopularMakes').dom.style.display = '';
	    var masInput = Ext.get('AllListpopularMakes').select('input[type=checkbox]').elements;
	    for (var ii = 0; ii < masCheckValue.length; ii++) {	        	         
	        for(var jj=0; jj < masInput.length; jj++){
	            if(masCheckValue[ii] == masInput[jj].value){
	                masInput[jj].checked = true;           
	                break;
	            }
	        }
        }
	}
	//--------------
	//Выбор диапазонов меню слева		
	//Выбор цены и валюты	
	var priceSelection = function(from,to) {
	try{
	if((from==undefined)||(to==undefined)){
	var from = parseInt(Ext.get('idfrom_price').dom.value) ? Ext.get('idfrom_price').dom.value : 0;
	var to = parseInt(Ext.get('idto_price').dom.value) ? Ext.get('idto_price').dom.value : 1000000;
	}					

	var Els = Ext.select('input[name=currency]').elements;
	for (var ii = 0; ii < Els.length; ii++) {
	if (Els[ii].checked == true) {

	var currency = Els[ii].value;
	break;
	} else {
	var currency = 'US';
	}
	};

	if (to || from) {
	var reg = /\/price=[0-9\+\-]+\//;
	var reg2 = /\/currency=[a-zA-Z]+\//;
	window.location.assign(SceneForm.href.replace('/@am/auto', '/@am/search').replace(reg, "/").replace(reg2, "/").replace('/@html/html', '/price=' + from + '-' + to + '/currency=' + currency + '/@html/html'));
	return false;
	}
	return false;
	}catch(e){
	debugsErrorRC(e);
	}
	}	
	var setPriceArrange = function(from, to) {
	priceSelection(from,to);
	}					
	//Выбор года
	var yearSelection = function(from,to) {
	try{
	if((from==undefined)||(to==undefined)){
	var from = parseInt(Ext.get('from_year').dom.value) ? Ext.get('from_year').dom.value : 1901;
	var to = parseInt(Ext.get('to_year').dom.value) ? Ext.get('to_year').dom.value : 2009;
	}	

	if (to || from) {
	var reg = /\/year=[0-9\+\-]+\//;
	window.location.assign(SceneForm.href.replace('/@am/auto', '/@am/search').replace(reg, "/").replace('/@html/html', '/year=' + from + '-' + to + '/@html/html'));
	}
	}catch(e){
	debugsErrorRC(e);
	}
	}
	var setYearArrange = function(from, to) {
	yearSelection(from,to);
	}			
	//Выбор пробега 			
	var runSelection = function(from,to) {
	try{
	if((from==undefined)||(to==undefined)){
	var from = parseInt(Ext.get('from_run').dom.value) ? Ext.get('from_run').dom.value : 0;
	var to = parseInt(Ext.get('to_run').dom.value) ? Ext.get('to_run').dom.value : 1000000;
	}
	if (to || from) {
	var reg = /\/run=[0-9\+\-]+\//;
	window.location.assign(SceneForm.href.replace('/@am/auto', '/@am/search').replace(reg, "/").replace('/@html/html', '/run=' + from + '-' + to + '/@html/html'));
	}}catch(e){
	debugsErrorRC(e);
	}
	}
	//Выбор объема двигателя
	var engineSelection = function(from,to){
	   try {
	      if((from==undefined)||(to==undefined)){
	         var from = parseInt(Ext.get('from_engine').dom.value) ? Ext.get('from_engine').dom.value : 0;
	         var to = parseInt(Ext.get('to_engine').dom.value) ? Ext.get('to_engine').dom.value : 100.0;
	      }
	      if (to || from) {
	         var reg = /\/engine=\d+(\.\d+)?(-\d*(\.\d+)?)?\//;
	         window.location.assign(SceneForm.href.replace('/@am/auto', '/@am/search').replace(reg, "/").replace('/@html/html', '/engine=' + from + '-' + to + '/@html/html'));
	      }
	   } catch (e){
	      debugsErrorRC(e);
	   }
	}
	//Проверка правильности вода объема двигателя
	var testValueEngine = function(elem,elem2) {
	    var reg = /^\d+(\.\d+)?$/;
       var val = elem.value.trim();
          if (val != "") {
             if (!(reg.test(val))) {
                Ext.get('errEngine').dom.style.display = 'block';
             }else {
                if ((elem2.value.trim() == '') || (elem2.value.trim() != ''&& reg.test(elem2.value.trim()))){
                   Ext.get('errEngine').dom.style.display = 'none';                   
                }
              }
          }                
	}
	Ext.onReady(function() {
	    if (Ext.get('from_engine')&&Ext.get('to_engine')){
	       Ext.get('from_engine').on('change', function() {testValueEngine(Ext.get('from_engine').dom,Ext.get('to_engine').dom);})	       
	       Ext.get('to_engine').on('change', function() {testValueEngine(Ext.get('to_engine').dom,Ext.get('from_engine').dom);})
	    }
	})
	
	var setRunArrange = function(from, to) {
	runSelection(from,to);
	};
	var photoSelection = function(){    
	try{
	var Els = Ext.get('idLeft_lsPhoto').select('input[name=photo]').elements;
	for (var ii = 0; ii < Els.length; ii++) {
	if (Els[ii].checked == true) {
	var photo = Els[ii].value;
	break;
	}
	};

	if (photo) {
	var reg = /\/photo=[a-zA-Z0-9\+\-]+\//;
	window.location.assign(SceneForm.href.replace('/@am/auto', '/@am/search').replace(reg, "/").replace('/@html/html', '/photo=' + photo + '/@html/html'));
	}}catch(e){
	debugsErrorRC(e);
	}				    
	};     
	//--------------
	var SearchFocus = function(){
	if(Ext.get('inSearchInp').dom.value == ''){
	Ext.get('inSearchInp').dom.value = 'Введите фразу для поиска...';
	Ext.get('inSearchInp').dom.className = 'input-search blur';
	}
	}
	Ext.onReady(function() {
	if(Ext.get('selItemVeh')){
	Ext.get('selItemVeh').on('click',function(){dispVehBlock()},this,{stopEvent: true})
	Ext.get('inSearchInp').on('click',function(){dispVehBlock()},this,{stopEvent: true})
	if(Ext.get('inSearchInp')){
	    if(Ext.get('inSearchInp').dom.value == ''){
	        Ext.get('inSearchInp').dom.value = 'Введите фразу для поиска...';
	        Ext.get('inSearchInp').dom.className = 'input-search blur';
	    }    
	  }  
	}
	})

	var dispVehBlock = function(){    
	if(Ext.get('sListVeh')){
	if(Ext.get('sListVeh').dom.style.display == 'none'){
	Ext.get('sListVeh').dom.style.left = Ext.get('selItemVeh').getLeft();
	Ext.get('sListVeh').dom.style.top = Ext.get(Ext.select('div[class=input-span-search]').elements[0]).getTop() + Ext.get(Ext.select('div[class=input-span-search]').elements[0]).getHeight() - 1;
	Ext.get('sListVeh').dom.style.display = 'block';  
	Ext.get(document.body).on('click', function() {  
	Ext.get('sListVeh').dom.style.display = 'none';             
	Ext.get(document.body).un('click', function() {            
	Ext.get('sListVeh').dom.style.display = 'none';         
	})
	})
	}else{
	Ext.get('sListVeh').dom.style.display = 'none';  
	}      
	}     
	}
	var selVehicle = function(el){
	if(Ext.get('selItemVeh')){
	Ext.get('selItemVeh').dom.childNodes[0].nodeValue = el.childNodes[0].nodeValue;
	Ext.get('selItemVeh').dom.setAttribute('vehicle',Ext.get(el).select('span').elements[0].innerText);
	Ext.get('sListVeh').dom.style.display = 'none'; 
	}
	}
	/**
	* ставит значение href для типа тс, которое отображается в строке поиска (по умолчанию)
	*/
	var setVehicleHref = function () {
	    masel = Ext.get('sListVeh').select('a').elements;
	    var reg = /\s+/g;
	    if (Ext.get('selItemVeh').dom.childNodes[0].nodeValue.replace(reg, '') == '') {
	        return 'legkovye';
	    } else {
	        for (var ii = 0; ii < masel.length; ii++) {
	            if (masel[ii].childNodes[0].nodeValue.replace(reg, '') == Ext.get('selItemVeh').dom.childNodes[0].nodeValue.replace(reg, '')) {
	                return Ext.get(masel[ii]).select('span').elements[0].innerText;
	            }
	        }
	    }
	}
/**
 * работа поиска по словам(линия поиска)
 */
var KewLineAM = function () {
	var textKeyw = Ext.get('inSearchInp').dom.value.replace(/(\/|")+/,'');
	var textVeh = Ext.get('selItemVeh').dom.getAttribute("vehicle") != null ? Ext.get('selItemVeh').dom.getAttribute("vehicle") : setVehicleHref();
	var param = textVeh == 'buy' ? 'razdel' : 'vehicle';
		var reg1 = /\/keywords=[^\/]*\//;
		var reg2 = /\/vehicle=[a-zA-Z0-9\+\-]+\//i;
		var reg3 = /\/razdel=[a-zA-Z0-9\+\-]+\//i;
		if (Ext.get('inSearchInp').dom.value == "Введите фразу для поиска..." || Ext.get('inSearchInp').dom.value.replace(/\s+/, '') == '') {
			window.location.assign(SceneForm.href.replace('/@am/auto', '/@am/search').replace(reg1, "/").replace(reg2, "/").replace(reg3,'/').replace('/@am/search', '/@am/search/' + param + '=' + textVeh+''));
			}else{

    //window.location.assign(SceneForm.href.replace('/@am/auto', '/@am/search').replace(reg1, "/").replace(reg2, "/").replace('/@am/search', '/@am/search/vehicle=' + textVeh+'').replace('/@html/html', '/keywords=' + textKeyw + '/@html/html')); 			    
				window.location.assign('/@am/search/' + param + '='+ textVeh+'/keywords=' + textKeyw + '/@html/html'); 			    
			}			
	}

Ext.onReady(function() {	
	/**
	 * формирует запрос поиска по словам по нажатию Enter input(text)
	 */
	 if(Ext.get('inSearchInp')){
	    Ext.get('inSearchInp').on('keydown', function(e) {
	       e = e || window.event;
		    if (e.keyCode == 13) {
		       Ext.get('sListVeh').dom.style.display = 'none'; 
		       KewLineAM();
		    } 
	    })
	 }
})
//--------------
/**
  * фотогалерея: связаться с продавцом
*/

//--------------
/**
    * Выбор валюты
*/
var selectCurrAm = function(){ 
			try{
					var currency = Ext.get('sCurrency').dom.value;									
					    var reg2 = /\/currency=[a-zA-Z]+\//;
					    var reg3 = /(\/|\?)currency=[a-zA-Z]+\/?/;
						//window.location.assign(SceneForm.href.replace('/@am/auto', '/@am/search').replace(reg2, "/").replace('/@html/html', '/currency=' + currency + '/@html/html'));
						if(SceneForm.href.indexOf('/@am/search') == -1){
							if(SceneForm.form == 'basket'){
									window.location.assign(SceneForm.href.replace(reg2, "/").replace("/auto/","/basket/") + '?currency='+currency);
								}else{
									window.location.assign(SceneForm.href.replace(reg3, "/") + '?currency='+currency);
									}
							}else if(SceneForm.form == 'fotogal'){
								var test_slesh = /\/$/;
								var page_url = window.location.toString();
								var pure_url = page_url.replace(reg2, "/").replace('?','').replace('#fotogal-ads','');
								var href = test_slesh.test(pure_url)?pure_url:pure_url + '/';								
								window.location.assign(href + 'currency='+currency+'/#fotogal-ads');
							} else{
								window.location.assign(SceneForm.href.replace('/@am/auto', '/@am/search').replace(reg2, "/").replace('/@html/html', '/currency=' + currency + '/@html/html'));
								}
						return false;
					return false;}
			catch(e){
			debugsErrorRC(e);
			}				
		};
//--------------------------------
Ext.onReady(function() {	    
	    //---полнотекстовый поиск--------
        if (Ext.get('inSearchInp')){
        Ext.get('inSearchInp').on('click', function() {
            if(Ext.get('inSearchInp').dom.value == 'Введите фразу для поиска...'){
                Ext.get('inSearchInp').dom.value = '';
                Ext.get('inSearchInp').dom.className = 'input-search';
            }
        })
     }     
});
//---------------------
//-------------------------------

//----------------
//Рассылка объявлений

var Wemail;
	var ParSubscribeEmail = {
		WmailSE:'',
		WtimeSE:{
			v:'',
			inH:''
		}
	};

	var MessageEmailSbsc = function(par,textM){
		try {
		switch(par){
			case 1:
				Ext.get('MessageEmailSbsc').update('<span style="color:green;font-size:18px;font-weight:bold;">'+textM+'</span>');
			break;
			case 2:
				Ext.get('MessageEmailSbsc').update('<span style="color:red;font-size:18px;font-weight:bold;">'+textM+'</span>');
			break;
			case 3:
				Ext.get('MessageSE').update('<span style="color:red;font-size:18px;font-weight:bold;">'+textM+'</span>');
			break;
			case 4:
				Ext.get('MessageSE').update('');
			break;
		}}
	catch (e){
		debugsErrorRC(e);
		}
	}

	var subscribeEmail = function(){
		try{
		if(testingWemail()){
			CommitEmail('EmailSbsc');
		}
		}
	catch (e){
		debugsErrorRC(e);
		}
	}
	var testingWemail = function(){
		try{
		var elm = Ext.get('idEmailES').dom.value;
		if(elm == ''){
			MessageEmailSbsc(3,'укажите электронную почту');
			Ext.get('idEmailES').dom.focus();
			return false;
		}else{
			var reg = /^[a-zA-Z0-9\._-]+@[a-zA-Z0-9\._-]+\.[a-zA-Z\.]{2,4}$/;
			var valemail = elm.trim();
			if(!reg.test(valemail)){
				MessageEmailSbsc(3,'введенный вами e-mail не верен');
				Ext.get('idEmailES').dom.focus();
				return false;
			}
			else{
				MessageEmailSbsc(4)
				return true;
			}
		}}
	catch (e){
		debugsErrorRC(e);
		return false;
		}
	}

	var delFiltrES = function(el){
		try{
		for (var jj = 0; jj < el.length; jj++) {
			var el2 = Ext.get(el[jj]);
			if(el2){
			var minp = el2.select('input[type=checkbox]:checked').elements;
			if (minp.length == 0) {
				Ext.get('id'+el[jj]).remove();
			}
			}}
		}
		catch (e){
			debugsErrorRC(e);
			}
	}

	var CommitEmail = function(Elhtml){
	try{
			ParSubscribeEmail.WmailSE = Ext.get('idEmailES').dom.value;
			ParSubscribeEmail.WtimeSE.v = Ext.get('idtimeES').dom.value;
			ParSubscribeEmail.WtimeSE.inH = Ext.get('idtimeES').dom.options[Ext.get('idtimeES').dom.selectedIndex].innerHTML;

			Ext.get('EmailES').update(ParSubscribeEmail.WmailSE);
			Ext.get('timeES').update(ParSubscribeEmail.WtimeSE.inH);
	if (!Wemail) {

			//удаление пустых фильтров(марка, область)
			delFiltrES(['MakeES','RegionES']);
            //Создаются панели
            //begin

            var CentrPanel = new Ext.Panel({
                region: 'center',
                margins: '3 3 3 0',
                activeTab: 0,
                html: '<div id="WemailBox" style="overflow: auto; display: block; height: 100%; text-align:left;">' + Ext.get(Elhtml).dom.innerHTML + '</div>',
				defaults: {
                    autoScroll: true
                }
            });
            //end

			Ext.get(Elhtml).update()

			//рисуем окно
            //begin
            Wemail = new Ext.Window({
                title: 'Подписка на новые объявления',
				id:'idWemail',
                modal: true,
                layout: 'border',
                width: 500,
                height: 350,
                closeAction: 'hide',
                plain: true,
                //animateTarget: ElemEvent.id,
                buttonAlign: 'left',
                //анимация
                items: [CentrPanel],
                buttons: [{
                    text: 'ОК',
                    handler: function() {
						RequestWemail();
                    }
                }, {
                    text: 'Закрыть',
                    handler: function() {
                        Wemail.hide();
                    }}
					]
                })
                Wemail.show();

            } else {
                //вызывается функция которая выделит выбраное слева и справа(предвалительно отменив предыдущий выбор)
                    Wemail.show();
            };}
	catch (e){
		debugsErrorRC(e);
		}
	}

	var RequestWemail = function(){
		try{
			Ext.get('WemailBox').mask('сбор данных...', 'x-mask-loading');
			var par = DataCollectionES();
			AjaxWemail(par);
			}
	catch (e){
		debugsErrorRC(e);
		}
	}

	var AjaxWemail = function(Rparam){
		try{
	if(Rparam != ''){
	Ext.get('WemailBox').unmask();
	Ext.get('WemailBox').mask('отправка заявки...', 'x-mask-loading');
	Ext.Ajax.request({
			url: '/@am/delivery/@html/m',
			params:Rparam,
			disableCaching: false,
			method:'GET',
			success: function(response) {
				try{
				var reg = /<l>OK<\/l>/;
				if(reg.test(response.responseText)){
					MessageEmailSbsc(1,'Ваша заявка будет принята после подтверждения по email.');
					Wemail.hide();
				}else{
					alert('Сервер не принял Вашу заявку.\nВозможные причины:\n 1. Сервер временно не доступен.\n 2. Проблемы с email.');
					Wemail.hide();
					MessageEmailSbsc(2,'Сервер не принял вашу заявку.');
				}}
				catch (e){
					debugsErrorRC(e);
					}
				},
			failure: function() {
				MessageEmailSbsc(2,'Сервер временно не доступен, воспользуйтесь сервисом через пару минут.');
				Wemail.hide();
			}
		});
		}else{
			Ext.get('WemailBox').unmask();
			alert('Не задан фильтр.');
		}}
	catch (e){
		debugsErrorRC(e);
		}
	}

	var DataCollectionES = function(){
		try{
		var paramES = [
          {
           id: 'VehicleES',
           type: 'checkRC',
		   name: 'vehicle',
           value: ''
       }, {
           id: 'SubrazdelES',
           type: 'checkRC',
           name: 'subrazdel',
           value: ''
       }, {
           id: 'MakeES',
           type: 'checkRC',
		   name: 'make',
           value: ''
       }, {
           id: 'ModelES',
           type: 'checkRC',
           name: 'model',
           value: ''
       }, {
           id: 'ExchangeES',
           type: 'checkRC',
           name: 'possibleexchange',
           value: ''
       }, {
           id: 'FeatureES',
           type: 'checkRC',
           name: 'feature',
           value: ''
       }, {
           id: 'PriceES',
           type: 'FromTo',
           name: 'price',
           value: ''
       }, {
           id: 'RegionES',
           type: 'checkRC',
		   name: 'region',
           value: ''
       }, {
           id: 'LocationES',
           type: 'checkRC',
           name: 'location',
           value: ''
       }, {
           id: 'YearES',
           type: 'FromTo',
           name: 'year',
           value: ''
       }, {
           id: 'RunES',
           type: 'FromTo',
           name: 'run',
           value: ''
       }, {
           id: 'ColorES',
           type: 'checkRC',
           name: 'color',
           value: ''
       }, {
           id: 'TransmissionTypeES',
           type: 'checkRC',
           name: 'transmission',
           value: ''
       }, {
           id: 'ConditionES',
           type: 'checkRC',
           name: 'condition',
           value: ''
       }, {
           id: 'BodyTypeES',
           type: 'checkRC',
           name: 'bodytype',
           value: ''
       }, {
           id: 'FuelUsedES',
           type: 'checkRC',
           name: 'fuelused',
           value: ''
       }, {
           id: 'EngineES',
           type: 'FromTo',
           name: 'engine',
           value: ''
       }, {
           id: 'PhotoES',
           type: 'checkRC',
           name: 'photo',
           value: ''
       },/*{
           id: 'editPriceES',
           type: 'checkRC',
           name: 'editPrice',
           value: ''
       },{
           id: 'editDelES',
           type: 'checkRC',
           name: 'editDel',
           value: ''
       }, */{
           id: 'KeywordsES',
           type: 'keywords',
           name: 'keywords',
           value: ''
       }
        ];
		var textES = '';
		for (var ii = 0; ii < paramES.length; ii++) {
			switch (paramES[ii].type) {
                    case 'checkRC':
					try {
						var elem = Ext.get(paramES[ii].id);
							if(elem){
                            var ee = elem.select('input[type=checkbox]:checked');
								paramES[ii].value = '';
                                for (var jj = 0; jj < ee.elements.length; jj++) {
                                    if (paramES[ii].value != '') {
                                        paramES[ii].value += ',';
                                    }
                                    paramES[ii].value += ee.elements[jj].value;
                                };
								if(paramES[ii].value !=''){
									textES += paramES[ii].name +'='+paramES[ii].value+'&';
								}
							}
							}
                        catch (e) {
                            debugsErrorRC(e);
                        };
                        break;
                    case 'radioRC':
						try {
							var elem = Ext.get(paramES[ii].id);
							if(elem){
                            var minp = elem.select('input[type=radio]:checked').elements;
                            if (minp.length > 0) {
                                textES += paramES[ii].name +'=' +minp[0].value+'&';
                            }}
							}
                        catch (e) {
                            debugsErrorRC(e);
                        };
                        break;
                    case 'FromTo':
                        try {
						var elem = Ext.get(paramES[ii].id);
						if(elem){
                            var eeFrom = elem.select('input[name=from]').elements;
                            if (eeFrom.length > 0) {
                                eeFrom = eeFrom[0].value
                            } else {
                                eeFrom = '';
                            }
                            var eeTo = elem.select('input[name=to]').elements;
                            if (eeTo.length > 0) {
                                eeTo = eeTo[0].value
                            } else {
                                eeTo = '';
                            }
                            paramES[ii].value = eeFrom;
                            if ((eeFrom != '') || (eeTo != '')) {
                                paramES[ii].value += '-';
                            }
                            paramES[ii].value += eeTo;
							if(paramES[ii].value!=''){
								textES += paramES[ii].name +'=' +paramES[ii].value+'&';
							}
                        }}
                        catch (e) {
                            debugsErrorRC(e);
                        };
                        break;
                    case 'keywords':
						try {
							var elem = Ext.get(paramES[ii].id);
							if(elem){
                            var minp = elem.select('input').elements;
                            if (minp.length > 0) {
								if(minp[0].value != ''){
									textES += paramES[ii].name +'=' +minp[0].value+'&';
								}
								}}
							}
                        catch (e) {
                            debugsErrorRC(e);
                        };
                        break;
                }
		}
		if(textES != ''){
			var ee1 = Ext.get('editPriceES').select('input[type=checkbox]:checked');
			var ee2 = Ext.get('editDelES').select('input[type=checkbox]:checked');
			textES += dopElemES([{id:'editPriceES',name:'editPrice'},{id:'editDelES',name:'editDel'}]);
			textES += RaddopElemES([{id:'currencyES',name:'currency'}]);
			textES += 'email='+ ParSubscribeEmail.WmailSE +'&'+'time='+ ParSubscribeEmail.WtimeSE.v;
		}
		return textES;
		}
	catch (e){
		debugsErrorRC(e);
		return '';
		}
	}


var dopElemES = function(str1){
	try{
	var ss = '';
	for (var jj = 0; jj < str1.length; jj++) {
		var el2 = Ext.get(str1[jj].id);
		if(el2){
		var minp = el2.select('input[type=checkbox]:checked').elements;
		if (minp.length > 0) {
			ss += str1[jj].name +'=' + minp[0].value + '&';
		}}
		}
	return ss;
	}
	catch (e){
		debugsErrorRC(e);
		return '';
		}
	}

var RaddopElemES = function(str1){
	try{
	var ss = '';
	for (var jj = 0; jj < str1.length; jj++) {
		var el2 = Ext.get(str1[jj].id);
		if(el2){
		var minp = el2.select('input[type=radio]:checked').elements;
		if (minp.length > 0) {
			ss += str1[jj].name +'=' + minp[0].value + '&';
		}
		}
		}
	return ss;
	}
	catch (e){
		debugsErrorRC(e);
		return '';
		}
	}

//----------------

//-----------------------
//Вернуться к объявлениям
var BackHistoryAM = function(){
	if(history.length > 1){
		history.back();
		}	
	else{
		window.location.assign(basePage);
		}
	}
//-------------------------

//-------------------------
//Сообшить об ошибке Ob
var MSGErrorAd = function(el3id){
	var strW = el3id.substring(7);
	if(!winRCErrorAd[strW]){
		var reg = /(\s){2,}/g;
		if(SceneForm.form == 'fotogal'){
				var titleText = Ext.get('Idad'+strW).select('div[class = Adtitle]').elements[0].innerText.replace(reg,' ').replace(/\s$/,'');
				if(Ext.get('Idad'+strW).select('span[class = sub_title_price] span[class = priceAE]').elements[0]){
				titleText+= " " + Ext.get('Idad'+strW).select('span[class = sub_title_price] span[class = priceAE]').elements[0].innerText.replace(reg,' ');
				}
			}else{
				var titleText = Ext.get('Idad'+strW).select('tr:first div[class = title]').elements[0].innerText.replace(reg,' ').replace(/\s$/,'');
				if(Ext.get('Idad'+strW).select('div[class = price] a').elements[0]){
				titleText+= " " + Ext.get('Idad'+strW).select('div[class = price] a').elements[0].innerText.replace(reg,' ');
				}
			}		
		var htmlMSGw = '';
			htmlMSGw += '<table width="100%" class="ads_error"><tr>';		
			htmlMSGw += '<td class="title" width="1%"><span>Отметьте ошибку</span></td><td class="title" width="1%"><span>Другая ошибка</span></td></tr><tr>';
			htmlMSGw += '<td width="1%">';
			htmlMSGw += '<div class="right_cont"><div class="right_inp"><input name="no_sell" type="checkbox" class="checkbox"></div><span class="right_text">Уже продана</span>';		
			htmlMSGw += '</div><div class="right_cont"><div class="right_inp"><input name="repetition" type="checkbox" class="checkbox"></div><span class="right_text">Повтор</span>';		
			htmlMSGw += '</div><div class="right_cont"><div class="right_inp"><input name="prise_bad" type="checkbox" class="checkbox"></div><span class="right_text">Цена ошибочна</span>';
			htmlMSGw += '</div><div class="right_cont"><div class="right_inp"><input name="error_cont" type="checkbox" class="checkbox"></div><span class="right_text">Контакт ошибочен</span></div>';
            htmlMSGw += '<div class="right_cont"><div class="right_inp"><input name="error_rubric" type="checkbox" class="checkbox"></div><span class="right_text">Ошибка рубрикации</span></div></td>';		
			htmlMSGw += '<td align="left"><textarea name="new_text" rows="6" cols="30"></textarea></td></tr>';
			htmlMSGw += '</table>';
			
			var CentrPanel = new Ext.Panel({
					region: 'center',
					margins: '3 3 3 0',
					activeTab: 0,
					html: htmlMSGw,
					defaults: {
						autoScroll: true
					}
				});


				//рисуем окно
				//begin
			 winRCErrorAd[strW] = new Ext.Window({
					title: 'Сообщение об ошибке в объявлении('+titleText+')',
					id:'winRCErrorAd'+strW,
					modal: true,
					layout: 'border',
					width: 500,
					height: 250,
					closeAction: 'hide',
					plain: true,
					//animateTarget: ElemEvent.id,
					buttonAlign: 'left',
					//анимация
					items: [CentrPanel],
					buttons: [{
						text: 'ОК',
						handler: function() {
							SubmitCommitRCErrorAd(SceneForm.href,strW);						
							winRCErrorAd[strW].hide();
							StMSGError();
						}
					}, {
						text: 'Закрыть',
						handler: function() {
							winRCErrorAd[strW].hide()
						}}
						]
					})
					winRCErrorAd[strW].show();
				}else{
						winRCErrorAd[strW].show();
					}				
		}
		

var SubmitCommitRCErrorAd = function(pagehref,idAd){
	try{	
	var parEr = 'site='+pagehref;
		parEr +='&id='+idAd;	
	
	var text_send = Ext.get('winRCErrorAd'+idAd).select('textarea[name=new_text]').elements[0].value;
	if(text_send!=''){
		parEr +='&new_text='+text_send;
		}
	var no_sell = Ext.get('winRCErrorAd'+idAd).select('input[name=no_sell]:checked');
	if(no_sell.elements[0]){
		parEr +='&no_sell=true';
		}
		var repetition = Ext.get('winRCErrorAd'+idAd).select('input[name=repetition]:checked');
	if(repetition.elements[0]){
		parEr +='&repetition=true';
		}
		var prise_bad = Ext.get('winRCErrorAd'+idAd).select('input[name=prise_bad]:checked');
	if(prise_bad.elements[0]){
		parEr +='&prise_bad=true';
		}
		var error_cont = Ext.get('winRCErrorAd'+idAd).select('input[name=error_cont]:checked');
	    if(error_cont.elements[0]){
		    parEr +='&error_cont=true';
        }
        var error_rubric = Ext.get('winRCErrorAd' + idAd).select('input[name=error_rubric]:checked');
        if (error_rubric.elements[0]) {
            parEr += '&error_rubric=true';
        }
		
		Ext.Ajax.request({
							url: '/html/php/error_ob.php',
							params:parEr,
							method:'POST',
							success: function(response) {
								
								},
							failure: function() {}
						});
}
		catch (e){
			debugsErrorRC(e);
			}
	}
//-------------------------

//-------------------------
//Сообшить об ошибке Rek
var MSGErrorRek = function(el3id){
	var strW = el3id.substring(7);
	if(!winRCErrorAd[strW]){
		var reg = /(\s){2,}/g;
		var titleText = Ext.get('Idad'+strW).select('tr:first div[class = title]').elements[0].innerText.replace(reg,' ').replace(/\s$/,'');
		
		var htmlMSGw = '';
			htmlMSGw += '<table width="100%" class="ads_error"><tr>';		
			htmlMSGw += '<td class="title" width="1%"><span>Отметьте ошибку</span></td><td class="title" width="1%"><span>Другая ошибка</span></td></tr><tr>';
			htmlMSGw += '<td width="1%"><div class="right_cont2"><div class="right_inp"><input name="err_name" type="checkbox" class="checkbox"></div><span class="right_text">Ошибка имени продавца</span></div>';
			htmlMSGw += '<div class="right_cont2"><div class="right_inp"><input name="err_status" type="checkbox" class="checkbox"></div><span class="right_text">Ошибка статуса продавца</span></div>';
			htmlMSGw += '<div class="right_cont2"><div class="right_inp"><input name="err_type" type="checkbox" class="checkbox"></div><span class="right_text">Ошибка типа продавца</span></div>';
			htmlMSGw += '<div class="right_cont2"><div class="right_inp"><input name="err_list" type="checkbox" class="checkbox"></div><span class="right_text">Ошибка перечня марок</span></div>';
			htmlMSGw += '<div class="right_cont2"><div class="right_inp"><input name="too_many" type="checkbox" class="checkbox"></div><span class="right_text">Много автосалонов в одном</span></div>';
			htmlMSGw += '<div class="right_cont2"><div class="right_inp"><input name="err_addr" type="checkbox" class="checkbox"></div><span class="right_text">Ошибка адреса</span></div>';
			htmlMSGw += '<div class="right_cont2"><div class="right_inp"><input name="err_phone" type="checkbox" class="checkbox"></div><span class="right_text">Ошибка телефона</span></div>';
			htmlMSGw += '<div class="right_cont2"><div class="right_inp"><input name="err_site" type="checkbox" class="checkbox"></div><span class="right_text">Ошибка сайта</span></div></td>';		
			htmlMSGw += '<td align="left"><textarea name="new_text" rows="6" cols="30"></textarea></td></tr>';
			htmlMSGw += '</table>';
			
			var CentrPanel = new Ext.Panel({
					region: 'center',
					margins: '3 3 3 0',
					activeTab: 0,
					html: htmlMSGw,
					defaults: {
						autoScroll: true
					}
				});


				//рисуем окно
				//begin
			 winRCErrorAd[strW] = new Ext.Window({
					title: 'Сообщение об ошибке в объявлении автосалона('+titleText+')',
					id:'winRCErrorAd'+strW,
					modal: true,
					layout: 'border',
					width: 500,
					height: 305,
					closeAction: 'hide',
					plain: true,
					//animateTarget: ElemEvent.id,
					buttonAlign: 'left',
					//анимация
					items: [CentrPanel],
					buttons: [{
						text: 'ОК',
						handler: function() {
							SubmitCommitRCErrorRek(SceneForm.href,strW);						
							winRCErrorAd[strW].hide();
							StMSGError();
						}
					}, {
						text: 'Закрыть',
						handler: function() {
							winRCErrorAd[strW].hide()
						}}
						]
					})
					winRCErrorAd[strW].show();
				}else{
						winRCErrorAd[strW].show();
					}				
		}
		

var SubmitCommitRCErrorRek = function(pagehref,idAd){
	try{	
	var parEr = 'site='+pagehref;
		parEr +='&id='+idAd;	
	
	var text_send = Ext.get('winRCErrorAd'+idAd).select('textarea[name=new_text]').elements[0].value;
	if(text_send!=''){
		parEr +='&new_text='+text_send;
		}
	var err_name = Ext.get('winRCErrorAd'+idAd).select('input[name=err_name]:checked');
	if(err_name.elements[0]){
		parEr +='&err_name=true';
		}
		var err_status = Ext.get('winRCErrorAd'+idAd).select('input[name=err_status]:checked');
	if(err_status.elements[0]){
		parEr +='&err_status=true';
		}
		var err_type = Ext.get('winRCErrorAd'+idAd).select('input[name=err_type]:checked');
	if(err_type.elements[0]){
		parEr +='&err_type=true';
		}
		var err_list = Ext.get('winRCErrorAd'+idAd).select('input[name=err_list]:checked');
	if(err_list.elements[0]){
		parEr +='&err_list=true';
		}
		var too_many = Ext.get('winRCErrorAd'+idAd).select('input[name=too_many]:checked');
	if(too_many.elements[0]){
		parEr +='&too_many=true';
		}
		var err_addr = Ext.get('winRCErrorAd'+idAd).select('input[name=err_addr]:checked');
	if(err_addr.elements[0]){
		parEr +='&err_addr=true';
		}
		var err_phone = Ext.get('winRCErrorAd'+idAd).select('input[name=err_phone]:checked');
	if(err_phone.elements[0]){
		parEr +='&err_phone=true';
		}
		var err_site = Ext.get('winRCErrorAd'+idAd).select('input[name=err_site]:checked');
	if(err_site.elements[0]){
		parEr +='&err_site=true';
		}
		
		Ext.Ajax.request({
							url: '/html/php/salon/error_ob.php',
							params:parEr,
							method:'POST',
							success: function(response) {
								
								},
							failure: function() {}
						});
}
		catch (e){
			debugsErrorRC(e);
			}
	}
//-------------------------
//-------------------------
//Статистика "Сообшить об ошибке"
var StMSGError = function(){
	var tempIFrame = document.createElement('iframe');
	tempIFrame.setAttribute('src', '/html/php/stErrorOb.html?tt=a');	
	tempIFrame.setAttribute('height', '1px');
	tempIFrame.setAttribute('width', '1px');
	document.body.appendChild(tempIFrame);
	}
//-------------------------
//-------------------------
//Статистика "график цены"
	var StMSGPFC = function () {
	    var d = document.createElement('div');
	    d.innerHTML = '<iframe src="/html/php/stGPFC.html" style="width:0px;height:0px;border:0px;"> </iframe>';	    
	    document.body.appendChild(d);
	}
//-------------------------
//Статистика "загрузка график цены"
	var StMSGPFCl = function () {
	    var d = document.createElement('div');
	    d.innerHTML = '<iframe src="/html/php/stLGPFC.html" style="width:0px;height:0px;border:0px;"> </iframe>';
	    document.body.appendChild(d);	
	}
//-------------------------
/**
/*  Сортировка по цене, дате и по году(param - значение параметра sort в url, id1 - приставка для id элемента,у кот. меняется href, 
  id2 - приставка для id элемента, у кот. меняют класс, pageUrl - url текущей страницы)
*/  
var sortYrPrAm = function(param,id1,id2,pageUrl){      
    var masId = Ext.select("#idSort"+id1+","+"#idSpanSort"+id2+","+"#idSort"+id1+"t"+","+"#idSpanSort"+id2+"t").elements;  
    try{  
        for(var ii = 0;ii < 2;ii++){
            var reg2 = new RegExp('\/sort='+param);
            var regpages = /\/page=[^\/]+/i;
            if(masId[ii*2]&&masId[ii*2].href){ 
                masId[ii*2].href = masId[ii*2].href.replace(regpages,'');
            }
            if(reg2.test(pageUrl)&&masId[ii*2]&&masId[ii*2].href){       
			        masId[ii*2].href = masId[ii*2].href.replace(reg2,"/sort=-"+param+'');			        
			        Ext.get('arr'+param).dom.innerHTML = '&uarr;';
			        masId[ii*2+1].className = 'sort-up';
			        }else{
			            var reg2 = new RegExp('\/sort=-'+param);
				        if(reg2.test(pageUrl)&&masId[ii*2]){
					        masId[ii*2].href = masId[ii*2].href.replace(reg2,"/sort="+param+'');
					        Ext.get('arr'+param).dom.innerHTML = '&darr;';
					        masId[ii*2+1].className = 'sort-down';
					        }
			        }
        }
     }catch (e){
			debugsErrorRC(e);
			}   
}
/**
 * сортировка похожих объявлений для фотогалереи
 * 
 */
function sortYrPrAmFotogal (param,id1,id2,pageUrl){
	var masId = Ext.select("#idSortFotogal"+id1+","+"#idSpanSortFotogal"+id2+","+"#idSortFotogal"+id1+"t"+","+"#idSpanSortFotogal"+id2+"t").elements;
	//var sing = /\?(.*)$/.test(pageUrl)?(RegExp.$1?'&':''):'?';
	try{  
        for(var ii = 0;ii < 2;ii++){        	
            var reg2 = new RegExp('(\?|&)sort='+param);
            var regpages = /(\?|&)page=[^\/]+/i;
            if(masId[ii*2]&&masId[ii*2].href){ 
                masId[ii*2].href = masId[ii*2].href.replace(regpages,'');
            }
            if(reg2.test(pageUrl)&&masId[ii*2]&&masId[ii*2].href){      
			        masId[ii*2].href = masId[ii*2].href.replace(reg2,RegExp.$1+"sort=-"+param);
			          Ext.get('arr'+param).dom.innerHTML = '&uarr;';
			        masId[ii*2+1].className = 'sort-up';
			        }else{
			            var reg2 = new RegExp('(\?|&)sort=-'+param);
				        if(reg2.test(pageUrl)&&masId[ii*2]){
					        masId[ii*2].href = masId[ii*2].href.replace(reg2,RegExp.$1+"sort="+param);
					          Ext.get('arr'+param).dom.innerHTML = '&darr;';
					        masId[ii*2+1].className = 'sort-down';
					        }
			        }
        }
     }catch (e){
			debugsErrorRC(e);
			}
	
};
//-------------------------
/**
/* Подсветка текста (пока только текста, для любого набора узлов пока не работает(происходит замена в атрибутах узлов - подлежит исправлению!!))
    @param elem - массив из элементов, в которых нужно подсветить слова;
    @param text - строка, набор слов, которые будем подсвечивать;
    @param minLength - минимальная длина слова для совпадения
*/
var highlightText = function(elem,text,minLength){
    try{
        var reg = /[,\-\s]+/g;    
        var newstr = text.replace(/(^\s+|\s+$)/g,'').replace(/\s+/g,' ');
        // masArray - массив из слов, которые нужно подсветить
        var masArray = newstr.split(reg);
        for(var jj=0;jj<elem.length;jj++){
            try{
                var newelem = elem[jj].innerHTML;    
                for(var ii=0;ii<masArray.length;ii++){
                    if(masArray[ii].length > minLength){
                        var reg1 = new RegExp("("+masArray[ii]+")","gi");            
                        //if (newelem.indexOf(masArray[ii])>0){
                            newelem = newelem.replace(reg1,'<em class="highlight-text">$1</em>');
                        //}
                     }
                    }
                Ext.get(Ext.get('centerAd').select('span[class=body]').elements[jj]).update(newelem);
             }catch (e) {
			debugsErrorRC(e);
			}     
        } 
     }catch (e) {
			debugsErrorRC(e);
			}         
  }

/**
 * ставить фокус
 */
function setFocus(id){
	if(Ext.get(id)){
	window.location.assign('#'+id);
		Ext.get(id).dom.focus();
	}
}
//-------------------------
Ext.onReady(function() {
	var pageAM = SceneForm.href;
	var pageFotogal = window.location.toString();
	try{
		sortYrPrAm('price','Price','Pr',pageAM);
		sortYrPrAm('year','Year','Yr',pageAM);
		/*sortYrPrAmFotogal('price','Price','Pr',pageFotogal);
		sortYrPrAmFotogal('year','Year','Yr',pageFotogal);*/
		if(Ext.get('idSortDate')){
		    var regpages = /\/page=[^\/]+/i;		   
		    Ext.get('idSortDate').dom.href = Ext.get('idSortDate').dom.href.replace(regpages,'');
		}
		if(Ext.get('idSortDatet')){
		    var regpages = /\/page=[^\/]+/i;
		    Ext.get('idSortDatet').dom.href = Ext.get('idSortDatet').dom.href.replace(regpages,'');
		}
		//sortYrPrAm('date','Date','Dt',pageAM);
		/*if (Ext.get('inSearchInp')){
		    if(Ext.get('inSearchInp').dom.value != ''&&Ext.get('inSearchInp').dom.value != 'Введите фразу для поиска...'){
		       if(Ext.get('centerAd')){
		        highlightText(Ext.get('centerAd').select('span[class=body]').elements,Ext.get('inSearchInp').dom.value,2); 
		       }
		    }
		}*/
		}catch (e){
			debugsErrorRC(e);
			}
	})
//--------------------------------------------
/*
  * связаться с продавцом
*/
var contactSeller = function(idElement){
	try {
   var idAdFotogal = idElement.substring(10);
   if(!contMsgWind){
          var htmlMSGw ='<div class="contactMessageBox" id="contMsgBox">';
			htmlMSGw +='<div class="boxLine"></div>';
            htmlMSGw +='<div class="contactBox">';
			htmlMSGw +='<h4>Связаться с продавцом:</h4>';
			htmlMSGw +='<div class="left">';
			htmlMSGw +='<div><div>Ваше сообщение:</div><textarea name="message" rows="10" class="message-box" id="message" tabindex="5"> </textarea></div>';
			htmlMSGw +='<div style="margin-top: 10px;">';
			htmlMSGw +='<input type="checkbox" id="idCopy" name="copy" tabindex="6"><span>Отправить копию этого письма на мой электронный адрес.</span></div>';
			htmlMSGw +='<div id="idErrList"></div></div>';
			htmlMSGw +='<div class="right">';
			htmlMSGw +='<div class="row"><div class="details"><div>Ваше имя:</div><input type="text" name="name" id="idName" class="inputContact" tabindex="1"></div>';
			htmlMSGw +='<div class="details"><div>Ваш адрес электронной почты (только при наличии)</div><input type="text" name="email" id="idEmail" class="inputContact" tabindex="2"></div></div>';
			htmlMSGw +='<div class="row"><div style="margin-bottom: 3px;">Ваш телефонный номер:</div>';
			htmlMSGw +='<div>8 (<input type="text" id="inCodePhone" name="codephone" tabindex="3" maxlength="5" style="width: 40px;" onchange="javascript: testKey(event); void 0;">) <input type="text" id="inPhone" name="phone" tabindex="4" maxlength="7" style="width: 99px; margin-left: 10px;" onchange="javascript: testKey(event); void 0;"></div></div>';
			htmlMSGw +='<div class="row"><div>Введите код подтверждения:</div><div style="margin-top: 5px;"><img id="captchaMSG" onclick="this.src=\'/html/php/captcha/index.php?\'+Math.random();" class="captcha" src="/html/php/captcha/index.php"><div class="small">Не ясен текст? Нажмите на картинку</div></div>';
			htmlMSGw +='<input name="captcha" style="width: 175px;margin-top: 10px;" class="input_captcha" type="text" tabindex="7"><div class="small">Код состоит из латинских букв, регистр не важен</div></div></div><div class="clear"></div></div>';
			htmlMSGw +='<div class="boxLine"></div></div>';
        var CentrPanel = new Ext.Panel({
					region: 'center',
					margins: '3 3 3 0',
					activeTab: 0,
					html: htmlMSGw,
					defaults: {
						autoScroll: true
					}
				});
        contMsgWind = new Ext.Window({
					title: 'Связаться с продавцом',
					id:'contMsgWind',
					modal: true,
					layout: 'border',
					width: 745,
					height: Ext.isIE?445:460,
					closeAction: 'hide',
					plain: true,
					//animateTarget: ElemEvent.id,
					buttonAlign: 'left',
					//анимация
					items: [CentrPanel],
					buttons: [{
						text: 'Отправить',
						handler: function() {						    
						    if(checkFieldsAm()){
							    SubmitMsgSeller(SceneForm.href,idAdFotogal);							    
							}
							//contMsgWind.hide();
						}
					}, {
						text: 'Закрыть',
						handler: function() {
							contMsgWind.hide();
							Ext.get('idErrList').update('');
							changeremClass();
						}}
						]
					})
					contMsgWind.show();
   }else{
    contMsgWind.show();
   } 
   }catch (e){
			debugsErrorRC(e);
			}    
}
/**
*проверка формы на правильность заполнения
*/
var checkFieldsAm = function(){
	try{
    Ext.get('contMsgWind').unmask();
    Ext.get('idErrList').update('');
    changeremClass();
    var myWindowAm = Ext.get('contMsgWind');
     var errorList = [];
     var errorIdList = [];          
    var text_send = myWindowAm.select('textarea[name=message]').elements[0].value.replace(/\s+/,'');
	if(text_send ==''){
		errorList.push(2);
		errorIdList.push('textarea[name=message]'); 
		} 
	var reg = /[0-9a-z_]+@[0-9a-z_^.]+\.[a-z]{2,3}/i;        	
    var emailA = myWindowAm.select('input[name=email]');
	if(!reg.test(emailA.elements[0].value)){
		errorList.push(1);
		errorIdList.push('input[name=email]'); 
		}
	 var codephoneA = myWindowAm.select('input[name=codephone]');
	 var phoneA = myWindowAm.select('input[name=phone]');   		  
     if ((codephoneA.elements[0].value.length + phoneA.elements[0].value.length != 10) && codephoneA.elements[0].value != ''){
           errorList.push(4);
           errorIdList.push('input[name=codephone]'); 
           errorIdList.push('input[name=phone]'); 
     }
     var captchaA = myWindowAm.select('input[name=captcha]');
        if(captchaA.elements[0].value == ''){
	        errorList.push(3);
	        errorIdList.push('input[name=captcha]'); 
	        }
	if(errorList.length == 0){
	    return true;
	}else {
	    displListErr(errorList);
	    changeadClass(errorIdList);
	    return false;
	}
	}catch (e){
			debugsErrorRC(e);
			return false;
			} 		          
}
/**
*отображение ошибок
*/
var displListErr = function(erl){
	try{
     // Хэш с текстом ошибок (ключ - ID ошибки)
        var errorText = {
        1 : "Не верно указан адрес электронной почты",
        2 : "Не введен текст сообщения",
        3:  "Вы ввели неверный код. Если вы его указали, проверьте его корректность",
        4:  "Телефонный номер должен состоять из 10 цифр"
        }    
        var errorMsg = '<ul class="ul-list-err">';
         for (var ii = 0; ii < erl.length; ii++) {         
            errorMsg += '<li>' + errorText[erl[ii]] + "</li>";
        }
        errorMsg += '</ul>';
        Ext.get('idErrList').update(errorMsg);
        }catch (e){
			debugsErrorRC(e);
			} 
}
/**
* добавление класса к неправильным полям
*/
var  changeadClass = function(elid){
	try{
       var myWindowAm = Ext.get('contMsgWind');
       for (var ii = 0; ii < elid.length; ii++) {         
            myWindowAm.select(elid[ii]).addClass("wrong-field");
        }
        }catch (e){
			debugsErrorRC(e);
			}      
}
/**
* добавление класса поля
*/
var  changeremClass = function(elid){
	try{
       var myWindowAm = Ext.get('contMsgWind');
       if(!elid){
          var elid = ['textarea[name=message]','input[name=email]','input[name=codephone]','input[name=phone]','input[name=captcha]'];           
        }
        for (var ii = 0; ii < elid.length; ii++) {         
            myWindowAm.select(elid[ii]).removeClass("wrong-field");
        }}catch (e){
			debugsErrorRC(e);
			}
}
/**
* функция отправки
*/
var SubmitMsgSeller = function(currpageUrl,idAd){    
    try {
		var myWindowAm = Ext.get('contMsgWind');
        var paramMsg = 'site='+currpageUrl;
		paramMsg +='&id='+idAd;	
	
	var text_send = myWindowAm.select('textarea[name=message]').elements[0].value;
	if(text_send!=''){
		paramMsg +='&message='+text_send;
		}
	var copyA = myWindowAm.select('input[name=copy]:checked');
	if(copyA.elements[0]){
		paramMsg +='&copy=true';
		}		
	var nameA = myWindowAm.select('input[name=name]');
	if(nameA.elements[0]){
		paramMsg +='&name='+nameA.elements[0].value;
		}
	var emailA = myWindowAm.select('input[name=email]');
	if(emailA.elements[0]){
		paramMsg +='&email='+emailA.elements[0].value;
		}
	var codephoneA = myWindowAm.select('input[name=codephone]');
	if(codephoneA.elements[0]){
		paramMsg +='&codephone='+codephoneA.elements[0].value;
		}
	var phoneA = myWindowAm.select('input[name=phone]');
	if(phoneA.elements[0]){
		paramMsg +='&phone='+phoneA.elements[0].value;
		}
	var captchaA = myWindowAm.select('input[name=captcha]');
	if(captchaA.elements[0]){
		paramMsg +='&captcha='+captchaA.elements[0].value;
		}		
		myWindowAm.mask('отправка сообщения...', 'x-mask-loading');
		Ext.get('idErrList').update('');
		changeremClass();
	    Ext.Ajax.request({
					    url: '/html/php/send_private_message_new.php',
					    params:paramMsg,
					    method:'POST',
					    success: function(response) {
						Ext.get('captchaMSG').dom.src='/html/php/captcha/index.php?'+Math.random();
					    Ext.get('contMsgWind').unmask();					    
						    var reg = /<p>(.*)<\/p>/;
						    var resl = response.responseText.match(reg);
						    resl = RegExp.$1;
						    if(resl == '0'){
						        contMsgWind.hide();
						    }else{
						        displListErr([resl]);
						        changeadClass(['input[name=captcha]']);
						    }     
						    },
					    failure: function() {}
				    });
    }catch (e){
			debugsErrorRC(e);
			}    
}
//-------------------------


function FC_DataLoaded(DOMId){
// вызывается в момент, когда данные xml загружены
  if ('Модельный ряд'==winFC[DOMId.slice(2)].chartContent&&'undefined'==globalExchangeVar["currentWindowID"].action){
            buildLeftPanelMulty(DOMId)
          }
  
  globalExchangeVar["currentWindowID"].action = 'undefined'; // обнуляем маркер перегрузки данных чарта
};//function FC_DataLoaded(DOMId){

/*
function switchIfoPanel(){
var textInfoMultychart = '<div class="graphInfo"><p>График отображает текущую среднюю стоимость автомобиля в зависимости от года выпуска. </p>';
		    textInfo += '<p><b style="color:#f00;">Красным ромбиком</b> на графике обозначено текущее объявление.</p>';
		    textInfo += '<p>Каждая <b >цветная линия</b>показывает <a href="http://ru.wikipedia.org/wiki/%D0%A2%D1%80%D0%B5%D0%BD%D0%B4">тренд</a>определённой модели. Соответствие цвета - модели авто, находится внизу графика.</p><p>Кликнув на <b style="color:#090;">цветной ромбик</b> - Вы попадете на страницу конкретной модели и года выпуска.</p>';
		    textInfo += '<p>Средние цены на авто - вычисляются приблизительно, на основании имеющихся в наличии данных: марки, модели, типа КПП, состояния авто.</p>';
		    textInfo += '<p>Мы работаем над увеличением точности вычисления средних цен - учетом большего числа характеристик и параметров автомобиля.</p></div>';
		    textInfo += '<div style="text-align: center; font-weight: bold; cursor: pointer;" onclick="CommitRC(\'Средние цены \')">Оставить пожелание</div>';
} 
*/

//загрузка api EMUC
var flagLinkscrp =false;
Ext.onReady(function() {
	if(!flagLinkscrp){
			flagLinkscrp = true;
			var scrp = document.createElement('script');
			scrp.setAttribute('src', chatDomain+'/stc/scripts/jabext/EMUC.js');        
			scrp.setAttribute('type','text/javascript');
			document.body.appendChild(scrp);
			}
	})
/**
 * Создание EMUC. Получение информации о комнате
 * @param {Object} par список id
 */

var flagLinkEMUC = false;         	
var OneRoomChat = function(par){	
	Ext.onReady(function() {
		if(!flagLinkEMUC){
			flagLinkEMUC= true;
			var _timer2 = setInterval(
                    function() {
                        if (typeof EMUC != "undefined") {
                            clearInterval(_timer2);
							multiroomJabbered = new EMUC({
												roomId:[par.roomId],
												crinfo:par.crinfo,
												roomName:par.roomName||'',
												hostEMUC:chatDomain
							});            
							multiroomJabbered.init({
										idHtml:"chatJEifr",
										load:'now',
										callback: ChatLink
										});		
										}
                    }, 10);			
			}
		})			
}
		

/**
 * Создание EMUC. Получение информации о списке комнат
 * @param {Array} par список id
 */
var flagLinkEMUCs = false;
var MultiRoomsChat = function(par){	
	Ext.onReady(function() {
		if(!flagLinkEMUC){
			flagLinkEMUC = true;
			var _timer2 = setInterval(
                    function() {
                        if (typeof EMUC != "undefined") {
                            clearInterval(_timer2);
							multiroomJabbered = new EMUC({
												roomId:par,
												hostEMUC:chatDomain
							});            
							multiroomJabbered.init({
										idHtml:"roomJabExt",
										load:'now',
										callback: amMultiRoomsChat
										});		
							}
                    }, 10);						
			}
		})			
	}
/**
 * callback ф-ция для отображения информации о списке комнат
*/
var amMultiRoomsChat =function(p){
	for(var ii =0; ii<p.length; ii++){		
		var el = Ext.get('ChatId'+p[ii].room.replace('.',''));
		/*p[ii].userNumber = 2;
		p[ii].presence = true;*/
		var href = '/'+p[ii].room.replace('am.','')+'#EMUC';		
		var text = '<table style="width:100%;white-space:nowrap;"><tr>';
		text += p[ii].presence ? '<td><a target="_blank" href="'+href+'" class="owner_online">Владелец сейчас на сайте</a></td>' : '';
		text += '<td align="right">';
		if (p[ii].userNumber > 0){
		  text += '<a target="_blank" href="'+href+'" class="discuss">Идет дискуссия</a><span class="numb_particip">('+p[ii].userNumber+' чел.)</span>';
		}else {
		  if (p[ii].presence){
		      text += '<a target="_blank" href="'+href+'" class="start_discuss">Начните дискуссию:</a>';
		  }else {
		      text += '<span class="write_owner">Напишите владельцу:</span>';
		  }
		}
		text += '<a target="_blank" href="'+href+'" class="ask_seller">Задать вопрос</a></td></tr></table>';		
		el.update(text);
		}
	}
/**
 * callback ф-ция для отображения информации об одной комнате
*/ 
 	var ChatLink = function(m,id,roomname){
    var parEl = Ext.get('chatJE');    
    /*m[0].presence = true;
    m[0].userNumber = 5;*/
    if(m[0].url&&parEl){
        
        if(roomname){                
                m[0].url +='&roomname='+roomname;
                  }
                        
        if(/#EMUC/.test(window.location.hash)){
            EMUC.ifr(m[0].url,id,roomname);
        }else{
          var oncl = "Ext.get('chatJE').hide();EMUC.ifr(\'"+m[0].url+"\',\'"+id+"\',\'"+roomname+"\'); EMUC.deleteHTMLEl(\'"+id+"\',\'linkEMUC\');"; 
          var text = '<table class="chat_tbl"><tr>';
          text += '<td class="own_onl_td">';
	        text += m[0].presence ? '<a href="#EMUC" onclick="'+oncl+'" class="owner_online">Владелец сейчас на сайте</a>' : '';
	        text += '</td>';
	        if (m[0].userNumber > 0){
	          text += '<td align="right"><a href="#EMUC" onclick="'+oncl+'" class="discuss">Идет дискуссия</a><span class="numb_particip">('+m[0].userNumber+' чел.)</span></td>';
	        }else {
	          if (m[0].presence){
	              text += '<td align="right"><a href="#EMUC" onclick="'+oncl+'" class="start_discuss">Начните дискуссию:</a></td>';
	          }else {
	              text += '<td align="right"><span class="write_owner">Напишите владельцу:</span></td>';
	          }
	        }
	        text += '<td align="right"><a href="#EMUC" onclick="'+oncl+'" class="fask_seller">Задать вопрос</a></td></tr></table>';		
	        parEl.update(text);                                        
        }
      }
};	
/**
 * Вход в чат
 * Проверка на наличее uid 
 */
var enterAmUaChat = function(){
	var tempIFrame = document.createElement('iframe');
    tempIFrame.setAttribute('frameborder', '0px');
    tempIFrame.setAttribute('framespacing', '0px');
    tempIFrame.setAttribute('border', '0px');
    tempIFrame.setAttribute('hspace', '0');
    tempIFrame.setAttribute('vspace', '0');
    tempIFrame.setAttribute('marginwidth', '0');
    tempIFrame.setAttribute('marginheight', '0');
    tempIFrame.setAttribute('scrolling', 'no');
    tempIFrame.setAttribute('src', chatDomain+'/stc/scripts/jabext/uidInf.html?width='+Ext.getBody().getWidth());        
	document.body.appendChild(tempIFrame);                            
	}

var enterAmUaChat2 = function(){
	Ext.MessageBox.buttonText = {cancel:'Отмена',ok:'ОК'};	
	Ext.MessageBox.prompt(
             'Войти',
             'Введите uid из письма или email',
                    /**
                     * @param p {ok/cansel}
                     * @param text {String} секретный пароль
                     */
                     function(p,text){
                     text = text.replace(/\s+/g,"");
                     if(('ok'==p)&&(''!=text)){	
                         var reg_email = /[0-9a-z_]+@[0-9a-z_^.]+\.[a-z]{2,3}/i;
                         var reg_uid = /[0-9abcdef]{12,32}/i;
                         if(!reg_email.test(text)){
                         	if(!reg_uid.test(text)){                         		
                         		Ext.Msg.show({
                         			   title:'Ошибка',
                         			   msg: 'Введите правильный uid или email',
                         			   buttons: Ext.Msg.OK,
                         			   fn: enterAmUaChat,	                                			   
                         			   icon: Ext.MessageBox.ERROR
                         			});
                         	}else{                         		
                         		var d = document.createElement('div');
                            	var n = 'f' + Math.floor(Math.random() * 99999);                         	
                           	  	d.innerHTML = '<form method="post" id="'+n+'" action="'+chatDomain+'/pipe/muc/rooms/" target="'+n+'" >'
                           	  	+ '<input type="hidden" name="uid" value="'+text+'"/>'
                           	  	+ '<input type="hidden" name="callback" value="multiRoomsUid"/></form>'
                           	  	+ '<iframe style="width:0px;height:0px;border:0px;" name="'+n+'"></iframe>';
                            	document.body.appendChild(d);
                            	
                            	Ext.get(n).dom.submit();  
                         		//window.location.assign(chatDomain+'/pipe/muc/rooms/?uid='+text);					                    	
                         	}
                         }else{
                        	var d = document.createElement('div');
                        	var n = 'f' + Math.floor(Math.random() * 99999);                         	
                       	  	d.innerHTML = '<form method="post" id="'+n+'" action="'+chatDomain+'/pipe/muc/rooms/" target="'+n+'" >'
                       	  	+ '<input type="hidden" name="email" value="'+text+'"/>'
                       	  	+ '<input type="hidden" name="callback" value="multiRoomsEmail"/></form>'
                       	  	+ '<iframe style="width:0px;height:0px;border:0px;" name="'+n+'"></iframe>';
                        	document.body.appendChild(d);
                        	
                        	Ext.get(n).dom.submit();
                         }                                																
                     }
                     })                  
                     
}
/***********************************************************************************************************************************************/
/**
* слайд-шоу - версия 2
*/
/**
* номер текущего фото
*/
var curr_n_photo = curr_n_photo || 1;
/**
* массив id таймаутов
*/
var timeout_id = [];
/**
* массив данных о состоянии фото и о том, какое фото должно быть сверху
*/
var load_mass = { 'idBigPhoto1': { status: 'false', role: 'first' }, 'idBigPhoto2': { status: 'false', role: 'second'} };
/**
* массив для изменения прозрачности
*/
var m_opacity = new Array(0, 100);
/**
* флаг для остановки и возобновления слайд-шоу
*/
var flag_ss = true;
/**
 * определение включать ли таймаут для фото
 */
var flag_timeout = true;
/**
* флаг для определения остановки слайд-шоу
*/
//var flMouseOut = true;
/**
* таймаут изменения прозрачности
*/
var timeout_opacity_id;
/**
* количество всех фото
*/
var number_imgs = number_imgs || 1;

/**
* срабатывает по событию onload b вызывает механизм изменения прозрачности и смены картинок
* @param id id элемента, у которого произошло событие
*/
function checkLoad(id) {
    load_mass[id].status = 'true';
    if (load_mass['idBigPhoto1'].status == 'true' && load_mass['idBigPhoto2'].status == 'true') {
	
		clearTimeoutImgs();
		if (flag_timeout) {
			timeout_id.push(setTimeout(function(){
				scrollImgs();
				smoothChangePhotos();
			}, 3000));
		}
		else {
			flag_timeout = true;
			scrollImgs();
			smoothChangePhotos();
		}
	}
}

function scrollImgs() {
    // начинаем слайд-шоу сначала
    if (curr_n_photo == 0) {
        //curr_n_photo = 0;
        // возвращаемся в начало списка
        for (var ii = 1; ii < number_imgs - 1; ii++) {
            torg_cell(-1);
        }
    }
    //прокручиваем список вниз
    if (curr_n_photo > 3) {
        torg_cell(1);
    }
}

function clearTimeoutImgs() {
    Ext.each(timeout_id, function (p) {
        clearTimeout(p);
    });
    timeout_id = [];
}

function setClassSelectedImg() {

    var num = parseInt(curr_n_photo) > (number_imgs - 1) ? 0 : curr_n_photo;

    // удаляем класс у всех маленьких картинок
    Ext.get('small_imgs').select('img').removeClass('select_photo');
    //добавляем класс к выбранной картинке
    // ?????
    Ext.get('img' + (parseInt(num) + 1)).addClass('select_photo');
}

/**
* запускает механизм изменения прозрачности
*/
function smoothChangePhotos() {
    setClassSelectedImg();

    if (load_mass['idBigPhoto1'].role == 'first') {
        next('idBigPhoto1', 'idBigPhoto2');
    } else {
        next('idBigPhoto2', 'idBigPhoto1');
    }
}

/**
* плавное изменение прозрачности
* @param id1 {String} id элемента, который должен исчезать
* @param id2 {String} id элемента, который должен появляться
*/
function next(id1, id2) {
    var seepOp = 1;
    m_opacity[0] += seepOp;
    m_opacity[1] -= seepOp;

    Ext.get(id1).dom.style.opacity = m_opacity[1] / 100;
    Ext.get(id1).dom.style.filter = "alpha(opacity=" + m_opacity[1] + ")";
    Ext.get(id2).dom.style.opacity = m_opacity[0] / 100;
    Ext.get(id2).dom.style.filter = "alpha(opacity=" + m_opacity[0] + ")";

    if (m_opacity[0] == seepOp) {
        Ext.get(id2).dom.style.display = 'inline';
    }

    if (m_opacity[0] > 98) {
        m_opacity = [0, 100];
        //  clearTimeout(timeout_opacity_id);
        Ext.get(id1).dom.style.display = 'none';

        load_mass[id1].role = 'second';
        load_mass[id2].role = 'first';

        curr_n_photo = Ext.get(id2).dom.name.substring(3);

        //вызываем функцию, которая меняет следующую картинку            
        if (flag_ss) {
            changeImgSrc(id1, id2);
        }
    } else {
        timeout_opacity_id = setTimeout(function () { next(id1, id2); }, 4);
    }
}

function changeImgSrc(id1, id2) {
    load_mass[id1].status = 'false';

    // начинаем слайд-шоу сначала
    if (curr_n_photo > (number_imgs - 1)) {
        curr_n_photo = 0;
    }
    // меняем src и name у картинки
    if (Ext.get(id1).dom.src == Ext.get('img' + (parseInt(curr_n_photo) + 1)).dom.src.substr(0, Ext.get('img' + (parseInt(curr_n_photo) + 1)).dom.src.length - 6) + 'n' + '.jpeg') {        
        checkLoad(id1);
    } else {
        Ext.get(id1).dom.src = Ext.get('img' + (parseInt(curr_n_photo) + 1)).dom.src.substr(0, Ext.get('img' + (parseInt(curr_n_photo) + 1)).dom.src.length - 6) + 'n' + '.jpeg';
        Ext.get(id1).dom.name = 'pic' + (parseInt(curr_n_photo) + 1);
    }
}

var stopSlideShow = function () {
    clearTimeoutImgs();

    flag_ss = false;
	   
    //clearTimeout(timeout_opacity_id);
    Ext.get('stopSS').dom.style.display = 'none';
    Ext.get('startSS').dom.style.display = 'inline';
}

var startSlideShow = function () {
    flag_ss = true;  

    setClassSelectedImg();

    Ext.get('stopSS').dom.style.display = 'inline';
    Ext.get('startSS').dom.style.display = 'none';

    if (load_mass['idBigPhoto1'].role == 'first') {
        changeImgSrc('idBigPhoto2', 'idBigPhoto1');
    } else {
        changeImgSrc('idBigPhoto1', 'idBigPhoto2');
    }
}


Ext.onReady(function () {
	if (Ext.get('small_imgs')) {
		var mass_imgs = Ext.get('small_imgs').select('img');
		number_imgs = mass_imgs.elements.length;
		
		mass_imgs.on('click', function(ev, el){
			Ext.get('small_imgs').select('img').removeClass('select_photo');
			Ext.get(el).addClass('select_photo');
			
			flag_timeout = false;
			
			clearTimeoutImgs();
			
			curr_n_photo = el.id.substring(3) - 1;
			
			var num_id;
			if (load_mass['idBigPhoto1'].role == 'first') {
				num_id = 2;
				load_mass['idBigPhoto2'].status = false;
			}
			else {
				num_id = 1;
				load_mass['idBigPhoto1'].status = false;
			}
			
			// Ext.get('idBigPhoto' + num_id).dom.name = 'pic' + (parseInt(curr_n_photo) + 1);
			
			clearTimeout(timeout_opacity_id);
			
			var elem = Ext.getDom('idBigPhoto' + num_id);
			if (elem.src == el.src.substr(0, el.src.length - 6) + 'n' + '.jpeg') {
				checkLoad(elem.id);
			}
			else {
				elem.name = 'pic' + (parseInt(curr_n_photo) + 1);
				elem.src = el.src.substr(0, el.src.length - 6) + 'n' + '.jpeg';
			}
			
			
		});
	}
})

function openBigPhoto() {
    var num_id;
    if (load_mass['idBigPhoto1'].role == 'first') {
        num_id = 2; 
    } else {
        num_id = 1;        
    }
    window.open($('idBigPhoto' + num_id).src.substr(0, $('idBigPhoto' + num_id).src.length - 6) + 'w' + '.jpeg', 'mywindow', 'menubar=1,resizable=1,width=800,scrollbars=1');
}
