/*Public variables*/
var showed_posts = new Array();
var cur_id_post=0;
var in_request=0;
var flagOpa = 0;
var min_opacity=0;
var max_opacity=1;
var ResponseValue='';
var my_width  = 0;
var my_height = 0;
var reload_on_login_logout = 0;
document.uploading = false;
undefdiv = 'undefined';
var items;
var rb_st = false;
/*----------------*/
/*Common_functions*/
function toggle_content(block_id){
	if ($(block_id + "_content").className == "invisible"){
		$(block_id + "_content").className = "block_content";
		$(block_id + "_pointer").src = "/images/point_down.gif";
	}else{
		$(block_id + "_content").className = "invisible";
		$(block_id + "_pointer").src = "/images/point_right.gif";
	};
}

function toggle_box(box_id){
	if ($(box_id).checked) {
		$(box_id + "_img").src = "/images/checkbox_em.png";
		$(box_id).checked = false;
	}else{
		$(box_id + "_img").src = "/images/checkbox_ch.png";
		$(box_id).checked = true;
	};
}


function toggle_search_box(box_id){
	if (!$(box_id).checked) {
		for (i in Boxes) {
			if ($(Boxes[i]).checked && Boxes[i] != box_id) {
				$(Boxes[i] + "_img").src = "/images/checkbox_em.png";
				$(Boxes[i]).checked = false;
			}
		}
		$(box_id + "_img").src = "/images/checkbox_ch.png";
		$(box_id).checked = true;
	};
}

function toggle_list(field) {
	$(field).className = $(field).className=='invisible' ? '' : 'invisible';
	$(field + '_full').className = $(field + '_full').className=='invisible' ? '' : 'invisible';
}

function OpaSupport() {
	var body = (document.getElementsByTagName ? document.getElementsByTagName("body")[0] : (document.body || null));
	var css = body.style;

	flagOpa = (typeof(css.filter) != "undefined") ? 1
		: (typeof(css.KhtmlOpacity) != "undefined") ? 2
		: (typeof(css.KHTMLOpacity) != "undefined") ? 3
		: (typeof(css.MozOpacity) != "undefined") ? 4
		: (typeof(css.opacity) != "undefined") ? 5
		: 0;
	if(flagOpa==1) max_opacity=100;
}

function DefineResolution() {
	if ( typeof( window.innerWidth ) == 'number' ) {
		my_width  = window.innerWidth;
		my_height = window.innerHeight;
	} 
	else if ( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
		my_width  = document.documentElement.clientWidth;
		my_height = document.documentElement.clientHeight;
	}
	else if ( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
	
		my_width  = document.body.clientWidth;
		my_height = document.body.clientHeight;
	}
}


function AddToFavorites(obj, url,title){
  if(window.sidebar){
    // Mozilla Firefox Bookmark
    window.sidebar.addPanel(title, url,"");
    return false;
  } else if(window.external){
    // IE Favorite
    window.external.AddFavorite( url, title);
    return false;
  } else if(window.opera && window.print){
    //Opera Hotlist
    obj.setAttribute('href',url);
    obj.setAttribute('title',title);
    obj.setAttribute('rel','sidebar');
    obj.click();
    return false;
  }
}


/*-----------------------------*/

/*Ajax request*/
function Request(Type, Method, Id_form, Id_recepient, Id_loading, LoadingHTML, Module, Action, Params, FuncCallBack) {
	if(Id_recepient.length > 0 || Id_loading.length > 0) {
		if(LoadingHTML.length==0) LoadingHTML = '<div style="color:#555555;font-size: 11px; text-align:center; position: relative; padding: 60px 0px;"><b>Loading...</b><br><br><img src="/images/loading.gif"/></div>';
		$(Id_loading.length > 0 ? Id_loading : Id_recepient).innerHTML = LoadingHTML;
	}
//	var Url = '/index.php?dyn_type&module=' + Module + '&action=' + Action;
	var Url = '/'+ Module + '/' + Action;
	var Parameters = "";
	
	if (Id_form.length > 0) Parameters += $(Id_form).serialize() + "&";
	if (Params.length > 0) Parameters += Params;
	//if(!FuncCallBack) FuncCallBack = returnResponse;
	
	if(Type=='Updater') new Ajax.Updater(Id_recepient,Url,{method: Method.toLowerCase(), parameters: Parameters, evalScripts: true, onComplete: FuncCallBack, onFailure: requestError});
	else new Ajax.Request(Url,{method: Method.toLowerCase(), parameters: Parameters, evalScripts: true, onComplete: FuncCallBack, onFailure: requestError});
	
	return true;
}

function returnResponse(originalRequest) {
	ResponseValue = clearResponseText(originalRequest.responseText);
	return true;
}

function requestError() {
	//showMessage("An error occured while trying to connect to server<br>through Ajax. Please, reload page and try again.","fatal");
	showMessage("Server doens't want to work.<br />Try to reload this page.","fatal");
	return false;
}

function clearResponseText(text){
 	text = text.replace(/^\s*/, '');
	text = text.replace(/\s*$/, '');
	text = text.replace(/\n/, '');
	text = text.replace(/\r/, '');
	return text;
}
/*------------------------*/






