
//constant
var ROOT_URL = "/";

var RELOADSMAX = 5; //max reloads if idle with browser
var RELOADSINTERVAL = 60; //seconds between checks for new mails etc.

//no edit below this line
//--------------------------------------------------

window.onerror = errHandler;

function errHandler(sMsg, sUrl, sLine)
{
	var sSave = sMsg + ' \n ' + sUrl + ' \n ' +  sLine;
	window.status=sSave
	return true;
}




//specific functions:-----------------------------------------------------------------------

var bPageLoaded=false;

function init(){

	//var Digital = new Date()
	//var ms = parseInt(Digital.getTime()/1000);
	//SetCookie ("clienttime", ms ,false, "/", false,false);
	//status = ms;
	if( navigator.userAgent.toLowerCase().indexOf("opera") != -1) return;
	if (GetCookie("CookieUid") == null || bPageLoaded)  return;

	bPageLoaded=true;
	//setInloggtext();
	//toggleFriendsList(GetCookie("CookieList"))
	initlink();
	//showTime();
	//getMessSaved();
	if(GetCookie("CookieNewForum") != null) forum_set(GetCookie("CookieNewForum"));
	if(GetCookie("CookieNewMail") != null) mail_set(GetCookie("CookieNewMail"));
	if(GetCookie("CookieNewGuest") != null)	guest_set(GetCookie("CookieNewGuest"));
	if(GetCookie("CookieNewFriend") != null) friend_set(GetCookie("CookieNewFriend"));
	if(GetCookie("CookieNewGroup") != null)	group_set(GetCookie("CookieNewGroup"));
	if(GetCookie("CookieNewAC") != null) ac_set(GetCookie("CookieNewAC"));
	
	checkit();

}

var RELOADS = 0;

function checkit()
{
	var t1 =  GetCookie("time");
	var t2 = new Date()
	t2 = t2.getTime();
	var diff = parseInt((t2 - t1)/1000);

	if(diff % RELOADSINTERVAL == 0 && diff > 1){
		load(false);
		RELOADS++;
		//updateMess();
	}
	
	if(RELOADS < RELOADSMAX){
		
		setTimeout("checkit()",1000);	
	}
}

function load(checkall)
{
	qs='';
	if(checkall) qs='?checkall=true';

	if (document.all || document.getElementById) {
		syscheck.location.href = ROOT_URL + "scripts/check.php" + qs;
	}
	else{
		document.nscheck.src = ROOT_URL + "scripts/check.php";	
	}
	
}

function mail_set(no){
	if(no=='0' || no == null || no == ''){
		var sOut=	'<A target=body  href="' + ROOT_URL + 'member/mail/mails.php?str_user_id=' + GetCookie("CookieUid") + '&box=1"><IMG width=15 height=15 src="' + ROOT_URL + 'images/email_off.gif" width="15" height="15" alt="Du har inga nya mail" border=0></a>';

	}else{
		var sOut=	'<A target=body  href="' + ROOT_URL + 'member/mail/mails.php?str_user_id=' + GetCookie("CookieUid") + '&box=1"><IMG width=15 height=15 src="' + ROOT_URL + 'images/email.gif" width="15" height="15" alt="Du har ' + no + ' nya mail!" border=0></a>';
	
	}
	layer_writeb('email', sOut)
}

function guest_set(no){
	return;
	if(no=='0' || no == null || no == ''){
	var sOut=	'<A target=body  href="' + ROOT_URL + 'member/guestbook/guestbook.php?str_user_id=' + GetCookie("CookieUid") + '"><IMG width=24 height=15 src="' + ROOT_URL + 'images/guestbook_off.gif" alt="Du har inga nya gästboksinlägg" border=0></a>';

	}else{
	var sOut=	'<A target=body  href="' + ROOT_URL + 'member/guestbook/guestbook.php?str_user_id=' + GetCookie("CookieUid") + '"><IMG width=24 height=15 src="' + ROOT_URL + 'images/guestbook.gif" alt="Du har ' + no + ' nya gästboksinlägg!" border=0></a>';
	}
	layer_writeb('guestbook', sOut)	
}

