function toggle(nr)
{
	if (document.getElementById)
	{
		current = (document.getElementById(nr).offsetWidth == 0) ? 'block' : 'none';
		document.getElementById(nr).style.display = current;
	}
	else if (document.all)
	{
		current = (document.all[nr].style.display == 'block') ? 'none' : 'block'
		document.all[nr].style.display = current;
	}
	else if (document.layers)
	{
		var i = parseInt(nr.substr(nr.length-1,1));
		var replacing = heights[i-1];
		if (shown[i])
		{
			shown[i] = false;
			replacing = -replacing;
			document.layers[nr].visibility = 'hide';
			document.layers[nr].top = safe;
		}
		else
		{
			shown[i] = true;
			document.layers[nr].visibility = 'show';
			var tempname = 'header' + i;
			document.layers[nr].top = document.layers[tempname].top + headerheight;
		}
		for (j=(i+1);j<=max;j++)
		{
			name1 = 'header' + j;
			document.layers[name1].top += replacing;
			if (shown[j])
			{
				name2 = 'number' + j;
				document.layers[name2].top += replacing;
			}
		}
	}
	else alert ('This link does not work in your browser.');
}

function topMode(mode) {
	document.cookie = "topmode="+mode+"; expires=Thu, 2 Aug 3001 20:47:11 UTC; path=/photo/";
	location.reload();
}

function openwindow(id, w, h)
{
        var params = "width=" + (w == 0 ? 640 : w+32) + ", height=" + (w == 0 ? 480 : h+18) + ",menubar=no,location=no,resizable=yes,scrollbars=yes";
        Photo = window.open(id, 'Photo', params);
        Photo.focus();
}

function fade(sElemId, sRule, bBackward)
{
  if (!document.getElementById(sElemId)) return;
  var aRuleList = sRule.split(/\s*,\s*/);
  for (var j  = 0; j < aRuleList.length; j++)
  {
    sRule = aRuleList[j];
    
    if (!fade.aRules[sRule]) continue;
    var i=0;
    if (!fade.aProc[sElemId])
    {
      fade.aProc[sElemId] = {};
    }
    else if (fade.aProc[sElemId][sRule])
    {
      i = fade.aProc[sElemId][sRule].i;
      clearInterval(fade.aProc[sElemId][sRule].tId);
    }
    
    if ((i==0 && bBackward) || (i==fade.aRules[sRule][3] && !bBackward)) continue;
    fade.aProc[sElemId][sRule] = {'i':i, 'tId':setInterval('fade.run("'+sElemId+'","'+sRule+'")', fade.aRules[sRule][4]),'bBackward':Boolean(bBackward)};
  }
}
fade.aProc = {};
fade.aRules = {};

fade.run = function(sElemId, sRule)
{
  fade.aProc[sElemId][sRule].i += fade.aProc[sElemId][sRule].bBackward?-1:1;
  var finishPercent = fade.aProc[sElemId][sRule].i/fade.aRules[sRule][3];
  var startPercent = 1 - finishPercent;
  var aRGBStart = fade.aRules[sRule][0];
  var aRGBFinish = fade.aRules[sRule][1];
  document.getElementById(sElemId).style[fade.aRules[sRule][2]] = 'rgb('+ 
  Math.floor( aRGBStart['r'] * startPercent + aRGBFinish['r'] * finishPercent ) + ','+
  Math.floor( aRGBStart['g'] * startPercent + aRGBFinish['g'] * finishPercent ) + ','+
  Math.floor( aRGBStart['b'] * startPercent + aRGBFinish['b'] * finishPercent ) +')';
  
  if ( fade.aProc[sElemId][sRule].i == fade.aRules[sRule][3] || fade.aProc[sElemId][sRule].i ==0) clearInterval(fade.aProc[sElemId][sRule].tId); 
}

fade.back = function (sElemId, sRule){fade(sElemId, sRule, true);};
fade.addRule = function (sRuleName, sFadeStartColor, sFadeFinishColor, sCSSProp, nMiddleColors, nDelay)
{
  fade.aRules[sRuleName] = [fade.splitRGB(sFadeStartColor), fade.splitRGB(sFadeFinishColor), fade.ccs2js(sCSSProp), nMiddleColors || 50, nDelay || 1];
};

