﻿if(typeof(Class) != 'undefined') { 
var Slider = new Class({});

var Scroller = new Class({});


var popUpWin=0;
function popUpWindow(URLStr, left, top, width, height)
{
  popUpWin = open(URLStr, 'YCpopUpWin', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=yes,width='+width+',height='+height+'');
  popUpWin.focus();
}

function popUpAdminWindow(URLStr, left, top, width, height)
{
  popUpWin = open(URLStr, 'YCpopUpWin', 'toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no,width='+width+',height='+height+'');
  popUpWin.focus();
}

var swfobject=function(){var Z="undefined",P="object",B="Shockwave Flash",h="ShockwaveFlash.ShockwaveFlash",W="application/x-shockwave-flash",K="SWFObjectExprInst",G=window,g=document,N=navigator,f=[],H=[],Q=null,L=null,T=null,S=false,C=false;var a=function(){var l=typeof g.getElementById!=Z&&typeof g.getElementsByTagName!=Z&&typeof g.createElement!=Z&&typeof g.appendChild!=Z&&typeof g.replaceChild!=Z&&typeof g.removeChild!=Z&&typeof g.cloneNode!=Z,t=[0,0,0],n=null;if(typeof N.plugins!=Z&&typeof N.plugins[B]==P){n=N.plugins[B].description;if(n){n=n.replace(/^.*\s+(\S+\s+\S+$)/,"$1");t[0]=parseInt(n.replace(/^(.*)\..*$/,"$1"),10);t[1]=parseInt(n.replace(/^.*\.(.*)\s.*$/,"$1"),10);t[2]=/r/.test(n)?parseInt(n.replace(/^.*r(.*)$/,"$1"),10):0}}else{if(typeof G.ActiveXObject!=Z){var o=null,s=false;try{o=new ActiveXObject(h+".7")}catch(k){try{o=new ActiveXObject(h+".6");t=[6,0,21];o.AllowScriptAccess="always"}catch(k){if(t[0]==6){s=true}}if(!s){try{o=new ActiveXObject(h)}catch(k){}}}if(!s&&o){try{n=o.GetVariable("$version");if(n){n=n.split(" ")[1].split(",");t=[parseInt(n[0],10),parseInt(n[1],10),parseInt(n[2],10)]}}catch(k){}}}}var v=N.userAgent.toLowerCase(),j=N.platform.toLowerCase(),r=/webkit/.test(v)?parseFloat(v.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,i=false,q=j?/win/.test(j):/win/.test(v),m=j?/mac/.test(j):/mac/.test(v);/*@cc_on i=true;@if(@_win32)q=true;@elif(@_mac)m=true;@end@*/return{w3cdom:l,pv:t,webkit:r,ie:i,win:q,mac:m}}();var e=function(){if(!a.w3cdom){return }J(I);if(a.ie&&a.win){try{g.write("<script id=__ie_ondomload defer=true src=//:><\/script>");var i=c("__ie_ondomload");if(i){i.onreadystatechange=function(){if(this.readyState=="complete"){this.parentNode.removeChild(this);V()}}}}catch(j){}}if(a.webkit&&typeof g.readyState!=Z){Q=setInterval(function(){if(/loaded|complete/.test(g.readyState)){V()}},10)}if(typeof g.addEventListener!=Z){g.addEventListener("DOMContentLoaded",V,null)}M(V)}();function V(){if(S){return }if(a.ie&&a.win){var m=Y("span");try{var l=g.getElementsByTagName("body")[0].appendChild(m);l.parentNode.removeChild(l)}catch(n){return }}S=true;if(Q){clearInterval(Q);Q=null}var j=f.length;for(var k=0;k<j;k++){f[k]()}}function J(i){if(S){i()}else{f[f.length]=i}}function M(j){if(typeof G.addEventListener!=Z){G.addEventListener("load",j,false)}else{if(typeof g.addEventListener!=Z){g.addEventListener("load",j,false)}else{if(typeof G.attachEvent!=Z){G.attachEvent("onload",j)}else{if(typeof G.onload=="function"){var i=G.onload;G.onload=function(){i();j()}}else{G.onload=j}}}}}function I(){var l=H.length;for(var j=0;j<l;j++){var m=H[j].id;if(a.pv[0]>0){var k=c(m);if(k){H[j].width=k.getAttribute("width")?k.getAttribute("width"):"0";H[j].height=k.getAttribute("height")?k.getAttribute("height"):"0";if(O(H[j].swfVersion)){if(a.webkit&&a.webkit<312){U(k)}X(m,true)}else{if(H[j].expressInstall&&!C&&O("6.0.65")&&(a.win||a.mac)){D(H[j])}else{d(k)}}}}else{X(m,true)}}}function U(m){var k=m.getElementsByTagName(P)[0];if(k){var p=Y("embed"),r=k.attributes;if(r){var o=r.length;for(var n=0;n<o;n++){if(r[n].nodeName.toLowerCase()=="data"){p.setAttribute("src",r[n].nodeValue)}else{p.setAttribute(r[n].nodeName,r[n].nodeValue)}}}var q=k.childNodes;if(q){var s=q.length;for(var l=0;l<s;l++){if(q[l].nodeType==1&&q[l].nodeName.toLowerCase()=="param"){p.setAttribute(q[l].getAttribute("name"),q[l].getAttribute("value"))}}}m.parentNode.replaceChild(p,m)}}function F(i){if(a.ie&&a.win&&O("8.0.0")){G.attachEvent("onunload",function(){var k=c(i);if(k){for(var j in k){if(typeof k[j]=="function"){k[j]=function(){}}}k.parentNode.removeChild(k)}})}}function D(j){C=true;var o=c(j.id);if(o){if(j.altContentId){var l=c(j.altContentId);if(l){L=l;T=j.altContentId}}else{L=b(o)}if(!(/%$/.test(j.width))&&parseInt(j.width,10)<310){j.width="310"}if(!(/%$/.test(j.height))&&parseInt(j.height,10)<137){j.height="137"}g.title=g.title.slice(0,47)+" - Flash Player Installation";var n=a.ie&&a.win?"ActiveX":"PlugIn",k=g.title,m="MMredirectURL="+G.location+"&MMplayerType="+n+"&MMdoctitle="+k,p=j.id;if(a.ie&&a.win&&o.readyState!=4){var i=Y("div");p+="SWFObjectNew";i.setAttribute("id",p);o.parentNode.insertBefore(i,o);o.style.display="none";G.attachEvent("onload",function(){o.parentNode.removeChild(o)})}R({data:j.expressInstall,id:K,width:j.width,height:j.height},{flashvars:m},p)}}function d(j){if(a.ie&&a.win&&j.readyState!=4){var i=Y("div");j.parentNode.insertBefore(i,j);i.parentNode.replaceChild(b(j),i);j.style.display="none";G.attachEvent("onload",function(){j.parentNode.removeChild(j)})}else{j.parentNode.replaceChild(b(j),j)}}function b(n){var m=Y("div");if(a.win&&a.ie){m.innerHTML=n.innerHTML}else{var k=n.getElementsByTagName(P)[0];if(k){var o=k.childNodes;if(o){var j=o.length;for(var l=0;l<j;l++){if(!(o[l].nodeType==1&&o[l].nodeName.toLowerCase()=="param")&&!(o[l].nodeType==8)){m.appendChild(o[l].cloneNode(true))}}}}}return m}function R(AE,AC,q){var p,t=c(q);if(typeof AE.id==Z){AE.id=q}if(a.ie&&a.win){var AD="";for(var z in AE){if(AE[z]!=Object.prototype[z]){if(z=="data"){AC.movie=AE[z]}else{if(z.toLowerCase()=="styleclass"){AD+=' class="'+AE[z]+'"'}else{if(z!="classid"){AD+=" "+z+'="'+AE[z]+'"'}}}}}var AB="";for(var y in AC){if(AC[y]!=Object.prototype[y]){AB+='<param name="'+y+'" value="'+AC[y]+'" />'}}t.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+AD+">"+AB+"</object>";F(AE.id);p=c(AE.id)}else{if(a.webkit&&a.webkit<312){var AA=Y("embed");AA.setAttribute("type",W);for(var x in AE){if(AE[x]!=Object.prototype[x]){if(x=="data"){AA.setAttribute("src",AE[x])}else{if(x.toLowerCase()=="styleclass"){AA.setAttribute("class",AE[x])}else{if(x!="classid"){AA.setAttribute(x,AE[x])}}}}}for(var w in AC){if(AC[w]!=Object.prototype[w]){if(w!="movie"){AA.setAttribute(w,AC[w])}}}t.parentNode.replaceChild(AA,t);p=AA}else{var s=Y(P);s.setAttribute("type",W);for(var v in AE){if(AE[v]!=Object.prototype[v]){if(v.toLowerCase()=="styleclass"){s.setAttribute("class",AE[v])}else{if(v!="classid"){s.setAttribute(v,AE[v])}}}}for(var u in AC){if(AC[u]!=Object.prototype[u]&&u!="movie"){E(s,u,AC[u])}}t.parentNode.replaceChild(s,t);p=s}}return p}function E(k,i,j){var l=Y("param");l.setAttribute("name",i);l.setAttribute("value",j);k.appendChild(l)}function c(i){return g.getElementById(i)}function Y(i){return g.createElement(i)}function O(k){var j=a.pv,i=k.split(".");i[0]=parseInt(i[0],10);i[1]=parseInt(i[1],10);i[2]=parseInt(i[2],10);return(j[0]>i[0]||(j[0]==i[0]&&j[1]>i[1])||(j[0]==i[0]&&j[1]==i[1]&&j[2]>=i[2]))?true:false}function A(m,j){if(a.ie&&a.mac){return }var l=g.getElementsByTagName("head")[0],k=Y("style");k.setAttribute("type","text/css");k.setAttribute("media","screen");if(!(a.ie&&a.win)&&typeof g.createTextNode!=Z){k.appendChild(g.createTextNode(m+" {"+j+"}"))}l.appendChild(k);if(a.ie&&a.win&&typeof g.styleSheets!=Z&&g.styleSheets.length>0){var i=g.styleSheets[g.styleSheets.length-1];if(typeof i.addRule==P){i.addRule(m,j)}}}function X(k,i){var j=i?"visible":"hidden";if(S){c(k).style.visibility=j}else{A("#"+k,"visibility:"+j)}}return{registerObject:function(l,i,k){if(!a.w3cdom||!l||!i){return }var j={};j.id=l;j.swfVersion=i;j.expressInstall=k?k:false;H[H.length]=j;X(l,false)},getObjectById:function(l){var i=null;if(a.w3cdom&&S){var j=c(l);if(j){var k=j.getElementsByTagName(P)[0];if(!k||(k&&typeof j.SetVariable!=Z)){i=j}else{if(typeof k.SetVariable!=Z){i=k}}}}return i},embedSWF:function(n,u,r,t,j,m,k,p,s){if(!a.w3cdom||!n||!u||!r||!t||!j){return }r+="";t+="";if(O(j)){X(u,false);var q=(typeof s==P)?s:{};q.data=n;q.width=r;q.height=t;var o=(typeof p==P)?p:{};if(typeof k==P){for(var l in k){if(k[l]!=Object.prototype[l]){if(typeof o.flashvars!=Z){o.flashvars+="&"+l+"="+k[l]}else{o.flashvars=l+"="+k[l]}}}}J(function(){R(q,o,u);if(q.id==u){X(u,true)}})}else{if(m&&!C&&O("6.0.65")&&(a.win||a.mac)){X(u,false);J(function(){var i={};i.id=i.altContentId=u;i.width=r;i.height=t;i.expressInstall=m;D(i)})}}},getFlashPlayerVersion:function(){return{major:a.pv[0],minor:a.pv[1],release:a.pv[2]}},hasFlashPlayerVersion:O,createSWF:function(k,j,i){if(a.w3cdom&&S){return R(k,j,i)}else{return undefined}},createCSS:function(j,i){if(a.w3cdom){A(j,i)}},addDomLoadEvent:J,addLoadEvent:M,getQueryParamValue:function(m){var l=g.location.search||g.location.hash;if(m==null){return l}if(l){var k=l.substring(1).split("&");for(var j=0;j<k.length;j++){if(k[j].substring(0,k[j].indexOf("="))==m){return k[j].substring((k[j].indexOf("=")+1))}}}return""},expressInstallCallback:function(){if(C&&L){var i=c(K);if(i){i.parentNode.replaceChild(L,i);if(T){X(T,true);if(a.ie&&a.win){L.style.display="block"}}L=null;T=null;C=false}}}}}();

// -- NATIVE YAMAHA-MOTOR.RU SCRIPTS --
	sfHover = function() {
	// Find all unordered lists.
	var ieNavs = document.getElementsByTagName('ul');
	for(i=0; i<ieNavs.length; i++) {
		var ul = ieNavs[i];
		// If they have a class of nav add the menu hover.
		if(ul.className == "nav")
			setHover(ul);
	}
 }
	function setHover(nav) {
	var ieULs = nav.getElementsByTagName('ul');
	if ((navigator.appVersion.substr(22,3)!="5.0") && navigator.appName.indexOf("Microsoft") > -1) {
		// IE script to cover <select> elements with <iframe>s
		for (j=0; j<ieULs.length; j++) {
			var ieMat=document.createElement('iframe');
			if(document.location.protocol == "https:")
				ieMat.src="//0";
			else
				ieMat.src="javascript:''";
			ieMat.scrolling="no";
			ieMat.frameBorder="0";
			ieMat.style.width=ieULs[j].offsetWidth+"px";
			ieMat.style.height=ieULs[j].offsetHeight+"px";
			ieMat.style.zIndex="-1";
			ieULs[j].insertBefore(ieMat, ieULs[j].childNodes[0]);
			ieULs[j].style.zIndex="101";
		}
		// IE script to change class on mouseover
		var ieLIs = nav.getElementsByTagName('li');
		for (var i=0; i<ieLIs.length; i++) if (ieLIs[i]) {
			// Does this LI have children? If so add a sfnode class.
			if (ieLIs[i].getElementsByTagName("UL").length>0){
				ieLIs[i].className+=" sfnode";
			}
			
			// Add a sfhover class to the li.
			ieLIs[i].onmouseover=function() {this.className+=" sfhover"; }
			ieLIs[i].onmouseout=function() {this.className=this.className.replace(' sfhover', '');}
		}
	} else {
		// IE 5.0 doesn't support iframes so hide the select statements on hover and show on mouse out.
		// IE script to change class on mouseover
		var ieLIs = document.getElementById('nav').getElementsByTagName('li');
		for (var i=0; i<ieLIs.length; i++) if (ieLIs[i]) {
			ieLIs[i].onmouseover=function() {this.className+=" sfhover"; hideSelects(); } 
			ieLIs[i].onmouseout=function() {this.className='';/*this.className.replace(' sfhover', ''); alert(this.className); */showSelects()}
		}
	} }
	function hideSelects(){
	var oSelects=document.getElementsByTagName("select");
	for(var i=0;i<oSelects.length;i++)
		oSelects[i].className+=" hide"; }
	function showSelects(){
	var oSelects=document.getElementsByTagName("select");
	for(var i=0;i<oSelects.length;i++)
		oSelects[i].className=oSelects[i].className.replace(" hide",""); }

	function msegment_over(id, segment) {
	document.getElementById("t" + id).className = segment + '_segment_selector';
	return; }
	function msegment_out(id) {
	document.getElementById("t" + id).className = 'segment_selector';
	return; }

// -- UPLOADER --
	Fx.ProgressBar = new Class({
	
		Extends: Fx,
	
		options: {
			text: null,
			transition: Fx.Transitions.Circ.easeOut,
			link: 'cancel'
		},
	
		initialize: function(element, options) {
			this.element = $(element);
			this.parent(options);
			this.text = $(this.options.text);
			this.set(0);
		},
	
		start: function(to, total) {
			return this.parent(this.now, (arguments.length == 1) ? to.limit(0, 100) : to / total * 100);
		},
	
		set: function(to) {
			this.now = to;
			this.element.setStyle('backgroundPosition', (100 - to) + '% 0px');
			if (this.text) this.text.set('text', Math.round(to) + '%');
			return this;
		}
	});
/**
 * Swiff.Uploader - Flash FileReference Control
 *
 * @version		1.2
 *
 * @license		MIT License
 *
 * @author		Harald Kirschner <mail [at] digitarald [dot] de>
 * @copyright	Authors
 */

Swiff.Uploader = new Class({

	Extends: Swiff,

	Implements: Events,

	options: {
		path: 'Swiff.Uploader.swf',
		multiple: true,
		queued: true,
		typeFilter: null,
		url: null,
		method: 'post',
		data: null,
		fieldName: 'Filedata',
		target: null,
		height: '100%',
		width: '100%',
		callBacks: null
	},

	initialize: function(options){
		if (Browser.Plugins.Flash.version < 9) return false;
		this.setOptions(options);

		var callBacks = this.options.callBacks || this;
		if (callBacks.onLoad) this.addEvent('onLoad', callBacks.onLoad);
		if (!callBacks.onBrowse) {
			callBacks.onBrowse = function() {
				return this.options.typeFilter;
			}
		}

		var prepare = {}, self = this;
		['onBrowse', 'onSelect', 'onAllSelect', 'onCancel', 'onBeforeOpen', 'onOpen', 'onProgress', 'onComplete', 'onError', 'onAllComplete'].each(function(index) {
			var fn = callBacks[index] || $empty;
			prepare[index] = function() {
				self.fireEvent(index, arguments, 10);
				return fn.apply(self, arguments);
			};
		});

		prepare.onLoad = this.load.create({delay: 10, bind: this});
		this.options.callBacks = prepare;

		var path = this.options.path;
		if (!path.contains('?')) path += '?noCache=' + $time(); // quick fix

		this.parent(path);

		var scroll = window.getScroll();
		this.box = new Element('div', {
			styles: {
				position: 'absolute',
				overflow: 'hidden',
				height: 10, width: 10,
				top: scroll.y, left: scroll.x
			}
		});
		this.inject(this.box);
		this.box.inject($(this.options.container) || document.body);

		return this;
	},

	load: function(){
		this.remote('register', this.instance, this.options.multiple, this.options.queued);
		this.fireEvent('onLoad');

		this.target = $(this.options.target);
		if (Browser.Plugins.Flash.version >= 10 && this.target) {
			this.reposition();
			window.addEvent('resize', this.reposition.bind(this));
		}
	},

	reposition: function() {
		var pos = this.target.getCoordinates(this.box.getOffsetParent());
		this.box.setStyles(pos);
	},

	/*
	Method: browse
		Open the file browser.
	*/

	browse: function(typeFilter){
		this.options.typeFilter = $pick(typeFilter, this.options.typeFilter);
		return this.remote('browse');
	},

	/*
	Method: upload
		Starts the upload of all selected files.
	*/

	upload: function(options){
		var current = this.options;
		options = $extend({data: current.data, url: current.url, method: current.method, fieldName: current.fieldName}, options);
		if ($type(options.data) == 'element') options.data = $(options.data).toQueryString();
		return this.remote('upload', options);
	},

	/*
	Method: removeFile
		For multiple uploads cancels and removes the given file from queue.

	Arguments:
		name - (string) Filename
		name - (string) Filesize in byte
	*/

	removeFile: function(file){
		if (file) file = {name: file.name, size: file.size};
		return this.remote('removeFile', file);
	},

	/*
	Method: getFileList
		Returns one Array with with arrays containing name and size of the file.

	Returns:
		(array) An array with files
	*/

	getFileList: function(){
		return this.remote('getFileList');
	}

});
/**
 * FancyUpload - Flash meets Ajax for powerful and elegant uploads.
 *
 * @version		2.1
 *
 * @license		MIT License
 *
 * @author		Harald Kirschner <mail [at] digitarald [dot] de>
 * @copyright	Authors
 */

var FancyUpload2 = new Class({

	Extends: Swiff.Uploader,

	options: {
		limitSize: false,
		limitFiles: 5,
		instantStart: false,
		allowDuplicates: false,
		validateFile: $lambda(true), // provide a function that returns true for valid and false for invalid files.
		debug: false,

		fileInvalid: null, // called for invalid files with error stack as 2nd argument
		fileCreate: null, // creates file element after select
		fileUpload: null, // called when file is opened for upload, allows to modify the upload options (2nd argument) for every upload
		fileComplete: null, // updates the file element to completed state and gets the response (2nd argument)
		fileRemove: null // removes the element
		/**
		 * Events:
		 * onBrowse, onSelect, onAllSelect, onCancel, onBeforeOpen, onOpen, onProgress, onComplete, onError, onAllComplete
		 */
	},

	initialize: function(status, list, options) {
		this.status = $(status);
		this.list = $(list);

		this.files = [];

		if (options.callBacks) {
			this.addEvents(options.callBacks);
			options.callBacks = null;
		}

		this.parent(options);
		this.render();
	},

	render: function() {
		this.overallTitle = this.status.getElement('.overall-title');
		this.currentTitle = this.status.getElement('.current-title');
		this.currentText = this.status.getElement('.current-text');

		var progress = this.status.getElement('.overall-progress');
		this.overallProgress = new Fx.ProgressBar(progress, {
			text: new Element('span', {'class': 'progress-text'}).inject(progress, 'after')
		});
		progress = this.status.getElement('.current-progress')
		this.currentProgress = new Fx.ProgressBar(progress, {
			text: new Element('span', {'class': 'progress-text'}).inject(progress, 'after')
		});
	},

	onLoad: function() {
		this.log('Uploader ready!');
	},

	onBeforeOpen: function(file, options) {
		this.log('Initialize upload for "{name}".', file);
		var fn = this.options.fileUpload;
		var obj = (fn) ? fn.call(this, this.getFile(file), options) : options;
		return obj;
	},

	onOpen: function(file, overall) {
		this.log('Starting upload "{name}".', file);
		file = this.getFile(file);
		file.element.addClass('file-uploading');
		this.currentProgress.cancel().set(0);
		this.currentTitle.set('html', 'Загрузка файла "{name}"'.substitute(file) );
	},

	onProgress: function(file, current, overall) {
		this.overallProgress.start(overall.bytesLoaded, overall.bytesTotal);
		this.currentText.set('html', 'Файл загружен со скоростью {rate}/с. Осталось: ~{timeLeft} сек'.substitute({
			rate: (current.rate) ? this.sizeToKB(current.rate) : '- B',
			timeLeft: Date.fancyDuration(current.timeLeft || 0)
		}));
		this.currentProgress.start(current.bytesLoaded, current.bytesTotal);
	},

	onSelect: function(file, index, length) {
		var errors = [];
		if (this.options.limitSize && (file.size > this.options.limitSize)) errors.push('size');
		if (this.options.limitFiles && (this.countFiles() >= this.options.limitFiles)) errors.push('length');
		if (!this.options.allowDuplicates && this.getFile(file)) errors.push('duplicate');
		if (!this.options.validateFile.call(this, file, errors)) errors.push('custom');
		if (errors.length) {
			var fn = this.options.fileInvalid;
			if (fn) fn.call(this, file, errors);
			return false;
		}
		(this.options.fileCreate || this.fileCreate).call(this, file);
		this.files.push(file);
		return true;
	},

	onAllSelect: function(files, current, overall) {
		this.log('Added ' + files.length + ' files, now we have (' + current.bytesTotal + ' bytes).', arguments);
		this.updateOverall(current.bytesTotal);
		this.status.removeClass('status-browsing');
		if (this.files.length && this.options.instantStart) this.upload.delay(10, this);
	},

	onComplete: function(file, response) {
		this.log('Completed upload "' + file.name + '".', arguments);
		this.currentText.set('html', 'Загрузка завершена!');
		this.currentProgress.start(100);
		(this.options.fileComplete || this.fileComplete).call(this, this.finishFile(file), response);
	},

	onError: function(file, error, info) {
		this.log('Upload "' + file.name + '" failed. "{1}": "{2}".', arguments);
		(this.options.fileError || this.fileError).call(this, this.finishFile(file), error, info);
	},

	onCancel: function() {
		this.log('Filebrowser cancelled.', arguments);
		this.status.removeClass('file-browsing');
	},

	onAllComplete: function(current) {
		this.log('Completed all files, ' + current.bytesTotal + ' bytes.', arguments);
		this.updateOverall(current.bytesTotal);
		this.overallProgress.start(100);
		this.status.removeClass('file-uploading');
	},

	browse: function(fileList) {
		var ret = this.parent(fileList);
		if (ret !== true){
			if (ret) this.log('An error occured: ' + ret);
			else this.log('Browse in progress.');
		} else {
			this.log('Browse started.');
			this.status.addClass('file-browsing');
		}
	},

	upload: function(options) {
		var ret = this.parent(options);
		if (ret !== true) {
			this.log('Upload in progress or nothing to upload.');
			if (ret) alert(ret);
		} else {
			this.log('Upload started.');
			this.status.addClass('file-uploading');
			this.overallProgress.set(0);
		}
	},

	removeFile: function(file) {
		var remove = this.options.fileRemove || this.fileRemove;
		if (!file) {
			this.files.each(remove, this);
			this.files.empty();
			this.updateOverall(0);
		} else {
			if (!file.element) file = this.getFile(file);
			this.files.erase(file);
			remove.call(this, file);
			this.updateOverall(this.bytesTotal - file.size);
		}
		this.parent(file);
	},

	getFile: function(file) {
		var ret = null;
		this.files.some(function(value) {
			if ((value.name != file.name) || (value.size != file.size)) return false;
			ret = value;
			return true;
		});
		return ret;
	},

	countFiles: function() {
		var ret = 0;
		for (var i = 0, j = this.files.length; i < j; i++) {
			if (!this.files[i].finished) ret++;
		}
		return ret;
	},

	updateOverall: function(bytesTotal) {
		this.bytesTotal = bytesTotal;
		this.overallTitle.set('html', 'Будет загружено ' + this.sizeToKB(bytesTotal) + '');
	},

	finishFile: function(file) {
		file = this.getFile(file);
		file.element.removeClass('file-uploading');
		file.finished = true;
		return file;
	},

	fileCreate: function(file) {
		file.info = new Element('span', {'class': 'file-info'});
		file.element = new Element('li', {'class': 'file'}).adopt(
			
			new Element('a', {
				'class': 'file-remove',
				'href': '#',
				'html': '<img style="position:relative; top:5px;" src="/img/icn/del.gif" width="10" height="10" align="x"/>',
				'events': {
					'click': function() {
						this.removeFile(file);
						return false;
					}.bind(this)
				}
			}),
			new Element('span', {'class': 'file-size', 'html': this.sizeToKB(file.size)}),	
			new Element('span', {'class': 'file-name', 'html': file.name}),
			file.info
		).inject(this.list);
	},

	fileComplete: function(file, response) {
		this.options.processResponse || this
		var json = $H(JSON.decode(response, true));
		if (json.get('result') == 'success') {
			file.element.addClass('file-success');
			file.info.set('html', json.get('size'));
		} else {
			file.element.addClass('file-failed');
			file.info.set('html', json.get('error') || response);
		}
	},

	fileError: function(file, error, info) {
		file.element.addClass('file-failed');
			file.info.set('html', '<strong>' + error + '</strong>: ' + info);
	},

	fileRemove: function(file) {
//		file.element.fade('out').retrieve('tween').chain(Element.destroy.bind(Element, file.element));
		file.element.destroy();
		if(!this.countFiles()) { 
			this.list.setStyles({'display':'none'}); 
			try {
				$('photoupoader-clear').setStyles({'display':'none'});
				$('photoupoader-upload').setStyles({'display':'none'});
			} catch(e) {}
		}
		else this.list.setStyles({'display':'block'});
	},

	sizeToKB: function(size) {
		var unit = 'б';
		if ((size / 1048576) > 1) {
			unit = 'Mб';
			size /= 1048576;
		} else if ((size / 1024) > 1) {
			unit = 'Кб';
			size /= 1024;
		}
		return size.round(1) + ' ' + unit;
	},

	log: function(text, args) {
		if (this.options.debug && window.console) console.log(text.substitute(args || {}));
	}

});

/**
 * @todo Clean-up, into Date.js
 */
Date.parseDuration = function(sec) {
	var units = {}, conv = Date.durations;
	for (var unit in conv) {
		var value = Math.floor(sec / conv[unit]);
		if (value) {
			units[unit] = value;
			if (!(sec -= value * conv[unit])) break;
		}
	}
	return units;
};

Date.fancyDuration = function(sec) {
	var ret = [], units = Date.parseDuration(sec);
	for (var unit in units) ret.push(units[unit] + Date.durationsAbbr[unit]);
	return ret.join(', ');
};

Date.durations = {years: 31556926, months: 2629743.83, days: 86400, hours: 3600, minutes: 60, seconds: 1, milliseconds: 0.001};
Date.durationsAbbr = {
	years: 'j',
	months: 'm',
	days: 'd',
	hours: 'h',
	minutes: 'min',
	seconds: 'sec',
	milliseconds: 'ms'
};	
	

// -- CALENDAR AND LIGHTBOX --
	var vlaCalendar = new Class({});
	var vlaDatePicker = new Class({});
	var Milkbox = new Class({});
	
// -- FANCY FORM --
var FancyForm = {
	start: function(elements, options){
		FancyForm.initing = 1;
		if($type(elements)!='array') elements = $$('input');
		if(!options) options = [];
		FancyForm.onclasses = ($type(options['onClasses']) == 'object') ? options['onClasses'] : {
			checkbox: 'checked',
			radio: 'selected'
		}
		FancyForm.offclasses = ($type(options['offClasses']) == 'object') ? options['offClasses'] : {
			checkbox: 'unchecked',
			radio: 'unselected'
		}
		if($type(options['extraClasses']) == 'object'){
			FancyForm.extra = options['extraClasses'];
		} else if(options['extraClasses']){
			FancyForm.extra = {
				checkbox: 'f_checkbox',
				radio: 'f_radio',
				on: 'f_on',
				off: 'f_off',
				all: 'fancy'
			}
		} else {
			FancyForm.extra = {};
		}
		FancyForm.onSelect = $pick(options['onSelect'], function(el){});
		FancyForm.onDeselect = $pick(options['onDeselect'], function(el){});
		var keeps = [];
		FancyForm.chks = elements.filter(function(chk){
			if( $type(chk) != 'element' ) return false;
			if( chk.get('tag') == 'input' && (FancyForm.onclasses[chk.getProperty('type')]) ){
				var el = chk.getParent();
				if(el.getElement('input')==chk){
					el.type = chk.getProperty('type');
					el.inputElement = chk;
					this.push(el);
				} else {
					chk.addEvent('click',function(f){
						if(f.event.stopPropagation) f.event.stopPropagation();
					});
				}
			} else if( (chk.inputElement = chk.getElement('input')) && (FancyForm.onclasses[(chk.type = chk.inputElement.getProperty('type'))]) ){
				return true;
			}
			return false;
		}.bind(keeps));
		FancyForm.chks = FancyForm.chks.combine(keeps);
		keeps = null;
		FancyForm.chks.each(function(chk){
			var c = chk.inputElement;
			c.setStyle('position', 'absolute');
			c.setStyle('left', '-9999px');
			chk.addEvent('selectStart', function(f){f.stop()});
			chk.name = c.getProperty('name');
			FancyForm.update(chk);
		});
		FancyForm.chks.each(function(chk){
			var c = chk.inputElement;
			chk.addEvent('click', function(f){
				f.stop(); f.type = 'prop';
				c.fireEvent('click', f, 1);
			});
			chk.addEvent('mousedown', function(f){
				if($type(c.onmousedown) == 'function')
					c.onmousedown();
				f.preventDefault();
			});
			chk.addEvent('mouseup', function(f){
				if($type(c.onmouseup) == 'function')
					c.onmouseup();
			});
			c.addEvent('focus', function(f){
				if(FancyForm.focus)
					chk.setStyle('outline', '1px dotted');
			});
			c.addEvent('blur', function(f){
				chk.setStyle('outline', 0);
			});
			c.addEvent('click', function(f){
				if(f.event.stopPropagation) f.event.stopPropagation();
				if(c.getProperty('disabled')) // c.getStyle('position') != 'absolute'
					return;
				if (!chk.hasClass(FancyForm.onclasses[chk.type]))
					c.setProperty('checked', 'checked');
				else if(chk.type != 'radio')
					c.setProperty('checked', false);
				if(f.type == 'prop')
					FancyForm.focus = 0;
				FancyForm.update(chk);
				FancyForm.focus = 1;
				if(f.type == 'prop' && !FancyForm.initing && $type(c.onclick) == 'function')
					 c.onclick();
			});
			c.addEvent('mouseup', function(f){
				if(f.event.stopPropagation) f.event.stopPropagation();
			});
			c.addEvent('mousedown', function(f){
				if(f.event.stopPropagation) f.event.stopPropagation();
			});
			if(extraclass = FancyForm.extra[chk.type])
				chk.addClass(extraclass);
			if(extraclass = FancyForm.extra['all'])
				chk.addClass(extraclass);
		});
		FancyForm.initing = 0;
		$each($$('form'), function(x) {
			x.addEvent('reset', function(a) {
				window.setTimeout(function(){FancyForm.chks.each(function(x){FancyForm.update(x);x.inputElement.blur()})}, 200);
			});
		});
	},
	update: function(chk){
		if(chk.inputElement.getProperty('checked')) {
			chk.removeClass(FancyForm.offclasses[chk.type]);
			chk.addClass(FancyForm.onclasses[chk.type]);
			if (chk.type == 'radio'){
				FancyForm.chks.each(function(other){
					if (other.name == chk.name && other != chk) {
						other.inputElement.setProperty('checked', false);
						FancyForm.update(other);
					}
				});
			}
			if(extraclass = FancyForm.extra['on'])
				chk.addClass(extraclass);
			if(extraclass = FancyForm.extra['off'])
				chk.removeClass(extraclass);
			if(!FancyForm.initing)
				FancyForm.onSelect(chk);
		} else {
			chk.removeClass(FancyForm.onclasses[chk.type]);
			chk.addClass(FancyForm.offclasses[chk.type]);
			if(extraclass = FancyForm.extra['off'])
				chk.addClass(extraclass);
			if(extraclass = FancyForm.extra['on'])
				chk.removeClass(extraclass);
			if(!FancyForm.initing)
				FancyForm.onDeselect(chk);
		}
//		if(!FancyForm.initing)
//			chk.inputElement.focus();
	},
	all: function(){
		FancyForm.chks.each(function(chk){
			chk.inputElement.setProperty('checked', 'checked');
			FancyForm.update(chk);
		});
	},
	none: function(){
		FancyForm.chks.each(function(chk){
			chk.inputElement.setProperty('checked', false);
			FancyForm.update(chk);
		});
	} };

// -- DD MENU -- 
var UvumiDropdown=new Class({Implements:Options,options:{duration:250,transition:Fx.Transitions.linear},initialize:function(a,b){this.menu=a;this.setOptions(b);window.addEvent('domready',this.domReady.bind(this))},domReady:function(){this.menu=$(this.menu);if(!$defined(this.menu)){return false}if(this.menu.get('tag')!='ul'){this.menu=this.menu.getFirst('ul');if(!$defined(this.menu)){return false}}this.menu.setStyles({overflow:'hidden',height:0,marginLeft:(Browser.Engine.trident?1:-1)});this.createSubmenu(this.menu);this.menu.getChildren('li').setStyles({'float':'left',display:'block',top:0});var a=new Element('li',{html:"&nbsp;",styles:{clear:'both',display:(Browser.Engine.trident?'inline':'block'),position:'relative',top:0,height:0,width:0,fontSize:0,lineHeight:0,margin:0,padding:0}}).inject(this.menu);this.menu.setStyles({height:'auto',overflow:'visible',visibility:'visible'});this.menu.getElements('a').setStyle('display',(Browser.Engine.trident?'inline-block':'block'))},createSubmenu:function(c){var d=c.getChildren('li');var e=0;d.each(function(a){a.setStyles({position:'relative',display:'block',top:-e,zIndex:1});e+=a.getSize().y;var b=a.getFirst('ul');if($defined(b)){b.setStyle('display','none');if(c==this.menu){var x=0;var y=a.getSize().y;this.options.link='cancel';a.store('animation',new Fx.Elements($$(b,b.getChildren('li')).setStyle('opacity',0),this.options))}else{var x=a.getSize().x-a.getStyle('border-left-width').toInt();var y=-a.getStyle('border-bottom-width').toInt();this.options.link='chain';a.store('animation',new Fx.Elements($$(b,b.getChildren('li')).setStyle('opacity',0),this.options));e=a.getSize().y+a.getPosition(this.menu).y}b.setStyles({position:'absolute',display:'block',top:y,left:x,marginLeft:-x,opacity:0});this.createSubmenu(b);a.addEvents({mouseenter:this.showChildList.bind(this,a),mouseleave:this.hideChildList.bind(this,a)}).addClass('submenu')}},this)},showChildList:function(b){var c=b.getFirst('ul');var d=$$(c.getChildren('li'));var e=b.retrieve('animation');if(b.getParent('ul')!=this.menu){e.cancel();e.start({0:{opacity:1,marginLeft:0},1:{opacity:1}});var f={}}else{var f={0:{opacity:1}}}d.each(function(a,i){f[i+1]={top:0,opacity:1}});b.setStyle('z-index',99);e.start(f)},hideChildList:function(b){var c=b.retrieve('animation');var d=b.getFirst('ul');var e=$$(d.getChildren('li'));var f=0;var g={};e.each(function(a,i){g[i+1]={top:-f,opacity:0};f+=a.getSize().y});b.setStyle('z-index',1);if(b.getParent('ul')!=this.menu){g[1]=null;c.cancel();c.start(g);c.start({0:{opacity:0,marginLeft:-d.getSize().x},1:{opacity:0}})}else{g[0]={opacity:0};c.start(g)}}});

// -- SQEEZE BOX --
var SqueezeBox = {

	presets: {
		size: {x: 600, y: 450},
		sizeLoading: {x: 200, y: 150},
		marginInner: {x: 20, y: 20},
		marginImage: {x: 50, y: 75},
		handler: false,
		target: null,
		closable: true,
		closeBtn: true,
		zIndex: 65555,
		overlayOpacity: 0.7,
		classWindow: '',
		classOverlay: '',
		overlayFx: {},
		resizeFx: {},
		contentFx: {},
		parse: false, // 'rel'
		parseSecure: false,
		ajaxOptions: {},
		onOpen: $empty,
		onClose: $empty,
		onUpdate: $empty,
		onResize: $empty,
		onMove: $empty,
		onShow: $empty,
		onHide: $empty
	},

	initialize: function(presets) {
		if (this.options) return this;
		this.presets = $merge(this.presets, presets);
		this.options = {};
		this.setOptions(this.presets).build();
		this.bound = {
			window: this.reposition.bind(this, [null]),
			scroll: this.checkTarget.bind(this),
			close: this.close.bind(this),
			key: this.onKey.bind(this)
		};
		this.isOpen = this.isLoading = false;
		return this;
	},

	build: function() {
		this.overlay = new Element('div', {
			id: 'sbox-overlay',
			styles: {display: 'none', zIndex: this.options.zIndex}
		});
		this.content = new Element('div', {id: 'sbox-content'});
		this.closeBtn = new Element('a', {id: 'sbox-btn-close', href: '#'});
		this.win = new Element('div', {
			id: 'sbox-window',
			styles: {display: 'none', zIndex: this.options.zIndex + 2}
		}).adopt(this.closeBtn, this.content);
		this.fx = {
			overlay: new Fx.Tween(this.overlay, $merge({
				property: 'opacity',
				onStart: Events.prototype.clearChain,
				duration: 250,
				link: 'cancel'
			}, this.options.overlayFx)).set(0),
			win: new Fx.Morph(this.win, $merge({
				onStart: Events.prototype.clearChain,
				unit: 'px',
				duration: 750,
				transition: Fx.Transitions.Quint.easeOut,
				link: 'cancel',
				unit: 'px'
			}, this.options.resizeFx)),
			content: new Fx.Tween(this.content, $merge({
				property: 'zoom', //'opacity',
				duration: 250,
				link: 'cancel'
			}, this.options.contentFx)).set(0)
		};
		$(document.body).adopt(this.overlay, this.win);
	},

	assign: function(to, options) {
		return to.addEvent('click', function() {
			return !SqueezeBox.fromElement(this, options);
		});
	},

	fromElement: function(from, options) {
		this.initialize();
		if (this.element) this.trash();
		this.element = $(from);
		this.setOptions($merge(this.presets, options || {}));
		if (this.element && this.options.parse) {
			var obj = this.element.getProperty(this.options.parse);
			if (obj && (obj = JSON.decode(obj, this.options.parseSecure))) this.setOptions(obj);
		}
		this.assignOptions();
		this.url = ((this.element) ? (this.options.url || this.element.get('href')) : from) || '';
		var handler = this.options.handler;
		if (handler) return this.setContent(handler, this.parsers[handler].call(this, true));
		var ret = false;
		this.parsers.some(function(parser, key) {
			var content = parser.call(this);
			if (content) {
				ret = this.setContent(key, content);
				return true;
			}
			return false;
		}, this);
		return ret;
	},

	assignOptions: function() {
		this.overlay.set('class', this.options.classOverlay);
		this.win.set('class', this.options.classWindow);
		if (Browser.Engine.trident4) this.win.addClass('sbox-window-ie6');
	},

	close: function(e) {
		var stoppable = ($type(e) == 'event');
		if (stoppable) e.stop();
		if (!this.isOpen || (stoppable && !$lambda(this.options.closable).call(this, e))) return this;
		this.fx.overlay.start(0).chain(this.toggleOverlay.bind(this));
		this.win.setStyle('display', 'none');
		this.toggleListeners();
		this.isOpen = false;
		this.trash();
		this.fireEvent('onClose', [this.content]);
		return this;
	},

	trash: function() {
		this.element = this.asset = null;
		this.options = {};
		this.removeEvents().setOptions(this.presets).callChain();
	},

	onError: function() {
		this.asset = null;
		this.setContent('string', 'Error during loading');
	},

	setContent: function(handler, content) {
		if (!this.handlers[handler]) return false;
		this.content.className = 'sbox-content-' + handler;
		this.applyTimer = this.applyContent.delay(this.fx.overlay.options.duration, this, this.handlers[handler].call(this, content));
		if (this.overlay.retrieve('opacity')) return this;
		this.toggleOverlay(true);
		this.fx.overlay.start(this.options.overlayOpacity);
		return this.reposition();
	},

	applyContent: function(content, size) {
		this.applyTimer = $clear(this.applyTimer);
		this.hideContent();
		if (!content) {
			this.toggleLoading(true);
		} else {
			if (this.isLoading) this.toggleLoading(false);
			this.fireEvent('onUpdate', [this.content], 20);
		}
		this.content.empty();
		if (['string', 'array', false].contains($type(content))) this.content.set('html', content || '');
		else this.content.adopt(content);
		this.callChain();
		if (!this.isOpen) {
			this.toggleListeners(true);
			this.resize(size, true);
			this.isOpen = true;
			this.fireEvent('onOpen', [this.content]);
		} else {
			this.resize(size);
		}
	},

	resize: function(size, instantly) {
		var box = document.getSize(), scroll = document.getScroll();
		this.size = $merge((this.isLoading) ? this.options.sizeLoading : this.options.size, size);
		var to = {
			width: this.size.x,
			height: this.size.y,
			left: (scroll.x + (box.x - this.size.x - this.options.marginInner.x) / 2).toInt(),
			top: (scroll.y + (box.y - this.size.y - this.options.marginInner.y) / 2).toInt()
		};
		$clear(this.showTimer || null);
		this.hideContent();
		if (!instantly) {
			this.fx.win.start(to).chain(this.showContent.bind(this));
		} else {
			this.win.setStyles(to).setStyle('display', '');
			this.showTimer = this.showContent.delay(50, this);
		}
		return this.reposition();
	},

	toggleListeners: function(state) {
		var fn = (state) ? 'addEvent' : 'removeEvent';
		this.closeBtn[fn]('click', this.bound.close);
//		this.overlay[fn]('click', this.bound.close);
		document[fn]('keydown', this.bound.key)[fn]('mousewheel', this.bound.scroll);
		window[fn]('resize', this.bound.window)[fn]('scroll', this.bound.window);
	},

	toggleLoading: function(state) {
		this.isLoading = state;
		this.win[(state) ? 'addClass' : 'removeClass']('sbox-loading');
		if (state) this.fireEvent('onLoading', [this.win]);
	},

	toggleOverlay: function(state) {
		this.overlay.setStyle('display', (state) ? '' : 'none');
		$(document.body)[(state) ? 'addClass' : 'removeClass']('body-overlayed');
	},

	showContent: function() {
		if (this.content.get('opacity')) this.fireEvent('onShow', [this.win]);
		this.fx.content.start(1);
	},

	hideContent: function() {
		if (!this.content.get('opacity')) this.fireEvent('onHide', [this.win]);
		this.fx.content.set(0);
	},

	onKey: function(e) {
		switch (e.key) {
			case 'esc': this.close(e);
			case 'up': case 'down': return false;
		}
	},

	checkTarget: function(e) {
		return this.content.hasChild(e.target);
	},

	reposition: function() {
		var size = document.getSize(), scroll = document.getScroll();
		this.overlay.setStyles({
			left: scroll.x + 'px',
			top: scroll.y + 'px',
			width: size.x + 'px',
			height: size.y + 'px'
		});
		this.win.setStyles({
			left: (scroll.x + (size.x - this.win.offsetWidth) / 2).toInt() + 'px',
			top: (scroll.y + (size.y - this.win.offsetHeight) / 2).toInt() + 'px'
		});
		return this.fireEvent('onMove', [this.overlay, this.win]);
	},

	removeEvents: function(type){
		if (!this.$events) return this;
		if (!type) this.$events = null;
		else if (this.$events[type]) this.$events[type] = null;
		return this;
	},

	extend: function(properties) {
		return $extend(this, properties);
	},

	handlers: new Hash(),

	parsers: new Hash()
 };
SqueezeBox.extend(new Events($empty)).extend(new Options($empty)).extend(new Chain($empty));
SqueezeBox.parsers.extend({

	image: function(preset) {
		return (preset || (/\.(?:jpg|png|gif)$/i).test(this.url)) ? this.url : false;
	},

	clone: function(preset) {
		if ($(this.options.target)) return $(this.options.target);
		if (this.element && !this.element.parentNode) return this.element;
		var bits = this.url.match(/#([\w-]+)$/);
		return (bits) ? $(bits[1]) : (preset ? this.element : false);
	},

	ajax: function(preset) {
		return (preset || (this.url && !(/^(?:javascript|#)/i).test(this.url))) ? this.url : false;
	},

	iframe: function(preset) {
		return (preset || this.url) ? this.url : false;
	},

	string: function(preset) {
		return true;
	} });
SqueezeBox.handlers.extend({

	image: function(url) {
		var size, tmp = new Image();
		this.asset = null;
		tmp.onload = tmp.onabort = tmp.onerror = (function() {
			tmp.onload = tmp.onabort = tmp.onerror = null;
			if (!tmp.width) {
				this.onError.delay(10, this);
				return;
			}
			var box = document.getSize();
			box.x -= this.options.marginImage.x;
			box.y -= this.options.marginImage.y;
			size = {x: tmp.width, y: tmp.height};
			for (var i = 2; i--;) {
				if (size.x > box.x) {
					size.y *= box.x / size.x;
					size.x = box.x;
				} else if (size.y > box.y) {
					size.x *= box.y / size.y;
					size.y = box.y;
				}
			}
			size.x = size.x.toInt();
			size.y = size.y.toInt();
			this.asset = $(tmp);
			tmp = null;
			this.asset.setProperties({width: size.x, height: size.y});
			if (this.isOpen) this.applyContent(this.asset, size);
		}).bind(this);
		tmp.src = url;
		if (tmp && tmp.onload && tmp.complete) tmp.onload();
		return (this.asset) ? [this.asset, size] : null;
	},

	clone: function(el) {
		return el.clone();
	},

	adopt: $arguments(0),

	ajax: function(url) {
		this.asset = new Request.HTML($merge({
			method: 'get'
		}, this.options.ajaxOptions)).addEvents({
			onSuccess: function(resp) {
				this.applyContent(resp);
				this.asset = null;
			}.bind(this),
			onFailure: this.onError.bind(this)
		});
		this.asset.send.delay(10, this.asset, [{url: url}]);
	},

	iframe: function(url) {
		return new Element('iframe', $merge({
			src: url,			
			frameBorder: 0,
			width: this.options.size.x,
			height: this.options.size.y
		}, this.options.iframeOptions));
	},

	string: function(str) {
		return str;
	}
});
SqueezeBox.handlers.url = SqueezeBox.handlers.ajax;
SqueezeBox.parsers.url = SqueezeBox.parsers.ajax;
SqueezeBox.parsers.adopt = SqueezeBox.parsers.clone;


var slideMenu=function(){
	var sp,st,t,m,sa,l,w,sw,ot;
	return{
		//id, expandto, timeout, speed, exp
		build:function(sm,sw,mt,s,sl,h){
			sp=s; st=sw; t=mt;
			m=document.getElementById(sm);
			sa=m.getElementsByTagName('li');
			l=sa.length; w=m.offsetWidth; sw=w/l;
			ot=Math.floor((w-st)/(l-1)); var i=0;
			for(i;i<l;i++){s=sa[i]; s.style.width=sw+'px'; this.timer(s)}
			if(sl!=null){m.timer=setInterval(function(){slideMenu.slide(sa[sl-1])},t)}
		},
		timer:function(s){s.onmouseover=function(){clearInterval(m.timer);m.timer=setInterval(function(){slideMenu.slide(s)},t)}},
		slide:function(s){
			var cw=parseInt(s.style.width,'10');
			if(cw<st){
				var owt=0; var i=0;
				for(i;i<l;i++){
					if(sa[i]!=s){
						var o,ow; var oi=0; o=sa[i]; ow=parseInt(o.style.width,'10');
						if(ow>ot){oi=Math.floor((ow-ot)/sp); oi=(oi>0)?oi:1; o.style.width=(ow-oi)+'px'}
						owt=owt+(ow-oi)}}
				s.style.width=(w-owt)+'px';
			}else{clearInterval(m.timer)}
		}
	};
}();


// -- MAIN() --
window.addEvent('domready', function(){
									 
	if($('sm')) {
		// build home slider
		slideMenu.build('sm',630,30,10,1);
	}
		
	if($('huntcountdown')) {
		// start countdown timer
		var timeleft = parseInt($('huntcountdown').get('text'));
		
		if(parseInt($('huntstage').get('text')) < 5) {
			var timerhuntleft = setInterval(setHuntTimer = function() {
				try {
					timeleft--;
					hrLeft = Math.floor(timeleft/3600);
					mnLeft = Math.floor((timeleft - hrLeft*3600)/60);
					secLeft = Math.floor(timeleft - hrLeft*3600 - mnLeft*60);
					$('hunttimerh').set('text', ((hrLeft<10) ? '0' : '') + hrLeft);
					$('hunttimerm').set('text', ((mnLeft<10) ? '0' : '') + mnLeft);
					$('hunttimers').set('text', ((secLeft<10) ? '0' : '') + secLeft);
				} catch(e) {}
			}, 1000);
			
			setHuntTimer();
		}
	}

	if (document.getElementById("noframe_1")) {
		if (document.getElementById("noframe_1").className == "topnav") {
			document.getElementById("noframe_1").innerHTML= document.getElementById("css_menu").innerHTML;
		} else {
			var arrElements = document.getElementById("noframe_1").getElementsByTagName("div");
			for(var i=0; i<arrElements.length; i++){
				if ("topnav"== arrElements[i].className){
					arrElements[i].innerHTML= document.getElementById("css_menu").innerHTML;
				}
			}
		}
	} else {
		if (document.getElementById("topnav_2007")) {
			if (document.getElementById("css_menu")) {
				document.getElementById("css_menu").style.display='block';
			}
		} else {
			var arrElements = document.getElementsByTagName("div");
			for(var i=0; i<arrElements.length; i++){
				if ("topnav"== arrElements[i].className){
					arrElements[i].innerHTML= document.getElementById("css_menu").innerHTML;
				}
			}
		}
	}


	if($('flashcontent')) {		
		var flashvars = {};
		var params = {"wmode":"transparent", "quality":"high", "AllowScriptAccess":"always", "menu":"false"};
		var attributes = {};
		attributes.id = "myMovie";
		swfobject.embedSWF("/swf/trio720.swf", "flashcontent", "720", "300", "8.0.0", false, flashvars, params, attributes);
	}

	if($('yccalendar')) {
		new vlaCalendar('yccalendar', 
						{ startMonday: true,
						extraparam:'for=posts'/*,
						defaultView: (($('pfday').value == '--') ? 'decade' : 'month'),
						separator: '.', leadingZero: true, twoDigitYear: false, 
						openWith: 'togglePicker', 
						gotoPickedDate:true,
						startMonday:true,
						alignX: 'right', alignY: 'bottom', 
						prefillDate: { day: $('pfday').value, month: $('pfmonth').value, year: $('pfyear').value }, 
						offset: { x:-3, y:-25 }, toggleDuration:0, ieTransitionColor:'transparent' */ } );
	}

// FEEDBACK
	if($('ycfeedbackform')) {
		// --
		$('ycfeedbackok').setStyles({'height':$('ycfeedbackform').getHeight()});
		$('ycfeedbackloader').setStyles({'height':$('ycfeedbackform').getHeight()});
		$('ycfeedbackform').addEvent('submit', function(e) {
			e.stop();
			var masker = $('ycfeedbackloader').setStyles({'visibility':'visible'});
			$('ycfeedbackloader').set('opacity','.80');
			this.set('send', {onComplete: function(response) { 
				try {
					masker.setStyles({'visibility':'hidden'});
					var r=response.split('|');
					if(r[1] != '0') $('name').addClass('ycerror'); else $('name').removeClass('ycerror');
					if(r[2] != '0') $('email').addClass('ycerror'); else $('email').removeClass('ycerror');
					if(r[3] != '0') $('subject').addClass('ycerror'); else $('subject').removeClass('ycerror');
						if(r[3] == '99') $('badwordtitle').setStyles({'display':'block'}); else $('badwordtitle').setStyles({'display':'none'});
					if(r[4] != '0') $('message').addClass('ycerror'); else $('message').removeClass('ycerror');
						if(r[4] == '99') $('badword').setStyles({'display':'block'}); else $('badword').setStyles({'display':'none'});
					if(r[0]=='ok') {
						$('ycfeedbackok').setStyles({'visibility':'visible'});
					} else {
					}
				} catch(e) {}
			}});
			this.send();
		});
	}
	
// LOGIN aka JOIN
	if($('ycloginform')) {
		// --
		$('ycloginok').setStyles({'height':$('ycloginform').getHeight()}+30);
		$('ycloader').setStyles({'height':$('ycloginform').getHeight()+30});
		$('ycloginform').addEvent('submit', function(e) {
			e.stop();
			$('ycloader').setStyles({'visibility':'visible'});
			$('ycloader').set('opacity','.80');
			this.set('send', {onComplete: function(response) { 
				var r=response.split('|');
				if(r[1] != '0') $('login').addClass('ycerror'); else $('login').removeClass('ycerror');
				if(r[2] != '0') $('password').addClass('ycerror'); else $('password').removeClass('ycerror');
				if(r[0]=='ok') {
					
//					$('ycloginok').setStyles({'visibility':'visible'});
//					$('ycloginok').setStyles({'height':$('ycloginform').getHeight()}+30);
					window.location = '/personal/';
				} else {
					$('ycloader').setStyles({'visibility':'hidden'});
				}
			}});
			this.send();
		});
	}

// REGISTER	

	if($('addcarrowlink')) {
		$$('.carrow').each(function(item, index){ item.setStyles(((index<$('carcount').value) ? ({'display':'block'}) : ({'display':'none'}))); });
		$('addcarrowlink').setStyles((($('carcount').value<5) ? ({'display':'block'}) : ({'display':'none'})));
		
		$$('.ycdelcar').each(function(item, index){
									item.addEvent('click', function(e) {
											e.stop();
											carrows = $$('.carrow');
											for(dd = parseInt(this.rel); dd<5; dd++) {
												$('car'+dd).value = (dd<4) ? $('car'+(dd+1)).value : '';
												$('caryear'+dd).value = (dd<4) ? $('caryear'+(dd+1)).value : '';
											}
											carcount = $('carcount').value = parseInt($('carcount').value)-1;
											carrows[carcount].setStyles({'display':'none'});
											$('addcarrowlink').setStyles({'display':'block'});
									}.bind(item));
								});
		
		$('addcarrow').addEvent('click', function(e) {
									e.stop();
									carcount = $('carcount').value = parseInt($('carcount').value)+1;
									carrows = $$('.carrow');
									carrows.each(function(item, index){ item.setStyles(((index<carcount) ? ({'display':'block'}) : ({'display':'none'}))); });
									$('addcarrowlink').setStyles(((carcount<5) ? ({'display':'block'}) : ({'display':'none'})));
								});

		// CYC
		$$('.carcycrow').each(function(item, index){ item.setStyles(((index<$('carcyccount').value) ? ({'display':'block'}) : ({'display':'none'}))); });
		$('addcarcycrowlink').setStyles((($('carcyccount').value<5) ? ({'display':'block'}) : ({'display':'none'})));
		
		$$('.ycdelcarcyc').each(function(item, index){
									item.addEvent('click', function(e) {
											e.stop();
											carcycrows = $$('.carcycrow');
											for(dd = parseInt(this.rel); dd<5; dd++) {
												$('carcyc'+dd).value = (dd<4) ? $('carcyc'+(dd+1)).value : '';
												$('carcycyear'+dd).value = (dd<4) ? $('carcycyear'+(dd+1)).value : '';
											}
											carcyccount = $('carcyccount').value = parseInt($('carcyccount').value)-1;
											carcycrows[carcyccount].setStyles({'display':'none'});
											$('addcarcycrowlink').setStyles({'display':'block'});
									}.bind(item));
								});
		
		$('addcarcycrow').addEvent('click', function(e) {
									e.stop();
									carcyccount = $('carcyccount').value = parseInt($('carcyccount').value)+1;
									carcycrows = $$('.carcycrow');
									carcycrows.each(function(item, index){ item.setStyles(((index<carcyccount) ? ({'display':'block'}) : ({'display':'none'}))); });
									$('addcarcycrowlink').setStyles(((carcyccount<5) ? ({'display':'block'}) : ({'display':'none'})));
								});
		
		// QUAD
		$$('.carquadrow').each(function(item, index){ item.setStyles(((index<$('carquadcount').value) ? ({'display':'block'}) : ({'display':'none'}))); });
		$('addcarquadrowlink').setStyles((($('carquadcount').value<5) ? ({'display':'block'}) : ({'display':'none'})));
		
		$$('.ycdelcarquad').each(function(item, index){
									item.addEvent('click', function(e) {
											e.stop();
											carquadrows = $$('.carquadrow');
											for(dd = parseInt(this.rel); dd<5; dd++) {
												$('carquad'+dd).value = (dd<4) ? $('carquad'+(dd+1)).value : '';
												$('carquadyear'+dd).value = (dd<4) ? $('carquadyear'+(dd+1)).value : '';
											}
											carquadcount = $('carquadcount').value = parseInt($('carquadcount').value)-1;
											carquadrows[carquadcount].setStyles({'display':'none'});
											$('addcarquadrowlink').setStyles({'display':'block'});
									}.bind(item));
								});
		
		$('addcarquadrow').addEvent('click', function(e) {
									e.stop();
									carquadcount = $('carquadcount').value = parseInt($('carquadcount').value)+1;
									carquadrows = $$('.carquadrow');
									carquadrows.each(function(item, index){ item.setStyles(((index<carquadcount) ? ({'display':'block'}) : ({'display':'none'}))); });
									$('addcarquadrowlink').setStyles(((carquadcount<5) ? ({'display':'block'}) : ({'display':'none'})));

								});
		// HYDRO
		$$('.carhydrorow').each(function(item, index){ item.setStyles(((index<$('carhydrocount').value) ? ({'display':'block'}) : ({'display':'none'}))); });
		$('addcarhydrorowlink').setStyles((($('carhydrocount').value<5) ? ({'display':'block'}) : ({'display':'none'})));
		
		$$('.ycdelcarhydro').each(function(item, index){
									item.addEvent('click', function(e) {
											e.stop();
											carhydrorows = $$('.carhydrorow');
											for(dd = parseInt(this.rel); dd<5; dd++) {
												$('carhydro'+dd).value = (dd<4) ? $('carhydro'+(dd+1)).value : '';
												$('carhydroyear'+dd).value = (dd<4) ? $('carhydroyear'+(dd+1)).value : '';
											}
											carhydrocount = $('carhydrocount').value = parseInt($('carhydrocount').value)-1;
											carhydrorows[carhydrocount].setStyles({'display':'none'});
											$('addcarhydrorowlink').setStyles({'display':'block'});
									}.bind(item));
								});
		
		$('addcarhydrorow').addEvent('click', function(e) {
									e.stop();
									carhydrocount = $('carhydrocount').value = parseInt($('carhydrocount').value)+1;
									carhydrorows = $$('.carhydrorow');
									carhydrorows.each(function(item, index){ item.setStyles(((index<carhydrocount) ? ({'display':'block'}) : ({'display':'none'}))); });
									$('addcarhydrorowlink').setStyles(((carhydrocount<5) ? ({'display':'block'}) : ({'display':'none'})));
								});
		// BOAT
		$$('.carboatrow').each(function(item, index){ item.setStyles(((index<$('carboatcount').value) ? ({'display':'block'}) : ({'display':'none'}))); });
		$('addcarboatrowlink').setStyles((($('carboatcount').value<5) ? ({'display':'block'}) : ({'display':'none'})));
		
		$$('.ycdelcarboat').each(function(item, index){
									item.addEvent('click', function(e) {
											e.stop();
											carboatrows = $$('.carboatrow');
											for(dd = parseInt(this.rel); dd<5; dd++) {
												$('carboat'+dd).value = (dd<4) ? $('carboat'+(dd+1)).value : '';
												$('carboatyear'+dd).value = (dd<4) ? $('carboatyear'+(dd+1)).value : '';
											}
											carboatcount = $('carboatcount').value = parseInt($('carboatcount').value)-1;
											carboatrows[carboatcount].setStyles({'display':'none'});
											$('addcarboatrowlink').setStyles({'display':'block'});
									}.bind(item));
								});
		
		$('addcarboatrow').addEvent('click', function(e) {
									e.stop();
									carboatcount = $('carboatcount').value = parseInt($('carboatcount').value)+1;
									carboatrows = $$('.carboatrow');
									carboatrows.each(function(item, index){ item.setStyles(((index<carboatcount) ? ({'display':'block'}) : ({'display':'none'}))); });
									$('addcarboatrowlink').setStyles(((carboatcount<5) ? ({'display':'block'}) : ({'display':'none'})));
								});
		

	}
	
	if($('ycregisterform')) {
//		var datePick = new vlaDatePicker('birth', { 
//				extraparam:'for=birth',
//				defaultView: (($('pfday').value == '--') ? 'decade' : 'month'),
//				separator: '.', leadingZero: true, twoDigitYear: false, 
//				openWith: 'togglePicker', 
//				gotoPickedDate:true,
//				startMonday:true,
//				alignX: 'right', alignY: 'bottom', 
//				prefillDate: { day: $('pfday').value, month: $('pfmonth').value, year: $('pfyear').value }, 
//				offset: { x:-3, y:-25 }, toggleDuration:0, ieTransitionColor:'transparent' } );
		
		
		$('terms').addEvent('click', function(e) {
			e.stop();
			$('ycregisterform').setStyles({'display':'none'});
			$('ycreadterms').setStyles({'display':'none'});
			$('ycterms').setStyles({'display':'block'});
		});
		$('ycaccept').addEvent('click', function(e) {
			$('ycregisterform').setStyles({'display':'block'});
			$('ycterms').setStyles({'display':'none'});
			$('ychider').setStyles({'visibility':'hidden'});
			$('region').setStyles({'visibility':'visible'});
		});
		$('ycreject').addEvent('click', function(e) {
			window.location = '/';
		});
		// --
		$('ychider').setStyles({'height':$('ycregisterform').getHeight()});
		$('region').setStyles({'visibility':'hidden'});
		$('login').setStyles({'color':'#999'}); var loginInit = $('login').value;
		$('login').addEvent('focus', function(e) { if(this.value == loginInit) {this.setStyles({'color':'#333'}); this.value=''; } });
		$('login').addEvent('change', function(e) { if(this.value == '') { this.setStyles({'color':'#999'}); this.value=loginInit; } });
		
		$('ycregisterform').addEvent('submit', function(e) {
			e.stop();
//			$('pfday').value = datePick.getInputDateStruct().day;
//			$('pfmonth').value = datePick.getInputDateStruct().month;
//			$('pfyear').value = datePick.getInputDateStruct().year;
			var masker = $('ycloader').empty().setStyles({'visibility':'visible'});
			$('ycloader').set('opacity','.80');
			$('region').setStyles({'visibility':'hidden'});
			$('ycloader').setStyles({'height':$('ycregisterform').getHeight()});
			this.set('send', {onComplete: function(response) { 
				try {
					masker.setStyles({'visibility':'hidden'});
					var r=response.split('|');
					if(r[1] != '0') $('cardno').addClass('ycerror'); else $('cardno').removeClass('ycerror'); if(r[1] == '2') $('carderr').setStyles({'display':'block'}); else $('carderr').setStyles({'display':'none'}); 
					if(r[2] != '0') $('dealer').addClass('ycerror'); else $('dealer').removeClass('ycerror');
					if(r[3] != '0') $('login').addClass('ycerror'); else $('login').removeClass('ycerror'); 
						if(r[3] == '2') $('loginerr').setStyles({'display':'block'}); else $('loginerr').setStyles({'display':'none'}); 
						if(r[3] == '3') $('loginshorterr').setStyles({'display':'block'}); else $('loginshorterr').setStyles({'display':'none'}); 
						if(r[3] == '4') $('loginbaderr').setStyles({'display':'block'}); else $('loginbaderr').setStyles({'display':'none'}); 
					if(r[4] != '0') $('hisname').addClass('ycerror'); else $('hisname').removeClass('ycerror');
					if(r[5] != '0') $('region').addClass('ycerror'); else $('region').removeClass('ycerror');
					if(r[6] != '0') $('city').addClass('ycerror'); else $('city').removeClass('ycerror');
					if(r[7] != '0') $('phonecode').addClass('ycerror'); else $('phonecode').removeClass('ycerror');
					if(r[8] != '0') $('phoneno').addClass('ycerror'); else $('phoneno').removeClass('ycerror');
					if(r[9] != '0') $('email').addClass('ycerror'); else $('email').removeClass('ycerror'); if(r[9] == '2') $('emailerr').setStyles({'display':'block'}); else $('emailerr').setStyles({'display':'none'}); 
					
					if(r[10] != '0') $('car0').addClass('ycerror'); else $('car0').removeClass('ycerror');
					if(r[11] != '0') $('caryear0').addClass('ycerror'); else $('caryear0').removeClass('ycerror');
					if(r[12] != '0') $('carcyc0').addClass('ycerror'); else $('carcyc0').removeClass('ycerror');
					if(r[13] != '0') $('carcycyear0').addClass('ycerror'); else $('carcycyear0').removeClass('ycerror');
					if(r[14] != '0') $('carquad0').addClass('ycerror'); else $('carquad0').removeClass('ycerror');
					if(r[15] != '0') $('carquadyear0').addClass('ycerror'); else $('carquadyear0').removeClass('ycerror');
					if(r[16] != '0') $('carhydro0').addClass('ycerror'); else $('carhydro0').removeClass('ycerror');
					if(r[17] != '0') $('carhydroyear0').addClass('ycerror'); else $('carhydroyear0').removeClass('ycerror');
					if(r[18] != '0') $('carboat0').addClass('ycerror'); else $('carboat0').removeClass('ycerror');
					if(r[19] != '0') $('carboatyear0').addClass('ycerror'); else $('carboatyear0').removeClass('ycerror');
					
					if(r[0]=='ok') {
						$('ycregisterok').setStyles({'visibility':'visible'});
						$('ycregisterok').setStyles({'height':$('ycregisterform').getHeight()});
						$('region').setStyles({'visibility':'hidden'});
					} else {
						$('region').setStyles({'visibility':'visible'});
					}
				} catch(e) { alert(e); $('region').setStyles({'visibility':'visible'}); }
			}});
			this.send();
		});
	}
//yheditprofilegen
//yheditbrief
//yheditcar
//	alert($$('#yheditbriefform div.ycloader').get('html'));

	//	--- PERSONAL PROFILE: ME IN BRIEF ---
	
	if($('yheditcarform')) {
		// --
		$$('#yheditcarform div.yhok').setStyles({'height':$('yheditcarform').getHeight()});
		$$('#yheditcarform div.yhloader').setStyles({'height':$('yheditcarform').getHeight()});
		$('yheditcarform').addEvent('submit', function(e) {
			e.stop();
			var masker = $$('#yheditcarform div.yhloader').setStyles({'visibility':'visible'});
			$$('#yheditcarform div.yhloader').set('opacity','.80');
			this.set('send', {onComplete: function(response) { 
				try {
					masker.setStyles({'visibility':'hidden'});
					var r=response.split('|');
//					if(r[1] != '0') $('meinbrief').addClass('ycerror'); else $('meinbrief').removeClass('ycerror');
					if(r[0]=='ok') {
						$$('#yheditcarform div.yhok').setStyles({'visibility':'visible'});
						window.location.reload();
					} else {
						$$('#yheditcarform div.yhok').setStyles({'visibility':'hidden'});
					}
				} catch(e) {}
			}});
			this.send();
		});

		$('yheditcarform').setStyle('display', 'none');
		$('yheditcar').addEvent('click', function(e) {
			$('yheditcarform').setStyle('display', 'block');
			$('yheditcartable').setStyle('display', 'none');
		});
		$$('#yheditcarform .yhcancel').addEvent('click', function(e) {
			$('yheditcarform').setStyle('display', 'none');
			$('yheditcartable').setStyle('display', 'block');
		});
	}	
	
	if($('yheditbriefform')) {
		// --
		$$('#yheditbriefform div.yhok').setStyles({'height':$('yheditbriefform').getHeight()});
		$$('#yheditbriefform div.yhloader').setStyles({'height':$('yheditbriefform').getHeight()});
		$('yheditbriefform').addEvent('submit', function(e) {
			e.stop();
			var masker = $$('#yheditbriefform div.yhloader').setStyles({'visibility':'visible'});
			$$('#yheditbriefform div.yhloader').set('opacity','.80');
			this.set('send', {onComplete: function(response) { 
				try {
					masker.setStyles({'visibility':'hidden'});
					var r=response.split('|');
					if(r[1] != '0') $('meinbrief').addClass('ycerror'); else $('meinbrief').removeClass('ycerror');
					if(r[0]=='ok') {
						$$('#yheditbriefform div.yhok').setStyles({'visibility':'visible'});
						window.location.reload();
					} else {
						$$('#yheditbriefform div.yhok').setStyles({'visibility':'hidden'});
					}
				} catch(e) {}
			}});
			this.send();
		});

		$('yheditbriefform').setStyle('display', 'none');
		$('yheditbrief').addEvent('click', function(e) {
			$('yheditbriefform').setStyle('display', 'block');
			$('yheditbrieftable').setStyle('display', 'none');
		});
		$$('#yheditbriefform .yhcancel').addEvent('click', function(e) {
			$('yheditbriefform').setStyle('display', 'none');
			$('yheditbrieftable').setStyle('display', 'block');
		});
	}

	if($('yheditprofilegenform')) {
		// --
		$$('#yheditprofilegenform div.yhok').setStyles({'height':$('yheditprofilegenform').getHeight()});
		$$('#yheditprofilegenform div.yhloader').setStyles({'height':$('yheditprofilegenform').getHeight()});
		$('yheditprofilegenform').addEvent('submit', function(e) {
			e.stop();
			var masker = $$('#yheditprofilegenform div.yhloader').setStyles({'visibility':'visible'});
			$$('#yheditprofilegenform div.yhloader').set('opacity','.80');
			this.set('send', {onComplete: function(response) { 
//				try {
					masker.setStyles({'visibility':'hidden'});
					var r=response.split('|');
					if(r[1] != '0') $('hisname').addClass('ycerror'); else $('hisname').removeClass('ycerror');
					if(r[2] != '0') $('region').addClass('ycerror'); else $('region').removeClass('ycerror');
					if(r[3] != '0') $('city').addClass('ycerror'); else $('city').removeClass('ycerror');
					if(r[0]=='ok') {
						$$('#yheditprofilegenform div.yhok').setStyles({'visibility':'visible'});
						window.location.reload();
					} else {
						$$('#yheditprofilegenform div.yhok').setStyles({'visibility':'hidden'});
					}
//				} catch(e) {}
			}});
			this.send();
		});

		$('yheditprofilegenform').setStyle('display', 'none');
		$('yheditprofilegen').addEvent('click', function(e) {
			$('yheditprofilegenform').setStyle('display', 'block');
			$('yheditprofilegentable').setStyle('display', 'none');
		});
		$$('#yheditprofilegenform .yhcancel').addEvent('click', function(e) {
			$('yheditprofilegenform').setStyle('display', 'none');
			$('yheditprofilegentable').setStyle('display', 'block');
		});
	}

// LOST PASS
	if($('yclostpassrequest')) {
		$('ycretrieveok').setStyles({'height':$('yclostpassrequestform').getHeight()});
		$('ycloader').setStyles({'height':$('yclostpassrequestform').getHeight()});
		$('yclostpassrequestform').addEvent('submit', function(e) {
			e.stop();
			var masker = $('ycloader').empty().setStyles({'visibility':'visible'});
			$('ycloader').set('opacity','.80');

			this.set('send', {onComplete: function(response) {
				try {
					masker.setStyles({'visibility':'hidden'});
					var r=response.split('|');
					if(r[1] != '0') $('login').addClass('ycerror'); else $('login').removeClass('ycerror'); 
						if(r[1] == '2') $('loginerr').setStyles({'display':'block'}); else $('loginerr').setStyles({'display':'none'}); 
					if(r[0]=='ok') {
						$('ychint').setStyles({'display':'none'});
						$('ycretrieveok').setStyles({'visibility':'visible'});
					} else {
					}
				} catch(e) {}
			}});
			this.send();
		});
	}

// LOST PASS REQUEST
	if($('yclostpassrequest')) {
		$('ycretrieveok').setStyles({'height':$('yclostpassrequestform').getHeight()});
		$('ycloader').setStyles({'height':$('yclostpassrequestform').getHeight()});

		$('yclostpassrequestform').addEvent('submit', function(e) {
			e.stop();
			var masker = $('ycloader').empty().setStyles({'visibility':'visible'});
			$('ycloader').set('opacity','.80');
			this.set('send', {onComplete: function(response) { 
				try {
					masker.setStyles({'visibility':'hidden'});
					var r=response.split('|');
					if(r[1] != '0') $('login').addClass('ycerror'); else $('login').removeClass('ycerror'); 
						if(r[1] == '2') $('loginerr').setStyles({'display':'block'}); else $('loginerr').setStyles({'display':'none'}); 
					if(r[0]=='ok') {
						$('ychint').setStyles({'display':'none'});
						$('ycretrieveok').setStyles({'visibility':'visible'});
					} else {
					}
				} catch(e) {}
			}});
			this.send();
		});
	}
	

// LOST PASS RESET
	if($('yclostpassreset')) {
		// --
		$('ycretrieveok').setStyles({'height':$('yclostpassresetform').getHeight()});
		$('ycloader').setStyles({'height':$('yclostpassresetform').getHeight()});

		$('yclostpassresetform').addEvent('submit', function(e) {
			e.stop();
			var masker = $('ycloader').empty().setStyles({'visibility':'visible'});
			$('ycloader').set('opacity','.80');
			this.set('send', {onComplete: function(response) { 
				try {
					masker.setStyles({'visibility':'hidden'});
					var r=response.split('|');
					if(r[1] != '0') $('password').addClass('ycerror'); else $('password').removeClass('ycerror'); 
						if(r[1] == '2') $('passworderr').setStyles({'display':'block'}); else $('passworderr').setStyles({'display':'none'}); 
					if(r[2] != '0') $('passwordrep').addClass('ycerror'); else $('passwordrep').removeClass('ycerror'); 
						if(r[2] == '2') $('passwordreperr').setStyles({'display':'block'}); else $('passwordreperr').setStyles({'display':'none'}); 
					if(r[0]=='ok') {
						$('ychint').setStyles({'display':'none'});
						$('ycretrieveok').setStyles({'visibility':'visible'});
					} else {
					}
				} catch(e) {}
			}});
			this.send();
		});
	}
	
// COMMENT
	if($('ycpostcommentform')) {
		// --
		$('ycpostcommentok').setStyles({'height':$('ycpostcommentform').getHeight()});
		$('ycloader').setStyles({'height':$('ycpostcommentform').getHeight()});
		$('ycpostcommentform').addEvent('submit', function(e) {
			e.stop();
			var masker = $('ycloader').empty().setStyles({'visibility':'visible'});
			$('ycloader').set('opacity','.80');

			this.set('send', {onComplete: function(response) { 
				//try {
					masker.setStyles({'visibility':'hidden'});
					var r=response.split('|');
					if(r[1] != '0') $('comment').addClass('ycerror'); else $('comment').removeClass('ycerror');
						if(r[1] == '99') $('badword').setStyles({'display':'block'}); else $('badword').setStyles({'display':'none'});
					if(r[0]=='ok') {
						$('ycpostcommentok').setStyles({'visibility':'visible'});
						//$('injectcomment').setStyles({'display':'block'});
						//$('injectcomment').set('html', (r[4]));
						try { $('nocommentsofar').setStyle('display', 'none'); } catch(e) {}
						//$('allcomments').setStyles({'display':'block'});
						//$('ycpostcommentrow').setStyles({'display':'none'});
						window.location.reload();
					} else {
					}
				//} catch(e) {}
			}});
			this.send();
		});
	}

// RATE FORM
	if($('ycrateform') && $$('.ycmarker')) {
		// --
		$('ycratetok').setStyles({'height':$('ycrateform').getHeight()});
		$('ycrateloader').setStyles({'height':$('ycrateform').getHeight(), 'visibility':'hidden'});
		$$('.ycmarker').addEvent('click', function(e) { 
				e.stop(); 
				$('ycrateloader').setStyles({'visibility':'visible'});
				$('ycrateloader').set('opacity','.80');
				ratereq.send('rate='+this.title+'&topost='+$('topost').value+'&tologin='+$('tologin').value);
		});

		var ratereq = new Request({url:'/cmd/post-rate-hunt/',
			onSuccess: function(r) {
				r=r.split('|');
				if(r[0] == 'ok') {
					$('ycrateloader').setStyles({'visibility':'hidden'});
					$('ycratetok').setStyles({'visibility':'visible'});
				} else {
					$('ycrateloader').setStyles({'visibility':'hidden'});
				}
			},
			onFailure: function(r) {
				$('ycrateloader').setStyles({'visibility':'hidden'});
			}
		});
	}
	
// DELETERS
	if($('phdelete-PHDEALER')) 
		if($('phdelete-PHDEALER').get('title') != null)
		{
			var reqDelPHDEALER = new Request.HTML({url:'/cmd/delpic-dealer/', 
				onSuccess: function(r) {
					$('phupload-PHDEALER-img').removeClass('picuploading');
					window.location.reload();
				},
				onFailure: function() {
				}
			});
			
			$('phdelete-PHDEALER').addEvent('click', function(e) {
				if(confirm('Фотография будет удалена.\n\nВы уверены?')) {
					$('phdelete-PHDEALER').setStyles({'visibility':'hidden'});
					try { $('phupload-PHDEALER-browse-images').addClass('yhhide'); } catch(e) {}
					try { $('phupload-PHACTION-browse-images').addClass('yhhide'); } catch(e) {}
					try { $('phupload-PHPRIVATE-browse-images').addClass('yhhide'); } catch(e) {}
					if($('phdelete-PHDEALER')) $('phdelete-PHDEALER').addClass('yhhide');
					if($('phdelete-PHPRIVATE')) $('phdelete-PHPRIVATE').addClass('yhhide');
					if($('phdelete-PHACTION')) $('phdelete-PHACTION').addClass('yhhide');

					$('phupload-PHDEALER-img').addClass('picuploading');
					e.stop();
					reqDelPHDEALER.send();
				}
			});
		}
		
	if($('phdelete-PHACTION')) 
		if($('phdelete-PHACTION').get('title') != null)
		{
			var reqDelPHACTION = new Request.HTML({url:'/cmd/delpic-action/', 
				onSuccess: function(r) {
					$('phupload-PHACTION-img').removeClass('picuploading');
					window.location.reload();
				},
				onFailure: function() {
				}
			});
			
			$('phdelete-PHACTION').addEvent('click', function(e) {
				if(confirm('Фотография будет удалена.\n\nВы уверены?')) {
					$('phdelete-PHACTION').setStyles({'visibility':'hidden'});
					try { $('phupload-PHDEALER-browse-images').addClass('yhhide'); } catch(e) {}
					try { $('phupload-PHACTION-browse-images').addClass('yhhide'); } catch(e) {}
					try { $('phupload-PHPRIVATE-browse-images').addClass('yhhide'); } catch(e) {}
					if($('phdelete-PHDEALER')) $('phdelete-PHDEALER').addClass('yhhide');
					if($('phdelete-PHPRIVATE')) $('phdelete-PHPRIVATE').addClass('yhhide');
					if($('phdelete-PHACTION')) $('phdelete-PHACTION').addClass('yhhide');

					$('phupload-PHACTION-img').addClass('picuploading');
					e.stop();
					reqDelPHACTION.send();
				}
			});
		}
		
	if($('phdelete-PHPRIVATE')) 
		if($('phdelete-PHPRIVATE').get('title') != null)
		{
			var reqDelPHPRIVATE = new Request.HTML({url:'/cmd/delpic-private/', 
				onSuccess: function(r) {
					$('phupload-PHPRIVATE-img').removeClass('picuploading');
					window.location.reload();
				},
				onFailure: function() {
				}
			});
			
			$('phdelete-PHPRIVATE').addEvent('click', function(e) {
				if(confirm('Фотография будет удалена.\n\nВы уверены?')) {
					$('phdelete-PHPRIVATE').setStyles({'visibility':'hidden'});
					try { $('phupload-PHDEALER-browse-images').addClass('yhhide'); } catch(e) {}
					try { $('phupload-PHACTION-browse-images').addClass('yhhide'); } catch(e) {}
					try { $('phupload-PHPRIVATE-browse-images').addClass('yhhide'); } catch(e) {}
					if($('phdelete-PHDEALER')) $('phdelete-PHDEALER').addClass('yhhide');
					if($('phdelete-PHPRIVATE')) $('phdelete-PHPRIVATE').addClass('yhhide');
					if($('phdelete-PHACTION')) $('phdelete-PHACTION').addClass('yhhide');

					$('phupload-PHPRIVATE-img').addClass('picuploading');
					e.stop();
					reqDelPHPRIVATE.send();
				}
			});
		}


// UPLOADERS
	if($('yhuploadavatar-browse-images')) {
		var swiffyUpDealer = new FancyUpload2($('yhuploadavatar-status'), $('yhuploadavatar-list'), {
			'url': $('yhuploadavatar-form').action,
			'fieldName': 'photoupload',
			'instantStart' : true,
			'target': 'yhuploadavatar-browse-images',			
			'path': '/swf/Swiff.Uploader.swf',
			'onLoad': function() {
				$('yhuploadavatar-fallback').destroy();
			},
			'onProgress' : function() {
				$('avatarpic').addClass('picuploading');
				$('yhuploadavatar-progressbar').removeClass('yhhide');
				$('yhuploadavatar-browse-images').addClass('yhhide');
				$('avatarpic').addClass('picuploading');
			},
			'onComplete' : function(file, response) {
				r = JSON.decode(response);
				if(r.result == 'success') {
//					$('yhuploadavatar-img').setStyles({'background-image':'url('+r.href+'?'+Math.floor(Math.random()*1000000)+')'});
					$('avatarpic').removeClass('picuploading');
					$('avatarpic').setStyles({'background-image':'url('+r.href+'?'+Math.floor(Math.random()*1000000)+')'});
				} else {
//					alert(r.error);
				}
				$('yhuploadavatar-progressbar').addClass('yhhide');
				$('yhuploadavatar-browse-images').removeClass('yhhide');
				$('yhuploadavatar-img').removeClass('picuploading');
			}
		});
		

		$('yhuploadavatar-browse-images').addEvent('click', function(e) {
			e.stop();
			swiffyUpDealer.browse({'Images (*.jpg, *.jpeg, *.gif, *.png)': '*.jpg; *.jpeg; *.gif; *.png'});
			return false;
		});

	}
	if($('phupload-PHDEALER-browse-images')) {
		var swiffyUpDealer = new FancyUpload2($('phupload-PHDEALER-status'), $('phupload-PHDEALER-list'), {
			'url': $('phupload-PHDEALER-form').action,
			'fieldName': 'photoupload',
			'instantStart' : true,
			'target': 'phupload-PHDEALER-browse-images',			
			'path': '/swf/Swiff.Uploader.swf',
			'onLoad': function() {
				$('phupload-PHDEALER-fallback').destroy();
			},
			'onProgress' : function() {
				try { $('phupload-PHDEALER-progressbar').removeClass('yhhide'); } catch(e) {}
				try { $('phupload-PHDEALER-browse-images').addClass('yhhide'); } catch(e) {}
				try { $('phupload-PHACTION-browse-images').addClass('yhhide'); } catch(e) {}
				try { $('phupload-PHPRIVATE-browse-images').addClass('yhhide'); } catch(e) {}
				if($('phdelete-PHDEALER')) $('phdelete-PHDEALER').addClass('yhhide');
				if($('phdelete-PHPRIVATE')) $('phdelete-PHPRIVATE').addClass('yhhide');
				if($('phdelete-PHACTION')) $('phdelete-PHACTION').addClass('yhhide');
				$('phupload-PHDEALER-img').addClass('picuploading');
			},
			'onComplete' : function(file, response) {
				r = JSON.decode(response);
				if(r.result == 'success') {
					$('phupload-PHDEALER-img').setStyles({'background-image':'url('+r.href+'?'+Math.floor(Math.random()*1000000)+')'});
					window.location.reload();
				} else {
//					alert(r.error);
				}
				$('phupload-PHDEALER-progressbar').addClass('yhhide');
				$('phupload-PHDEALER-browse-images').removeClass('yhhide');
				$('phupload-PHDEALER-img').removeClass('picuploading');
			}
		});
		

		$('phupload-PHDEALER-browse-images').addEvent('click', function(e) {
			e.stop();
			swiffyUpDealer.browse({'Images (*.jpg, *.jpeg, *.gif, *.png)': '*.jpg; *.jpeg; *.gif; *.png'});
			return false;
		});

	}


	if($('phupload-PHACTION-browse-images')) {
		var swiffyUpAction = new FancyUpload2($('phupload-PHACTION-status'), $('phupload-PHACTION-list'), {
			'url': $('phupload-PHACTION-form').action,
			'fieldName': 'photoupload',
			'instantStart' : true,
			'target': 'phupload-PHACTION-browse-images',			
			'path': '/swf/Swiff.Uploader.swf',
			'onLoad': function() {
				$('phupload-PHACTION-fallback').destroy();
			},
			'onProgress' : function() {
				$('phupload-PHACTION-progressbar').removeClass('yhhide');
				try { $('phupload-PHDEALER-browse-images').addClass('yhhide'); } catch(e) {}
				try { $('phupload-PHACTION-browse-images').addClass('yhhide'); } catch(e) {}
				try { $('phupload-PHPRIVATE-browse-images').addClass('yhhide'); } catch(e) {}
				if($('phdelete-PHDEALER')) $('phdelete-PHDEALER').addClass('yhhide');
				if($('phdelete-PHPRIVATE')) $('phdelete-PHPRIVATE').addClass('yhhide');
				if($('phdelete-PHACTION')) $('phdelete-PHACTION').addClass('yhhide');
				$('phupload-PHACTION-img').addClass('picuploading');
			},
			'onComplete' : function(file, response) {
				r = JSON.decode(response);
				if(r.result == 'success') {
					$('phupload-PHACTION-img').setStyles({'background-image':'url('+r.href+'?'+Math.floor(Math.random()*1000000)+')'});
					window.location.reload();
				} else {
//					alert(r.error);
				}
				$('phupload-PHACTION-progressbar').addClass('yhhide');
				$('phupload-PHACTION-browse-images').removeClass('yhhide');
				$('phupload-PHACTION-img').removeClass('picuploading');
			}
		});
		

		$('phupload-PHACTION-browse-images').addEvent('click', function(e) {
			e.stop();
			swiffyUpAction.browse({'Images (*.jpg, *.jpeg, *.gif, *.png)': '*.jpg; *.jpeg; *.gif; *.png'});
			return false;
		});

	}

	if($('phupload-PHPRIVATE-browse-images')) {
		var swiffyUpPrivate = new FancyUpload2($('phupload-PHPRIVATE-status'), $('phupload-PHPRIVATE-list'), {
			'url': $('phupload-PHPRIVATE-form').action,
			'fieldName': 'photoupload',
			'instantStart' : true,
			'target': 'phupload-PHPRIVATE-browse-images',			
			'path': '/swf/Swiff.Uploader.swf',
			'onLoad': function() {
				$('phupload-PHPRIVATE-fallback').destroy();
			},
			'onProgress' : function() {
				$('phupload-PHPRIVATE-progressbar').removeClass('yhhide');
				try { $('phupload-PHDEALER-browse-images').addClass('yhhide'); } catch(e) {}
				try { $('phupload-PHACTION-browse-images').addClass('yhhide'); } catch(e) {}
				try { $('phupload-PHPRIVATE-browse-images').addClass('yhhide'); } catch(e) {}
				if($('phdelete-PHDEALER')) $('phdelete-PHDEALER').addClass('yhhide');
				if($('phdelete-PHPRIVATE')) $('phdelete-PHPRIVATE').addClass('yhhide');
				if($('phdelete-PHACTION')) $('phdelete-PHACTION').addClass('yhhide');
				$('phupload-PHPRIVATE-img').addClass('picuploading');
			},
			'onComplete' : function(file, response) {
				r = JSON.decode(response);
				if(r.result == 'success') {
					$('phupload-PHPRIVATE-img').setStyles({'background-image':'url('+r.href+'?'+Math.floor(Math.random()*1000000)+')'});
					window.location.reload();
				} else {
//					alert(r.error);
				}
				$('phupload-PHPRIVATE-progressbar').addClass('yhhide');
				$('phupload-PHPRIVATE-browse-images').removeClass('yhhide');
				$('phupload-PHPRIVATE-img').removeClass('picuploading');
			}
		});
		

		$('phupload-PHPRIVATE-browse-images').addEvent('click', function(e) {
			e.stop();
			swiffyUpPrivate.browse({'Images (*.jpg, *.jpeg, *.gif, *.png)': '*.jpg; *.jpeg; *.gif; *.png'});
			return false;
		});

	}



// PERSONAL PROFILE
	if($('ycpersonalprofile')) {
		var swiffy = new FancyUpload2($('avatar-status'), $('avatar-list'), {
			'url': $('avatar-form').action,
			'fieldName': 'photoupload',
			'instantStart' : true,
			'target': 'avatar-browse-images',			
			'path': '/swf/Swiff.Uploader.swf',
			'onLoad': function() {
				$('avatar-status').removeClass('hide');
				$('avatar-fallback').destroy();
			},
			'onProgress' : function() {
				$('avatarpic').addClass('picuploading');
				$('avatar-form').setStyles({'display':'block'});
			},
			'onComplete' : function(file, response) {
				r = JSON.decode(response);
				if(r.result == 'success') {
					$('avatarpic').removeClass('picuploading');
					$('avatarpic').setStyles({'background-image':'url('+r.href+'?'+Math.floor(Math.random()*1000000)+')'});
					$('avatar-delete').setStyles({'display':'inline'});
				}
				$('pic').value = r.href;
			}
		});
		
		$('avatar-form').setStyles({'display':'none'});
		$('avatar-upload').setStyles({'display':'none'});

		$('avatar-browse-images').addEvent('click', function(e) {
			e.stop();
			swiffy.browse({'Images (*.jpg, *.jpeg, *.gif, *.png)': '*.jpg; *.jpeg; *.gif; *.png'});
			return false;
		});

		$('avatar-upload').addEvent('click', function() {
			e.stop();
			swiffy.upload();
			return false;
		});
		
		var req = new Request.HTML({url:'/ajax/ajax-del-avatar.php', 
			onSuccess: function(r) {
				$('avatar-delete').setStyles({'display':'none'});
			},
			onFailure: function() {
			}
		});
		
		$('avatar-delete').addEvent('click', function(e) {
			$('avatarpic').setStyles({'background-image':'url(/img/bg-avatar.gif)'});
			e.stop();
			req.send();
		});
		
	}
	
	// HELP ACCORDION
	if($('ychelp')) {
		var qaAccordion = new Accordion($('ychelp'), 'h3', 'p', {
			opacity: false,
			onActive: function(toggler, element){
				toggler.setStyle('color', '#CB0101');
			},
			onBackground: function(toggler, element){
				toggler.setStyle('color', '#333');
			},
			show:0
		});
	}

	// WINNERS ACCORDION
	if($('yhwinners')) {
		var winAccordion = new Accordion($('ychelp'), 'div.yhwintitle', 'div.yhwinners', {
			opacity: false,
			onActive: function(toggler, element){
				toggler.addClass('yhtitleopen');
				toggler.addEvent('click', function() {  } );
			},
			onBackground: function(toggler, element){
				toggler.removeClass('yhtitleopen');
			}, 
			alwaysHide: true,
			display:(($('huntstage').get('text')-1<5) ? $('huntstage').get('text')-2 : 4),
			show:(($('huntstage').get('text')-1<5) ? $('huntstage').get('text')-2 : 4)

		});
		
//		winAccordion.display($('huntstage').get('text') == 5) ? 4 : ( ($('huntstage').get('text') == 1) ? 0 : ($('huntstage').get('text')-2));
	}
	
	// PICS ACCORDION
	if($('yhpersonalstages')) {
		var persAccordion = new Accordion($('ychelp'), 'div.yhpersonalstagetitle', 'div.yhpersonalstage', {
			opacity: false,
			onActive: function(toggler, element){
				toggler.addClass('yhtitleopen');
			},
			onBackground: function(toggler, element){
				toggler.removeClass('yhtitleopen');
			}, 
			alwaysHide: true,
			display:(($('huntstage').get('text')-1<5) ? $('huntstage').get('text')-1 : 0),
			show:(($('huntstage').get('text')-1<5) ? $('huntstage').get('text')-1 : 0)
			
		});
//		persAccordion.display(($('huntstage').get('text')-1<5) ? $('huntstage').get('text') : 0);
	}


// CTRL <- -> NAVIAGATION	
	$(document).addEvent('keydown', function(event) {
		switch (event.code ? event.code : event.which ? event.which : event.keyCode ? event.keyCode : null) {
			case 0x25:
				if($('prevLink') && $('prevLink').href) document.location = $('prevLink').href;
				break;
			case 0x27:
				if($('nextLink') && $('nextLink').href) document.location = $('nextLink').href;
				break;
				
			default:
			break;
		}
	});

	if($('admin')) {
		new UvumiDropdown('ddadmin', {duration:150});

		var sb = SqueezeBox.initialize({ size: {x: 350, y: 400}, onOpen:function() { $$('html').setStyles({'overflow':'hidden'}); }, onClose:function() { $$('html').setStyles({'overflow':''}); } });
		document.sb = sb;
		sb.assign($$('a.boxed'), { 	parse: 'rel' });
		
	}
	
	sfHover();

// SHOW BODY AFTER ALL CHANGES TO HTML ARE DONE
	$$('body').setStyles({'visibility':'visible'});

});

}