//layer appears, shows an(the) indicator and dissappears
var _infoi = new Image(); _infoi.src = '/images/indicator.gif'; 
function _show_Info_layer(whereid){
		if(typeof($(whereid).innerHTML) == 'undefined') return;

		infolayer = document.createElement('div');
		infolayer.id = whereid + '_infolayer';
		infolayer.innerHTML = '<img src="/images/indicator1.gif"/>';
		
		$(whereid).appendChild(infolayer);

		return;
}

function _close_Info_layer(whereid){
		if(typeof($(whereid).innerHTML) == 'undefined') return;
		$(whereid).removeChild($(whereid + '_infolayer'));
		return;
}

function Tip(){}

function MyTip(value){Tip(value, SHADOW, true,FONTCOLOR, '#FFFFFF',BGCOLOR,'#669ACD', LEFT, false, FADEIN, 200, FADEOUT, 50);}
function MyTipBalloon(value, width) {
	//if(!width) width=300;
	//Tip(value, BALLOON, true,ABOVE, true, FADEIN, 200, FADEOUT, 50, WIDTH, width);
}
/*------------------------*/

/* ALL */
function showCrazyTip(type,id){

	switch(type){
		case 'subcats': url = "/getsubcats/"+id+".html"; 

			Tip('<div id="subcats_' + id + '" style="width:170px;background-color: white;padding:3px;min-height:62px;"><center><img src=\'/images/indicator2.gif\' vspace="1" hspace="5"></center></div>',
						 BGCOLOR,'white', BORDERCOLOR, '#DBE9FC', LEFT, false, FADEIN, 100, FADEOUT, 0);
			//alert($('subcats_' + id) );
			
			if(document.tt_requesting == true){ return;}
			//document.tt_requesting = true;
			new Ajax.Request(url,{method:'get',onSuccess:function(req){
				document.tt_requesting = false;
				obj = eval(req.responseText);
				 if($("subcats_" + obj.id)){
					$("subcats_" + obj.id).innerHTML = '<b>'+obj.subtitle+'</b>, total '+obj.subqty+' .<img src="/images/categories/'+obj.img+'" style="padding:3px;float:right;"/><table style="width:100%;"><tr><td align="center" style="vertical-align:middle;padding-top:10px;" id="subcats_'+obj.id+'_strings"></td></tr></tablle></div>';
					items = obj.content;
					changeStringsInDiv('subcats_'+obj.id+'_strings');
			 }
		}});
				break;

		case 'brands': url = "/getfilesqty/"+id+".html"; 


			Tip('<div id="brand_' + id + '" style="background-color: white; padding:3px;width:210px"><center><img src=\'/images/indicator2.gif\' vspace="1" hspace="5"></center></div>',
						BORDERCOLOR,'#DBE9FC',LEFT, false, FADEIN, 100, FADEOUT, 0);

			ids = id.split('_');
			bid = ids[0]; cid = ids[1];

				new Ajax.Request(url,{method:'get',onSuccess:function(req){
					document.tt_requesting = false;

					//$('brand_' + id).innerHTML = req.responseText;
		
					obj = eval(req.responseText);

					 if($("brand_" + obj.bid + '_' + obj.cid)){
						$("brand_" + obj.bid + '_' + obj.cid).innerHTML = obj.content;
											
				 }
					/**/
			}});



		break;
		default: return;
	}


}

function catTip(id){
	Tip('<div id="subcats_' + id + '" style="width:170px;background-color: white;padding:3px;"><center><img src=\'/images/indicator2.gif\' vspace="1" hspace="5"></center></div>',
						 BGCOLOR,'white', BORDERCOLOR, '#DBE9FC', LEFT, false, FADEIN, 100, FADEOUT, 0);
	cnt = '<table style="width:100%;"><tr><td align="center" style="vertical-align:middle;padding-top:10px;padding-bottom:10px;" id="subcats_'+id+'_strings"></td></tr></tablle></div>'
	$("subcats_" + id).innerHTML = cnt;
	items = cats[id];
	changeStringsInDiv('subcats_'+id+'_strings');

}

function changeStringsInDiv(id){
	//window.status = 'OK';
	if($(id)){ 
		it = items[Math.floor(Math.random() * items.length)];
		if(typeof(it) != 'undefined')
		$(id).innerHTML = it;
		setTimeout('changeStringsInDiv("'+id+'");',600);
	}
}

function brandTip(bid,cid){

}