fade.splitRGB = function (color){var rgb = color.replace(/[# ]/g,"").replace(/^(.)(.)(.)$/,'$1$1$2$2$3$3').match(/.{2}/g); for (var i=0;  i<3; i++) rgb[i] = parseInt(rgb[i], 16); return {'r':rgb[0],'g':rgb[1],'b':rgb[2]};};
fade.ccs2js = function (prop){var i; while ((i=prop.indexOf("-"))!=-1) prop = prop.substr(0, i) + prop.substr(i+1,1).toUpperCase() + prop.substr(i+2); return prop;};

fade.addRule('fadeRule1',"#fff","#fff", "background-color", 50, 1);
fade.addRule('fadeRule2',"#e8e8e8","#ffb802", "border-color", 30, 2);
fade.addRule('fadeRule3',"#FFF","#929292", "color", 50, 1);

function closelayer(layer,section){
 document.getElementById("layer"+layer).style.visibility="hidden";
}
function openlayer(layer,section){
 document.getElementById("layer"+layer).style.visibility="visible";
}



function openchatwindow(eventtip, id)
{
        var params = "width=340, height=560 ,menubar=no,location=no,resizable=yes,scrollbars=no,status=0,statusbar=0";
	minitrep = window.open('/minitrep.php?type=' + eventtip + '&id=' + id, 'minitrep' + id, params);
        minitrep.focus();
}

function sar(mytime, id, eventtip) {
    var rand = Math.floor(Math.random() * 10000000); 
    img = new Image;
    img.src = '/detector.php?type=' + eventtip + '&id=' + id + '&r=' + rand;
    minichat = read_cookie( eventtip );
    if (minichat > mytime) {
	minichats = read_cookie( eventtip + 's' );
	if (eventtip == 'minichat') {
		openchatwindow(eventtip, minichats);
	}
	
	if (eventtip == 'inchat') {
	    	window.location = '/minitrep.php?id=' + minichats + '&type=init';
	}
	if (eventtip == 'deny') {
	    	window.location = '/minitrep.php?id=' + minichats + '&type=deny';
	}
	if (eventtip == 'reloadbody') {
	    	window.chatbox.location = '/minitrepbody.php?id=' + minichats;
	}
	if (eventtip == 'trepevent') {
	    	window.parent.frames[0].document.location='/trepbody.php';
	}

    }
    setTimeout('sar('+ mytime + ',' + id + ',"' + eventtip + '")', 10000);
}


function sarquick(mytime, id, eventtip) {
    var rand = Math.floor(Math.random() * 10000000); 
    img = new Image;
    img.src = '/detector.php?type=' + eventtip + '&id=' + id + '&r=' + rand;
    minichat = read_cookie( eventtip );
    if (minichat > mytime) {
	minichats = read_cookie( eventtip + 's' );
	if (eventtip == 'inchat') {
	    	window.location = '/minitrep.php?id=' + minichats + '&type=init';
	}
	if (eventtip == 'deny') {
	    	window.location = '/minitrep.php?id=' + minichats + '&type=deny';
	}
    }
    setTimeout('sarquick('+ mytime + ',' + id + ',"' + eventtip + '")', 2000);
}


function read_cookie(name) {
    var cookieValue = "";
    var search = name + "=";
    if(document.cookie.length > 0) { 
        offset = document.cookie.indexOf(search);
        if (offset != -1) { 
            offset += search.length;
            end = document.cookie.indexOf(";", offset);
            if (end == -1) end = document.cookie.length;
            cookieValue = unescape(document.cookie.substring(offset, end))
        }
    }
    return cookieValue;
}

function write_cookie(name, value, hours) {
    var expire = "";
    if(hours != null) {
        expire = new Date((new Date()).getTime() + hours * 3600000);
        expire = "; expires=" + expire.toGMTString();

    }
    document.cookie = name + "=" + escape(value) + expire + "; path=/";
}

function start(mytime, id, eventtip) {
    write_cookie ('mytime', mytime, 1);
    sar (mytime, id, eventtip);
}
function startquick(mytime, id, eventtip) {
    write_cookie ('mytime', mytime, 1);
    sarquick (mytime, id, eventtip);
}



