function SubmitLogin()
{
	var uNameElm	= document.getElementById('username');
	var passElm		= document.getElementById('userPass');
	var userName	= uNameElm.value;
	var userPass	= passElm.value;
	if(!userName) { alert('Enter your User name');uNameElm.focus=true; return false };
	if(!userPass) { alert('Enter your User password');passElm.focus=true; return false };	
	processType	= 1;
	document.getElementById("login-progress").style.visibility	= 'visible';
	document.getElementById("login-button").disabled	= true;
	URL	= "ecos=1&userName="+userName+"&userPass="+userPass;
	ProcessHTMLHttpRequestHTML(URL);	
}
function LogOut()
{
	processType	= 1000;
	URL			= "ecos=1000";	
	ProcessHTMLHttpRequestHTML(URL);	
}
/*--------------------------------------------------------------*/
function showDate()
{	
	var	d			= new Date();
		d.setTime(d.getTime()+TSDiff);
	var hour= d.getHours();
	var min	= d.getMinutes();
	var sec	= d.getSeconds();
	min		= (min  < 10 ? "0"+min : min);
	sec		= (sec  < 10 ? "0"+sec : sec);
	if(!document.getElementById("timeDisplay")) 
	{  
		clearTimeout(Timers['clockTimer']);
		return false; 
	}
	document.getElementById("timeDisplay").innerHTML	= hour+":"+min+":"+sec;
	Timers['clockTimer']	= setTimeout('showDate()',1000);
}

function SyncTime()
{	
	processType		= 999;
	var	d			= new Date();
	var clientTS	= d.getTime();
	var URL			= "ecos=999&clientTS="+clientTS;
	Timers['syncTimer']		= setTimeout('SyncTime()',120000);
	clearTimeout(Timers['syncTimer']);
	ProcessHTMLHttpRequest(URL);
}
/*------------------------------------------------------------------------------*/
// JavaScript Document
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}
/*-------------------------------------------------------------------------*/
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
/*-----------------------------------------------------------------------------------------------*/
function displayConfirmation()
{
	var val
	val=confirm("This operation wil remove the current payment detail. Click OK if you want to continue")
	if(val)	return true
	else	return false
}
function displayDeleteConfirmation()
{
	var val
	var conf
	conf=confirm("This operation wil delete the current payment detail. Click OK if you want to continue")
	if(conf)
	{
		alert("Continue with deletion")
		return true
	}
	else return false
}

/*-----------------------SCROLL TO PARTICULAR ELEMENT ----------------------------*/
function ScrollToElement(elementId,parentId) 
{	
	var chElment		= document.getElementById(elementId);
	var parentElement	= document.getElementById(parentId);

	var x = chElment.x ? chElment.x : chElment.offsetLeft;
    var y = chElment.y ? chElment.y : chElment.offsetTop;
    	y = y-360; // to position to the center;
    /*window.scrollTo(x, y);*/
    parentElement.scrollTop = y;
}

/*-----------------------------------------------------------------------------------*/
function ScrollToEnd(divId)
{
	var listDiv = document.getElementById(divId);	
	listDiv.scrollTop = listDiv.scrollHeight
}
/*-----------------------------------------------------------------------------------*/
function ChkTime(H,m,s,format)
{
	switch(format)
	{
		case 12:
			if(H < 0 || H > 12 || m < 0 || m > 59 || s < 0 || s > 59){ alert("Enter proper time"); return false; }
			return 1;
		break;
		default :
			if(H < 0 || H > 23 || m < 0 || m > 59 || s < 0 || s > 59){ alert("Enter proper time"); return false; }
			return 1;
		break;
	}	
}
/*-----------------------------------------------------------------------------------*/
function EnableElements(elements)
{
	for(var i=0;i < elements.length; i++)
	{
		EnableElement(elements[i]);
	}	
}
function DisableElements(elements)
{
	for(var i=0;i < elements.length; i++)
	{
		DisableElement(elements[i]);
	}	
}
function EnableElement(elementId)
{
	if(!document.getElementById(elementId)) return false;
	document.getElementById(elementId).disabled = false;
}
function DisableElement(elementId)
{
	if(!document.getElementById(elementId)) return false;
	document.getElementById(elementId).disabled = true;
}
/*------------------------------------------------------------------------------------*/
function ResetElement(elementId)
{
	if(!document.getElementById(elementId)) return false;	
	try
	{		
		var element	= document.getElementById(elementId);
		
		if(!element.type)
		{
			element.innerHTML = '';
		}		
		else if(element.type.substring(0,6) == "select")
		{
			element.options[0].selected = true;
		}
		else if(element.type == "text")
		{
			element.value = '';
		}
	}
	catch(err){}
}

