if (window.self != window.top) window.top.location = window.self.location; 

calendar = {
	init:		function() {
					my_add = new Array();
					day = document.getElementById('fday');
					month = document.getElementById('fmonth');
					year = document.getElementById('fyear');
					if (((month.selectedIndex == 0) || (month.selectedIndex == 2) || (month.selectedIndex == 4) || (month.selectedIndex == 6) || (month.selectedIndex == 7) || (month.selectedIndex == 9) || (month.selectedIndex == 11)) && (month.options.length != 31)) {
						day.innerHTML = '';
						calendar.add(31);
					}
					if (((month.selectedIndex == 3) || (month.selectedIndex == 5) || (month.selectedIndex == 8) || (month.selectedIndex == 10)) && (month.options.length != 30)) {
						day.innerHTML = '';
						calendar.add(30);
					}
					if (month.selectedIndex == 1) {
						day.innerHTML = '';
						febYear = year.options[year.selectedIndex].innerHTML;
						febDate = new Date (febYear,2,1);
						febDate = new Date (febDate - (24*60*60*1000));
						febDays = febDate.getDate();
						calendar.add(febDays);
					}
				},
	today:	function() {
					calendar.init();
					today = new Date();
					day.options[today.getDate()-1].selected = true;
					month.options[today.getMonth()].selected = true;
					for (i = 0; i < year.options.length; i++) {
						if (year.options[i].value == today.getFullYear()) year.options[i].selected = true;
					}
				},
	add:		function(endDays) {
					for (i = 0; i < endDays; i++) {
						my_add[i] = document.createElement('option');
						day.appendChild(my_add[i]);
						my_add[i].value = i+1;
						my_add[i].innerHTML = i+1;
					}
				}
}

formCheck = {
	trueColor: '#C0FCC1',
	falseColor: '#FF9393',
	
	init:		function() {
					for (var i = 0; i < document.forms.length; i++) {
						document.forms[i].onreset = function() {
							if (confirm('Вы действительно хотите очистить все поля?')) return true
								else return false;
						}
						if (document.forms[i].elements['pass'] && document.forms[i].elements['confpass']) {
							document.forms[i].elements['pass'].onblur = document.forms[i].elements['pass'].onkeypress = document.forms[i].elements['pass'].onkeyup = function() {
								myForm = this.form;
								if (formCheck.pass() == true) formCheck.mark(true, myForm.elements['pass'], myForm.elements['confpass'])
									else if (formCheck.pass() == false) formCheck.mark(false, myForm.elements['pass'], myForm.elements['confpass'])
							}
							compare_pass = true;
							document.forms[i].elements['confpass'].onblur = document.forms[i].elements['confpass'].onkeypress = document.forms[i].elements['confpass'].onkeyup = function() {
								myForm = this.form;
								if (formCheck.pass2() == true) formCheck.mark(true, myForm.elements['pass'], myForm.elements['confpass'])
									else if (formCheck.pass2() == false) formCheck.mark(false, myForm.elements['pass'], myForm.elements['confpass'])
									else if (formCheck.pass2() == undefined) formCheck.mark(undefined, myForm.elements['pass'], myForm.elements['confpass'])
							}
						}
						if (document.forms[i].elements['mail']) { 
							compare_email = true;
							document.forms[i].elements['mail'].onblur = document.forms[i].elements['mail'].onchange = function() {
								myForm = this.form;
								if (formCheck.email('ready') == true) formCheck.mark(true, myForm.elements['mail'])
									else if (formCheck.email('ready') == false) formCheck.mark(false, myForm.elements['mail'])
									else if (formCheck.email('ready') == undefined) formCheck.mark(undefined, myForm.elements['mail'])
							}	
							document.forms[i].elements['mail'].onkeyup = function() {
								myForm = this.form;
								if (formCheck.email() == true) formCheck.mark(true, myForm.elements['mail'])
									else if (formCheck.email() == false) formCheck.mark(false, myForm.elements['mail'])
									else if (formCheck.email() == undefined) formCheck.mark(undefined, myForm.elements['mail'])
							}	
						}
						if (document.forms[i].elements['nickname']) { 
							compare_nickname = true;
							document.forms[i].elements['nickname'].onblur = document.forms[i].elements['nickname'].onchange = function() {
								myForm = this.form;
								if (formCheck.nick('ready') == true) formCheck.mark(true, myForm.elements['nickname'])
									else if (formCheck.nick('ready') == false) formCheck.mark(false, myForm.elements['nickname'])
									else if (formCheck.nick('ready') == undefined) formCheck.mark(undefined, myForm.elements['nickname'])
							}	
							document.forms[i].elements['nickname'].onkeyup = function() {
								myForm = this.form;
								if (formCheck.nick() == true) formCheck.mark(true, myForm.elements['nickname'])
									else if (formCheck.nick() == false) formCheck.mark(false, myForm.elements['nickname'])
									else if (formCheck.nick() == undefined) formCheck.mark(undefined, myForm.elements['nickname'])
							}	
						}
					}
				},
	pass:		function() {
					if (myForm.elements['confpass'].value != '') {
						if (myForm.elements['pass'].value == myForm.elements['confpass'].value) return true
							else return false;
					}
				},
	pass2:	function() {
					if (myForm.elements['confpass'].value != '') {
						if ((myForm.elements['confpass'].value.length >= myForm.elements['pass'].value.length) || (compare_pass == false)) {
							compare_pass = false;
							if ((myForm.elements['pass'].value == myForm.elements['confpass'].value) && (myForm.elements['confpass'].value.length >= 5)) return true
								else return false;
						}
					} else {
							compare_pass = true;
							return undefined;
						}
				}, 
	nick:		function() {
					if (myForm.elements['nickname'].value != '') {
						if (formCheck.nick.arguments[0] == 'ready') {
							if (myForm.elements['nickname'].value.match(/^[^ ]{2,}$/i, '')) return true;
								else return false;
						} else {
								if ((myForm.elements['nickname'].value.length >= 2) || (compare_nickname == false)) {
									compare_nickname = false;
									if (myForm.elements['nickname'].value.match(/^[^ ]{2,}$/i, '')) return true;
										else return false;
								}
							}
					} else {
							compare_nickname = true;
							return undefined;
						}
				},
	email:	function() {
					if (myForm.elements['mail'].value != '') {
						if (formCheck.email.arguments[0] == 'ready') {
							if (myForm.elements['mail'].value.match(/^[\w\.\-]+@[\w\.\-]+\.[a-zA-Z]{2,10}$/i, '')) return true;
								else return false;
						} else {
								if ((myForm.elements['mail'].value.match(/^[\w\.\-]+@[\w\.\-]+\.[a-zA-Z]{2,10}$/i, '')) || (compare_email == false)) {
									compare_email = false;
									if (myForm.elements['mail'].value.match(/^[\w\.\-]+@[\w\.\-]+\.[a-zA-Z]{2,10}$/i, '')) return true;
										else return false;
								}
							}
					} else {
							compare_email = true;
							return undefined;
						}
				},
	mark:		function() {
					if (formCheck.mark.arguments[0] == true) for (var mr = 1; mr < formCheck.mark.arguments.length; mr++) formCheck.mark.arguments[mr].style.backgroundColor = "" + formCheck.trueColor;
						else if (formCheck.mark.arguments[0] == false) for (var mr = 1; mr < formCheck.mark.arguments.length; mr++) formCheck.mark.arguments[mr].style.backgroundColor = "" + formCheck.falseColor;
						else if (formCheck.mark.arguments[0] == undefined) for (var mr = 1; mr < formCheck.mark.arguments.length; mr++) formCheck.mark.arguments[mr].style.backgroundColor = "";
				}
}