/* --- end of ALL --- */
/*Forum*/
function ShowTipPost(id_post) {
	if(in_request==0) {
		//Tip('<div id="show_post_' + id_post + '"><center><img src=\'/images/indicator2.gif\' hspace="25" vspace="25"></center></div>', BORDERCOLOR,'#669ACD', BGCOLOR,'white', LEFT, false, FADEIN, 100, FADEOUT, 0);
		MyTipBalloon('<div id="show_post_' + id_post + '"><center><img src=\'/images/indicator2.gif\' hspace="25" vspace="25"></center></div>','100');
		if($('WzTtDiV').innerHTML.length>0 && id_post>0) {
			if(showed_posts[id_post]) {
				//Tip(showed_posts[id_post].substring(0,1500), BORDERCOLOR,'#669ACD',BGCOLOR,'white', LEFT, false, FADEIN, 100, FADEOUT, 0);
				MyTipBalloon(showed_posts[id_post].substring(0,1500), '400');
			}
			else {
				cur_id_post=id_post
				in_request=1;
				Request('Request','get','','','show_post_' + id_post,'<center><img src=\'/images/indicator2.gif\' hspace="25" vspace="25"></center>','forum','getPostHtml','id_post=' + id_post,ShowTipPostCallBack);
			}
		}
	}
}
function ShowTipPostCallBack(originalRequest) {
	var Response = clearResponseText(originalRequest.responseText);
	in_request=0;

	if($('WzTtDiV').innerHTML.length>0) {
		//if(Response=='warn_fault') Tip("<b><i><u style='font-size: 130%; color: #990000'>Произошла ошибка!!!</u></i></b>", BORDERCOLOR,'#669ACD',BGCOLOR,'white', LEFT, false, FADEIN, 100, FADEOUT, 0);
		//else Tip(Response.substring(0,1500), BORDERCOLOR,'#669ACD',BGCOLOR,'white', LEFT, false, FADEIN, 100, FADEOUT, 0);
		if(Response=='warn_fault') MyTipBalloon("<b><i><u style='font-size: 130%; color: #990000'>An error occurred!!!</u></i></b>",'400');
		else MyTipBalloon(Response.substring(0,1500), '400');
	}
	
	if(Response!='warn_fault') showed_posts[cur_id_post]=Response;
}
/*----------*/
function showLoginForm() {
	showLayer(true, 0.3, 0.4);
	$('registration-layer-content').innerHTML = $('user_result').innerHTML;
}

