/*
	\brief
	JavaScript функции CMS Tyros YOS
	\data
	2003-2006
	\author
	Michael K 	(ursus-it@yandex.ru)
*/
var _baseUrlPath='';
// Скрыть / показать элемент
var lastcvElement=new Array();
function cvElement(eid,grp){
	if (!grp) grp=0;
	if (!eid) eid=lastcvElement[grp];
	if (eid) {
	var st0;
	eval("st0=document.all."+eid+".style;");
	if (typeof(st0)=='object') 
	if (st0.display=='none') st0.display='block'; else st0.display='none'; 
	lastcvElement[grp]=eid;
	}	
	return false;
}
var lastswElement=new Array();
function swElement(obj){
	grp=0;
	if (obj) {
	var st0=obj.className;
	if (st0) {
		var reg1=new RegExp(['Pas'],['g']);
		obj.className=st0.replace(reg1,'');
	}
	if (typeof(lastcvElement[grp])=="object" && lastcvElement[grp]!=obj) {
		var st1=lastcvElement[grp];
		st1.className=st1.className+"Pas";
	}
	lastcvElement[grp]=obj;
	}	
	return false;
}
// Загрузить новое содержание в фрейм
function fOpen(fName,oUrl,fComments) {
	var myframeset = parent.document.getElementById('colsframe');
	if (typeof(myframeset)=='object') {	
		if (!fName) fName = top.frames.menu.fActive;
		if (oUrl) eval("parent.f"+fName+".location.replace('"+oUrl+"')");
	} else 
		if (oUrl) opw(oUrl);
}
// Универсальная функция заполенния параметра формы 
function setParam(obj,val) {
	if (val=='checked') obj.checked=1; else obj.value=val; 
}
// Установить значение параметра формы
function setFormParam(fname, name, val) {
	setParam(document.forms[fname][name],val);
}
// Отправка формы с заполеннием доп. параметров
function sf(fname, name, val, name1, val1, name2, val2, name3, val3, name4, val4) {
	if (name) setParam(document.forms[fname][name],val);
	if (name1) setParam(document.forms[fname][name1],val1);
	if (name2) setParam(document.forms[fname][name2],val2);
	if (name3) setParam(document.forms[fname][name3],val3);
	if (name4) setParam(document.forms[fname][name4],val4);
	document.forms[fname].submit();
	return false;
}
// Отправка формы с заполеннием доп. параметров
function sfTarget(fname, targetName, name, val, name1, val1, name2, val2, name3, val3, name4, val4) {
	if (name) setParam(document.forms[fname][name],val);
	if (name1) setParam(document.forms[fname][name1],val1);
	if (name2) setParam(document.forms[fname][name2],val2);	
	if (name3) setParam(document.forms[fname][name3],val3);			
	if (name4) setParam(document.forms[fname][name4],val4);
	document.forms[fname].target=targetName;	
	document.forms[fname].submit();
	document.forms[fname].target='';	
	return false;
}
// Отправка формы с заполеннием доп. параметров
var popupWidth=800, popupHeight=500;
function setwsize(width, height) {
	popupWidth=width;
	popupHeight=height;
}
// Создание окна и отправка в него формы
function sfa(fname, action, name, val, name1, val1, name2, val2, name3, val3, name4, val4, name5, val5) {
	width=popupWidth;
	height=popupHeight;
	var screen_w = width;
	var screen_h = height;
	var popupName='popupWin'+Math.round(Math.random()*100).toString();
	if(document.all)
	pw=window.open('',popupName,'top=20,width='+screen_w+',height='+screen_h+',scrollbars=yes,status=yes,resizable=yes');
	else
	pw=window.open('',popupName, 'width='+screen_w+',height='+screen_h+',titlebar=no,menubar=no,location=no,resizable=yes,scrollbars=yes');
	document.forms[fname].target=popupName;
	if (action) document.forms[fname].action=action;
	if (name) setParam(document.forms[fname][name],val);
	if (name1) setParam(document.forms[fname][name1],val1);
	if (name2) setParam(document.forms[fname][name2],val2);	
	if (name3) setParam(document.forms[fname][name3],val3);	
	if (name4) setParam(document.forms[fname][name4],val4);		
	if (name5) setParam(document.forms[fname][name5],val5);
	document.forms[fname].submit();
	return false;
}
// Определение направления текущей сортировки заданного поля
function getSortOrder(fname) {
	var pos=_orderVar.indexOf(fname);
	if (pos==-1) t=-1;
	else {
		var len = fname.length;
		var t = _orderVar.substring(pos+len , pos+len+1);
		if (t == "_") t=1; else t=0; // + %2B//
	}
	return t;
}
// Функция сортировки по заданному полю
function usort(fname) {	
	var pos=_orderVar.indexOf(fname);
	if (pos==-1) _orderVar=fname+"-"+_orderVar; 
	else {
		var len = fname.length;
		var t = _orderVar.substring(pos+len , pos+len+1);
		if (t == "_") t="-"; else t="_";
		_orderVar=fname+t+_orderVar.substring(0,pos)+_orderVar.substring(pos+len+1,_orderVar.length);
	}
	window.location.replace("http://"+yo_meta_address+"/"+_linkClearOrder+"&ord["+_contentId+"]="+_orderVar);
	return false;
}
// Для сокрытия email
// <a href="javascript:mailto('name',0,'subject');"><script>email('name',0);</script></a>
function _email (login, sc) {
	if (typeof(sc)=="number") eml = login +  "@" + eMailServers[sc]; else eml = login +  "@" + sc;
	return eml;
}
function email (login, sc) {
	document.write (_email(login, sc));
}
function mailto (login, sc, sub) {
	eml = "mailto:" + _email(login, sc);
	if (sub != "") eml += "?subject=" + sub;
	window.location.href = eml;
}