function forum_set(no){
	if(no == null || no == '' || no=='0'){
	var sOut=	'<A target=body  href="' + ROOT_URL + 'forum/forum_check.php"><IMG alt="Du har 0 nya svar i forum" WIDTH="21" HEIGHT="15" src="' + ROOT_URL + 'images/disc_off.gif"   border=0></a>';
	layer_writeb('disc', sOut);
	return;
	}
	
	var sOut=	'<A target=body  href="' + ROOT_URL + 'forum/forum_check.php"><IMG alt="Du har ' + no + ' nya svar i forum" WIDTH="21" HEIGHT="15" src="' + ROOT_URL + 'images/disc.gif"   border=0></a>';
	layer_writeb('disc', sOut)
}

function ac_set(no){
	if(no=='0' || no == null || no == '') {
	var sOut=	'<A target=body  href="' + ROOT_URL + 'articles/comments.php?user_id=' + GetCookie("CookieUid") + '"><IMG alt="Du har inga olästa kommentarer" WIDTH="15" HEIGHT="14" src="' + ROOT_URL + 'images/comment_off.gif"   border=0></a>';

	}else{
			var sOut=	'<A target=body  href="' + ROOT_URL + 'articles/comments.php?user_id=' + GetCookie("CookieUid") + '"><IMG alt="Du har ' + no + ' olästa kommentarer" WIDTH="15" HEIGHT="14" src="' + ROOT_URL + 'images/comment.gif"   border=0></a>';

	}
	//var sOut=	'<A target=body  href="' + ROOT_URL + 'articles/comments.php?user_id=' + GetCookie("CookieUid") + '"><IMG alt="Du har ' + no + ' olästa kommentarer" WIDTH="15" HEIGHT="14" src="' + ROOT_URL + 'images/comment.gif"   border=0></a>';
	//window.status = sOut;
	layer_writeb('ac', sOut)
}

function group_set(no){
	if(no=='0' || no == null || no == ''){
	var sOut=	'<A target=body  href="' + ROOT_URL + 'groups/group_applies.php?all=true"><IMG alt="Du har inga obesvarade gruppansökningar" WIDTH="19" HEIGHT="15" src="' + ROOT_URL + 'images/group_off.gif"   border=0></a>';
	}else{
	//window.status = sOut;
		var sOut=	'<A target=body  href="' + ROOT_URL + 'groups/group_applies.php?all=true"><IMG alt="Du har ' + no + ' obesvarade gruppansökningar" WIDTH="19" HEIGHT="15" src="' + ROOT_URL + 'images/group.gif"   border=0></a>';

	}
	layer_writeb('group', sOut)
}
function friend_set(no){
	if(no=='0' || no == null || no == ''){
	var sOut=	'<A target=body  href="' + ROOT_URL + 'member/friends/friends_request.php?str_user_id=' + GetCookie("CookieUid") + '"><IMG WIDTH="15" HEIGHT="13" alt="Du har inga obesvarade vänskapsrelationer" src="' + ROOT_URL + 'images/friend_off.gif"   border=0></a>';

	}else{

	var sOut=	'<A target=body  href="' + ROOT_URL + 'member/friends/friends_request.php?str_user_id=' + GetCookie("CookieUid") + '"><IMG WIDTH="15" HEIGHT="13" alt="Du har ' + no + ' obesvarade vänskapsrelationer" src="' + ROOT_URL + 'images/friend.gif"   border=0></a>';
	}
	//window.status = sOut;
	layer_writeb('friend', sOut)
}

function setInloggtext() 
{   
	layer_write("inloggtext","Inloggad som: " +GetCookie("CookieUserName") )
}

var DATASENT=false;

function SendOnce(){ 
	if(DATASENT==false){
		DATASENT=true;
		return true;		
	}else{
		return false;	
	}	
}

function zoomPics(id){
	var pics = window.open(ROOT_URL + "member/photoalbum/picZoom.php?id=" + id, "pic_win", "width=80,height=100,scrollbars=yes,locationbar=no,menubar=no,personalbar=no,resizable=1,toolbar=no,status=no,screenX=100,screenY=100,top=100,left=100");
	pics.focus();
}
function popcolors(){
	var pics = window.open(ROOT_URL + "member/my_color/color_frset.htm", "color_win", "width=500,height=350,scrollbars=no,locationbar=no,menubar=no,personalbar=no,resizable=1,toolbar=no,status=no,screenX=100,screenY=100,top=100,left=100");
	pics.focus();
}