/*---------------------------------------------------LAYERS----------------------------------------------------------*/
//Requirements: prototype 1.6.0, brains, hands
var MessageLayer = {
	// settings of messages
	msg_id: 		'message-layer', // id of the message layer
	msg_width: 		400, // width of message layer (px)
	msg_height: 		120, // height of message layer (px)
	msg_min_width:		150, // min width of message layer (px)
	msg_min_height:		100, // min height of message layer (px)
	step_opacity: 		0.2, // message fading opacity step
	msg_fade_time: 		300, // message fading time (ms)
	msg_default_hide_tm: 	10000, // default hide message timeout (ms)
	msg_titles:		new Array('warning', 'Attention', 
					  'fatal', 'Error', 
					  'notice', 'Done', 
					  'none', 'Confirm plz'), // default message titles
	busy_layer_id: 		'busy-layer', // id of busy layer
	busy_layer_opacity: 	0.8, // opacity of bysy layer
	busy_layer_bgcolor: 	'#000', // background color of busy layer
	// don't edit these vars
	dWidth: 		0,
	dHeight: 		0,
	dScroll: 		new Array(0,0),
	layersToMove: 		new Array(),
	msg_fade_step: 		0,
	min_opacity: 		0,
	max_opacity: 		1,

	init: function() {
		if(!$(MessageLayer.msg_id)) document.write('<div id="' + MessageLayer.msg_id + '"><div id="' + MessageLayer.msg_id + '-title" ><div id="' + MessageLayer.msg_id + '-title-text">Message</div><div id="' +MessageLayer.msg_id + '-title-close"><img src="/images/windows/dialog_close.gif"></div></div><div class="' + MessageLayer.msg_id + '-corner"><table align="center" width="100%"><tr><td id="' + MessageLayer.msg_id + '-text"></td></tr><tr><td><input type="button" id="' + MessageLayer.msg_id + '-button" value="Ok" ></td></tr></table></div></div>');
		if(!$(MessageLayer.busy_layer_id)) document.write('<div id="' + MessageLayer.busy_layer_id + '"></div>');
		
		Event.observe($(MessageLayer.msg_id + "-title"),'mousedown',function(event) {MessageLayer.dragIsDown(event, $(MessageLayer.msg_id));this.style.cursor='move';});
		Event.observe($(MessageLayer.msg_id + "-title"),'mouseup',function(event) {this.style.cursor='';});
		Event.observe($(MessageLayer.msg_id + "-button"),'click',function(event) {MessageLayer.hideMessage();});
		Event.observe($(MessageLayer.msg_id + "-title-close").getElementsByTagName('IMG')[0],'click',function(event) {MessageLayer.hideMessage();});
		Event.observe(window, 'resize', function() {
			MessageLayer.DefineResolution();
			if(Prototype.Browser.IE) {
				if(MessageLayer.layersToMove.length > 0) MessageLayer.MoveLayers();
				if($(MessageLayer.busy_layer_id).getStyle('display')!='none') {
					$(MessageLayer.busy_layer_id).style.height = document.body.clientHeight || document.documentElement.clientHeight + "px";
				}
			}
		});
		MessageLayer.DefineResolution();
	},
	DefineResolution: function () {
		MessageLayer.dWidth = document.viewport.getWidth();
		MessageLayer.dHeight = document.viewport.getHeight();
		return [ MessageLayer.dWidth, MessageLayer.dHeight ];
	},
	showMessage: function ( message, type, title, updating, hide_tm, width, height ) {
		var message_layer = $(MessageLayer.msg_id);
		var message_layer_style = message_layer.style;
		
		if(width) {
			if(typeof(width)=='string' && width.indexOf('%') > -1) width = MessageLayer.dWidth * parseFloat(width.replace('%','')) / 100;
			else if (width <= 1 && width >0) width = MessageLayer.dWidth * width;
			else width = parseInt(width);
			MessageLayer.msg_width = width;
		}
		if(height) {
			if(typeof(height)=='string' && height.indexOf('%') > -1) height = MessageLayer.dHeight * parseFloat(height.replace('%','')) / 100;
			else if (height <= 1 && height > 0) height = MessageLayer.dHeight * height;
			else height = parseInt(height);
			MessageLayer.msg_height = height;
		}
		
		if(MessageLayer.msg_width < MessageLayer.msg_min_width) MessageLayer.msg_width = MessageLayer.msg_min_width;
		if(MessageLayer.msg_height < MessageLayer.msg_min_height) MessageLayer.msg_height = MessageLayer.msg_min_height;
		
		MessageLayer.AddLayerToMove(MessageLayer.msg_id, MessageLayer.msg_width, MessageLayer.msg_height);
		MessageLayer.MoveLayers();
		message_layer_style.width = MessageLayer.msg_width + "px";
		message_layer_style.height = MessageLayer.msg_height + "px";
		message_layer.getElementsByTagName('TABLE')[0].style.height = MessageLayer.msg_height - 27 + "px";
		document.getElementsByClassName(MessageLayer.msg_id + '-corner')[0].style.height = MessageLayer.msg_height - 27 + "px";
		$(MessageLayer.msg_id + '-title-close').style.marginRight = (Prototype.Browser.IE ? '8' : '15') + "px";
		
		if(!type) type = "none";
		message_layer_style.backgroundImage='url(/images/windows/' + type + '-img.gif)';
		$(MessageLayer.msg_id + '-title').style.backgroundImage='url(/images/windows/' + type + '-head.gif)';
		
		if(updating) {
			$(MessageLayer.msg_id + '-text').innerHTML = '<img src="/images/indicator.gif"/><br>' + message;
			$(MessageLayer.msg_id + '-button').style.display = 'none';
			$(MessageLayer.msg_id + '-title-close').style.display = 'none';
		}
		else {
			$(MessageLayer.msg_id + '-text').innerHTML = message;
			$(MessageLayer.msg_id + '-button').style.display = '';
			$(MessageLayer.msg_id + '-title-close').style.display = '';
		}
		$(MessageLayer.msg_id + '-title-text').innerHTML = (title ? title : MessageLayer.msg_titles[MessageLayer.msg_titles.indexOf(type) + 1]);
		
		if(Prototype.Browser.IE)
			MessageLayer.coverSelectsWithIframes(MessageLayer.msg_id);

		MessageLayer.showBusyLayer();
		message_layer.setOpacity(0);
		message_layer_style.display  = 'block';
		$(MessageLayer.msg_id + '-button').focus();
		
		MessageLayer.msg_fade_step = MessageLayer.msg_fade_time * MessageLayer.step_opacity;
		setTimeout('MessageLayer.increaseOpacity("' + MessageLayer.msg_id + '");',MessageLayer.msg_fade_step);

		if ( typeof(hide_tm)!='number' ) hide_tm = MessageLayer.msg_default_hide_tm;
		if ( hide_tm > 0 ) setTimeout('MessageLayer.hideMessage();',hide_tm);
	},
	coverSelectsWithIframes: function (obj_id) {
		MessageLayer.removeIframesCoversForSelects(obj_id);
		var selects = document.body.getElementsByTagName("SELECT");
		for (var s = 0; s < selects.length; s++) {
			Element.extend(selects[s]);
			var select_dimensions = selects[s].getDimensions();
			var select_offsets = Position.cumulativeOffset(selects[s]);
			var cover_iframe = document.createElement("IFRAME");
			
			cover_iframe.className = "iframe-cover-for-select-" + obj_id;
			cover_iframe.id = "iframe-cover-for-select-" + obj_id + "-" + s;
			cover_iframe.style.position = "absolute";
			cover_iframe.style.backgroundColor = "transparent";
			cover_iframe.style.border = "0px none";
			cover_iframe.style.overflow = "hidden";
			var zIndex = 0;
			if(!Element.Methods.getStyle(selects[s], 'z-index')) {
				obj = selects[s].parentNode;
				while (true) {
					if(Element.Methods.getStyle(obj, 'z-index') && parseInt(Element.Methods.getStyle(obj, 'z-index')) > 0) {
						zIndex = parseInt(Element.Methods.getStyle(obj, 'z-index'));
						break;
					}
					else if(obj.parentNode) {
						obj = obj.parentNode;
					}
					else {
						break;
					}
					
					if(obj.tagName.toUpperCase() == 'BODY') break;
				}
			}
			else {
				zIndex = parseInt(Element.Methods.getStyle(selects[s], 'z-index'));
			}
			cover_iframe.style.zIndex = zIndex + 1;
			cover_iframe.style.width = select_dimensions['width'] + "px";
			cover_iframe.style.height = select_dimensions['height'] + "px";
			cover_iframe.style.left = select_offsets[0] + "px";
			cover_iframe.style.top = select_offsets[1] + "px";
			document.body.appendChild(cover_iframe);
			MessageLayer.AddLayerToMove(cover_iframe.id, select_dimensions['width'], select_dimensions['height']);
		}
	},
	removeIframesCoversForSelects: function (obj_id) {
		var iframes = document.getElementsByClassName("iframe-cover-for-select-" + obj_id);
		for (var i = 0; i < iframes.length; i++) {
			iframes[i].parentNode.removeChild(iframes[i]);
			MessageLayer.RemoveLayerFromMove(iframes[i].id);
		}
	},
	showBusyLayer: function () {
		if(Prototype.Browser.IE) setTimeout("MessageLayer.showBusyLayer1();", 5);
		else MessageLayer.showBusyLayer1();
	},
	showBusyLayer1: function () {
		var busy_layer = $(MessageLayer.busy_layer_id);
		var busy_layer_style = busy_layer.style;
		if(busy_layer_style.position=="" || busy_layer_style.height=="") {
			if(Prototype.Browser.IE) {
				busy_layer_style.position = "absolute";
				busy_layer_style.height = document.body.clientHeight || document.documentElement.clientHeight + "px";
			}
			else {
				busy_layer_style.position = "fixed";
				busy_layer_style.height = "100%";
			}
		}
		busy_layer.setOpacity(MessageLayer.busy_layer_opacity);
		busy_layer_style.backgroundColor = MessageLayer.busy_layer_bgcolor;
		busy_layer_style.display = "block";
		if(typeof(busy_layer.onclick)!="function") busy_layer.onclick = function() {MessageLayer.hideMessage();};
	},
	hideBusyLayer: function () {
		if( ($('registration-layer') && $('registration-layer').getStyle('display')=='none') || !$('registration-layer'))
			$(MessageLayer.busy_layer_id).style.display = "none";
	},
	increaseOpacity: function (obj_id) {
		MessageLayer.min_opacity += MessageLayer.step_opacity;
		if(MessageLayer.min_opacity<=MessageLayer.max_opacity) {
			$(obj_id).setOpacity(MessageLayer.min_opacity);
			setTimeout('MessageLayer.increaseOpacity("' + obj_id + '");',MessageLayer.msg_fade_step);
		}
		else {
			$(obj_id).setOpacity(1);
			MessageLayer.min_opacity = 0;
		}
	},
	hideMessage: function (instantly) {
		var message_layer = $(MessageLayer.msg_id);
		var message_layer_style = message_layer.style;
		MessageLayer.max_opacity -= MessageLayer.step_opacity;
		
		if(MessageLayer.max_opacity >= MessageLayer.min_opacity && !instantly) {
			message_layer.setOpacity(MessageLayer.max_opacity);
			setTimeout('MessageLayer.hideMessage();',MessageLayer.msg_fade_step);
		}
		else {
			MessageLayer.max_opacity = 1;
			message_layer_style.display = "none";
			message_layer_style.left = "0";
			message_layer_style.top  = "0";
			message_layer.setOpacity(1);
			
			MessageLayer.RemoveLayerFromMove(MessageLayer.msg_id);
				
			if(Prototype.Browser.IE) {
				MessageLayer.removeIframesCoversForSelects(MessageLayer.msg_id);
				if( ($(BlankLayer.layer_id) && $(BlankLayer.layer_id).getStyle('display')=='none') || !$(BlankLayer.layer_id))
					Event.stopObserving(window, 'scroll', MessageLayer.MoveLayers);
				window.onscroll_obj_id = "";
			}
			MessageLayer.hideBusyLayer();
		}
	},
	MoveLayers: function () {
		if(MessageLayer.layersToMove.length > 0) {
			for(obj_id in MessageLayer.layersToMove) {
				if(typeof(MessageLayer.layersToMove[obj_id])!="object") continue;
				var w = MessageLayer.layersToMove[obj_id][0];
				var h = MessageLayer.layersToMove[obj_id][1];
				var obj = $( obj_id );
				var obj_style = obj.style;
				var setX = 0;
				var setY = 0;

				if(Prototype.Browser.IE) {
					obj_style.position = "absolute";
					var layer_offsetLeft = parseFloat(obj.style.left || 0) - MessageLayer.dScroll[0];
					var layer_offsetTop = parseFloat(obj.style.top || 0) - MessageLayer.dScroll[1];
					var my_scroll_new = document.viewport.getScrollOffsets();
					if(window.onscroll_obj_id != obj_id) {
						window.onscroll_obj_id = obj_id;
						Event.observe(window, 'scroll', MessageLayer.MoveLayers);
					}
				}
				else {
					obj_style.position = "fixed";
				}

				if(typeof(layer_offsetTop)=='number' && typeof(layer_offsetLeft)=='number' && layer_offsetTop>0 && layer_offsetLeft>0) {
					var setX = layer_offsetLeft;
					var setY = layer_offsetTop;
				}	
				else {
					var setX = parseInt((( MessageLayer.dWidth - w  ) / 2) - 15);
					var setY = parseInt(( MessageLayer.dHeight - h ) / 2.5);
				}

				if(Prototype.Browser.IE) {
					setX += my_scroll_new[0];
					setY += my_scroll_new[1];
				}

				setX = ( setX < 0 ) ? 0 : setX;
				setY = ( setY < 0 ) ? 0 : setY;
				obj_style.left = setX + "px";
				obj_style.top  = setY + "px";
			}
			if(Prototype.Browser.IE) MessageLayer.dScroll = my_scroll_new;
		}
	},
	AddLayerToMove: function (obj_id, w, h) {
		if(typeof(obj_id) == 'string' && obj_id != '') {
			if(!w) w = 0;
			if(!h) h = 0;
			MessageLayer.layersToMove[obj_id] = [w,h];
			MessageLayer.layersToMove.length++;
		}
	},
	RemoveLayerFromMove: function (obj_id) {
		delete MessageLayer.layersToMove[obj_id];
		if(MessageLayer.layersToMove.length > 0) MessageLayer.layersToMove.length--;
	},
	dragMousePos: function (e) {
		if( !e ) {e = window.event;}
		return [Event.pointerX(e),Event.pointerY(e)];
	},
	dragIsDown: function (e,el) {
		if( ( e && ( e.which > 1 || e.button > 1 ) ) || ( window.event && ( window.event.which > 1 || window.event.button > 1 ) ) ) { return false; }
		if( document.onmouseup == MessageLayer.dragIsMove ) {
			document.onmousedown = window.storeMOUSEDOWN;
			document.onmousemove = window.storeMOUSEMOVE;
			document.onmouseup = window.storeMOUSEUP; 
		}
		
		window.msStartCoord = MessageLayer.dragMousePos(e);
		window.lyStartCoord = el.style ? [parseInt(el.style.left),parseInt(el.style.top)] : [parseInt(el.left),parseInt(el.top)];
		
		if( document.captureEvents && Event.MOUSEMOVE ) {
			document.captureEvents(Event.MOUSEDOWN);
			document.captureEvents(Event.MOUSEMOVE);
			document.captureEvents(Event.MOUSEUP);
		}
		
		window.storeMOUSEDOWN = document.onmousedown;
		window.storeMOUSEMOVE = document.onmousemove;
		window.storeMOUSEUP = document.onmouseup;
		window.storeDRAG = document.ondrag
		window.storeSELECTSTART = document.onselectstart
		window.storeLayer = el;
		
		if(!Prototype.Browser.IE) document.onmousedown = function() {
			if (e.preventDefault && typeof(e.preventDefault) != 'undefined') e.preventDefault();
		};
		document.onmousemove = MessageLayer.dragIsMove;
		document.onmouseup = MessageLayer.dragIsMove;
		document.ondrag = function () { return false; };
		document.onselectstart = function () { return false; };
		
		return false;
	},
	dragIsMove: function (e) {
		var msMvCo = MessageLayer.dragMousePos(e);
		if( !e ) { e = window.event ? window.event : ( new Object() ); }
		var newX = window.lyStartCoord[0] + ( msMvCo[0] - window.msStartCoord[0] );
		var newY = window.lyStartCoord[1] + ( msMvCo[1] - window.msStartCoord[1] );

		if( e.type && e.type.toLowerCase() == 'mouseup' ) {
			document.onmousedown = window.storeMOUSEDOWN;
			document.onmousemove = window.storeMOUSEMOVE;
			document.onmouseup = window.storeMOUSEUP;
			document.ondrag = window.storeDRAG;
			document.onselectstart = window.storeSELECTSTART;
		}
		if( navigator.product == 'Gecko' ) { window.setTimeout('MessageLayer.dragIsMove2('+newX+','+newY+');',1); } else { MessageLayer.dragIsMove2(newX,newY); }
	},
	dragIsMove2: function (x,y) { 
		var oPix = ( document.childNodes ? 'px' : 0 );
		var theLayer = ( window.storeLayer.style ? window.storeLayer.style : window.storeLayer );

		if(Prototype.Browser.IE) var scrolls = document.viewport.getScrollOffsets();
		else var scrolls = new Array(0,0);
		
		if((x + parseFloat(theLayer.width))>(MessageLayer.dWidth + scrolls[0])) {x = MessageLayer.dWidth + scrolls[0] - parseFloat(theLayer.width) - (Prototype.Browser.IE ? 5 : 20);}
		if(x < scrolls[0]) {x = scrolls[0];}
		if((y + parseFloat(theLayer.height) - scrolls[1] - MessageLayer.dHeight) > 0) {y = MessageLayer.dHeight + scrolls[1] - parseFloat(theLayer.height) - 5;}
		if(y < scrolls[1]) {y = scrolls[1];}
		
		theLayer.left = x + oPix;
		theLayer.top = y + oPix;
	}
};

