window.addEvent( 'domready', function(){
	document.getElements('[pagetype]').each(function(pageType){
		if (pageType){
			var eventName = '_' + pageType.getProperty('pagetype');
			
			this.fireEvent(eventName, [pageType, false]);
		}
	});
});
window.addEvent( 'resize', function(){
	
	document.getElements('[pagetype]').each(function(pageType){
		if (pageType){
			var eventName = '_' + pageType.getProperty('pagetype');
			this.fireEvent(eventName, [pageType, true]);
		}
	});
	
});


window.addEvent('_tabMenu', function(pageType){
	var rowWidth = pageType.getWidth();
	
	var tabs = pageType.getElements('.tabMenuLi');
	
	var subjectWidth = 0;
	tabs.each(function(tb){
		subjectWidth += tb.getElement('.tabSubject').getWidth();
		
	});
	

	var tmpWidth = rowWidth;
	var tmpSubjectWidth = subjectWidth;
	var count = tabs.length;
	tabs.each(function(tb){
		var noSubjWidth = Math.round((tmpWidth - tmpSubjectWidth) / count);
		var tbWidth = tb.getElement('.tabSubject').getWidth() + noSubjWidth;

		tb.setStyle('width', tbWidth + 'px');
		tmpWidth -= tbWidth;
		tmpSubjectWidth -= tb.getElement('.tabSubject').getWidth();
		count--;
	});
});

window.addEvent('_tabsOuter', function(pageType){
	var tabBoxContainer = pageType.getElement('.tabBoxContainer');
	var tabInnerBoxContainer = pageType.getElement('.homeReviewBox.tabHomeBox');
	var pageCoord = pageType.getCoordinates();
	var contentCoord = tabBoxContainer.getCoordinates();
	var contHeight = pageCoord.height - contentCoord.top + pageCoord.top - 21;
	tabBoxContainer.setStyle('height', contHeight);
	tabInnerBoxContainer.setStyle('height', contHeight);
});


window.addEvent('_faq', function(pageType, resize){
	if (resize){
		return;
	}
	pageType.getElements('.faqLinks').addEvent('click', function(e){
		new Event(e).stop();
		var level_id = this.getProperty('level_id');
		var faq_id = this.getProperty('faq_id');
		var myRequest = new Request({
			method: 'post',
			url: 'ajax.php',
			onComplete: function(response){
				pageType.getElement('.faqContainer').set('html', response);
			}
		}).send('type=faq&id=' + faq_id + '&level_id=' + level_id);
	
	});
	addScrollPadding(pageType);
});
window.addEvent('_contactForm', function(pageType, resize){
	if (resize){
		return;
	}
	pageType.getElements('.send').addEvent('click', function(e){
		pageType.submit();	
	});
});
window.addEvent('_datePicker', function(pageType, resize){
	if (resize){
		return;
	}
	var input = pageType.getElement('input');
	var newsDateImg = pageType.getElement('.newsDateImg');
	new DatePicker(input, newsDateImg);
	
});
window.addEvent('_newsForm', function(form, resize){
	if (resize){
		return;
	}
	
	var submit = form.getElement('.submitButton');
	submit.addEvent('click', function(e){
		form.submit();
	});
	
});
window.addEvent('_searchForm', function(box, resize){
	if (resize){
		return;
	}
	var form = box.getElement('form');
	var submit = box.getElement('.submitSearch');
	submit.addEvent('click', function(e){
		form.submit();
	});
	
});

window.addEvent('_questionBox', function(box, resize){
	if (resize){
		return;
	}
	var closeLink = '<div class="imgCloseContainer"><a pageType="closeImg" class="imgClose"><img src="images/close.gif" /></a></div>';
	var ans = box.getElement('.questionAnswer');
	ans.set('html', closeLink + ans.get('html'));
	ans.getElement('.imgClose').addEvent('click', function(e){
		box.getElement('.questionAnswer').addClass('hidden');
	});
	box.getElement('.questionImg').addEvents({
		'click': function(e){
			$each(document.getElements('.questionAnswer'), function(tmp){
				tmp.addClass('hidden');
			});
			box.getElement('.questionAnswer').removeClass('hidden');
		}
	});
	
});

