﻿// JScript File
function setCookie(c_name,value,expiredays)
{
	var exdate=new Date();
	exdate.setDate(exdate.getDate()+expiredays);
	document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate.toGMTString())
}

function getCookie(c_name)
{
	if (document.cookie.length>0)
  {
		c_start=document.cookie.indexOf(c_name + "=");
		if (c_start!=-1)
    { 
			c_start=c_start + c_name.length+1 ;
			c_end=document.cookie.indexOf(";",c_start);
			if (c_end==-1) c_end=document.cookie.length
				return unescape(document.cookie.substring(c_start,c_end))
    } 
  }
	return ""
}

function $ID() {
  var elements = new Array();

  for (var i = 0; i < arguments.length; i++) {
    var element = arguments[i];
    if (typeof element == 'string')
      element = document.getElementById(element);

    if (arguments.length == 1)
      return element;

    elements.push(element);
  }

  return elements;
}

function Point(x, y){this.X = x;this.Y = y;}
Point.prototype = {toString: function (){return this.X + ', ' + this.Y;}}

function $XY(elem)
{
	var x = y = 0;
	if (elem.offsetParent) 
	{
		x = elem.offsetLeft;
		y = elem.offsetTop;
		while (elem = elem.offsetParent) 
		{
			x += elem.offsetLeft;
			y += elem.offsetTop;
		}
	}
	return new Point (x,y);
}

function $WH(elem){return new Point (elem.offsetWidth, elem.offsetHeight);}

function MakeSameSize (masterElem, resizedElem)
{	
	if (masterElem && resizedElem)
	{
		var whm = $WH(masterElem);
		SizeElem (resizedElem, whm.X, whm.Y);
	}
}

function MoveElem (elem, x,y)
{	
	elem.style.position='absolute'; 
	elem.style.left=x+'px'; 
	elem.style.top=y+'px';
}

function MakeAbsolute(elem)
{	
	var pt = $XY(elem);
	elem.style.position='absolute'; 
	elem.style.left=pt.X+'px'; 
	elem.style.top=pt.Y+'px';
}

function MakeAllAbsolute(elemArray)
{	
	for(var i = 0; i < elemArray.length; i++)
	{
		//if (elemArray[i] == "HW_I_550" || elemArray[i] == "HW_I_515")
			var elem = $ID(elemArray[i]);
			MakeAbsolute(elem);
	}
}

function MakeAllRelative(elemArray)
{	
	for(var i = 0; i < elemArray.length; i++)
	{
		var elem = $ID(elemArray[i]);
		elem.style.top='0px';
		elem.style.left='0px';
		elem.style.height='230px';
		elem.style.width='250px';
		elem.style.position='relative';
	}
}

function SizeElem (elem, w, h)
{	
	elem.style.width=w+'px'; 
	elem.style.height=h+'px';
}

function CenterElem (elemId)
{	
	if (!$ID(elemId))
		return;
	var wh = $WH($ID(elemId));
  wleft = (screen.width - wh.X) / 2;
  wtop = (screen.height - wh.Y) / 2;
  MoveElem ($ID(elemId), wleft, wtop);
}

function MoveUnderParent(parentElemId, chidElemId)
{	
	if (!$ID(parentElemId) || !$ID(chidElemId))
		return;
		
	if (!$ID(parentElemId))
		return alert ('MoveUnderParent: Invalid parent element id: ' + parentElemId);
		
	if (!$ID(chidElemId))
		return alert ('MoveUnderParent: Invalid child element id: ' + chidElemId);
	
	var p1 = $XY($(parentElemId));
	MoveElem ($ID(chidElemId), p1.X, p1.Y + $WH($(parentElemId)).Y);
}

function HideElem (elem)
{
	if (elem)
	{
		elem.style.visibility='hidden';
		SizeElem (elem, 1, 1);
	}
}

function ShowElem (elem)
{
	if (elem)
		elem.style.visibility='visible';
}


function RemoveAt(array, index) // index must be a number
{
   var m_count = array.length;
            
   if ( m_count > 0 && index > -1 && index < array.length ) 
   {
      switch( index )
      {
         case 0:
            array.shift();
            break;
         case m_count - 1:
            array.pop();
            break;
         default:
            var head   = array.slice( 0, index );
            var tail   = array.slice( index + 1 );
            array = head.concat( tail );
            break;
      }
   }
   
   return array;
}	

