// JavaScript Document
/*
	version	:	1.0
	Last Modification Date:		Friday, October 27, 2006
	Last Modification Time:		6:25 PM
	Last Modified By:			Muhammad Khalid Majeed ()
*/

/* functions for show URL */
var tmp = '';
var mf_out = false;//this variable added for opurl timeout by Kaiser

function a(msg, sh)
{
	if (sh)
		alert(msg);
}

function opUrl(url,target,msg,height,topMargin) {
	//a(url, true);

msg = ( typeof msg=="undefined" && msg!=''  ? 'Loading...' : msg);
$(target).innerHTML = "<div style='height:"+height+"px; padding-top:"+topMargin+"px;'><img src='ajaxtabs/loading.gif' align='middle' hspace=3> <span class='maroon12'>"+msg+"</span></div>";

	if ($(target).style.display=='none')
		$SDDS(target, '');
if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.onreadystatechange = function() {openUrlDone(target);};
        req.open("GET", url, true);
        req.send(null);
    // IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.onreadystatechange = function() {openUrlDone(target);};
            req.open("GET", url, true);
            req.send();
        }
    }
}   

function openUrlDone(target) {
    // only if req is "loaded"
  
   if (req.readyState == 4) {
       
	   // only if "OK"
        if (req.status == 200) {
			var retStr = req.responseText;
			if (retStr == "LOGGEDUSER NOT FOUND")		// If user's session out and not loggedUser found
				document.forSess.submit();
			else
			{
				$(target).innerHTML = retStr;
				if(mf_out!='undefined' && mf_out)
					mf_out=false;
			}
        } else {
            $(target).innerHTML="openUrl error:\n" +
                req.statusText;
        }
    }
}

//var req = false;
   function mkPostReq(url, parameters,target,msg){  
	   msg = ( typeof msg=="undefined" && msg!=''  ? 'Loading...' : msg);
$(target).innerHTML = "<div style='height:150px; margin-top:95px;'><img src='images/working.gif'><br /><span class='maroon12'>"+msg+"</span></div>";
//return;
      req = false;

      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         req = new XMLHttpRequest();
         /*if (req.overrideMimeType) {
         	// set type accordingly to anticipated content type
            //req.overrideMimeType('text/xml');
            req.overrideMimeType('text/html');
         }*/
      } else if (window.ActiveXObject) { // IE
         try {
            req = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               req = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!req) {
         a('Cannot create XMLHTTP instance', false);
         return false;
      }
      
	  req.onreadystatechange = function() {mkPostDone(target);};
      //req.onreadystatechange = mkPostDone(target);
	  //a(url, false);
    
	  req.open('POST', url, true);
      req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      req.setRequestHeader("Content-length", parameters.length);
      req.setRequestHeader("Connection", "close");
      req.send(parameters);
   }

   function mkPostDone(target) {
	   //a(target, false);
	   //alert(req.status);
      if (req.readyState == 4) {
		 if (req.status == 200) {
            
			result = req.responseText;			
			$(target).innerHTML = result;         
			
			//document.write(result);			
            
         } else {
            a('There was a problem with the request.', false);
         }
      }
   }

function getValues(obj) 
{
	var getstr = "";

	var len = obj.elements.length;
	//a(len, false);
	for (i=0; i<len; i++) {
		//a(obj.elements[i].type, false);
         if (obj.elements[i].tagName == "INPUT") {
            if (obj.elements[i].type == "text") {
               getstr += obj.elements[i].name + "=" + obj.elements[i].value + "&";
            }
          
		  if (obj.elements[i].type == "password") {
               getstr += obj.elements[i].name + "=" + obj.elements[i].value + "&";
            }
			
			if (obj.elements[i].type == "hidden") {
               getstr += obj.elements[i].name + "=" + obj.elements[i].value + "&";
            }
			
            if (obj.elements[i].type == "checkbox") {
               if (obj.elements[i].checked) {
                  getstr += obj.elements[i].name + "=" + obj.elements[i].value + "&";
               } 
			   /*
			   else {
                  getstr += obj.elements[i].name + "=&";
               }
			   */
            }
            if (obj.elements[i].type == "radio") {
               if (obj.elements[i].checked) {
                  getstr += obj.elements[i].name + "=" + obj.elements[i].value + "&";
               }
            }
         }
		 
		 if (obj.elements[i].type == "textarea") {
               getstr += obj.elements[i].name + "=" + obj.elements[i].value + "&";
         }
			
         if (obj.elements[i].tagName == "SELECT") {
            var sel = obj.elements[i];
            getstr += sel.name + "=" + sel.options[sel.selectedIndex].value + "&";
         }
		 
		 if (obj.elements[i].type == "button") {
               getstr += obj.elements[i].name + "=" + obj.elements[i].value + "&";
            }
      }

	  poststr = getstr;
	return poststr;
}

function $(id){

	var o = document.getElementById(id);
	if (!o){		
		return false;
	}
	
	return o;	
}

function sbmt(url,frm,id){
	mkPostReq(url, getValues(frm),id,'Processing... ')	
}