window.addEvent('_curencyBox', function(box, resize){
	if (resize){
		return;
	}
	var curencyTypes = new Array();
	$each(box.getElements('[name^=curency_type_]'), function(input){
		if (input.name == 'curency_type_manual'){
			curencyTypes[input.value] = 'manual';
		} else {
			curencyTypes[input.value] = 'auto';
		}
	});
	function changeCurency(nameFrom, nameTo, sum, objChange, rateDesc, availObj, rev){
		var source_master = -1;
		for ( var i = 0; i < m_arrRates.length; i++ ){
			if ( ( m_arrRates[i]['S_N'] == nameFrom ) 
				&& ( m_arrRates[i]['R_N'] == nameTo )  )
			{
				var rate = m_arrRates[i]['RT'];
				var source_master = ( '' + m_arrRates[i]['S_M'] == '1' );
				var row = m_arrRates[i];
				break;
			}
		}
		if ($defined(row) && !$defined(row.commis)){
		
		//	row.commis = 0;
			for ( var i = 0; i < m_arrRates.length; i++ ){
				if ( ( m_arrRates[i]['S_N'] == nameFrom ) 
					&& ( m_arrRates[i]['R_N'] == nameTo ) 
					&& ($defined(m_arrRates[i]['commis'])) )
				{
				
					row.commis = m_arrRates[i]['commis'];
					break;
				}
			}
		}
		
		if ($defined(row) && !$defined(row.commis)){
			row.commis = 0;
		}
		
		if (source_master == -1){
			objChange.value = 'NaN';
			return;
		}
		var p = 100;
	
		if (!rev){
			if ( source_master ){
				objChange.value = Math.floor(p * sum * rate) / p;
			} else {
				objChange.value = Math.floor(p * (sum / rate)) / p;
			}
		} else {
			if ( source_master ){
				objChange.value = Math.ceil(p * (sum / rate)) / p;
			} else {
				objChange.value = Math.ceil(p * (sum * rate)) / p;
			}
		}
		if (rateDesc){
			var desc = '';
			if ( source_master ){
				desc += '1 ' + nameFrom + ' = ' + rate + ' ' + nameTo;
			} else {
				desc += rate + ' ' + nameFrom + ' = ' + '1 ' + nameTo;
			}
			rateDesc.set('text', desc);
		}
		if (availObj){
			var avai = row.BE + ' ' + nameTo;
			availObj.set('text', avai);
		}
		if ($defined(row)){
			$('commssionValue').set('text', row.commis);
		}
	}
	
	var fromValueObj = box.getElement('[name=curencyValueFrom]');
	var fromNameObj = box.getElement('[name=curencyNameFrom]');
	
	var toValueObj = box.getElement('[name=curencyValueTo]');
	var toNameObj = box.getElement('[name=curencyNameTo]');
	
	if($defined(Browser.Engine.presto)){
		fromNameObj.setStyle('width', (2 + fromNameObj.offsetWidth) + 'px');
		toNameObj.setStyle('width', (2 + toNameObj.offsetWidth) + 'px');
	}
	
	var formObj = box.getElement('form');
	
	if (!fromValueObj || !fromNameObj || !toValueObj || !toNameObj || !formObj){
		return;
	}
	
	fromValueObj.addEvent('keyup', function(e){
		changeCurency(fromNameObj.value, toNameObj.value, fromValueObj.value, toValueObj);
	});
	
	toValueObj.addEvent('keyup', function(e){
		changeCurency(fromNameObj.value, toNameObj.value, toValueObj.value, fromValueObj, null, null, true);
	});
	[fromNameObj, toNameObj].each(function(tmp){
		tmp.addEvent('change', function(e){
			if (tmp.name == 'curencyNameFrom'){
				var obj1 = fromNameObj;
				var obj2 = toNameObj;
			} else {
				var obj2 = fromNameObj;
				var obj1 = toNameObj;
			}
			
			if (obj1.value == obj2.value){
				var i = -1;
				do {
					i++;
					obj2.value = obj2.options[i].value;
				} while (obj2.options[i].value == obj1.value)
				
			}
			changeCurency(fromNameObj.value, toNameObj.value, fromValueObj.value, toValueObj, box.getElement('.rateDesc'), box.getElement('.curencyAvailable'));
		});
	});
	changeCurency(fromNameObj.value, toNameObj.value, fromValueObj.value, toValueObj, box.getElement('.rateDesc'), box.getElement('.curencyAvailable'));
	box.getElements('.curencySubmit').addEvent('click', function(e){
		if (fromValueObj.value == 'NaN' || toValueObj.value == 'NaN'){
			alert('Error!');
			return;
		}
		if (curencyTypes[fromNameObj.value] == 'manual'){
			formObj.submit();
		} else if(curencyTypes[toNameObj.value] == 'manual') {
			formObj.submit();
		} else {
			var url = 'http://www.nachange.com/ExchangePage.aspx?page=exchange&section=calculate&in=' + fromNameObj.value 
				+ '&out=' + toNameObj.value + '&frm=' + fromValueObj.value + '&to=' + toValueObj.value + '&aflId=10';
			window.open ( url, null, 'height=300,width=440,status=yes,toolbar=no,menubar=no,location=no,resizable=yes,scrollbars=yes');
		}
	});
	
	
});


