//general functionalities
function fmt(str) {
	return Base64.encode(Url.encode(str));
}
function elem(str){
	if (document.getElementById(str))
		return document.getElementById(str);
	else return false;
}
function disableSelection(target, cur){
if(target){
var cursor="default";
if (typeof target.onselectstart!="undefined") //IE route
target.onselectstart=function(){return false;}
else if (typeof target.style.MozUserSelect!="undefined") //Firefox route
target.style.MozUserSelect="none";
else //All other route (ie: Opera)
target.onmousedown=function(){return false;}
if (cur)cursor="pointer";
target.style.cursor = cursor;
}}

//calendar controls
var cal_lock=0;
function _cbd(res){
    res=eval( "(" + res + ")" );
	if (res){
		CAL_DATE=res.N;
		elem("cal_label").innerHTML=res.L;
		var panel=elem("x_days");
		panel.innerHTML="";
		for (var i=0;i<res.C.length;i++){
			var div=document.createElement("DIV");
			var cnt="&nbsp;";
			if (res.C[i].B) {
				if (res.C[i].L) cnt="<a href='index.php?d="+res.C[i].L+"'>"+res.C[i].B+"</a>";
				else cnt=res.C[i].B;
			}
			div.innerHTML=cnt;
			div.className=res.C[i].C;
			if (res.C[i].I) div.id=res.C[i].I;
			if (res.C[i].X) div.title=res.C[i].X;
			panel.appendChild(div);
		}
        $('cal_q').setStyle('height', 'auto');
		panel.style.display="block";
		cal_lock=0;
	}
}
function _cb(inc){
	if (!cal_lock) {
		cal_lock=1;
		elem("x_days").style.display="none";
		$("cal_q").style.height='94px';
        new Ajax(URL_BIN+"/calendar.php",{
            method: 'post',
            data:{"d":CAL_DATE, "ed": EDITION_DATE, "i": inc},
            onComplete:_cbd
        }).request();
	}
}
function sec(id, mn){
	if (!mn) mn=0;
	if(id>0) {
		if (mn) {
			gscroll.toElement("sec_"+id).chain(function(){sec(id)});
		}
		else {
			gscroll.toElement("sec_"+id);
		}
	}
	else gscroll.toTop();
}
function sld(i){
	_gState[i]['s']=(++_gState[i]['s'])%2;
	if(_gState[i]['s']==0 && ( $('content').getCoordinates().height-$(_gState[i]['id']).getCoordinates().height-window.getScrollTop() ) < window.getHeight() ) {
		var mgn=$(_gState[i]['id']).getCoordinates().top-window.getHeight();
		if (mgn<0) mgn=0;
		gscroll.scrollTo(0,mgn).chain(function(){_global["sld"+i].toggle()});
	}
	else {
		_global["sld"+i].toggle().chain(function(){sec(_gState[i]['id'].substring(2))});
	}
}

