//показываем главный баннер
function show_banner(w,h,root,lang)
	{
		var rndm, file, type, link, target;

		if ( w==468 ) //верхний баннер
			{
				target='_blank'; //по умолчанию открываем рекламу в новом окне
				rndm = Math.round( Math.random()*2 ); //не показываем последнии баннеры
				if ( rndm==0 ) { type='gif'; file=root+'images/banner_expro468.gif';	link=root+'ads_click.php?url=http://www.exprofesso.lv'; }
				if ( rndm==1 ) { type='swf'; file=root+'images/banner_hw9.swf'; }
				if ( rndm==2 ) { type='gif'; file=root+'images/banner_fspeles.gif';     link=root+'ads_click.php?url=http://flash-speles.com'; }

				if ( rndm==7 ) { type='jpg'; file=root+'images/banner_gmania468.jpg';	link=root+'ads_click.php?url=http://www.gizmos.lv'; }
				if ( rndm==7 ) { type='swf'; file=root+'images/banner_salidzini.swf?clickTAG='+root+'ads_click.php?url=http://www.salidzini.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_ycof.gif';		link=root+'ads_click.php?url=http://www.ycof.lv'; }
				if ( rndm==7 ) { type='swf'; file=root+'images/banner_h2.swf?clickTag=ads_click.php?url=http://www.h2.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_thefirst.gif';	link=root+'ads_click.php?url=http://www.thefirst.lv'; }
				if ( rndm==7 ) { type='swf'; file=root+'images/banner_priskola.swf?clickTAG=ads_click.php?url=http://www.young.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_wp468.gif';		link=root+'ads_click.php?url=http://www.womenspla.net/forum.htm'; }
				if ( rndm==7 ) { type='jpg'; file=root+'images/banner_pball.jpg';		link=root+'ads_click.php?url=http://www.interveikals.lv/?path=1073'; }
				if ( rndm==7 ) { type='swf'; file=root+'images/banner_bestp468.swf?clickTAG=ads_click.php?url=http://www.bestpresent.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_fotop468.gif';	link=root+'ads_click.php?url=http://www.fotopreces.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_pupil_lv.gif';	link=root+'ads_click.php?url=http://www.pupil.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_netshop468.gif';	link=root+'ads_click.php?url=http://www.netshop.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_smp468.gif';		link=root+'ads_click.php?url=http://www.smplatvia.com'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_stop468.gif';		link=root+'ads_click.php?url=http://www.stopshop.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_cj.gif';			link=root+'ads_click.php?url=http://www.citajaunatne.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_kman.gif';		link=root+'ads_click.php?url=http://www.kinoman.lv'; }
				if ( rndm==7 ) { type='swf'; file=root+'images/banner_bp.swf?clickTAG=ads_click.php?url=http://www.baltapuce.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_owned.gif';		link=root+'ads_click.php?url=http://www.owned.lv'; }
				if ( rndm==7 ) { type='swf'; file=root+'images/banner_dt.swf?clicktag=ads_click.php?url=http://www.times.lv'; }
				if ( rndm==7 ) { type='jpg'; file=root+'images/banner_decoder.jpg';		link=root+'ads_click.php?url=http://www.decoder.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_arso.gif';		link=root+'ads_click.php?url=http://www.arstudio.lv/kursi.php?m=2;amp;p=riga;amp;tp=se'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_crime.gif';		link=root+'ads_click.php?url=http://www.crimebt.lv'; }
			}
		if ( w==240 ) //центральный баннер
			{
				target='_blank'; //по умолчанию открываем рекламу в новом окне
				rndm = Math.round( Math.random()*2 ); //не показываем последнии баннеры
				if ( rndm==0 ) { type='ggl'; } //google реклама
				if ( rndm==1 ) { type='swf'; file=root+'images/banner_hw8.swf'; }
				if ( rndm==2 ) { type='gif'; file=root+'images/banner_expro240.gif';	link=root+'ads_click.php?url=http://www.exprofesso.lv'; }

				if ( rndm==7 ) { type='gif'; file=root+'images/banner_gmania240.gif';	link=root+'ads_click.php?url=http://www.gizmos.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_hw5.gif';			link='javascript:ocw(&quot;'+root+'dialogs/purc_schores.php&quot;,500,400);'; target='_self'; }
				if ( rndm==7 ) { type='gad'; file=root+'images/banner_hw6.gif';			link='javascript:ocw(&quot;'+root+'dialogs/donation.php&quot;,600,700);'; target='_self'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_hw7.gif';			link='javascript:ocw(&quot;'+root+'dialogs/purc_schores.php&quot;,500,400);'; target='_self'; }
				if ( rndm==7 ) { type='jpg'; file=root+'images/banner_thefirst.jpg';	link=root+'ads_click.php?url=http://www.thefirst.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_wp240.jpg';		link=root+'ads_click.php?url=http://www.womenspla.net/forum.htm'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_hw1.gif';			link=root+'ads_click.php?url=http://www.homework.lv'+root+lang+'index.php?page=adst'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_hw3.gif';			link=root+'ads_click.php?url=http://www.homework.lv'+root+lang+'index.php?page=adst'; }
				if ( rndm==7 ) { type='swf'; file=root+'images/banner_bestp240.swf?clickTAG=ads_click.php?url=http://www.bestpresent.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_fotop240.gif';	link=root+'ads_click.php?url=http://www.fotopreces.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_netshop240.gif';	link=root+'ads_click.php?url=http://www.netshop.lv'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_smp240.gif';		link=root+'ads_click.php?url=http://www.smplatvia.com'; }
				if ( rndm==7 ) { type='gif'; file=root+'images/banner_stop240.gif';		link=root+'ads_click.php?url=http://www.stopshop.lv'; }
			}

		if ( type=='swf' )
			{
				document.write('<OBJECT type="application/x-shockwave-flash" data="'+file+'" width="'+w+'" height="'+h+'">\n');
				document.write('<PARAM name="movie" value="'+file+'" />\n');
				document.write('</OBJECT>\n');
				//вариант, генерируемый Macromaedia Flash
				//document.write('<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" WIDTH=468 HEIGHT=60>\n');
				//document.write('<PARAM NAME=movie VALUE="images/banner_main.swf"> <PARAM NAME=quality VALUE=best><PARAM NAME=bgcolor VALUE=#FFFFFF> <EMBED src="images/banner_main.swf" quality=best bgcolor=#FFFFFF  WIDTH=468 HEIGHT=60 TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></EMBED>\n');
				//document.write('</OBJECT>\n');
			}
		if ( type=='gif' || type=='jpg' )
			{
				document.write('<A HREF="'+link+'" target="'+target+'"><IMG SRC="'+file+'" alt="" width="'+w+'" height="'+h+'"></A>');
			}
		if ( type=='ggl' )
			{
				document.write('<SCRIPT TYPE="text/javascript">google_ad_client="pub-3662935624204274"; google_ad_slot="3248900342"; google_ad_width=250; google_ad_height=250;</SCRIPT>');
				document.write('<SCRIPT TYPE="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></SCRIPT>');
			}
	}

//показываем баннер adsXchange
function show_adsxchange_banner()
	{
		var rndm = Math.round(Math.random() * 1000000);
		document.write('<iframe src="http://www.adsxchange.lv/go.php3?uid=5696"');
		document.write(' frameborder=0 vspace=0 hspace=0 width=468 height=60 marginwidth=0');
		document.write(' marginheight=0 scrolling=no>');
		document.write('<a href="http://www.adsxchange.lv/clickol.php3?uid=5696&r='+rndm +'"');
		document.write(' target=_top>');
		document.write('<img src="http://www.adsxchange.lv/gool.php3?uid=5696&r='+rndm +'"');
		document.write(' border=0 width=468 height=60></a>');
		document.write('</iframe> ');
	}

//показываем баннер 468x60
function show_468x60_banner()
	{
		var rndm = Math.round(Math.random() * 1000000);
		document.write('<iframe src="http://www.468x60.lv/b.php?uid=511&r='+rndm +'"');
		document.write(' frameborder=0 vspace=0 hspace=0 width=468 height=60 marginwidth=0');
		document.write(' marginheight=0 scrolling=no>');
		document.write('</iframe>');
	}

//открываем окно в центре (open centered window)
function ocw(link,w,h)
	{
		var x=parseInt((screen.availWidth-w)/2);
		var y=parseInt((screen.availHeight-h)/2);
		window.open(link,'','width='+w+',height='+h+',top='+y+',screenY='+y+',left='+x+',screenX='+x+',status=yes');
	}

//проверка на правильность ввода э-почты через регулярное выражение
function is_valid_email(email)
	{
		return (/^[-0-9A-Z_\.]{1,64}@([-0-9A-Z_\.]+\.){1,128}([0-9A-Z]){2,4}$/i).test(email);
	}

//проверяем поля ввода на заполнение, а пароль (edit_pass1,edit_pass2) и э-почту (edit_email) на правильность ввода
function pw_submit()
	{
		var i,j;
		for ( j=0; j<req_field.length; j++ )
			{
				for ( i=0; i<document.forms[0].length; i++ )
					{
						if (( document.forms[0].elements[i].name == req_field[j] ) && 
						    ( (document.forms[0].elements[i].value == "") || (document.forms[0].elements[i].value == "-1") ||
							  ((req_field[j] == "edit_email") && (is_valid_email(document.forms[0].elements[i].value) == false)) ))
							{
								alert( js_vars[0] + req_field_mess[j] + '!' );
								document.forms[0].elements[i].focus();
								return false; //данные не будут отсылаться
							}
					}
			}
		if ( (document.getElementsByName("edit_pass1")) &&
			 (document.getElementsByName("edit_pass1")[0].value != document.getElementsByName("edit_pass2")[0].value) )
			{
				alert( js_vars[1] );
				return false; //данные не будут отсылаться
			}
		return true; //реально отсылаем данные
	}

//отменяем отсылку данных, закрываем окно (parent window)
function pw_exit()
	{
		window.close(); 
		return false; //обязательно, иначе попытка отсылки данных
	}

//подсветка строк в таблице
//различные подсветки для различных документов: <table class="lighted_class" id="mytable"> в CSS: #mytable tr.lighted_class{background:black;}
function highlight_tables(lighted_class)
	{
		if (!document.getElementById || !document.createTextNode) return; //поддерживает ли браузер объектную модель документа?
		var tables=document.getElementsByTagName('table');
		for (var i=0; i<tables.length; i++)
			{
				if (tables[i].className==lighted_class)
					{
						var trs=tables[i].getElementsByTagName('tr');
						for (var j=0; j<trs.length; j++)
							{
								trs[j].onmouseover  =function() {this.className=lighted_class; return false}
								trs[j].onmouseout   =function() {this.className='';            return false}
							}
					}
			}
	}

//функция растягивает по высоте, ширине элемент-рамку на всю площадь окна броузера
function align_client(elem_id, margin)
	{
		var elem = document.getElementById(elem_id);
		var h=(document.all) ? document.body.clientHeight : window.innerHeight-10; //в mozzila глюк, при установки высоты элемента, он на 10 пикс. больше
		var w=(document.all) ? document.body.clientWidth  : window.innerWidth -10;
		document.body.style.width  = w-(margin*2)+"px"; elem.style.width =  w-(margin*2)+"px";
		document.body.style.height = h-(margin*2)+"px"; elem.style.height = h-(margin*2)+"px";
	}

//функция центрирует элемент снизу
function align_center_bottom(elem_id, elem_width, px_from_bottom)
	{
		var elem = document.getElementById(elem_id);
		var h=(document.all) ? document.body.clientHeight : window.innerHeight-10; //в mozzila глюк, при установки высоты элемента, он на 10 пикс. больше
		var w=(document.all) ? document.body.clientWidth  : window.innerWidth -10;
		elem.style.top  = h-px_from_bottom;
		elem.style.left = (w-elem_width)/2;
	}

//выводим подсказку
function hint(cell_id, alt)
	{
		var cell = document.getElementById(cell_id);
		cell.innerHTML = alt;
	}

//ограничеваем кол-во символов в элементе ввода
function test_len(edit,label,maxlen)
	{
		if (edit.value.length>maxlen) edit.value = edit.value.substring(0,maxlen);
		label.value = maxlen-edit.value.length; 
	}

//сохраняем позицию курсора в TEXTAREA
function store_caret(edit)
	{
		if (document.selection && document.selection.createRange) edit.caretPos = document.selection.createRange().duplicate();
	}
 
//вставляем текст в TEXTAREA
function ins_symb(edit, text)
	{
		var e = edit;
		if (e && e.caretPos) e.caretPos.text=text;
		else if (e && e.selectionStart+1 && e.selectionEnd+1) e.value=e.value.substring(0,e.selectionStart)+text+e.value.substring(e.selectionEnd,e.value.length);
		else if (e) e.value+=text;
		e.focus();
	}

//защита от html-ботов, задействуем Java-Script
function gocomment(e, article, root, lang)
	{
		e.action = root+lang+'index.php?page=disc&article='+article+'&addcomment=do';
	}

//функции AJAX

var AJAXrequest;
var AJAXdest;

function CreateRequestObject()
	{
		if ( window.XMLHttpRequest ) //IE-7, Mozilla, Opera, Netscape и Safari
			{
				try { return new XMLHttpRequest(); } catch (e){}
			}
		else if ( window.ActiveXObject ) //IE-5, IE-6
			{
				try { return new ActiveXObject('Msxml2.XMLHTTP'); } catch (e)
					{
					  try { return new ActiveXObject('Microsoft.XMLHTTP'); } catch (e){}
					}
			}
		return null;
	}

function loadHTML(URL, destination, e, onlyrefresh)
	{
		var param = "chat_lastmid="+document.chat_vars.lastid.value;
		if ( onlyrefresh == false )
			{
				param = param + "&" + e + "=" + escape(encodeURI( document.getElementById(e).value ));
				document.getElementById(e).value = '';
			}
		AJAXdest = destination;
		AJAXrequest = CreateRequestObject();
		if ( AJAXrequest )
			{
				//alert(param);
				AJAXrequest.onreadystatechange = processStateChange;
				AJAXrequest.open('POST', URL, true);
				AJAXrequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
				AJAXrequest.setRequestHeader("Content-length", param.length);
				AJAXrequest.setRequestHeader("Connection", "close");
				AJAXrequest.send(param);
			}
	}

function processStateChange()
	{
		if ( AJAXrequest.readyState == 4 )
			{
				contentDiv = document.getElementById(AJAXdest);
				if ( AJAXrequest.status == 200 )
					{
						if ( AJAXrequest.responseText != '%NO CHANGES IN CHAT%' ) contentDiv.innerHTML = AJAXrequest.responseText;
					}
				else
					{
						//http://support.microsoft.com/kb/193625
						//12030 - ERROR_INTERNET_CONNECTION_ABORTED
						if ( AJAXrequest.status != 12030 ) contentDiv.innerHTML = "Error: "+AJAXrequest.statusText;
					}
			}
	}

//инициализация чата
function chat_initialize(e, div_container, root)
	{
		if ( document.getElementById(div_container) )
			{
				window.setTimeout('chat_refresh(\''+root+'\')', 10000); //10 сек.
				document.frames[e].scrollBy(0,5000); //только для IE, FireFox это делает в <IFRAME onload="...">
			}
	}

//автоматическое обновление чата
function chat_refresh(root) 
	{ 
		loadHTML(root+'modules/online.php?ajax=yes','chat_ajaxdiv','chat_ajaxmessage', true);
		window.setTimeout('chat_refresh(\''+root+'\')', 10000); //10 сек.
	}

//показываем, скрываем элемент страницы
function toggle(tag, elm, show_text, hide_text)
	{
		//в css соответственно должны быть определены классы HIDDEN и VISIBLE
		var obj = document.getElementById(elm);
		var type = (obj.className == 'HIDDEN') ? 'VISIBLE' : 'HIDDEN';
		if ( tag !== undefined ) tag.innerHTML = (type == 'HIDDEN') ? show_text : hide_text;
		obj.className = type;
	}