function newWin(url, winWidth, winHeight) {
		var countWin;
		if(!winWidth) winWidth = 550;
		if(!winHeight) winHeight = 500;
		PopupWin = window.open(url, 'newWin'+countWin, 'width='+winWidth+', height='+winHeight+',menubar=no,status=no,titlebar=no,toolbar=no,location=no,resizable=no,scrollbars=no');
		countWin++;
}

preloadImages = {
	init:		function() {
					var image_root = 'img';
					var imagesArray = new Array(
						'b-hdr-bg.gif',
						'mnu-bg-hv.gif'
					);
					for (var im = 0; im < imagesArray.length; im++) {
						imgpath = image_root + '/' + imagesArray[im];
						preloadImages.preload(imgpath);
					}
				},
	preload:	function(imgsrc) {
					if (document.images) {	
						var image = new Image();
						image.src = imgsrc;
//						alert(imgsrc +'');
					}
	}
}

gallery = {
	width: 	0,
	init: 	function() {
					if (document.getElementById('photo-parent')) {
						setInterval('gallery.check()', 1);
						td = document.getElementById('photo-parent').getElementsByTagName('td');
						table = document.getElementById('photo-parent').getElementsByTagName('table');
						count = 0;
						row = false;
					}
				},
	check: 	function() {
					if (document.body.clientWidth != gallery.width) {
						gallery.width = document.body.clientWidth;
						gallery.inline();
					}
				},
	inline: 	function() {
					document.getElementById('photo-parent').style.visibility = 'hidden';

					for (var i = 0; (table.item(i)); i++) td.item(i).style.height = 'auto';
					for (var i = 1; (table.item(i)); i++) if ((row == false) && (table.item(i).offsetTop == table.item(i-1).offsetTop)) count++; else row = true;
					count++;

					for (var i = 0; (td.item(i)); i=i+count) {	
						myHeight = 0;	
						for (var o = 0; (td.item(i+o) && o < count); o++) if (td.item(i+o).offsetHeight > myHeight) myHeight = td.item(i+o).offsetHeight;
						for (var o = 0; (td.item(i+o) && o < count); o++) td.item(i+o).style.height = myHeight + 'px';
					}
					document.getElementById('photo-parent').style.visibility = 'visible';
				}
}

rollover = {
	init: 	function() {
					if (document.getElementById('rollover')) {
						rlvImg = document.getElementById('rollover').getElementsByTagName('img');
						for (var r = 0; (rlvImg.item(r)); r++) {
							rlvImg.item(r).onmouseover = rollover.over;
							rlvImg.item(r).onmouseout = rollover.out;
							ovrsrc = rlvImg.item(r).src.replace(/([\w\.\-\/]+)\.(\w+)/, "$1-ovr.$2");
							preloadImages.preload(ovrsrc);
						}
					}
	},
	over: 	function() {
					this.src = this.src.replace(/([\w\.\-\/]+)\.(\w+)/, "$1-ovr.$2");
	},
	out: 		function() {
					this.src = this.src.replace(/([\w\.\-\/]+)\-ovr([\w+\.]+)/, "$1$2");
	}
}

function init() {
	rollover.init();
}


if (loaded) init();
loaded = true;