//<a href="javascript:SaveAs()">cохранить</a>
//<a href="javascript:Print()">распечатать</a>
// Сохранить страницу
function SaveAs() {
	document.execCommand("SaveAs");
	document.body.focus();
}
// Распечатать страницу
function Print() {
	document.execCommand("Print");
	document.body.focus();
}
function selectCheckbox(fname, gname, _id, val) {
	eval("_id=id[0]");
	if (val=='checked' || val=='unchecked') {
		val=(val=='checked')? 1:0;
		for (var i=0; i<_id.length; i++) 
			if (typeof(document.forms[fname][gname+'['+_id[i]+']'])=='object') 
				document.forms[fname][gname+'['+_id[i]+']'].checked=val;
	} else {
		for (var i=0; i<_id.length; i++) 
			if (typeof(document.forms[fname][gname+'['+_id[i]+']'])=='object') 
				document.forms[fname][gname+'['+_id[i]+']'].value=val;
	}		
}
// Вызов Popup отдельном окне
function popupRun(fpopup, fname, fparams, width, height) {
	var pw=opw(fpopup+"&datafield="+fname+"&params="+fparams,width,height,target);
}
// Open in new window
function opw(url,width,height,target){
	if (!width) width=800;
	if (!height) height=500;
	if (!target) target='_blank';
	var screen_w = width;
	var screen_h = height;
	if(document.all) return window.open(url,target,'width='+screen_w+',height='+screen_h+',scrollbars=yes');
	else return window.open(url,target,'width='+screen_w+',height='+screen_h+',titlebar=yes,menubar=yes,status=no,location=no,directories=no,resizable=yes,scrollbars=yes');
}
// Установка значения элемента формы для юзабилити
// Пример: <input name="uform[email]" type="text" style="width:100px" value="ваш email.." onblur="aiValue(this,'ваш email..')" onfocus="aiValue(this,'ваш email..')" >
function aiValue(ffield, defaultValue) {
	if (ffield.value==defaultValue) ffield.value='';
	else if (ffield.value=='') ffield.value=defaultValue;
}
// -----------------------------------
// Текущий активный фрейм
var fActive='0';
var fMaxFrames=3;
function fSwitch (fName) {
	var myframeset = parent.document.getElementById('colsframe')
	if (typeof(myframeset)=='object') {

		fActive=top.frames.menu.fActive;
		if (!fActive) fActive=0;
	
		if (typeof(top.frames.menu.document.all.fpages)=='object') {
			top.frames.menu.document.all.fpages.rows[0].cells[fActive].className="trs_unselect7";
			top.frames.menu.document.all.fpages.rows[0].cells[fName].className="trs_select7"; //trs_select
			top.frames.menu.document.all.fpages.rows[0].cells[fActive].style.backgroundImage="url("+_baseUrlPath+"form/adm/img/ci_"+(	parseInt(fActive)+1)+".gif" + ")";
			top.frames.menu.document.all.fpages.rows[0].cells[fName].style.backgroundImage="url("+_baseUrlPath+"form/adm/img/ci_"+(fName+1)+"a.jpg" + ")";			
		}	
		switch(fName) {
			case 0:
				myframeset.cols='100%,0,0';
			break;	
			case 1:
				myframeset.cols='0,100%,0'; 
			break;	
			case 2:
				myframeset.cols='0,0,100%'; 
			break;
			/*	
			case 3:
				myframeset.cols='0,0,0,100%'; 
				//fActive='fC';
			break;				
			*/
		}
		top.frames.menu.fActive=fName;
	}
}
function ruEscapeConvert(name) {
	correctCode=848;
	ruCharBegin='А'.charCodeAt(0)-correctCode;
	newname='';
	for (i=0; i<name.length; i++) {
		if (name.charCodeAt(i) >= ruCharBegin)
			newname=newname + String.fromCharCode(name.charCodeAt(i)+correctCode);
		else
			if (name.charAt(i)=='+')
				newname=newname + ' ';
			else
				newname=newname + name.charAt(i);
	}	
	return newname;
}
function getCookie(Name) {
	var search = Name + "=";
	if (document.cookie.length > 0) { // if there are any cookies
		  offset = document.cookie.indexOf(search) 
		  if (offset != -1) { // if cookie exists 
				offset += search.length 
				// set index of beginning of value
				end = document.cookie.indexOf(";", offset) 
				// set index of end of cookie value
				if (end == -1) 
						  end = document.cookie.length
				return ruEscapeConvert(unescape(document.cookie.substring(offset, end)))
		  } 
	}
	return '';
}
function print_r( obj ) {
	var g="";
	var i=0;
	for (var t in obj) {
		g+=t+"="+obj[t]+"\n";
		//g+=t+"=";
		if (i>7) { g+="\n"; i=0; }
		i++;
	}
	alert(g);
}
function icq_contact (number, type, class2) {
	if (type)
	document.write('<img border="0" src="http://web.icq.com/whitepages/online?icq='+number+'&img='+type+'" alt="icq online" class="icqimage">&nbsp;&nbsp;<a class="'+class2+'" href="http://icq.com/'+number+'" target="_blank">'+number+'</a>');
	else
	document.write('<a class="'+class2+'" href="http://icq.com/'+number+'" target="_blank">'+number+'</a>');
}
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.Swap=1; x.cSrc=x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) {
  	if (x.Swap) x.src=x.oSrc; else x.src=x.cSrc; x.Swap^=1; 
  }	
}
/* Функции управления статьями */
var pagectrl_className, pagectrl_editlink, pagectrl_dellink, pagectrl_visuallink, pagectrl_visuallinkonfirst;
function setup_pagectrl(className, editlink, dellink, visuallink, visuallinkonfirst) {
	pagectrl_className=className; pagectrl_editlink=editlink; pagectrl_dellink=dellink; pagectrl_visuallink=visuallink; pagectrl_visuallinkonfirst=visuallinkonfirst;
}
function pagectrl(aid, id, active) {
	if (getCookie('cookie_author_id')==aid || getCookie('cookie_author_groupNick')=="Gadmin" || getCookie('cookie_author__cgroup.Cmoderator')>=0) {

		var editlink=pagectrl_editlink.replace(/%ID%/g, id);
		var dellink=pagectrl_dellink.replace(/%ID%/g, id);
		var visuallink=pagectrl_visuallink.replace(/%ID%/g, id);
		var visuallinkonfirst=pagectrl_visuallinkonfirst.replace(/%ID%/g, id);

		document.write('<div class="'+pagectrl_className+'"><ul>');
		if (getCookie('cookie_author_id')==aid) document.write('<li><a href="'+editlink+'">Edit</a></li>'); 
		if ((getCookie('cookie_author_groupNick')=="Gadmin"  || getCookie('cookie_author__cgroup.Cmoderator')>=0) && active!=1)  {
			document.write('<li><a class="linkpublic" href="'+visuallink+'">Public</a></li>'); 
			document.write('<li><a class="linkpublic" href="'+visuallinkonfirst+'">On first</a></li>'); 
		}
		document.write('<li><a href="'+dellink+'">Delete</a></ul></div>');
	}
}
function pagectrl_noedit(aid, id, active) {
	if (getCookie('cookie_author_id')==aid || getCookie('cookie_author_groupNick')=="Gadmin" || getCookie('cookie_author__cgroup.Cmoderator')>=0) {

		var visuallink=pagectrl_visuallink.replace(/%ID%/g, id);
		var visuallinkonfirst=pagectrl_visuallinkonfirst.replace(/%ID%/g, id);
		var dellink=pagectrl_dellink.replace(/%ID%/g, id);

		document.write('<div class="'+pagectrl_className+'"><ul>');
		if ((getCookie('cookie_author_groupNick')=="Gadmin" || getCookie('cookie_author__cgroup.Cmoderator')>=0) && active!=1)  {
			document.write('<li><a class="linkpublic" href="'+visuallink+'">Public</a></li>'); 
			document.write('<li><a class="linkpublic" href="'+visuallinkonfirst+'">On first</a></li>'); 
		}
		document.write('<li><a href="'+dellink+'">Delete</a></ul></div>');
	}
}

