// JavaScript Document

var PreLoader = {bShow:false, loaderDiv:""};
PreLoader.show = function( parentDivID ){
	var parentDiv = document.getElementById(parentDivID);
	//get the div whose class name is bd
	divs = parentDiv.getElementsByTagName("div");
	var bodyDiv = null;
	for( var i = 0; i < divs.length; i++ ){
		if( divs[i].className == "bd" ){
			bodyDiv = divs[i];
		}
	}
	var loader = document.createElement("div");
	loader.style.position = 'absolute';
	loader.style.top = '30px';
	loader.style.right = '20px';
	loader.style.width = '20px';
	loader.style.height = '20px';
	loader.style.border = 'none';
	loader.style.zindex = '10px';
	loader.innerHTML = "<img src='"+ASSETS_URL+"icons/loading.gif' />";
	//loader.appendChild(img);
	if( bodyDiv != null ){
		bodyDiv.appendChild(loader);
	}
	
	this.loaderDiv = loader;
	this.bShow = true;
}
PreLoader.hide = function(){
	if( this.bShow ){
		this.loaderDiv.style.display = 'none';
		this.bShow = false;
	}
}

PreLoader.showGrid = function( gridDivId ){
	gridDivId = document.getElementById('datagrid');
	//gridDivId.style.display = 'block';
	//gridDivId.style.position = 'relative';
	//var mainDiv = document.createElement("div");
	//mainDiv.style.position = 'absolute';
	//var bodyTag = document.getElementsByTagName('body').item(0);
	
	gridDivId.className = 'gridmask';
	//var gridTable = gridDivId.getElementsByTagName("table");
	var loader1 = document.createElement("div");
	
	loader1.innerHTML = "<img src='"+ASSETS_URL+"icons/loading.gif' />";
	
	loader1.style.position = 'absolute';
	//loader1.align = 'center';
	//loader1.style.top = '30px';
	//loader1.style.left = '20px';
	//loader1.style.width = '20px';
	//loader1.style.height = '20px';
	loader1.style.zindex = '2';
	//var img = document.createElement("IMG");
	//img.src = ASSETS_URL+'icons/loading.gif';
	//setTimeout("loader1.innerText = 'Loading...'",10000);
	//loader1.appendChild( img );
	gridDivId.appendChild( loader1 );
	this.loaderDiv = loader1;
	this.bShow = true;
}

PreLoader.hideDiv = function(){
	if( this.bShow ){
		this.loaderDiv.style.display = 'none';
		this.bShow = false;
	}
}

PreLoader.showpost = function( gridDivId ){
	//alert('dsfsdfds');
	gridDivId = document.getElementById('postFrmDiv');
	//gridDivId.style.display = 'block';
	//gridDivId.style.position = 'relative';
	//var mainDiv = document.createElement("div");
	//mainDiv.style.position = 'absolute';
	//var bodyTag = document.getElementsByTagName('body').item(0);
	
	gridDivId.className = 'gridmask';
	//var gridTable = gridDivId.getElementsByTagName("table");
	var loader1 = document.createElement("div");
	loader1.innerHTML = "<img src='"+ASSETS_URL+"icons/loading.gif' />";
	loader1.style.position = 'absolute';
	//loader1.align = 'center';
	//loader1.style.top = '30px';
	//loader1.style.left = '20px';
	//loader1.style.width = '20px';
	//loader1.style.height = '20px';
	loader1.style.zindex = '2';
	//var img = document.createElement("IMG");
	//img.src = ASSETS_URL+'icons/loading.gif';
	//setTimeout("loader1.innerText = 'Loading...'",10000);
	//loader1.appendChild( img );
	gridDivId.appendChild( loader1 );
	this.loaderDiv = loader1;
	this.bShow = true;
}

