// System        : MUS-IIT HelpDesk System
// Author        : Rex S. Sacayan
// Date created  : November 16, 2007
// Date modified : January 28, 2008

// defaults
var popup = null;
var leftpos = 0;

// UTILITY FUNCTIONS

function xmlhttp_req() 
// Author : Rex S. Sacayan
// Date created  : November 16, 2007
// Date modified : November 16, 2007 
// Note : Create an instance of XMLHttpObject
{
	var Req = false;
	if (window.XMLHttpRequest) {
		Req = new XMLHttpRequest();
    }
	else if (window.ActiveXObject) {
		Req = new ActiveXObject("Microsoft.XMLHTTP");
	}
	return Req;
}


function MM_openBrWindow(theURL,winName,features) { //v2.0
    window.open(theURL,winName,features);
}

function newWindow(url,prop) 
//Date modified: January 15, 2008
{
    var attr = "resizable=yes,width=615,height=630,top=80";
	 
	if(prop != ""){ attr = prop; }
	
	closeWindow();
    
	popup = window.open(url,"", attr);  
	popup.focus();
}
  
function closeWindow()
{
    if(popup && !popup.closed) {
      popup.close();
    }
}

function printForm(){
	setTimeout("window.print()",1000);
}

/* AJAX functions */
function update_field(key,field,value)  
// Author        : Rex S. Sacayan
// Date created  : December 05, 2007
// Date modified : December 14, 2007 
{
	var debug = 0;
	
	req = xmlhttp_req();
	
	if(debug) {
	   if(field == "datefiled") { 
		   alert(value);  
	   }
	}  
	
	if(debug) { 
		alert("action = /leave/actions/update_field.action.php?field=" + field + "&value=" + value + "&leaveno=" + key);
	}
	else {
		req.open("GET","/leave/actions/update_field.action.php?field=" + field + "&value=" + value + "&leaveno=" + key); 
		req.send(null);
	}
	
	return false; 
}

function save_info(key,field,msg)
// Author        : Rex S. Sacayan
// Date created  : December 07, 2007
// Date modified : December 14, 2007  
{
    var debug = 0;
    var req   = xmlhttp_req(); 
    var value = "";
    var iDIV  = "div_" + field + "_info";
    var eDIV  = "div_" + field;
   
    if(msg == null){ msg = 1; }
	
	if(document.getElementById(field)) {
		if(document.getElementById(field).value != "")
			value = document.getElementById(field).value;   
	}
	
	if(value == null) { 
	   return false;
	}
	
	// show/hide info
	document.getElementById("div_" + field).style.display = "none";
	if(msg == 1) document.getElementById(iDIV).style.display = "inline"; 
	if(msg == 0) {
	  document.getElementById('save_info').style.display = "block";
	  document.getElementById('save_info2').style.display = "block";
	}
	
	// custom condition
	if(field == "dayswithpay") {
	   // update dayswithoutpay
       document.getElementById("dayswithoutpay").value = document.getElementById("noofdays").value - document.getElementById("dayswithpay").value;
	}
	
	if(req) {
		req.onreadystatechange = function () {
   			if (req.readyState == 4) {
			   if(document.getElementById(iDIV)) {
				   if(msg == 1) { 
					  document.getElementById(iDIV).innerHTML = req.responseText;   
				   } else {
					  document.getElementById('save_info').innerHTML = "Update Successful...";	
					  document.getElementById('save_info2').innerHTML = "Update Successful...";	
				   }
			   }
			}
			else {
			   if(msg == 1)  show_preloader(iDIV); 
			}
		}
		
		if(debug)
			alert("/leave/actions/update_field.xml.action.php?field=" + field + "&value=" + value + "&leaveno=" + key); 
	    req.open("GET","/leave/actions/update_field.xml.action.php?field=" + field + "&value=" + value + "&leaveno=" + key); 
		req.send(null);	
    }	
}