function poll(id){
	var poll = window.open(ROOT_URL + "polls/poll_vote.php?id=" + id, "poll_win", "width=450,height=350,scrollbars=yes,locationbar=no,menubar=no,personalbar=no,resizable=1,toolbar=no,status=no,screenX=100,screenY=100,top=100,left=100");
	poll.focus();
}

function show_smilies(str){
	var smilie_win = window.open(ROOT_URL + "scripts/smilies.php?text=" +str, "smilie_win", "width=250,height=270,scrollbars=no,locationbar=no,menubar=no,personalbar=no,resizable=1,toolbar=no,status=no,screenX=100,screenY=100,top=100,left=100");
	smilie_win.focus();
}

function addBookmark(){
	if(document.all) {
		window.external.AddFavorite('http://www.absint.nu','absint.nu')
	}
	else{
		alert('fungerar endast i Internet Explorer')
	}
}

function smilie(thesmilie) {
	// inserts smilie text
	
	eval(smilieObj + ".value += thesmilie+' '")
	eval(smilieObj + ".focus()")
}

function zoomPic(uid){
	var pic = window.open(ROOT_URL + "scripts/picZoom.php?uid=" + uid, "pic_win", "width=80,height=100,scrollbars=no,locationbar=no,menubar=no,personalbar=no,resizable=1,toolbar=no,status=no,screenX=100,screenY=100,top=100,left=100");
	pic.focus();
}

function list(mode){
	SetCookie ("CookieList", mode ,false, "/", false,false);
	toggleFriendsList(mode);
	friends.location.reload();
	
}

function toggleFriendsList(mode){
	if(mode=='friends'){ 
		setCSScls('fri','list'); 
		setCSScls('onl','list_off')
	}else{
		setCSScls('onl','list'); 
		setCSScls('fri','list_off')
	}
}


function showhelp(strfile){
	var help_win = window.open(ROOT_URL + "misc/help.php?show=" + strfile , "help_win", "width=400,height=350,scrollbars=yes,locationbar=no,menubar=no,personalbar=no,resizable=1,toolbar=no,status=no,screenX=100,screenY=100,top=100,left=100");
	help_win.focus();
}


function chat() 
{  	
	if (GetCookie("CookieUid") == null  ){ 
		alert('Du måste vara inloggad för att chatta');
		return;
	}
	remote = window.open(ROOT_URL + "chat/chat_frset.php", "chat_win", "width=500,height=400,scrollbars=yes,locationbar=no,menubar=no,personalbar=no,resizable=1,toolbar=no,status=no,screenX=100,screenY=100,top=100,left=100");
	remote.focus();
}

function logut(){	
	location.href = ROOT_URL + "scripts/logout.php";	
}


/* live mess funcs --------------------- */

function livemess(str,str2){
	if(str != '') layer_write('livemesstext', str);
	if(str == '' && str2 != '') layer_write('livemesstext', str2);
	setTimeout("layer_write('livemesstext', '&nbsp;')",15000);
}


function livemessform(){
	if (GetCookie("CookieUid") == null  ){ 
		alert('Du måste vara inloggad ');
		return;
	}
	theDiv=getEle2('livemessform');
	theDiv.visibility =  "visible";
	sOut = ' <br><form target=livemessframe class=form style="border:1px solid red" name=livemess method=post action="' + ROOT_URL + 'wall/wall.php">snabbklottra<br><input class=field name=mess type="text"><br><input type="button" class=submit value="skriv" onClick="SendLiveMess();"> &nbsp; <a href="javascript:closeLiveMess();" title="stäng">x</a></form>';
	layer_write('livemessform', sOut)
}
function closeLiveMess(){
	theDiv=getEle2('livemessform');
	theDiv.visibility =  "hidden";
}
function SendLiveMess(){
	theDiv=getEle2('livemessform');
	document.livemess.submit(); //livemess.submit()
	setTimeout('load(false);', 1000);
	setTimeout('theDiv.visibility =  "hidden"', 1000);
}