window.addEvent('_curencyDataForm', function(form, resize){
	if (resize){
		return;
	}
	var send = false;
	var error_desc = form.getElement('[name=error_desc]').value;
	form.getElements('.submitButtonM').addEvent('click', function(e){
		if (send){
			new Event(e).stop();
			return;
		}
		var formCorrect = true;
		var fromNameObj = form.getElement('[name=fromCurName]');
		new Event(e).stop();
		form.getElements('[name=name],[name=account],[name=city],[name=address],[name=zip]').each(function(elem){
			elem.value = elem.value.trim();
			elem.addEvent('focus', function(e){
				if (elem.hasClass('redError')){
					elem.value = '';
					elem.removeClass('redError');
				}
			});
			if (!elem.value.length || elem.value == error_desc){
				elem.addClass('redError');
				elem.value = error_desc;
				formCorrect = false;
			}
		});
		form.getElements('[name=email]').each(function(elem){
			elem.value = elem.value.trim();
			elem.addEvent('focus', function(e){
				if (elem.hasClass('redError')){
					elem.removeClass('redError');
					if (elem.value == error_desc){
						elem.value = '';
					}
				}
			});
			var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
			if (!elem.value.length || elem.value == error_desc){
				elem.addClass('redError');
				elem.value = error_desc;
				formCorrect = false;
			} else if (reg.test(elem.value) == false){
				elem.addClass('redError');
				formCorrect = false;
			}
			
		});
		form.getElements('[name=country]').each(function(elem){
			elem.addEvent('focus', function(e){
				if (elem.hasClass('redError')){
					elem.removeClass('redError');
				}
			});
			if (elem.value == 0){
				elem.addClass('redError');
				formCorrect = false;
			}
		});
		form.getElements('[name=agree]').each(function(elem){
			if (!elem.checked){
				alert(form.getElement('[name=error_terms]').value);
				formCorrect = false;
			}
		});
		
		var payment_type =  form.getElement('[name=payment_type]').value;
		if (formCorrect){
			send = true;
			var amount = document.getElement('[name=curencyValueTo]').value;
			var amountFrom = document.getElement('[name=curencyValueFrom]').value;

			form.getElement('[name=amountFrom]').value = amountFrom;
			form.getElement('[name=amountTo]').value = amount;
			
			if (payment_type == 'manual'){
			} else if (fromNameObj.value == 'EDRAM'){
				form.setProperty('action', 'https://money.edram.am/payment.aspx');
				form.getElement('[name=EDP_AMOUNT]').value = amountFrom;
			} else {
				form.setProperty('action', 'https://merchant.webmoney.ru/lmi/payment.asp');
				form.getElement('[name=LMI_PAYMENT_AMOUNT]').value = amountFrom;
			/*
				var params = 'url=' + form.getElement('[name=url]').value;
				params += '&purse=' + form.getElement('[name=purse]').value;
				params += '&amount=' + amount;
				params += '&method=' + form.getElement('[name=method]').value;
				params += '&desc=' + form.getElement('[name=desc]').value;
				params += '&mode=' + form.getElement('[name=mode]').value;
				form.setProperty('action', 'wmk:paylink?' + params);
				
				*/
				
			}
			form.set('send', {
				url: 'update_payment.php',
				onComplete: function(data){
					if (data == 'OK'){
						form.submit();
					} else {
						alert(data);
						send = false;
					}
				}
			});
			form.send();

			
		}
		
	});
	
});