var BlankLayer = {
	layer_id: 'registration-layer',
	cache_w: 0,
	cache_h: 0,
	
	init: function() {
		document.write('<div id="' + BlankLayer.layer_id + '" style="display: none;"><div style="text-align: right; width:100%; height: 16px; margin-bottom: 5px;"><a href="#" title="Maximaze/Minimaze"><img src="/images/windows/deploy.gif" title="Maximaze/Minimaze" id="' + BlankLayer.layer_id + '-expand" ></a><a ><img src="/images/windows/close.gif" title="Close" id="' + BlankLayer.layer_id + '-hide" ></a></div><div id="' + BlankLayer.layer_id + '-content"></div></div>');
		Event.observe($(BlankLayer.layer_id + "-expand"), 'click', BlankLayer.expandLayer);
		Event.observe($(BlankLayer.layer_id + "-hide"), 'click', BlankLayer.hideLayer);
	},
	showLayer: function ( show_busy_layer, p_width, p_height ) {
		if(!p_width) p_width = 0.6;
		if(!p_height) p_height = 0.6;
		if(show_busy_layer) MessageLayer.showBusyLayer();
		
		var layer_width = p_width * MessageLayer.dWidth;
		var layer_height = p_height * MessageLayer.dHeight;
		MessageLayer.AddLayerToMove(BlankLayer.layer_id, layer_width, layer_height);
		MessageLayer.MoveLayers();
		
		if(Prototype.Browser.IE)
			MessageLayer.coverSelectsWithIframes(BlankLayer.layer_id);
		
		var registration_layer_style = $(BlankLayer.layer_id).style;
		registration_layer_style.width = parseInt(layer_width) + "px";
		registration_layer_style.height = parseInt(layer_height) + "px";
		$(BlankLayer.layer_id + "-content").style.height = layer_height - 30 + "px";
		registration_layer_style.display  = 'block';
	},
	hideLayer: function () {
		var registration_layer_style = $(BlankLayer.layer_id).style;
		registration_layer_style.left = 0;
		registration_layer_style.top = 0;
		registration_layer_style.display = 'none';
		$(BlankLayer.layer_id + '-content').innerHTML = '';
		
		BlankLayer.cache_w = 0; BlankLayer.cache_h = 0;
		$(BlankLayer.layer_id + '-expand').src = '/images/windows/deploy.gif';
		
		MessageLayer.RemoveLayerFromMove(BlankLayer.layer_id);
		if( ($(MessageLayer.msg_id) && $(MessageLayer.msg_id).getStyle('display')=='none') || !$(MessageLayer.msg_id)) {
			Event.stopObserving(window, 'scroll', MessageLayer.MoveLayers);
			MessageLayer.hideBusyLayer();
		}
			
		if(Prototype.Browser.IE)
			MessageLayer.removeIframesCoversForSelects(BlankLayer.layer_id);
	},
	expandLayer: function () {
		$(BlankLayer.layer_id).style.left = 0;
		$(BlankLayer.layer_id).style.top = 0;
		if(BlankLayer.cache_w==0 && BlankLayer.cache_h==0) { 
			BlankLayer.cache_w = $(BlankLayer.layer_id).getWidth();
			BlankLayer.cache_h = $(BlankLayer.layer_id).getHeight();
			BlankLayer.showLayer(($(MessageLayer.busy_layer_id).getStyle('display')!='none' ? true : false), 0.95, 0.95);
			$(BlankLayer.layer_id + '-expand').src = '/images/windows/collapse.gif';
		}
		else {
			BlankLayer.showLayer(($(MessageLayer.busy_layer_id).getStyle('display')!='none' ? true : false), (BlankLayer.cache_w/MessageLayer.dWidth), (BlankLayer.cache_h/MessageLayer.dHeight));
			$(BlankLayer.layer_id + '-expand').src = '/images/windows/deploy.gif';
			BlankLayer.cache_w=0;
			BlankLayer.cache_h=0;
		}
		
		if(Prototype.Browser.IE)
			MessageLayer.coverSelectsWithIframes(BlankLayer.layer_id);
	}
};

