WebTraffic = {
	showGallery: function(currentImage){
		var objArgs = new Object();
		objArgs['currentImage'] = currentImage;
		objArgs['infopageId'] = $F('infopageId');
		objArgs['type'] = "photogallery";
		makeCall('WebTraffic/showInfopages', objArgs);
	},
	showDivGallery: function(){
		$('top').scrollTo();
	},
	showAnnouncement: function(announcementId){
		var objLink = $$('#announcements a.details');
		for(var i=0; i < objLink.length; i++){
			if(!objLink[i].visible()){
				objLink[i].show();
			}
		}
		var objText = $$('#announcements small.announcement_text');
		for(var i=0; i < objText.length; i++){
			if(objText[i].visible()){
				objText[i].hide();
			}
		}
		$('announcement_more_' + announcementId).hide();
		$('announcement_text_' + announcementId).show();
	},
	showAllRubric: function(companyListId){
		var currentClass = View.getInstance("bShowRub_" + companyListId).className;
		if(currentClass == "icon"){
			this.visibleAdditionalRubric(companyListId);
			$("bHideRub_" + companyListId).style.display = "block";
		}else{
			this.hiddenAdditionalRubric(companyListId);
		}
	},
	hideAllRubric: function(companyListId){
		var currentClass = View.getInstance("bHideRub_" + companyListId).className;
		if(currentClass == "icon2"){
			this.hiddenAdditionalRubric(companyListId);
			$("bShowRub_" + companyListId).removeClassName('img_st_m');
			$("bShowRub_" + companyListId).addClassName('icon');
			$("bHideRub_" + companyListId).style.display = "none";
			$("bShowRub_" + companyListId).style.display = "block";
		}else{
			this.visibleAdditionalRubric(companyListId);
		}
	},
	visibleAdditionalRubric: function(companyListId){
		View.getInstance("additionalRub_" + companyListId).style.display = "block";
		View.getInstance("bShowRub_" + companyListId).className = "img_st_m_up";
	},
	hiddenAdditionalRubric: function(companyListId){
		View.getInstance("additionalRub_" + companyListId).style.display = "none";
		View.getInstance("bShowRub_" + companyListId).className = "img_st_m";
	},
	rubricatorPager: function(pageNum, totalPages){
		if(!Validate.digits(pageNum) || totalPages < pageNum || pageNum < 1 ){
			alert('Неверный номер страницы.');
			return false;				
		}else{
			window.location.href=$('pagerLink').value.replace('@',pageNum);
			return false;
		}
	},
	goToPage: function(pageNum, totalPages){
		if(Validate.digits(pageNum) && totalPages > pageNum && pageNum > 1 ){
			window.location.href=$('pagerLink').value.replace('@',pageNum);
		}
		return false;
	},	 
	getFirmForPrint: function(firmId){
		parametrs = new Object();
		parametrs['width']  = '601';
		parametrs['height'] = '500';
		parametrs['left']	= (screen.width - 601)/2;
		parametrs['top']	 = (screen.height - 616)/2;
		Windows.open('/print/firmcardprint/' + firmId, 'Firm', parametrs);
	},
	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 && !Validate.email(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);
		}
	},
	showSendFirmForm: function(firmId, type){
		var objArgs = new Object();
		objArgs['firmId'] = firmId;
		if(type == 'reload') {
			objArgs['firmSendEmail'] = $F('firmSendEmail');
		}
		objArgs['type'] = "showSendFirmForm";
		makeCall('WebTraffic/showRubricator', objArgs);
	},
	scrollToPrint: function(){
		$('gallery_popup').scrollTo();
	},
	keystringIsEmptyError: function(){
		$('keystringIsEmptyError').show();
		this.scrollToPrint();
	},
	showFirms: function(){
		$("queriesList").style.display = "none";
		$("firmsList").style.display = "block";
		$("pager").style.display = "block";
		$("queriesLi").removeClassName('active');
		$("firmsLi").addClassName('active');
	},
	showQueries: function(){
		$("firmsList").style.display = "none";
		$("pager").style.display = "none";
		$("queriesList").style.display = "block";
		$("firmsLi").removeClassName('active');
		$("queriesLi").addClassName('active');
	},
	incrimentVideoCnt: function(videoId){
		var objArgs = new Object();
		objArgs['videoId'] = videoId;
		objArgs['type'] = "incrimentVideoCnt";
		makeCall('WebTraffic/showRubricator', objArgs);
	},
	infoShowRubrics: function(){
		var currentClass = View.getInstance("ip_rubr_btn").className;
		if(currentClass == "ip_rubr_more"){
			$("infoRubrics").style.display = "block";
			$("ip_rubr_btn").removeClassName('ip_rubr_more');
			$("ip_rubr_btn").addClassName('ip_rubr_less');
		}else{
			$("infoRubrics").style.display = "none";
			$("ip_rubr_btn").addClassName('ip_rubr_more');
			$("ip_rubr_btn").removeClassName('ip_rubr_less');
		}
	},
	initInfopage: function(firmsCnt, annsCnt){
		$('countAllFirm').innerHTML = firmsCnt;
		$('countAllAnnouncement').innerHTML = annsCnt;
	},
	calculateWords: function(){
		var form = $('stats');
		var checkbox = form.getInputs('checkbox');
		var i=0;
		var sum=0;

		checkbox.each ( function (item) {
			if (item.checked && !item.disabled) {
				i++;
				var elementId = item.id;
				if(elementId != 'rub_0') {
					var elements = elementId.split('_');
					sum = sum + parseInt(elements[1]);
				}
			}
		});
		$('statSum').innerHTML = sum;
	},

	allNumber: 0,
    allPrice: 0,
    handbooks: new Array(),
    handbook_ids: new Array(),

    initHandbooks: function(position, price, handbookId){
        this.handbooks[position] = price;
        this.handbook_ids[position] = handbookId;
    },
    changeNumberOfHandbooks: function(id, price, count){
        var number = $F('handbook_' + id);
        if(Validate.int(number)) {
            if(number == '') {
                var totalPrice = 0;
            } else {
                var totalPrice = parseInt(price)*parseInt(number);
            }
            $('price_' + id).innerHTML = totalPrice;
        } else {
            $('price_' + id).innerHTML = 0;
        }
        this.allNumber = 0;
        this.allPrice = 0;
        j = 0;
        for(k = 1; k <= count; k++) {
            var handbookNumber = $F('handbook_' + k);
            if(Validate.int(handbookNumber) && handbookNumber != '') {
                $('handbook_' + k).removeClassName('long_field_rb');
                j++;
                this.allNumber = parseInt(this.allNumber) + parseInt(handbookNumber);
                $('number_all').innerHTML = this.allNumber;
                this.allPrice = parseInt(this.allPrice) + parseInt(this.handbooks[k]*parseInt(handbookNumber));
                $('price_all').innerHTML = this.allPrice;
            } else if(handbookNumber != '') {
                $('handbook_' + k).addClassName('long_field_rb');
            } else {
                $('handbook_' + k).removeClassName('long_field_rb');
            }
        }
        if(j == 0) {
            $('number_all').innerHTML = 0;
            $('price_all').innerHTML = 0;
        }
    },
	sendOrder: function(handbooksCount){
		var err = true;
		var email = $F('email');
		var phone = $F('phone');
		var fio = $F('fio');
		var city = $F('city');

		if (email.strip().length == 0) {
			err = false;
			alert('Поле «E-mail» обязательно для заполнения');
		} else if (email.strip().length > 0 && !Validate.email(email.strip())) {
			err = false;
			alert('Поле «E-mail» должно иметь вид yourmail@yourdomain.com');
		} else if (phone.strip().length == 0) {
			err = false;
			alert('Поле «Телефон» обязательно для заполнения');
		} else if (fio.strip().length == 0) {
			err = false;
			alert('Поле «ФИО» обязательно для заполнения');
		} else if(this.allPrice == '0'){
			err = false;
			alert('Не выбрано ни одного справочника');
		}

		if(err) {
			var objArgs = new Object();
			var handbooksObj = new Object();
			for(i = 1; i <= handbooksCount; i++) {
				handbooksObj['id_' + i] = this.handbook_ids[i];
				handbooksObj['number_' + i] = $F('handbook_' + i);
			}
			objArgs["handbooks"] = handbooksObj;
			objArgs['email'] = email;
			objArgs['phone'] = phone;
			objArgs['fio'] = fio;
			objArgs['city'] = city;
			objArgs['type'] = "sendOrder";
			objArgs['handbooksCount'] = handbooksCount;
			makeCall('WebTraffic/showRubricator', objArgs);
		}
	}
};