function GetMultipleSelectValues(selectBox)
{
	var totalItems 		= selectBox.options.length;
	var selectedItems 	= new Array();
	var selected	= false;
	for(i=0,j=0; i < totalItems; i++)
	{
		if(selectBox.options[i].selected==true)
		{
			selectedItems[j] = selectBox.options[i].value;
			selected		  = true;
			j++;
		}	
	}	
	return selectedItems;
}


function RemoveMedia()
{
	var elmnts = document.all ? document.all : document.getElementsByTagName('*');
	var fileSelected	= new Array();
	var fleIndx			= 0
	for(i = 0; i < elmnts.length; i++)
	{
		if(elmnts[i].type == "checkbox")
		{
			if(elmnts[i].checked == true)
			{
				fileSelected[fleIndx] = elmnts[i].value;
				fleIndx++;
			}
		}
	}
	if(fileSelected.length < 0) { alert("Select the media files that you want to delete"); return false; }
	if(fileSelected.length > 20){ alert("Attention ! You have selected "+fileSelected.length+" files \n You can remove only 20 files at a time"); return false; }
	
	var confrm	= confirm("Do you want to remove the selected "+fileSelected.length+" files(s) ");
	if(confrm)
	{
		var formData	= "<form name='removeMedia' method='POST' action='index.php?ecos=135' ><input type='hidden' name='removeItems' value='"+fileSelected+"'></form>";
		document.getElementById("app-wrap").innerHTML	+= formData;
		document.removeMedia.submit();
	}
}

function Display(str,method)
{
	if(method == 1)
		document.getElementById("testWrite").innerHTML	=  str;
	if(method == 2)
		document.getElementById("testWrite").innerHTML	+=  str;
}

function ShowHideProgress(val)
{
	if(!document.getElementById("progressDiv"))
	{
		if(!document.getElementById('tabsmenu')) return null; // returns null for login screen
		document.getElementById('tabsmenu').innerHTML	+= '<div id="progressDiv" class="working" style="width:35px;"><img src="gCoSign/images/working.gif" width="22" ></div>';
	}
	var progressDiv = document.getElementById('progressDiv');
	switch (val)
	{		
		case 1:
			
			progressDiv.style.display='';
		break;
		
		case 2:
				    progressDiv.style.display='none';
				//progressDiv.parentNode.removeChild(progressDiv);
		break;		
	}
	/*if(val == 1)
	{
		if(!document.getElementById("overlay") && document.getElementById("body-wrap"))
		{
			document.getElementById("body-wrap").innerHTML += "<div id='overlay'></div><div id='loading'><img src='gCoSign/images/loading.gif'></div>";
			/*document.getElementById("top").innerHTML += "<div id='div-processing' style='position:relative;z-index:255;float:right;height:25px;'><img src='images/progress2.gif' width='20' border='0'></div>";
		}
	}
	else if(document.getElementById("overlay"))
	{
		var overlay = document.getElementById( 'overlay' );
		var loading = document.getElementById( 'loading' ); 
		    overlay.parentNode.removeChild(overlay);
		    loading.parentNode.removeChild(loading);
	}*/
}

function InArray(arrayInput,str)
{
	for(var arrKey in arrayInput)
	{
		if(arrayInput[arrKey] == str) return true;
	}
	return false;
}
function LoadJsCSSfile(fileName, filetype)
{
	if (filetype=="js")
	{ 
		var fileref	= document.createElement('script')
			fileref.setAttribute("type","text/javascript")
			fileref.setAttribute("src", fileName)
			fileref.setAttribute("language", "javascript")
	}
	else if (filetype=="css")
	{ 
		var fileref=document.createElement("link")
			fileref.setAttribute("rel", "stylesheet")
			fileref.setAttribute("type", "text/css")
			fileref.setAttribute("href", fileName)
	}
	if (typeof fileref!="undefined") 
	{
		document.getElementsByTagName("head")[0].appendChild(fileref);
	}
}

