﻿var monthName=new Array(12);
monthName[1]="January";
monthName[2]="February";
monthName[3]="March";
monthName[4]="April";
monthName[5]="May";
monthName[6]="June";
monthName[7]="July";
monthName[8]="August";
monthName[9]="September";
monthName[10]="October";
monthName[11]="November";
monthName[12]="December";

/* Fix background flicker problem */
try {
  document.execCommand("BackgroundImageCache", false, true);
} catch(err) {}

function process_form(theForm)
{
    new ajax.Loader("","",updateForum,theForm);
	return false
}

function findPos(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		var obj2 = obj;
		while (obj2 = obj2.offsetParent) {
		    if (obj2.offsetLeft != undefined)
			    curleft += obj2.offsetLeft;
            if (obj2.offsetTop != undefined)
			    curtop += obj2.offsetTop;
		}
		
		// Now compensate for scollbars
		var oHTML = document.getElementsByTagName("html")[0];
		var body=document.getElementsByTagName("BODY")[0];
		while (((obj = obj.parentNode) && obj != body) && obj.className != "box") {
		    if (obj != oHTML) {
		        if (obj.scrollLeft != undefined)
    			    curleft -= obj.scrollLeft;
                if (obj.scrollTop != undefined) {
    			    curtop -= obj.scrollTop;
    			}
    	    }
		}
		
	}
	return [curleft,curtop];
}

function mousePos(e)
{
    if (e.pageX || e.pageY) 	{
		curleft = e.pageX;
		curtop = e.pageY;
	}
	else if (e.clientX || e.clientY) 	{
		curleft = e.clientX + document.body.scrollLeft
			+ document.documentElement.scrollLeft;
		curtop = e.clientY + document.body.scrollTop
			+ document.documentElement.scrollTop;
	}
	
	return [curleft, curtop]

}

function getElementByClass(parent,tagName,className)
{
    var selection=null;
    
    var elements = parent.getElementsByTagName(tagName);
    for (i=0;i<elements.length;i++) {
        if (elements[i].className==className)
            selection = elements[i];
    }
    
    return selection;
}

function getParentElementByClass(src,tagName,className)
{
    var selection=null;
    
    var element = src.parentNode;
    if (element)
        if (element.className != className || element.tagName != tagName)
            element = getParentElementByClass(element,tagName,className);
    
    return element;
}

function RGBToHex(rgb) {
	var response="";
	rgb = rgb.replace(/[^0-9,]/g,"");
	var bits = rgb.split(",");
	
	for (var i=0;i< bits.length;i++) {
		bits[i] = parseInt(bits[i]).toString(16);
		if (bits[i].length < 2)
			response += "0";
		response += bits[i];
	}
	
	return response;
} 

function getStyle(element,style)
{
	var result = null;
	var hyphen = style.indexOf("-");
	ieStyle = style;
	//IE needs to have "-" stripped out of style names whereas firefox doesn't
	if (hyphen > 0) {
	    ieStyle = style.substr(0,hyphen) + style.substr(hyphen+1,1).toUpperCase() + style.substr (hyphen +2);
	}
	
	if (element.currentStyle)
		var result = element.currentStyle[ieStyle];
	else if (window.getComputedStyle)
		var result = document.defaultView.getComputedStyle(element,null).getPropertyValue(style);
		
	// strip "px"
	result = result.replace(/px/,"");
		
	return result;
}



var menuX;
var menuFinalX;
var menu=0;

function SubMenu(id)
{
return;
    var d = document.getElementById(id);
	for (var i = 1; i<=13; i++) {
		if (document.getElementById('sMenu'+i)) {
		    document.getElementById('sMenu'+i).style.display='none';
		}
	}

    if (d && boxDragging==null) {
        var cur = findPos(d.parentNode);
        d.style.left = cur[0] + "px";
        d.style.top = cur[1] + "px";
        d.style.display='block';
    }        
}

function defined(obj)
{
    if (typeof obj == "undefined")
        return false;
    else
        return true;
}

function getMouseXY(e) // works on IE6,FF,Moz,Opera7
{ 

  var mouseX=0;
  var mouseY=0;
  
  if (!e) e = window.event; // works on IE, but not NS (we rely on NS passing us the event)

  if (e)
  { 
    
    if (e.pageX || e.pageY)
    { // this doesn't work on IE6!! (works on FF,Moz,Opera7)
      mouseX = e.pageX;
      mouseY = e.pageY;
    }
    else if (e.clientX || e.clientY)
    { // works on IE6,FF,Moz,Opera7
      mouseX = e.clientX + document.body.scrollLeft;
      mouseY = e.clientY + document.body.scrollTop;
      if (document.documentElement) {
        if (document.documentElement.scrollLeft)
            mouseX += document.documentElement.scrollLeft;
        if (document.documentElement.scrollTop)
            mouseY += document.documentElement.scrollTop;
            
      }
            
    }  
  }
  

    // Now compensate for scollbars
    var oHTML = document.getElementsByTagName("html")[0];
    obj = document.getElementsByTagName("BODY")[0].firstChild;
    var body=document.getElementsByTagName("BODY")[0];
    while ((obj = obj.parentNode && obj != body) && obj.className != "box") {
        if (obj != oHTML) {
            if (obj.scrollLeft != undefined)
		        mouseX -= obj.scrollLeft;
            if (obj.scrollTop != undefined)    {
		        mouseY -= obj.scrollTop;
		    }
        }
    }
  
  return [mouseX,mouseY];
}