MessageLayer.init();
BlankLayer.init();

function showMessage ( message, type, title, updating, hide_tm, width, height ) {return MessageLayer.showMessage( message, type, title, updating, hide_tm, width, height );}
function hideMessage (instantly) {return MessageLayer.hideMessage(instantly);}
function showLayer ( show_busy_layer, p_width, p_height ) {return BlankLayer.showLayer( show_busy_layer, p_width, p_height );}
function hideLayer () {return BlankLayer.hideLayer();}
function MoveLayer (obj_id, w, h) {MessageLayer.AddLayerToMove(obj_id, w, h); return MessageLayer.MoveLayers();}
/*-------------------------------------------------------------------------------------------------------------------*/

/*Login_Logout_Registration_PasswordRecovering_EditingProfile*/
function loginCallBack(originalRequest) {
	var Response = clearResponseText(originalRequest.responseText);

	switch(Response) {
		case 'warn_banned': showMessage("Your were banned!<br>If you are not agree,<br>please, contact us by<a href='/contacts.html'>this form</a>.","warning"); break;
		case 'warn_fault': showMessage("Access denied!","fatal"); break;
		case 'warn_user_off': showMessage("You haven't activated your account yet,<br/>check your email, please..","warning"); break;
		case 'warn_group_off': showMessage("Autorization for group<br/>is temporary off.","warning"); break;
		default:
			if($('registration-layer').style.display=='block') {
				$('registration-layer').style.display = 'none';
				$('registration-layer-content').innerHTML = '';
			}
			$('user_result').removeChild($('user_login'));
			$('user_result').innerHTML = Response;
			showMessage("Hello, <span style='color: #0066FF;'>" + $('user_login').innerHTML + "</span>! We are glad to see you again.","none");
			if(reload_on_login_logout==1) setTimeout("document.location='';","400");
			else setTimeout("hideMessage();",400);
		break;
	}	

	$('login_loading').innerHTML = "";
	$('login_submit').disabled=false;
}