window.addEvent('_bannersBox', function(box, resize){
	if (resize){
		return;
	}
	
	var bannerItems = box.getElements('.leftBottomBannerItem');
	var bannersCount = bannerItems.length;
	var buttomItems = box.getElements('.bannerBut');
	var buttomCount = buttomItems.length;
	var currentPage = box.getElement('.bannerBut.nactive').getProperty('but_id');
	$each(buttomItems, function(item){
		item.addEvent('click', function(e){
			changePage(item.getProperty('but_id'));
		});
	});
	
	box.getElements('.banArrow.left').addEvent('click', function(e){
		if (this.hasClass('active')){
			changePage(currentPage * 1 - 1);
		}
	});
	box.getElements('.banArrow.right').addEvent('click', function(e){
		
		if (this.hasClass('active')){
			changePage(currentPage * 1 + 1);
		}
	});
	
	function changePage(but_id){
		var item = box.getElement('.bannerBut.active[but_id=' + but_id + ']');
		if (!item){
			return;
		}
		box.getElement('.bannerBut.nactive')
			.removeClass('nactive')
			.addClass('active')
			.setProperty('src', 'images/ban_but_a.gif');
		item.removeClass('active')
			.addClass('nactive')
			.setProperty('src', 'images/ban_but.gif');
		currentPage = item.getProperty('but_id');

		if (currentPage == 0){
			box.getElement('.banArrow.left')
				.removeClass('active')
				.addClass('nactive')
				.setProperty('src', 'images/ban_arr_l.gif');
		} else {
			box.getElement('.banArrow.left')
				.removeClass('nactive')
				.addClass('active')
				.setProperty('src', 'images/ban_arr_l_a.gif');
		}
		
		if (currentPage == buttomCount - 1){
			box.getElement('.banArrow.right')
				.removeClass('active')
				.addClass('nactive')
				.setProperty('src', 'images/ban_arr_r.gif');
		} else {
			box.getElement('.banArrow.right')
				.removeClass('nactive')
				.addClass('active')
				.setProperty('src', 'images/ban_arr_r_a.gif');
		}
		var showStart;
		var showEnd ;
		if (((currentPage * 1 + 1) * 6) <= bannersCount){
			showStart = currentPage * 6;
			showEnd = currentPage * 6 + 5;
		} else {
			showEnd = bannersCount - 1;
			showStart = showEnd - 5;
		}
		var i = 0;
		$each(bannerItems, function(item){
			var ban_id = item.getProperty('ban_id');
			if (ban_id >= showStart && ban_id <= showEnd){
				i++;
				if ((i % 3) == 1){
					item.setStyle('clear', 'left');
				} else {
					item.setStyle('clear', 'none');
				}
				item.removeClass('hidden');
				
			} else {
				item.addClass('hidden');
			}
		});
	}
});

function addScrollPadding(box){
	if(box.offsetHeight < box.scrollHeight){
		box.setStyle('padding-right', '13px');
	}
}
window.addEvent('_scrollBox', function(pageType){
	addScrollPadding(pageType);
});