//headlines ticker controls
var HEADLINES=new Array();var idxH=0;
function dspH(res){
    if (window.sessionStorage) {
    	sessionStorage.editionHeadlines=res;
    }
	res=eval(res);

    //console.log(res);
	for(var i=0;i<res.length;i++) {
		HEADLINES[i]=new Array();
		HEADLINES[i]['ID']=res[i].HID;
		HEADLINES[i]['CNT']=res[i].CNT.replace(/###/, " - ");
		HEADLINES[i]['SEC']=res[i].SN;
	}
	elem("ticker").style.display="block";
	setH();
}
function setH(){
	elem('x_tsec').innerHTML=HEADLINES[idxH]['SEC'];
	elem('x_tcnt').innerHTML="<a onmouseover='window.clearTimeout(hdlT);' onmouseout='hdlT=setTimeout(\"nextH();\", HDLCRON);' href='story.php?id="+HEADLINES[idxH]['ID']+"'>"+HEADLINES[idxH]['CNT']+"</a>";
	hdlT=setTimeout("nextH();", HDLCRON);
}
function nextH(){
	window.clearTimeout(hdlT);
	if (++idxH == HEADLINES.length) idxH=0;
	setH();
}
function prevH(){
	window.clearTimeout(hdlT);
	if (--idxH == -1) idxH=HEADLINES.length-1;
	setH();
}

//auto-scroll-load images
function findPos(obj) {
	var curtop = 0;
	if (obj.offsetParent) {
		do {
			curtop += obj.offsetTop;
		} while (obj == obj.offsetParent);
	}
	return curtop;
}
function osd(atHeight){
	if (!atHeight) atHeight=0;
	var found=0;
	var imgs = document.getElementsByTagName("IMG");
	for (var i=0;i<imgs.length;i++) {
		if (imgs[i].id!=""){
			var pos=findPos(imgs[i]);
			if( ((pos<=window.getHeight()+window.getScrollTop()) && pos>window.getScrollTop()) ||
					(pos<=atHeight) ) {
				imgs[i].src=URL_THMB+imgs[i].id;
				imgs[i].id="";
			}
			found=1;
		}
	}
	if (!found) {
		window.onscroll=function(){};
	}
}
function cbi(el) {
	var imgs = el.getElementsByTagName("IMG");
	for (var j=0;j<imgs.length;j++) {
		if (!imgs[j].complete) return false;
	}
	return true;
}
var wSlider;
var WSB=0;
function xWthr() {
	var w=90;
	WSB=(++WSB%2);
	if (WSB) w=181;
	wSlider.start({'width': w});
}
function winLoad(){
	if (window.sessionStorage) {
		if (!window.sessionStorage.editionNo) sessionStorage.editionNo=0;
		if (window.sessionStorage.editionNo!=EDITION_NO || (!sessionStorage.editionHeadlines)) {
			sessionStorage.editionNo=EDITION_NO;
			new Ajax(URL_BIN+"/editionHeadlines.php",{
		        method: 'post',
        		data:{"EID":EDITION_NO},
        		onComplete:dspH
    			}).request();
		} else {
			dspH(sessionStorage.editionHeadlines);
			//console.log(sessionStorage.editionHeadlines);
		}
	}
    gscroll = new Fx.Scroll(window);
	disableSelection(elem("ticker"));
	disableSelection(elem("sm"));
	var accordion = new Accordion($$('.btgl'),$$('.bele'), {
	opacity: 0,show: MIS,
		onActive:function(tgl){
				tgl.getNext().setStyle('display', 'block');
		}}
	);
	if (!SECTION) {
		var sList = $$('.b');
		for (i=0; i<sList.length;i++) {
			_gState[i] = new Array();
			_gState[i]['id']=sList[i].id;
			_gState[i]['s']=1;
			_global["sld"+i] = new Fx.Slide(sList[i].id, {duration: 700,
				onComplete:function(tgl){
					tgl.setStyle('display', 'block');
				}
			});
		}
	}
	wSlider = new Fx.Styles($('x_wthr'),{duration: 500});
}
function chkUsr(res){
    res=eval(res);
	if (res || res==0) {
		if (res) {
			$('sErr').innerHTML=res;
			$('sload').style.display='none';
		}
		else window.location='';
	}
	else if ($('sUsr').value!='' && $('sPass').value!='') {
		$('sload').style.display='block';
        new Ajax(URL_BIN+"/authUser.php",{
            method: 'post',
            data:{"u": $('sUsr').value,"p": $('sPass').value},
            onComplete:chkUsr
        }).request();
	}
}
function tglS(){
    var d=$('bsp').style.display;
    if (d=="none") {
        $('asp').style.display="none";
        $('bsp').style.display="block";
    }else {
        $('bsp').style.display="none";
        $('asp').style.display="block";
    }
}
var _global = this;
var _gState = new Array();
window.onload=winLoad;