/* link layer funcs --------------------- */

var xx = null;
var yy = null;
var tId = null;
var ns6 = (document.getElementById && !document.all) ? true:false;

function initlink(){	
	if (document.layers) window.captureEvents(Event.MOUSEMOVE);
	if (document.all){
	 	document.onmousemove=move
	}
	else{
   		window.onmousemove=move;		
	}
}

function move(e){
   if (document.all ){ 
        xx = window.event.clientX + document.body.scrollLeft;
        yy = window.event.clientY + window.document.body.scrollTop;
   }
	else if (document.layers || ns6){
        xx=e.pageX;
        yy=e.pageY;	
   }
}

function setXY(xpos, ypos){
	xposA  = xpos+15;
	yposA = ypos-52;
	xposB = xpos+20; 	
 	yposB = ypos+5;
	theDiv=getEle2('InfoBox');
	theDiv2=getEle2('InfoBoxB');
	theDiv.left = xposA;
	theDiv.top =  yposA;
	theDiv2.left = xposB;
	theDiv2.top =  yposB;
}

function writePic(strURL,strOut){

	if(strURL != 'false'){
		if(strURL == '' ){
			if(document.all) document.all['InfoBox'].style.backgroundColor = "transparent";
		}
		else {
			if(document.all) document.all['InfoBox'].style.backgroundColor = "#cccccc";
			strURL = "<img src='" + ROOT_URL + "member/upload_image/small/" + strURL + "' width=48 height=60>"
		}
	}
	layer_write('InfoBox', '')
	if(strURL != 'false') layer_write('InfoBox', strURL)
	strOut = '<table bgcolor=black cellpadding=1 cellspacing=0 border=0><tr><td><table bgcolor=#ffffcc cellpadding=1 cellspacing=0 border=0><tr><td><font size=1 color=black face=arial>' + strOut + '</font></td></tr></table></td></tr></table>'
	layer_write('InfoBoxB', strOut)
}

function Showit(){

	theDiv=getEle2('InfoBox');
	theDiv2=getEle2('InfoBoxB');

	if(document.layers){
		theDiv.visibility = "show"
		theDiv2.visibility = "show"
	}else{
		theDiv.visibility =  "visible";
		theDiv2.visibility =  "visible";
	}

}

function showInfo(strOut, picURL){
	
	if(bPageLoaded==false || GetCookie("CookieUid") == null) return;

	tId = setTimeout("showInfoB('" + strOut + "','" + picURL + "')", 500)
}


function showInfoB(strOut, picURL){

	setXY(xx,yy)

	writePic(picURL,strOut);

	Showit();	
}

	
function hideInfo(){
	if (GetCookie("CookieUid") == null ) return;
	if(tId != null) clearTimeout(tId);
	theDiv=getEle2('InfoBox');
	theDiv2=getEle2('InfoBoxB');	
	if(document.layers){
		theDiv.visibility = "hide"
		theDiv2.visibility = "hide"
	}
	else{
		theDiv.visibility =  "hidden";
		theDiv2.visibility =  "hidden";
	}
}


// ---------------------------------------------Functions for 'messages':


function getMessSaved() //get saved mess on page init NOT USED
{	
	parent.resultsDivtarget.location.href = ROOT_URL + "scripts/Message.php"; 
}

function updateMess() //called every x seconds,NOT USED
{
	if(document.layers) return;
	load(false);
	//parent.resultsDivtarget.location.href = ROOT_URL + "scripts/Message.php";
	//parent.resultsDivtarget.location.reload() 
}

function loadFinish()//when mess iframe has loaded,called from iframe
{	
	var el = getEle('resultsDiv');
	el.innerHTML = parent.syscheck.document.body.innerHTML;
}

function loadFinish2()//after send mess has been saved,called from iframe
{	
	load(false);
	//parent.resultsDivtarget.location.href = ROOT_URL + "scripts/Message.php";
	//parent.resultsDivtarget.location.reload()
}

function updateContents()//send mess
{ 
	document.myform.action = ROOT_URL + "scripts/Message_save.php";
	document.myform.submit()
	setTimeout("clearMessField();",200)
}



