js.include('js.prototype.prototype-mini');
js.module('skins.b2b.js.nais.FrontEnd');
var FrontEnd = {

	_bookmarkUrl: 'http://b2b-russia.ru/',
	_bookmarkTitle: 'B2B-RUSSIA.RU - Национальный Альянс Издателей Справочников',
	_startPageError: 'Вы можете сделать страницу стартовой через настройки своего браузера',
	_selectedRegions: new Array(),
	_selectedAdvRegions: new Array(),
	_selectedAdvRubric: '',

	setBookmarkUrl: function(url){
		this._bookmarkUrl = url;
	},

	setBookmarkTitle: function(title){
		this._bookmarkTitle = title;
	},

	setStartPage: function(obj){
		if (Browser.IE && !Browser.Opera) {
			obj.style.behavior='url(#default#homepage)';
			obj.setHomePage(this._bookmarkUrl);
			return true;
		} else {
			alert(this._startPageError);
			return false;
		}
		return false;
	},

	addbookmark: function(obj){
		this._bookmarkUrl = window.document.location;
		this._bookmarkTitle = window.document.title;
		if (Browser.IE && !Browser.Opera) {
			window.external.AddFavorite(this._bookmarkUrl, this._bookmarkTitle);
			return false;
		} else if (Browser.Gecko) {
			window.sidebar.addPanel(this._bookmarkTitle, this._bookmarkUrl, '');
			return false;
		} else if (Browser.Opera) {
			obj.href = this._bookmarkUrl;
			obj.rel = "sidebar";
			obj.title = this._bookmarkUrl+','+this._bookmarkTitle;
		  return true;
		} else {
			alert(this._startPageError);
			return false;
		}
		return false;
	},
	enterCheck: function (field,e, eventName){
		var keycode;
		if (window.event) keycode = window.event.keyCode;
		else if (e) keycode = e.which;
		else return true;
		if (keycode == 13){
			try{
				eval(eventName);
			}
			catch(err){}
				return false;
			}
		else
			return true;
	},
	getHelp: function(){
		parametrs = new Object();
		parametrs['width']  = '603';
		parametrs['height'] = '638';
		parametrs['left']   = (screen.width - 601)/2;
		parametrs['top']    = (screen.height - 616)/2;
		Windows.open('/skins/b2b/popup_search_tips.htm', 'Help', parametrs);
	},
	showAdvRegions: function (){
		$('win_region').style.display='block';
	},
	closeAdvRegions: function (){
		$('win_region').style.display='none';
	},
	getDistrict: function (id){
		var objArgs = new Object();
		objArgs['siteId'] = id;
		objArgs['view'] = 'getDistrictById';
		makeCall('Search/GetSearchItems', objArgs);
	},
	getRegion: function (siteId, districtId){
		var objArgs = new Object();
		objArgs['siteId'] = siteId;
		objArgs['districtId'] = districtId;
		objArgs['view'] = 'getDistrictById';
		makeCall('Search/GetSearchItems', objArgs);
	},
	allRaion: function (obj){
		var objArgs = new Object();
		var form = $('add_region_form');
		var raions = form.getInputs('checkbox','raion');
		for(var i=0; i < raions.length; i++ ) {
			raions[i].checked = obj.checked; 
		}

		$('raion_all').checked = obj.checked;
	},
	getRaion: function (siteId, districtId, raionId){
		var objArgs = new Object();
		objArgs['siteId'] = siteId;
		objArgs['districtId'] = districtId;
		objArgs['raionId'] = raionId;
		objArgs['view'] = 'getDistrictById';
		makeCall('Search/GetSearchItems', objArgs);
	},
	selectRaion: function(){
		var form = $('add_region_form');
		var raions = form.getInputs('checkbox','raion');
		var selectedValue = new Array();
		var selectedTxt = '';
		var selectedRegionTxt = '';
		this._selectedAdvRegions = new Array();
		for(var i=0; i < raions.length; i++ ) {
			if(raions[i].checked){
				selectedTxt += (selectedTxt == '') ? raions[i].value : ',' + raions[i].value;
				selectedRegionTxt = raions[i].getAttribute('regionvalue');
				selectedValue[selectedValue.length] = raions[i].id;
			}
		}
		if(selectedValue.length > 1){
			$('advregion').value = selectedRegionTxt;
		}else{
			$('advregion').value = selectedTxt;
		}
		this._selectedAdvRegions = selectedValue;
		this.closeAdvRegions();
	},
	showAdvRubric: function (){
		$('win_rubric').style.display='block';
	},
	closeAdvRubric: function (){
		$('win_rubric').style.display='none';
	},
	getLevel1: function(){
		var objArgs = new Object();
		objArgs['view'] = 'getRubricById';
		makeCall('Search/GetSearchItems', objArgs);  
	},
	getLevel2: function(levelId){
		var objArgs = new Object();
		objArgs['level1Id'] = levelId;
		objArgs['view'] = 'getRubricById';
		makeCall('Search/GetSearchItems', objArgs);  
	},
	getLevel3: function(level1Id, level2Id){
		var objArgs = new Object();
		objArgs['level1Id'] = level1Id;
		objArgs['level2Id'] = level2Id;
		objArgs['view'] = 'getRubricById';
		makeCall('Search/GetSearchItems', objArgs);  
	},
	selectRubric: function(id, name){
		this._selectedAdvRubric = id;
		$('advrubric').value = name;
		this.closeAdvRubric();
	},
	searchAdvanced: function(){
		var objArgs = new Object();
		objArgs['advname'] = $('advname').value;
		objArgs['advrubric'] = this._selectedAdvRubric;
		objArgs['advkeywords'] = $('advkeywords').value;
		objArgs['advbrand'] = $('advbrand').value;
		objArgs['advraion'] = this._selectedAdvRegions.join(',');
		objArgs['advaddress'] = $('advaddress').value;
		objArgs['advphone'] = $('advphone').value;
		objArgs['view'] = 'advancedSearch';
		$('args').value = Object.toJSON(objArgs);		if(objArgs['advname'] != '' || objArgs['advrubric'] !='' || objArgs['advkeywords'] !='' || objArgs['advbrand'] !='' || 			objArgs['advraion'] !='' || objArgs['advaddress'] !='' || objArgs['advphone'] !=''){			$('more_search_form').submit();
		}else{
			alert($('adverr').innerHTML);
			//$('adverr').style.display = 'block';
		}
	},
	searchAdvancedPager: function(pageNum, totalPages){
		if(!Validate.digits(pageNum) || totalPages < pageNum || pageNum < 1 ){
			alert('Неверный номер страницы.');
			return false;
		}
		var objArgs = new Object();
		objArgs['advname'] = $('advname').value;
		objArgs['advrubric'] = $('advrubric').value;
		objArgs['advkeywords'] = $('advkeywords').value;
		objArgs['advbrand'] = $('advbrand').value;
		objArgs['advraion'] = $('advraion').value;
		objArgs['advaddress'] = $('advaddress').value;
		objArgs['advphone'] = $('advphone').value;
		objArgs['page'] = pageNum;
		objArgs['view'] = 'advancedSearch';
		document.forms['more_search_form'].args.value = Object.toJSON(objArgs);
		$('args').value = Object.toJSON(objArgs);		//alert(document.forms['more_search_form'].args.value);
		$('more_search_form').submit();
	},
	showChildRubrics: function(parentId){
		var showElementId = 'child_' + parentId;
		var parentElementId = 'parent_' + parentId;
		if(document.getElementById(showElementId).style.display == 'block'){
			$(parentElementId).removeClassName('minus');
			$(parentElementId).removeClassName('bold');
			document.getElementById(showElementId).style.display='none';
		}else{
			$(parentElementId).addClassName('minus');
			$(parentElementId).addClassName('bold');
			document.getElementById(showElementId).style.display='block';
		}
	},
	setCookie: function (name, value, expires, path, domain, secure){

			document.cookie = name + "=" + escape(value) +
			((expires) ? "; expires=" + this.cookieDate(expires) : "") +
			((path) ? "; path=" + path : "") +
			((domain) ? "; domain=" + domain : "") +
			((secure) ? "; secure" : "");
	},

	getCookie : function(name) {
		var cookie = " " + document.cookie;
		var search = " " + name + "=";
		var setStr = null;
		var offset = 0;
		var end = 0;
		if (cookie.length > 0) {
			offset = cookie.indexOf(search);
			if (offset != -1) {
				offset += search.length;
				end = cookie.indexOf(";", offset)
				if (end == -1) {
					end = cookie.length;
				}
				setStr = unescape(cookie.substring(offset, end));
			}
		}
		return(setStr);
	},

	deleteCookie: function(name, path, domain) {
		if (this.getCookie(name)) {
			document.cookie = name + "=" +
			((path) ? "; path=" + path : "") +
			((domain) ? "; domain=" + domain : "") +
			"; expires=Thu, 01-Jan-70 00:00:01 GMT";
		}
	},

	cookieDate: function(days){
		var d = new Date();
		var cookieLifeTime = d.getTime() + days * (60 * 60 * 24 * 1000);
		var newDate = new Date(cookieLifeTime);
		return newDate.toGMTString(); 
	}
};