function save_all_info(key,page)
// Author        : Rex S. Sacayan
// Date created  : December 10, 2007
// Date modified : December 14, 2007
{
   	save_info(key,'datefiled',0);
	save_info(key,'leavereason',0);
	save_info(key,'leavespent',0); 
	
	if(page != "emp") save_info(key,'dayswithpay',0);
	
	// disapprovedcause text
	if(page != "emp") {
	   if(document.getElementById('disapprovedcause').value != "")
	      save_info(key,'disapprovedcause',0); 
	}
}

function set_selected(ID)
// Author        : Rex S. Sacayan
// Date created  : December 10, 2007
// Date modified : December 10, 2007
{
	document.getElementById(ID).checked = 'true';
}

function show_btn(ID) 
// Author        : Rex S. Sacayan
// Date created  : December 07, 2007
// Date modified : December 07, 2007 
{
	document.getElementById("div_" + ID).style.display='inline';
	document.getElementById("div_" + ID + "_info").style.display='none'; 
}

function show_preloader(ID)
// Author        : Rex S. Sacayan
// Date created  : December 07, 2007
// Date modified : December 07, 2007 
{
  	document.getElementById(ID).innerHTML = "<img src=\"/leave/images/roller.gif\" border=\"0\">";
}

function drop_data(php_script,key,value,key2,value2)  
// Author        : Rex S. Sacayan
// Date created  : December 17, 2007
// Date modified : January 11, 2008 
// Description   : Delete database record of a given key 
{
    var debug   = 1; 
	var ID      = value; 
	
	if(key2 != null) ID = value + '_' +  value2;    
	
    var req     = xmlhttp_req(); 
   	var answer  = confirm('Are you sure you want to delete this ' + key + ' ' + value + '?');
	var colspan = document.getElementById(ID).getElementsByTagName('td').length;  
	var trElem  = document.getElementById(ID);
	
	if(answer) {
        if(req) {
			req.onreadystatechange = function () {
   			   if (req.readyState == 4) {
			      if(document.getElementById(ID)) {
					  // remove current td element
				  	  for(var i = colspan-1; i >= 0; i--){
		              	  trElem.deleteCell(i); 
					  }
				  	  // add new td element for the info message
				  	  newCell = trElem.insertCell(0);
		              newCell.setAttribute('colspan',colspan,0); 
		          	  newCell.innerHTML="<div class=\"info pcenter\">Record ID " + ID + " successfully deleted...</div>";  
			      }
			   }
			}
		
		    if(key2 != null) {  
			     req.open("GET","../actions/" + php_script + "?" + key + "=" + value +  "&"  + key2 + "=" + value2 + "&action=delete");  
			}
		    else {
				req.open("GET","../actions/" + php_script + "?" + key + "=" + value + "&action=delete");  
			}
			req.send(null);   
	     }
    }	 
}


function update_table(key,keyvalue,field,value) 
// Author        : Rex S. Sacayan
// Date created  : January 28, 2008
// Date modified : January 28, 2008
{
	var debug = 0;
	
	req = xmlhttp_req();
	
	if(debug) { 
		alert("action = ./actions/update_table.action.php?field=" + field + "&value=" + value + "&" + key + "=" + keyvalue);
	}
	else {
		req.open("GET","./actions/update_table.action.php?field=" + field + "&value=" + value + "&" + key + "=" + keyvalue); 
		req.send(null);
	}
	
	return false; 
}

/* HelpDesk users area */
function edit_user(empid,rights) 
// Date modified: January 18, 2008
{
	var input_empid  = document.getElementById('empid'); 
	var input_rights = document.getElementById('rights');
	var btn_add      = document.getElementById('btnAdd');
	
    input_empid.value  = empid; 
	input_rights.value = rights;
	input_rights.focus(); 
	
	btn_add.setAttribute('name','btnEdit');
	btn_add.setAttribute('value','Edit'); 
}