/* Функции отображения tags */
function tagsctrl(tags) {
	var words=tags.split(',');
	var raw='';
	for (i=0;i<words.length;i++) if (words[i]) {
		raw+='<a href="#" onClick="return sf(\'FPageparams\',\'pageparams[like-tags]\',\''+words[i]+'\');">'+words[i]+'</a>, ';
	}
	document.write(raw);
}

/* Corners */
function DomCorners(id,bk,h,w){
//if ($type($(id))=='element') DomCorner($(id),bk,h,w); else $$(id).each(function(e) { DomCorner(e,bk,h,w) });
$(id).each(function() { DomCorner(this,bk,h,w) });
}

function DomCorner(el,bk,h,w){
//var el=document.getElementById(id);
if(el==null) return;
var c=new Array(4);
for(var i=0;i<4;i++){
    c[i]=document.createElement("div"); c[i].style.display="block"; c[i].style.height=h+"px"; c[i].style.fontSize="1px";
    if(i%2==0) { c[i].style.background="url("+bk+") no-repeat 0 -"+ i*h + "px";
	c[i].style.padding="0 0 0 "+w+"px";
	} else c[i].style.background="url("+bk+") no-repeat 100% -"+ i*h + "px";
    }

r=bk.split('\.');
el.innerHTML='<div style="background: url('+r[0]+'-bg.'+r[1]+')">'+el.innerHTML+'</div>';

c[0].appendChild(c[1]);c[2].appendChild(c[3]);el.style.padding="0";
el.insertBefore(c[0],el.firstChild);el.appendChild(c[2]);
}