var Windows = {
	defaultParametrs: new Object(
		'width',
		'height',
		'left',
		'top',
		'toolbar',
		'location',
		'directories',
		'menubar',
		'scrollbars',
		'resizable',
		'status',
		'fullscreen'
	),
	open: function(file, title, parametrs) {
		paramString = this._makeParamString(parametrs);
		window.open(file, title, paramString);
	},
	_makeParamString: function(parametrs) {
		var paramString = '';
		for (var param in parametrs){
			paramString += param + '=' + parametrs[param] + ',';
		}
		paramString = paramString.substring(0, paramString.length-1);
		return paramString;
	}
};

Browser = {
	IE:		!!(window.attachEvent && !window.opera),
	Opera:	!!window.opera,
	WebKit:	navigator.userAgent.indexOf('AppleWebKit/') > -1,
	Gecko:	navigator.userAgent.indexOf('Gecko') > -1 && navigator.userAgent.indexOf('KHTML') == -1
}

var SendToEmail = {
	regEmail: /^[а-яА-Яa-zA-Z\d\.\-_]+@[а-яА-Яa-zA-Z\d\.\-_]{2,}\.[а-яА-Яa-zA-Z]{2,10}$/i,
	
	showSendFirmForm: function(id, type){
		var objArgs = new Object();
		objArgs['firmId'] = id;
		if(type == 'reload') {
			objArgs['firmSendEmail'] = $F('firmSendEmail');
		}
		objArgs['sendType'] = type;
		objArgs['type'] = "showSendFirmForm";
		makeCall('WebTraffic/showRubricator', objArgs);
	},
	keystringIsEmptyError: function(){
		$('keystringIsEmptyError').show();
	},
	sendCard: function(firmId){
		err = true;
		var firmSendEmailObj = $('firmSendEmail');
		var firmSendEmail = firmSendEmailObj.getValue();
		$('emailIsEmptyError').hide();
		$('emailIsNotValidError').hide();
		$('keystringIsEmptyError').hide();

		if (firmSendEmail.strip().length == 0) {
			err = false;
			$('emailIsEmptyError').show();
		} else if (firmSendEmail.strip().length > 0 && !this.regEmail.test(firmSendEmail.strip())) {
			err = false;
			$('emailIsNotValidError').show();
		} else if ($F('keystring').strip().length == 0) {
			err = false;
			$('keystringIsEmptyError').show();
		} 
		if(err) {
			var objArgs = new Object();
			objArgs['firmId'] = firmId;
			objArgs['keystring'] = $F('keystring');
			objArgs['firmSendEmail'] = firmSendEmail;
			objArgs['type'] = "sendCard";
			makeCall('WebTraffic/showRubricator', objArgs);
		}
	}
}

var i1 = new Image;
i1.src = "/skins/b2b/images/block_bullet.gif";

var i2 = new Image;
i2.src = "/skins/b2b/images/block_top.gif";

var i3 = new Image;
i3.src = "/skins/b2b/images/block_title.gif";

var i4 = new Image;
i4.src = "/skins/b2b/images/block_bottom.gif";

var i5 = new Image;
i5.src = "/skins/b2b/images/btn_select_region.gif";