YAHOO.namespace("std.container");
function getElementId(s){return(document.getElementById)?document.getElementById(s):document.all[s];}
var rowSelected=false;
var grid = {};
URI = "";
var handleFailure = function(o){
	var failureResult=getElementId("failureResult");
	failDiv = document.createElement("DIV");
	//failDiv.style.border = "#f00 solid 2px";
	//var className = ".failure{border:#f00 solid 2px}";
	failDiv.className = "failure";
	failDiv.innerHTML=o.responseText;
	document.body.item(0).appendChild(failDiv);
}
grid.next=function( classMethod,gridId,formId,val ){
		var gridUri=APPLICATION_URL+classMethod;
		formObject= getElementId(formId);
		formObject.page.value =  val;
		var grid = getElementId(gridId);
		var handleSuccess = function( o ){data = o.responseText;grid.innerHTML=data;}	
		var handleFailure = function( o ){alert(o.responseText);}	
		var callback = {success:handleSuccess,failure:handleFailure};	
		YAHOO.util.Connect.setForm(formObject);
		//if we have no file then we need to append the POST data after callback parameter
		//PreLoader.showGrid(grid);		
		connection = YAHOO.util.Connect.asyncRequest("POST",gridUri+"?ajaxcall=true",callback);
	}
	
grid.setLimit=function( formid,gridId ){
	
	var grid = getElementId(gridId);
	var formObject=getElementId(formid);
	var gridUri = '';	
	if( formObject.action.indexOf("?") == -1){
		gridUri=formObject.action+"?ajaxcall=true";
	}
	else{
		gridUri=formObject.action+"&ajaxcall=true";
	}
	//gridUri=formObject.action+"?ajaxcall=true";
	var handleSuccess = function( o ){data = o.responseText;grid.innerHTML=data;}	
	var handleFailure = function( o ){alert("failed to retrieve data!");}	
	var callback = {success:handleSuccess,failure:handleFailure};	
	
	YAHOO.util.Connect.setForm(formObject);
	//if we have no file then we need to append the POST data after callback parameter
	connection = YAHOO.util.Connect.asyncRequest("POST",gridUri,callback);
}

grid.gotoPage=function(formId,gridId){
	
	var formObject=getElementId(formId);
	var gridUri = "";
	if( formObject.action.indexOf("?") == -1 ){
		gridUri=formObject.action+"?ajaxcall=true";
	}
	else{
		gridUri=formObject.action+"&ajaxcall=true";
	}
	
	var gridId=getElementId(gridId);
	totalpages=formObject.totalpages.value;
	inputpageval=formObject.gotopage.value;
	inputpageval=parseInt(inputpageval);
	if(inputpageval==''){
		alert('please enter the page number');
		formObject.gotopage.focus();
		//return false;
	}
	else if(inputpageval>totalpages){
		alert('please enter the page number between 1 and '+totalpages);
		formObject.gotopage.focus();
		//return false;
	}
	else if(parseInt(inputpageval) != inputpageval){
		alert('please enter number only and page number between 1 and '+totalpages);
		formObject.gotopage.focus();
	}
	else {
		var grid = getElementId(gridId);
		formObject.page.value=formObject.gotopage.value;
		var handleSuccess = function( o ){
			gridId.innerHTML=o.responseText;
			PreLoader.hide();
		}	
		var handleFailure = function( o ){
			alert("failed to retrieve data!");
		}	
		var callback = {success:handleSuccess,failure:handleFailure};	
		YAHOO.util.Connect.setForm(formObject);
		//if we have no file then we need to append the POST data after callback parameter
		//PreLoader.showGrid(grid);
		connection = YAHOO.util.Connect.asyncRequest("POST",gridUri,callback);
	}
	//return true;
}

grid.switchRowCss=function(row,id,cssClass,currentRowCss){
		//var rowId=getElementId("rowId"); //when the row will selected then id will set in hidden variable of datagrid i.e. rowId
		//rowId.value = id;	
	
		ROW_ID = id;
		if(window.switchNavigation){
			switchNavigation();
		}
		var currentClass = row.className; //get the current class of the row
		
		var tbody = row.parentNode;//returns the Tbody Section
		var trs = new Array();
		trs = tbody.getElementsByTagName("tr");
		
		for(var i = 0; i < trs.length; i++ ){
			//if this is the 2nd click on rows
			if(trs[i].className == "mouseClickClass"){
				trs[i].className = currentRowCss;
				row.className = "mouseClickClass";
			}
			//first time click
			else{
				row.className = "mouseClickClass";
			}
		}
		
}
grid.getCachedClass=function(trs,cachedClass){
}