function DomCornerRL(el,bk,h,w){
//var el=document.getElementById(id);
if(el==null) return;
var c=new Array(2);
for(var i=0;i<2;i++){
    c[i]=document.createElement("div"); c[i].style.display="block"; 
	c[i].style.height=h+"px"; c[i].style.width=w+"px"; 
	c[i].style.fontSize="1px";
    if(i%2==0) {c[i].style.background="url("+bk+") no-repeat 0 -"+ i*h + "px";
	c[i].style.padding="0 0 0 "+w+"px";
	} else c[i].style.background="url("+bk+") no-repeat 100% -"+ i*h + "px";
    }
//c[0].appendChild(c[1]);c[2].appendChild(c[3]);el.style.padding="0";
if (window.ie) { c[0].style.styleFloat='left'; c[1].style.styleFloat='right'; } else { c[0].style.cssFloat='left';	c[1].style.cssFloat='right'; }
el.insertBefore(c[0],el.firstChild);
el.insertBefore(c[1],el.firstChild);
//el.appendChild(c[1]);
}

// Check textfield for special chars
function textfield_check(text, iChars) {
if (iChars=='') iChars="!@#$%^&*()+=-[]\';,./{}|\":<>?";
for (var i = 0; i < text.length; i++) 
	if (iChars.indexOf(text.charAt(i)) != -1) {
	alert("Containts special characters. \n These are not allowed.\n Please remove them and try again."); return false;
	}
return true;
}