function logoutCallBack(originalRequest) {
	var Response = clearResponseText(originalRequest.responseText);

	if($('user_cabinet')) $('user_cabinet').parentNode.removeChild($('user_cabinet'));
	$('user_result').innerHTML = Response;
	showMessage('Good bye, we are glad to see you next time!','notice');
	if(reload_on_login_logout==1) setTimeout("document.location='';","400");
	else {
		reload_on_login_logout=1;
		setTimeout("hideMessage();",400);
	}
}

function refreshCaptcha(){
	$('captcha').src = '/images/indicator.gif';
	$('captcha').src = '/verimg.php?i='+Math.random();	
	return false;
}

function showRegistrationForm() {
	DefineResolution();
	
	showLayer(true, 0.6, 0.9);
	Request('Updater','get','','registration-layer-content','','','register','show','','');
}
function sendRegistrationForm() {
	return sendRegistrationFormObj.init();
}
function registerCallBack(originalRequest) {
	return registerCallBackObj.init(originalRequest);
}

function showRecoverPwdForm() {
	DefineResolution();
	
	showLayer(true, 0.6, 0.23);
	Request('Updater','get','','registration-layer-content','','<center><img src="/images/indicator.gif"></center>','register','showRecoverPwdForm','','');
}
function recoverPwdCallBack(originalRequest) {
	return recoverPwdCallBackObj.init(originalRequest);
}