grid.setSelectedRowId=function(row,id, currentRowCss){
	grid.switchRowCss(row,id,'mouseClickClass',currentRowCss);
}

grid.swap=function(td){
		/*text = td.innerHTML;
		td.innerHTML="";
		input = document.createElement("input");
		input.value=text;
		td.appendChild(input);*/
}


function CheckAll(frmName){
	formObject = getElementId(frmName);
	for (var i = 0; i < formObject.elements.length; i++){    
    	eval("formObject.elements[" + i + "].checked = true ");  
		//form.elements[0].checked
    } 
}
function unCheckAll(frmName){
	formObject = getElementId(frmName);
	for (var i = 0; i < formObject.elements.length; i++){    
    	eval("formObject.elements[" + i + "].checked = false ");  
		//form.elements[0].checked
    } 
    
}

/**
 class Form
**/

function Form( frmName ){
	
	this.formName = frmName
	this.clear = function(){
		
		formObject = getElementId(this.formName);

		for( i = 0; i < formObject.elements.length; i++ ) {
			
			if(formObject.elements[i].type == "text" || formObject.elements[i].type == "file"){
				
				formObject.elements[i].value = "";
				formObject.elements[i].disabled = false;
			}
			
			if(formObject.elements[i].type == "textarea"){
				formObject.elements[i].text = "";
				formObject.elements[i].disabled = false;
			}
		}
		
		return;
	
		}
		//select specific index according to the value
		this.comboSelect = function( selectId, value ){

			selectId = document.getElementById(selectId);
			
			for( i = 0; i < selectId.options.length; i++ ){
				   
				   if( selectId.options[i].value == value ){
					
					   selectId.selectedIndex = i;
				   }
			 }
		}
		
		this.getForm = function(){
			
			return document.getElementById(this.formName);
		}
}

function ShowLoader()
{
	this.loading=null;this.bShow=false;
	this.numLoading=0;
	this.getPreLoader=function(title)
	{
YAHOO.namespace("unitedsol");
YAHOO.unitedsol.wait=new YAHOO.widget.Panel("wait",{width:"150px",fixedcenter:true,close:false,draggable:false,modal:true,visible:false,duration:0.5});if(title==null||title==""){}else{}
YAHOO.unitedsol.wait.setBody("<div align='left' class='bd' style='height:30px;background:url("+ASSETS_URL+"/images/preloader-bg.gif);border:1px solid;padding:15px 10px 2px 10px;color:#213449;'><img src='"+ASSETS_URL+"images/loading.gif' align='absmiddle' style='padding:0px 5px 0px 0px;'/><span style='font-weight:bold'>please wait...</span></div>");YAHOO.unitedsol.wait.render(document.body);return YAHOO.unitedsol.wait;}
this.show1=function()
{
	this.loading.style.display='block';this.numLoading++;}
this.hide1=function()
{
	this.numLoading--;if(this.numLoading<1){this.loading=document.getElementById('loading');if(this.loading){this.loading.style.display='none';}}}
this.getSimplePreloader=function(title)
{
	this.loading=document.getElementById('loading');
	if(title==null||title==""){title="Loading...";}
if(!this.loading){this.loading=document.createElement('div');
this.loading.id='loading';this.loading.innerHTML='<font style="font-family:verdana; font-size:12px; color:white;">'+title+'</'+'font>';this.loading.style.position='absolute';this.loading.style.top='4px';this.loading.style.right='4px';this.loading.style.backgroundColor='red';this.loading.style.width='80px';this.loading.style.padding='2px';document.getElementsByTagName('body').item(0).appendChild(this.loading);}}
this.text="<img src='"+ASSETS_URL+"images/loading.gif' style='float:left;padding-right:5px;'/><div>Loading...</div>";this.setText=function(text){this.text=text;}
this.show=function(append)
{
	if(append==null){append=false;}
el=getElementId("loading");el.style.display='block';
if(!append){el.innerHTML=this.text;}
else{el.innerHTML+=this.text;}}
this.hide=function(){el=getElementId("loading");el.style.display='none';
}
}