function testMouseOver(e,obj)
{
    var isOver = false;
    
    if (!e) e = window.event;
    
    rep = document.getElementById("adverts");    
    
    if (e) {
        isOver = true;
        var mouse = getMouseXY(e);
        var cur = findPos(obj);
        if (mouse[0] < cur[0] || mouse[0] > (cur[0] + obj.clientWidth) 
            || mouse[1] < cur[1] || mouse[1] > cur[1] + obj.clientHeight) {
            isOver = false;
            rep.innerHTML = rep.innerHTML + "mx=" + mouse[0] + ";my=" + mouse[1] + ";<br>divx=" + cur[0] + ";divy=" + cur[1];
            }
    }
    
    return isOver;
}


function isChildOf(node,parent) 
{
    while (node) {
        if (node == parent)
            return true;
        node=node.parentNode;
    }		    
    
    return false;
}

function toggleAll(src)
{
    var prefix = src.name.substring(0,3);
    var index = src.name.substring(3);
    var obj;
    
    // If we have set "all", clear the rest
    
    if (index == 0 && src.checked == true) {
        var cnt=1;
        var objs = src.parentNode.parentNode.getElementsByTagName("INPUT");
        for (var i=0;i<objs.length;i++) {
            if (objs[i].id != prefix + "0")
                objs[i].checked = false;
        }
    }
    if (index != 0 && src.checked == true)
        document.getElementById(prefix + "0").checked=false;
}

function toggleAllGeneric(src, allId)
{
    // If we have set "all", clear the rest
    if (src.id == allId && src.checked == true) {
        var objs = src.parentNode.parentNode.getElementsByTagName("INPUT");
        for (var i=0;i<objs.length;i++) {
            if (objs[i].id != allId)
                objs[i].checked = false;
        }
    }
    if (src.id != allId && src.checked == true)
        document.getElementById(allId).checked=false;
}


function wrDummy()
{
}

function wrAlert(HTMLResponse)
{
    if (HTMLResponse !== false) {
        if (HTMLResponse != "")
            alert(HTMLResponse);
    }
}

function opacity(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
}

//change the opacity for different browsers
function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    if (opacity == 100)
        object.filter = "";        
    else
        object.filter = "alpha(opacity=" + opacity + ")";
        
    
} 

function cancelEvent(e)
{
  if(!e)
    e = window.event;
  if (e) {
	  if(e.stopPropagation)
		e.stopPropagation();
	  if(e.preventDefault)
		e.preventDefault();
	  e.cancelBubble = true;
	  e.cancel = true;
	  e.returnValue = false;
  }
  return false;
}

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}

function tabSelect(src) {
    var obj = document.getElementById(src);
    if (!obj)
        return;
    var objParent = obj.parentNode;
    
    // Reset selected tab
    var objs = objParent.getElementsByTagName("A");
    for (var i=0;i<objs.length;i++) {
        if (objs[i].className == "selected")
            objs[i].className = "";
        if (objs[i].id == src + "Tab")
            objs[i].className = "selected";
    }
    
    // Show tab content
    var objs = objParent.getElementsByTagName("DIV");
    for (i=0;i<objs.length;i++) {
        if (objs[i].className == "wrTabContent") {
            if (objs[i].id == src) {
                objs[i].style.display = "block";
                setChildFocus(objs[i]);
            }
            else
                objs[i].style.display = "none";
        }
    }
}

function setChildFocus(src) 
{
	var focusObjs = src.getElementsByTagName("*");
	var focusIndex=0;
	var hidden;
	while (focusIndex < focusObjs.length) {
		if (focusObjs[focusIndex].tagName == "A" || (focusObjs[focusIndex].tagName == "INPUT" && focusObjs[focusIndex].type != "hidden" && !focusObjs[focusIndex].disabled) || focusObjs[focusIndex].tagName == "SELECT" || focusObjs[focusIndex].tagName == "TEXTAREA") {
			focusObjs[focusIndex].focus();
			return;
		}

		focusIndex++;		
	}
}

function wrTrim(src)
{
	var	src = src.replace(/^\s\s*/, ''),
		ws = /\s/,
		i = src.length;
	while (ws.test(src.charAt(--i)));
	return src.slice(0, i + 1);
}

function wrSetFocus(obj, defaultText)
{
    obj.focus();
    if (obj.value == defaultText)
        obj.select();

}

function wrTrim(src)
{
	var	src = src.replace(/^\s\s*/, ''),
		ws = /\s/,
		i = src.length;
	while (ws.test(src.charAt(--i)));
	return src.slice(0, i + 1);
}

function doPopup(src,openNew,e)
{
	if (!openNew)
		openNew = "Y";
		
	var url = src.href;
	url=url + "&" + "new=";
	
	if (openNew == "Y") {
		var newWindow = window.open(url + "1", '_blank', "");
		if (newWindow)
			newWindow.focus();
	} 
	else
		window.location = url + "0";
	
	if (window.event) {
		window.event.returnValue = false;
		window.event.cancelBubble = true;
	} 
	else if (e) {
		e.stopPropagation();
		e.preventDefault();
	}		
	return false;
	
}

function getVar(name)
{

	var params = document.location.search.substring(1).split("&");
	var length = params.length;
	var response=null;
	
	var bits;
	
	for (var i=0;i<length;i++) {
		bits = params[i].split("=");
		if (bits[0] == name)
			response = bits[1];
	}
	
	return response;
}

function showSubMenu(src)
{                
    if (src.className == "menuOption")
        src.getElementsByTagName("div")[0].style.display="block";
    else
        src.style.display="block";
}

function hideSubMenu()
{
    // Hide all submenus
    var objs = document.getElementById("menuStrip").getElementsByTagName("div");
    for (var i=0;i<objs.length;i++)
        if (objs[i].className == "subMenu")
            objs[i].style.display = "none";                
}        