function showEditProfileForm()	{
	DefineResolution();
	
	showLayer(true, 0.6, 0.85);
	Request('Updater','get','','registration-layer-content','','','register','showEditProfileForm','','');
}
function editProfileCallBack(originalRequest) {
	return editProfileCallBackObj.init(originalRequest);
}

function addPlzFile(fid,type){
	Request('Request','get','','','','','user_cabinet','add_file','fid='+fid+'&ftype='+type,proccessAddFileEnd);
	showMessage('File is adding','notice');
}

function proccessAddFileEnd(req){
	obj = eval(req.responseText);
	
	$('uc_fileqty').innerHTML = obj.qty;
	if(obj.exists > -1) $('message-layer-text').innerHTML = 'The file is already in your Cart';
	else $('message-layer-text').innerHTML = 'The file was successfuly added';
	
	$('message-layer-button').style.display='';
	setTimeout('hideMessage();',1500);
	
	Request('Updater','get','','user_cabinet','','','user_cabinet_form','show_cabinet','');	
}


function switchmaintext(){
	if($('text_part2').style.display != 'block'){
		$('text_part_sw').style.display = 'none';
		$('text_part2').style.display = 'block';
	}else{
		$('text_part_sw').style.display = 'block';
		$('text_part2').style.display = 'none';
	}
}


function checkEMail(email){
		var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z]{2,4})$/;
		return filter.test(email);
}

function checkEn(val){
		var filter = /^[-a-zA-Z0-9_]+$/;
		return filter.test(val);
}

function clearMessageForm(){
	$('vercode').value = '';
}

function checkComment(id_form){
	
	var _errs = new Array();


	if($F('name').length < 3)
		_errs.push('Suitable name required)');
	
	
	if(!checkEMail($F('email')))
		_errs.push('Wrong email');
	
	
	tt_HideInit();
	getAreaValue();
	
	$F('comment').value = 'OPA';
	
	if($F('comment').length < 2)
		_errs.push('And what about message?');		


	
	if(!$F('vercode').length)
		_errs.push('Code field  is empty');		
	
	
	if(!_errs.length){
		//$(id_form).submit();
		
		$('add_comments_submit').disabled=true;  
		params  = 'vercode='+$F('vercode')+'&name='+$F('name') + '&email='+$F('email')+'&art_id='+$F('art_id')+'&message='+escape($F('comment'));
		new Ajax.Request('/add/comment/article',{method: 'POST', parameters: params, onComplete: showNewComment});
		
		//Request('Request', 'post', 'add_comments_form', '', 'add_comments_loading', '<img src=\'/images/indicator1.gif\'>', 'article', 'addComent','',showNewComment);
			
		
	}else{
		
		var i = 0, mes = ''; 
		while(i < _errs.length)
			mes += _errs[i++] + '<br/>';

		showMessage(mes,'none',"Wait, please",0,5000);
		
	}

	return true;
}
	


/*------------*/
function debugObj(obj,del,sort){
	if(typeof(del) != 'string') return '';
	if(typeof(sort) == 'undefined') sort = 1;	

	str = '';
	for(prop in obj)
		str += prop + del;

	if(sort){
		var arr = new Array();
		arr = str.split(del);
		arr.sort(); str= '';
		   for (var i=0; i < arr.length; i++) {
		     str += arr[i] + del;
		   }						
	}
	
	 return str;
}

DefineResolution();
OpaSupport();

var PreloadImages = new Array('/images/point_down.gif','/images/point_right.gif','/images/checkbox_em.png','/images/checkbox_ch.png','/images/loading.gif','/images/iwarning.gif','/images/gr_o.gif','/images/ifatal.gif','/images/gr_r.gif','/images/inotice.gif','/images/gr_g.gif','/images/inone.gif','/images/gr_b.gif','/images/indicator.gif','/images/indicator1.gif','/images/indicator2.gif','/images/uc/deploy.gif','/images/uc/close.gif','/images/uc/collapse.gif');
for (pi=0; pi<PreloadImages.length; pi++) { 	var PI_Image = new Image(); 	PI_Image.src = PreloadImages[pi]; }


function showShare(){
	if($('social_list').getStyle('display') == 'none')
		$('social_list').setStyle({display:'block'});
	else $('social_list').setStyle({display:'none'});
	
}

var captcha_code_status = 0;

function checkCaptcha(code,form_id){
	if(code.length < 3){ showMessage("Code is too short..",'notice',"",0,2000); return false;}
	showMessage("Checking code...",'none',"Wait, please",0,5000);
	new Ajax.Request('/check/captcha',{parameters: 'code='+code,onSuccess: function(data){ var obj = eval(data.responseText); if(typeof obj != 'undefined'){ if(obj.captcha == 'ok'){captcha_code_status = 1; showMessage("Your download will begin shortly..","none","",0,2000); $(form_id).submit();}else{/*wrong captcha*/ showMessage("Wrong code","notice");}};}, 
				onFailed: function(data){showMessage("Problems",'fatal');}})
				
}

function refreshCaptcha(id){
	$(id).src = '/verimg.php?'+(new Date()).getTime();
}