function RemoveJsCSSFile(fileName, fileType)
{
	var targetElement=(fileType=="js")? "script" : (fileType=="css")? "link" : "none";
	var targetAttr	 =(fileType=="js")? "src" 	 : (fileType=="css")? "href" : "none";
	var allSuspects	 = document.getElementsByTagName(targetElement)
	for (var i=allSuspects.length; i>=0; i--)
	{ //search backwards within nodelist for matching elements to remove
		if (allSuspects[i] && allSuspects[i].getAttribute(targetAttr)!=null && allSuspects[i].getAttribute(targetAttr).indexOf(fileName)!=-1)
		allsuSpects[i].parentNode.removeChild(allsuSpects[i]);
	}
}

/*--------------------------------------------------------------------*/
function SelectDivClicked(elm)
{	
	//elm	= elm.parentNode;
	if(divSelected)
	{
		if(divSelected.id != elm.id)
		{
			if(document.getElementById(divSelected.id))
				document.getElementById(divSelected.id).className='list-item';
				
			elm.className='list-item-selected';
			divSelected	 = elm;
		}
		else if(document.getElementById(divSelected.id))
		{
			document.getElementById(divSelected.id).className = 'list-item';
			divSelected="";
		}
	}
	else
	{
		elm.className='list-item-selected';
		divSelected	 = elm;
		
	}
		// Shows file preview for selected files in the list while editing a campaign
		if(window.addedFiles && divSelected) 
		{ 
			var rowId	= divSelected.id.substring(5);
			ShowFilePreview(addedFiles[rowId]);
			return null;
		}
		//
}
function PreSelectItem(changeTo)
{
	if(divPreSelected)
	{
		var id	= divPreSelected.id.substring(5)-0;
		if((id+changeTo < 0) || (id+changeTo >= recId))
			changeTo = 0;
		else
		{			
			var newId 			=  id + changeTo;
			divPreSelected.className = "list-item";
			divPreSelected	= document.getElementById("table"+newId);
		}
		
	}
	else if(divSelected)
	{
		var id=divSelected.id.substring(5)-0;
		if((id+changeTo < 0) || (id+changeTo >= recId))
			changeTo = 0;
		else
		{			
			var newId 		=  id + changeTo;
			divPreSelected	= document.getElementById("table"+newId);
		}
	}
	else
	{		
		divPreSelected = document.getElementById("table0");
	}
	if(divPreSelected)
	{
		divPreSelected.className = "list-item-pre-selected";	
	}
}

function GetElementValue(elementId)
{
	if(document.getElementById(elementId)) return document.getElementById(elementId).value;
	return 'undefined';
}

function KeybordEvents(e)
{
	var unicode	= e.keyCode? e.keyCode : e.charCode;
	if(document.getElementById("table0") && divSelected)
	{
		currId	= divSelected.id.substring(5) - 0;
		var prevElm	= currId > 0 ? document.getElementById("table"+(currId-1)) : divSelected;
		var nextElm	= document.getElementById("table"+(currId + 1)) ? document.getElementById("table"+(currId + 1)) : divSelected;
		
		switch(unicode)
		{			
			case 38: // Key Up-arrow
				var action	= e.ctrlKey ? MoveFile(-1) : SelectDivClicked(prevElm);				
			break;
			
			case 40: // Key Down-arrow
				var action	= e.ctrlKey ? MoveFile(1) : SelectDivClicked(nextElm);
			break;
			
			case 46: // Key Delete
				//RemoveFile();
			break;
			
			case 32: //space
			break;
		}
	}
}

function ClearTimeouts()
{
	if(!Timers) { alert('variable Tmers is not defined'); return false; }
	if(!ClearTimeoutArray) { alert('variable Tmers is not defined'); return false; }
	for(i =0; i < ClearTimeoutArray.length; i++)
	{
		key	= ClearTimeoutArray[i];
		if(Timers[key])
		ClearVariableTimeout(Timers[key]);
	}
}

function ClearVariableTimeout(timerVar)
{		
	try 
	{
		if(!timerVar) return false;
		clearTimeout(timerVar);
	}
	catch(e)
	{
		//alert(e.toString);
	}
}