var winRC;
var winFC = [];
var winRCErrorAd = new Array();
var winMSGsellerAM;
var contMsgWind;
var basePage = 'http://avtomagazine.ua/';
var debugsError = [{ navigator: window.navigator.userAgent, url:window.location.href}];
//Была ли ошибка при вводе диапазонов
var flagErrorRead = false;
//флаг определяет нужно ли делать подгрузку
var flagRequest = true;
var Phrase = { ru: 'Введите фразу для поиска...' };
var CommitRCLen = {ru: 'Оставить пожелание'}
var winRC2;
var globalExchangeVar = {}; // переменная для обмена данными между окном настроек экспорта и процедурой запроса экспор
    globalExchangeVar["TEST"] ="message";
//кеширование запросов [{ 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: '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: 'RCKeywordsList',
           type: 'keywords',
           name: 'keywords',
           value: ''
       }*/
        ]
    }
    },

    UrlRC: { request: '/@am/search/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:93%; 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?530:500,
                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('RCMake', requesturlAjax);
                        } else {
                            AjaxJsonRC(getcacheAjaxRC(requesturlAjax), 'RCMake');
                        }
                        flagRequest = false;
						}
					}
]
                })

				if(ElemEvent == 'window')
				{
					ElemEvent = 'RCMake';
					}
				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	= 'RCMake';
							}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 = 'RCMake';
				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.get(listTegs.id).select(gLRC.RCMenuLeft.to).applyStyles('background:none;');
							this.style.background = '#C7D6E9';
							Ext.get(listCheck.id).select('div[class^=' + gLRC.RCRightPan.list.to + ']').applyStyles('display:none;');
							Ext.get('listCTegsAM').unmask();
							Ext.get(this.id + 'ist').applyStyles('display:block;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) {
            //Создаются панели
            //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);
                                                
                    }
                }, {
                    text: 'Закрыть',
                    handler: function() {
                        
                        winRC2.hide();
                        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;
    if (Ext.get('selItemVeh').dom.childNodes[0].nodeValue.replace(/\s+/,'') == ''){
         return 'legkovye';
    } else {
            for(var ii=0;ii<masel.length;ii++){
            if(masel[ii].childNodes[0].nodeValue.replace(/\s+/,'') == Ext.get('selItemVeh').dom.childNodes[0].nodeValue.replace(/\s+/,'')){
		        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 reg1 = /\/keywords=[^\/]*\//;
		var reg2 = /\/vehicle=[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('/@am/search', '/@am/search/vehicle=' + 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/vehicle='+ 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{
								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: 'MakeES',
           type: 'checkRC',
		   name: 'make',
           value: ''
       }, {
           id: 'ModelES',
           type: 'checkRC',
           name: 'model',
           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></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';
		}
		
		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 tempIFrame = document.createElement('iframe');
	tempIFrame.setAttribute('src', '/html/php/stGPFC.html');	
	tempIFrame.setAttribute('height', '1px');
	tempIFrame.setAttribute('width', '1px');
	document.body.appendChild(tempIFrame);
	}
//-------------------------
//Статистика "загрузка график цены"
var StMSGPFCl = function(){
	var tempIFrame = document.createElement('iframe');
	tempIFrame.setAttribute('src', '/html/php/stLGPFC.html');	
	tempIFrame.setAttribute('height', '1px');
	tempIFrame.setAttribute('width', '1px');
	document.body.appendChild(tempIFrame);
	}
//-------------------------
/**
/*  Сортировка по цене, дате и по году(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.replace(reg2,"/sort=-"+param);
			        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);
					        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);
			}         
  }
//-------------------------
Ext.onReady(function() {
	var pageAM = SceneForm.href;
	try{
		sortYrPrAm('price','Price','Pr',pageAM);
		sortYrPrAm('year','Year','Yr',pageAM);
		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);
			}    
}
//-------------------------

var graphAverPrice = function(xmlFC){
   
	try {
		var numAd = /aid=([0-9]+)$/.exec(xmlFC);
		numAd = RegExp.$1;
		if(!winFC[numAd]){
			StMSGPFC();	
		    var textInfo = '<div class="graphInfo"><p>График отображает текущую среднюю стоимость автомобиля в зависимости от года выпуска. </p>';
		    textInfo += '<p><b>Красным ромбиком</b> на графике обозначено текущее объявление.</p>';
		    textInfo += '<p>Кликнув на <b>синюю точку</b> - Вы откроете выбранное объявление в новом окне.</p><p>Кликнув на <b>зеленый ромбик</b> - Вы попадете на страницу конкретной модели и года выпуска.</p>';
		    textInfo += '<p>Средние цены на авто - вычисляются приблизительно, на основании имеющихся в наличии данных: марки, модели, типа КПП, состояния авто.</p>';
		    textInfo += '<p>Мы работаем над увеличением точности вычисления средних цен - учетом большего числа характеристик и параметров автомобиля.</p></div>';
		    textInfo += '<div style="text-align: center; font-weight: bold; cursor: pointer;" onclick="CommitRC(\'Средние цены \')">Оставить пожелание</div>';
            //Создаются панели
            //begin
            var infFC = new Ext.Panel({
                title: 'Пояснение графика',
                id: 'infFC'+numAd,
                region: 'east',
                split: true,
                width: 180,
                //collapsible: true,
                margins: '3 0 3 3',
                cmargins: '3 3 3 3',
                html: textInfo
            });
      if (Ext.isOpera){
        //alert("Opera!");
        //<OBJECT id="fc24552586" height="400" width="600" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000">
        ////<PARAM value="http://www.avtomagazine.ua/test/Charts/Scatter.swf" name="movie" />
        ////<PARAM value="high" name="quality" />
        ////<PARAM value="always" name="allowScriptAccess" />
        ////<PARAM value="debugMode=0&chartWidth=600&chartHeight=400&DOMId=fc24552586&registerWithJS=1&scaleMode=noScale&lang=EN&dataURL=/@am/average/fiat_ducato_meh/@html/p?aid=24552586" name="flashvars" />
        //</OBJECT>
        var chartID = 'fc'+numAd;
        var FCobject = '<OBJECT id="'+chartID+'" height="400" width="600" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000">';
        FCobject += '<PARAM value="http://www.avtomagazine.ua/test/Charts/Scatter.swf" name="movie" />';
        FCobject += '<PARAM value="high" name="quality" />';
        FCobject += '<PARAM value="always" name="allowScriptAccess" />';
        FCobject += '<PARAM value="debugMode=0&chartWidth=600&chartHeight=400&DOMId='+chartID+'&registerWithJS=1&scaleMode=noScale&lang=EN&dataURL='+encodeURI(xmlFC)+'" name="flashvars" />';
        FCobject += ' </OBJECT>';  
        }else
        {var FCobject = "My text is here";}
        /*var chartID = 'fc'+numAd; 
        var FCobject = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="600" height="400" id="'+chartID+'" >';
				FCobject +='<param name="movie" value="http://www.avtomagazine.ua/test/Charts/Scatter.swf" />';
				FCobject +='<param name="allowScriptAccess" value="sameDomain" />'
				FCobject +='<param name="FlashVars" value="&registerWithJS=1&dataURL='+encodeURI(xmlFC)+'&DOMId='+chartID+'">'; //&DOMId=fc22259885&registerWithJS=1
				FCobject +='<param name="quality" value="high" />';
				FCobject +='<param name="registerWithJS" value="1" />';
				FCobject +='<param name="wmode" value="opaque" />';
				FCobject +='<embed name='+chartID+ 'src="http://www.avtomagazine.ua/test/Charts/Scatter.swf" flashVars="&dataURL='+encodeURI(xmlFC)+'&DOMId='+chartID+'" wmode="opaque" quality="high" width="600" height="400" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />';
				FCobject +='</object>';
	
		alert(FCobject);*/
     
			//var myChartXMLURL = "&dataURL="+encodeURI(xmlFC);
			//var myChartID = 'CHgraphAverPriceFC'+numAd;
			//var myChartScript = '';
        //    myChartScript +=    'var chart1 = new FusionCharts("http://www.avtomagazine.ua/test/Charts/Scatter.swf", "chart1Id", "400", "300", "0", "1"); ';
         //   myChartScript +=    'chart1.setDataURL("'+myChartXMLURL+'");';
          //  myChartScript +=    'chart1.render("'+myChartID+'");';
           // myChartScript +=    '';
           //globalExchangeVar["currentWindowID"] = 'chartsFC'+numAd;
           
            var chartsFC = new Ext.Panel({
                region: 'center',
                id: 'chartsFC'+numAd,
                margins: '3 3 3 0',
                activeTab: 0,
                html: '<div id="CHgraphAverPriceFC'+numAd+'">'+FCobject+'</div>'//+eval(function(){myChartScript})
                
            });
            //end

            //рисуем окно
            //begin
            winFC[numAd] = new Ext.Window({
                title: 'Средние цены',
                id: 'winFC' + numAd,
                modal: true,
                layout: 'border',
                width: 808,
                height: 477,
                closeAction: 'hide',
                plain: true,
                //animateTarget: ElemEvent.id,
                buttonAlign: 'left',
                //анимация
                items: [infFC, chartsFC],
                buttons: [{
                     text: 'Сохранить график',
                     style: {
                        color:'#f00'
                     },
                     handler: function() {
                        exportMyChart();
                    }}
                        ,{
                     text: 'Выскажите Ваше мнение по поводу сервиса',
                     style: {
                        color:'#f00'
                     },
                     handler: function() {
                        CommitRC('Средние цены');
                    }},{
                     text: 'Закрыть',
                     handler: function() {
                     winFC[numAd].hide();
                    }},
                    {
                     text: 'Увеличить окно',
                     handler: function() {
                      if (Ext.isOpera){ alert("В настоящий момент, в  браузере, Opera, нельзя увеличить график. Мы работаем над тем, что бы решить эту проблему.");exit(); }
                      var myText = this.getText();
                      if ( 'Увеличить окно'== myText)
                      {  
                      this.setText("Уменьшить окно");
                      
                     winFC[numAd].setSize(1208,677)
                     var myChart = getChartFromId("fc"+numAd);
                     //var FCxmlData = 
                     //alert(FCxmlData);
                     var myChart1 = new FusionCharts("http://www.avtomagazine.ua/test/Charts/Scatter.swf", myFCID, "1000", "600", "0", "1");
                     myChart1.setDataXML(myChart.getXML()); 
                     myChart1.render("CHgraphAverPriceFC"+numAd);
                     winFC[numAd].center();
                     }// если предпологается увеличение окна
                     else {
                      this.setText("Увеличить окно");
                      winFC[numAd].setSize(808,477)
                      var myChart = getChartFromId("fc"+numAd);
                     var myChart1 = new FusionCharts("http://www.avtomagazine.ua/test/Charts/Scatter.swf", myFCID, "600", "400", "0", "1");
                     myChart1.setDataXML(myChart.getXML()); 
                     myChart1.render("CHgraphAverPriceFC"+numAd);
                     winFC[numAd].center();
                     };//  в случае уменьшения
                     //document.write(myChart1.getXML());
                     //Ext.get("CHgraphAverPriceFC"+numAd).update(myChart.getXML()); 
                     //winFC[numAd].width = 1000;
                     //winFC[numAd].height = 600;
                     //winFC[numAd].render()
                    }}]
                })
        globalExchangeVar["currentWindowID"] = winFC[numAd]; 
				winFC[numAd].show();
				
        if (!Ext.isOpera){
          //alert("notOpera!")
          var myFCID = "fc"+numAd;
				  var myChart = new FusionCharts("http://www.avtomagazine.ua/test/Charts/Scatter.swf", myFCID, "600", "400", "0", "1");
				  myChart.setDataURL(encodeURI(xmlFC));	
				  myChart.render("CHgraphAverPriceFC"+numAd);
        };
				
			}else{
			    globalExchangeVar["currentWindowID"] = winFC[numAd];   
					winFC[numAd].show();
				}
        }
        catch (e) {
            debugsErrorRC(e);
        }
        
        
       
        
        function requestChartExport(optnsObjct){
        // передает параметры формы настроек в функцию сохранения изображения
        
        var chartToPrint = getChartFromId("fc"+numAd);
        //chartToPrint.setDataURL("/test/data.xml");
        var fileNameToSave = xmlFC.slice(13,xmlFC.indexOf("/",14))+"_"+numAd+"_AM.UA"
        globalExchangeVar["FILENAME"]=fileNameToSave    
        var myExportFileName = fileNameToSave // имя фаила экспорта изображения чарта
        
            
        var exportImgFormat = optnsObjct['FORMAT'];
        var mySaveOption = optnsObjct['SAVE'];
        //alert(globalExchangeVar["FILENAME"]);
        globalExchangeVar['SAVE']=mySaveOption;
        if ("EMAIL"==mySaveOption)
          {
            var myMailAdrs = optnsObjct['MAILADDRESS'];
            globalExchangeVar["MAILADDRESS"]=optnsObjct['MAILADDRESS'];
          }
        //var myMAssege = "название фаила :"+myExportFileName+"  формат:"+exportImgFormat+" тип сохранения"+mySaveOption
        chartToPrint.exportChart({exportFormat: exportImgFormat, exportFileName:myExportFileName,exportCallback:"JSexportCallBackFunction" });
        };//function requestChartExport(optnsObjct){
        
        function FC_Exported(objRtn){ 
            if (objRtn.statusCode=="1"){
          alert("The chart was successfully saved on server. The file can be accessed from " + objRtn.fileName);
            }else{
            alert("The chart could not be saved on server. There was an error. Description : " + objRtn.statusMessage);
        }
        }
                
        function getExportOptns(){
        // получение настроек из диалогового окна(сбор параметров)
        
        var myFormatOptn = Ext.get('optionForm'+numAd).select('input[type=radio]:checked');
        
        var myMailAddr = Ext.get('optionForm'+numAd).select(('input[type=text]'));
        var myOptnObjct = {};
        //myOptnObjct["FORMAT"]=myFormatOptn.elements[0].value; // зафиксировал формат экспорта изображения
        myOptnObjct["FORMAT"]="JPG";
        //alert(myFormatOptn.elements[0].value);
        myOptnObjct["SAVE"]=myFormatOptn.elements[0].value;
        //alert(myFormatOptn.elements[0].value);
        if ("EMAIL"==myFormatOptn.elements[0].value){          
          myOptnObjct["MAILADDRESS"]=myMailAddr.elements[0].value;
          myMailAddr.elements[0].value="";
        };
        
        requestChartExport(myOptnObjct); 
        };//function getExportOptns(){
        
        
        
	    function exportMyChart(){
	    winFC[numAd].hide();
	    // процедура экспорта графика в плоское изображение (триггер)  
	      var winFCexpDlgText =  '<span id="optionForm'+numAd+'" style="margin-left: 15px;">'
	      //winFCexpDlgText += '<P><p>Укажите формат фаила:<p/>';
        //winFCexpDlgText += '<INPUT type="radio" id ="formatJPG'+numAd+'" name="format" value="JPG" checked> JPG<BR>'
        //winFCexpDlgText += '<INPUT type="radio" id ="format'+numAd+'" name="format" value="PDF" > PDF<BR>'
        //winFCexpDlgText += '<INPUT type="radio" id ="formatPNG'+numAd+'" name="format" value="PNG" > PNG<BR>'
        winFCexpDlgText += '<p style="padding:5px;" >Вариант сохранения:<p/>'
        winFCexpDlgText += '<INPUT style="padding:5px;" type="radio" name="save" id ="saveOption1'+numAd+'" value="LOCAL" onClick = "resetAndDisable('+numAd+')" checked> локально<BR>'
        winFCexpDlgText += '<INPUT style="padding:5px;" type="radio" name="save" id ="saveOption2'+numAd+'" value="EMAIL" onClick = "resetAndAnable('+numAd+')"> на почту<BR>'
        winFCexpDlgText += '<LABEL style="padding:5px;" for="expOptnsEmail'+numAd+'"> e-mail:</LABEL>'
        winFCexpDlgText += '<INPUT type="text" style="border:1px solid gray;" id="expOptnsEmail'+numAd+'" onFocus="this.value='+"''"+'" disabled><BR/></P>'
        winFCexpDlgText += '<span id="expOptnsEmailError'+numAd+'" style="display:none; color:red; text-align:right; font-size:10px; position:relative;top:0px;right:-35px;">Необходимо указать e-mail <span/>' 
        winFCexpDlgText += '<span/>'
      
      
      
	    
      if (!winFC[numAd].exportDlg){
     // панель настроек
            var expDlgOptns = new Ext.Panel({
                region: 'center',
                id: 'qchartsFC'+numAd,
                margins: '3 3 3 0',
                activeTab: 0,
                html: '<div id="expChGraphDlgOptns'+numAd+'">'+winFCexpDlgText+'</div>'//+eval(function(){myChartScript})
            });
            // создаем окно диалога экспорта
	        winFC[numAd].exportDlg = new Ext.Window({
                title: 'Экспорт графика цен',
                id: 'winFCexpDlg' + numAd,
                modal: true,
                layout: 'border',
                width: 210,
                height: 200,
                closeAction: 'hide',
                plain: true,
                //animateTarget: ElemEvent.id,
                buttonAlign: 'left',
                //анимация
                items: [ expDlgOptns],
                buttons: [{
                     text: 'ОК',
                     style: {
                        color:'#f00'
                     },
                     handler: function() {
                        //CommitRC('Средние цены');
                          var myFormatOptn = Ext.get('optionForm'+numAd).select('input[type=radio]:checked').elements[0];
                          var myTextField = Ext.get('optionForm'+numAd).select(('input[type=text]')).elements[0];
                          if ("EMAIL"==myFormatOptn.value){
                            if (!isValidEmail(myTextField.value)){
                                                          
                              myTextField.style.border = "1px solid red";
                              document.getElementById('expOptnsEmailError'+numAd).style.display='inline';
                              return;
                            };//if (!isValidEmail(myTextField.value)){
                            myTextField.style.border = "1px solid gray";
                            Ext.get('expOptnsEmailError'+numAd).dom.style.display='none';
                            
                           // myTextField.style.border = "1px solid rgb(221,120,112)"
                          };// if ("EMAIL"==myFormatOptn.value){
                        
                        
                        StMSGPFCl();  
                        winFC[numAd].exportDlg.hide();
                        winFC[numAd].show();
                        getExportOptns();
                        
                    }},{
                     text: 'Отмена',
                     handler: function() {
                     winFC[numAd].exportDlg.hide();
                     winFC[numAd].show();
                    }}]
                });
                winFC[numAd].exportDlg.show();
	    }//
	        else{
	            // просто открываем его
	            winFC[numAd].exportDlg.show();
	        }
	    };
	    
	}



function JSexportCallBackFunction(objRtn){
        // функция вызывается в случае успешного экспорта изображения
        // передает в php параметры из формы экспорта для обработки полученного фаила изображения
        
        var paramsToPhp="savemethod="+globalExchangeVar["SAVE"];
        paramsToPhp+="&fileurl="+objRtn.fileName;
        if ("EMAIL"==globalExchangeVar["SAVE"]){
          paramsToPhp += "&targetmail="+globalExchangeVar["MAILADDRESS"];
          
        }else{
              paramsToPhp += "&targetmail=undefined";
              };
        paramsToPhp += "&filename="+globalExchangeVar["FILENAME"];
        //alert(paramsToPhp+"\nffff");                  
        var EJscript = document.createElement('script');
        EJscript.type = 'text/javascript';
        EJscript.src = "http://static.am.ua/html/php/exportedChartProcessor.php?"+paramsToPhp;
        document.body.appendChild(EJscript);   
        };// function JSexportCallBackFunction(){
        
        /*
         header("Content-Disposition: attachment; filename=work1.doc"); 
    $x = fread(fopen("test.doc", "rb"), filesize("test.doc")); 
    echo $x; 
        DOOMId : fc19045226
        height : 400
        width : 600
        fileName : http://static.am.ua/html/php/chart_export_images/fcImg19045226.jpg
        statusMessage : success
        statusCode : 1
        DOMId : fc19045226

        */
function isValidEmail(email){
return /^((([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+(\.([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+)*)@((((([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.))*([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.)[\w]{2,4}|(((([0-9]){1,3}\.){3}([0-9]){1,3}))|(\[((([0-9]){1,3}\.){3}([0-9]){1,3})\])))$/.test(email);
};// function isValidEmail(email)
function returnPDF(link)
{
    window.location.assign(link);
};//        
function answerPHP(message)
{
  alert(message);
  //
  //Ext.Msg.alert('Сообщение:',message);
   
  //saveMeth,targetMail,fileUrl
  //alert(saveMeth+"  \r"+targetMail+"  \n"+fileUrl)
};// function answerPHP(saveMeth,targetMail,fileUrl)

function resetAndDisable(numAd){
      // восстанавливаем вид поля ввода адреса и деактивируем его в окне настроек экспорта
        var myMailField = document.getElementById("expOptnsEmail"+numAd);
        myMailField.value = "";        
        myMailField.disabled = true;
       // myMailField.style.display = false;/**//**/
        myMailField.style.border = "1px solid gray";
        Ext.get('expOptnsEmailError'+numAd).dom.style.display='none';
};
        
function resetAndAnable(numAd){
		  // активируем поле ввода адреса и сбрасываем стили в исходные
		  var myMailField = document.getElementById("expOptnsEmail"+numAd);
		  myMailField.value = "";
		  myMailField.disabled = false;
      myMailField.style.border = "1px solid gray";	      
		  Ext.get('expOptnsEmailError'+numAd).dom.style.display='none'; 
};