var confFlashIndicator="off";
function flashMessage()
{
	confFlashIndicator="off";
	flashHelper(0);
}
function flashHelper(times)
{
 try
 {
  times++;
  if(times<8)
  {
   if(confFlashIndicator=="off")
   {
    confFlashIndicator="on";
    if($("messageNew"))
    {
     $("messageNew").src='/images/message.gif';
    }
   }else{
    confFlashIndicator="off";
    if($("messageNew"))
    {
     $("messageNew").src='/images/messager.gif';
    }
   }
  setTimeout("flashHelper("+times+")",80);
 }else{
	setTimeout("flashMessage()",10000);
 }
 }catch(e)
 {
  alert(e.message + " in DCSDialog.flashHelper");
  return false;
 }
}

function insertAtCursor(myField, myValue) {
//IE support
myField=document.getElementById(myField);
if (document.selection) {
myField.focus();
sel = document.selection.createRange();
sel.text = myValue;
}
//MOZILLA/NETSCAPE support
else if (myField.selectionStart || myField.selectionStart == '0') {
var startPos = myField.selectionStart;
var endPos = myField.selectionEnd;
myField.value = myField.value.substring(0, startPos)
+ myValue
+ myField.value.substring(endPos, myField.value.length);
} else {
myField.value += myValue;
}
}
	



function GetXmlHttpObject(handler)
{ 
	var objXMLHttp=null
	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
           objXMLHttp = new XMLHttpRequest();
            if (objXMLHttp.overrideMimeType) {
                objXMLHttp.overrideMimeType('text/xml');
                // See note below about this line
            }
        } else if (window.ActiveXObject) { // IE
            try {
                objXMLHttp = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    objXMLHttp = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
       }
	return objXMLHttp
}
function insertAfter( referenceNode, newNode )
{    
	if(referenceNode.nextSibling)
	{
		referenceNode.parentNode.insertBefore( newNode, referenceNode.nextSibling );
	}else{
		referenceNode.parentNode.appendChild(newNode);
	}
}
function $()
{
 try
 {
  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;
 }catch(e)
 {
 
 }
}
function replaceAll(str,from,to)
{ 
	var idx = str.indexOf( from ); while ( idx > -1 ) { str = str.replace( from, to ); idx = str.indexOf( from );}
	return str;
}
function swapI(el,w)
{
	if(w=='on')
	{
		el.src='/images/editon.jpg';
	}else{
		el.src='/images/edit.jpg';
	}
}
function swapText(el,w)
{
	v=el.value;

	switch(el.id)
	{
		case "username":
			if(v=="Username"){el.value="";el.className='';}
			if(w=="b" && v==""){el.value="Username";el.className='greyt';}
			break;
		case "password":
			if(v=="Password"){el.value="";el.className='';}
			if(w=="b" && v==""){el.value="Password";el.className='greyt';}
			break;
		case "subemail":
			if(v=="Email address"){el.value="";el.className='';}
			if(w=="b" && v==""){el.value="Email address";el.className='greyt';}
			break;
			
	}
}

function subscribe(username,tid,sid)
{
	ajem=GetXmlHttpObject();
	if (ajem==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	} 
	var url="sb.php?username="+username+"&tid="+tid+"&picj="+sid;
	url=url+"&popo="+rand();
	ajem.onreadystatechange=replyemailsub;
	ajem.open("GET",url,true);
	ajem.send(null);
}
function replyemailsub()
{
	if (ajem.readyState==4 || ajem.readyState=="complete")
	{
		if(ajem.status!="200")
		{
			alert("Sorry but a " + ajem.status + " error occurred and we can not ad your email to the service a this time.\n\nPlease try again later");
		}else{
			alert(ajem.responseText);
		}
	}	
}
function rand()
{
	var r = new Date().getMilliseconds();
	return r;
}
function emailCheck (e)
	{ 
//{0}REF : http://www.mantissa.co.uk I used to work for this company
		var emailStr;
		emailStr = e;
		valid = true;
		
		var checkTLD=0; 
		var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum|uk|se)$/; 
		var emailPat=/^(.+)@(.+)$/; 
		var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]"; 
		var validChars="\[^\\s" + specialChars + "\]"; 
		var quotedUser="(\"[^\"]*\")"; 
		var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/; 
		var atom=validChars + '+'; 
		var word="(" + atom + "|" + quotedUser + ")"; 
		var userPat=new RegExp("^" + word + "(\\." + word + ")*$"); 
		var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$"); 
		var matchArray=emailStr.match(emailPat); 
		
		if (matchArray==null)
		{ 
			valid=("The email address is invalid"); 
			//valid = false;
		}else
		{
			var user=matchArray[1]; 
			var domain=matchArray[2]; 
			
			for (i=0; i<user.length; i++)
			{ 
				if (user.charCodeAt(i)>127)
				{ 
					valid=("The username contains invalid Characters."); 
					//valid = false; 
				} 
			} 
			for (i=0; i<domain.length; i++)
			{ 
				if (domain.charCodeAt(i)>127)
				{ 
					valid=("The domain dame contains invalid characters."); 
					//valid = false; 
				} 
			} 
			if (user.match(userPat)==null)
			{ 
				valid=("The username is invalid."); 
				//valid = false; 
			} 
			
			var IPArray=domain.match(ipDomainPat); 
			if (IPArray!=null)
			{ 
				for (var i=1;i<=4;i++)
				{ 
					if (IPArray[i]>255)
					{ 
						valid=("The destination IP address is invalid."); 
						//valid = false; 
					} 
				} 
				
			} 
			var atomPat=new RegExp("^" + atom + "$"); 
			var domArr=domain.split("."); 
			var len=domArr.length; 
			for (i=0;i<len;i++)
			{ 
				if (domArr[i].search(atomPat)==-1)
				{ 
					valid=("The domain name is invalid."); 
					//valid = false;
				} 
			} 
			if (checkTLD && domArr[domArr.length-1].length!=2 && domArr[domArr.length-1].search(knownDomsPat)==-1)
			{ 
				valid=("The domain name extension is invalid"); 
				//valid = false; 
			} 
			if (len<2)
			{ 
				valid=("The address is missing a hostname."); 
				//valid = false; 
			} 
		}
		return valid;
	}