function clearMessField()// clears the Message field
{
	document.myform.mess.value='';
}


function SendMess() //send or get mess
{
	selMemberUname 	= document.myform.uname.value;
	selMemberID 	= document.myform.uid.value;
	MessText 	= document.myform.mess.value;

	if(MessText!=''){
		if(selMemberUname ==''){
			alert("Du måste välja en användare");
			return;
		}
		updateContents()	
	}
	else{
		load(false);
		//parent.resultsDivtarget.location.href = ROOT_URL + "scripts/Message.php";
		//parent.resultsDivtarget.location.reload() 			
	}	
}

// show inlogged time:
function showTime()
{
	var Digital = new Date()
	var ms = Digital.getTime();	
	var T =  GetCookie("time");
	var diff = ms - T;
	var Digital = new Date(diff)
	var hours   = Digital.getHours() -1;
	var minutes = Digital.getMinutes()
	var seconds = Digital.getSeconds()
	myclock="<font size='1' face='Arial' color=white>" + hours + " timmar " + minutes + " minuter "	 + seconds + " sekunder </font>"
	layer_write('liveclock', myclock)    
	setTimeout("showTime()",1000)
}


// generic functions--------------------------------------------------------------------------------:


//gets name of class 
function getClsNameStr(strId){
	if(document.all){
	    return "document.all['" + strId + "'].className";
	}else{
		return "document.getElementById('" + strId + "').className";
	}
}

//sets css class
function setCSScls(strId,strCls){
	eval(getClsNameStr(strId) + " = '"+strCls+"'"); // sets correct CSS class
}

function getEle(id) 
{    
	if (document.layers){       
		return document.layers[id];
	}
	else if (document.all){       
		return document.all[id];
	}
	else{		
		return document.getElementById(id);
	}
}
function getEle2(id) 
{    
	if (document.layers){       
		return document.layers[id];
	}
	else if (document.all){       
		return document.all[id].style;
	}
	else{		
		return document.getElementById(id).style;
	}
}

//write layer function
function layer_write(strLayer, strOut){
	if (document.layers){
		document.layers[strLayer].document.open()
		document.layers[strLayer].document.write(strOut)
		document.layers[strLayer].document.close()
	}
	else if(document.all){			
		document.all[strLayer].innerHTML = strOut;
	}
	else{
		document.getElementById(strLayer).innerHTML = strOut;
	}
}
//write layer function
function layer_writeb(strLayer, strOut){
	if (document.layers){
		top.nav.document.layers[strLayer].document.open()
		top.nav.document.layers[strLayer].document.write(strOut)
		top.nav.document.layers[strLayer].document.close()
	}
	else if(document.all){			
		top.nav.document.all[strLayer].innerHTML = strOut;
	}
	else{
		top.nav.document.getElementById(strLayer).innerHTML = strOut;
	}
}

//------------- cookie funcs
	
function getCookieVal (offset) {
  var endstr = document.cookie.indexOf (";", offset);
  if (endstr == -1)
    endstr = document.cookie.length;
  return unescape(document.cookie.substring(offset, endstr));
}


function FixCookieDate (date) {
  var base = new Date(0);
  var skew = base.getTime(); // dawn of (Unix) time - should be 0
  if (skew > 0)  // Except on the Mac - ahead of its time
    date.setTime (date.getTime() - skew);
}


function GetCookie (name) {
  //if (name=='CookieUid') return 6654;
  var arg = name + "=";
  var alen = arg.length;
  var clen = document.cookie.length;
  var i = 0;
  while (i < clen) {
    var j = i + alen;
    if (document.cookie.substring(i, j) == arg)
      return getCookieVal (j);
    i = document.cookie.indexOf(" ", i) + 1;
    if (i == 0) break; 
  }
  return null;
}

function SetCookie (name,value,expires,path,domain,secure) {
  document.cookie = name + "=" + escape (value) +
    ((expires) ? "; expires=" + expires.toGMTString() : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
}


function DeleteCookie (name,path,domain) {
  if (GetCookie(name)) {
    document.cookie = name + "=" +
      ((path) ? "; path=" + path : "") +
      ((domain) ? "; domain=" + domain : "") +
      "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}