
/*
*/
var responseText	=	"";
var	lastTab 		= 	"1";
var isBusy			=	false;
var	waitAndFill		=	false;
var lastVal			=	"";



function blockOrUnBlockEmp( frmObj )
{
	var postData = createQuery( frmObj );
	var url = 'privacy_setting.html';
	sendRequest(url,responseHandler,postData);
	
	return false;
}

function fetchData(event,inputObj)
{
		var q           = inputObj.value;
		var url         = "/~alok/suggest.html?q=" + q;
		if ( isEmpty(inputObj,null) ) return false;

		if ( ! isBusy ) {
				isBusy			=	true;
				sendRequest(url,responseHandler);
		}
}


function displayData()
{
		var formObj		=	document.block_form;
		var selectBox	=	formObj.corp_id;

		if ( ! validateInput(formObj.search_str) )
				return false;
		
		selectBox.length		=	0;
		selectBox.options[0] 	= new Option("---  Searching Companies ---","");

		var corpStr     =   new Array;
		var corpArray   =   new Array;
		var tokens    	=   new Array;
		var matchFound	=	false;
				
		if ( isBusy )
		{
			waitAndFill	=	true;
			return false;
		}		

		if (  /\|/.test(responseText) ) {
				corpArray   =   responseText.split('|');
				matchFound  = true;
		}
		var blockStr		 =  '- Block all companies having "' + formObj.search_str.value + '" in company name';
			selectBox.options[0] = new Option(blockStr,"CORP_HAVING");
		
		if ( matchFound ) {
				for(i=0;i<corpArray.length - 1 ;i++) {
						corpStr = corpArray[i].split('~');
						//if ( corpStr[1] != null )
						selectBox.options[ i + 1 ] = new Option( corpStr[1],corpStr[0]);
				}
				//alert(corpStr[1] + corpStr[0]);
		}
		else
		{
				selectBox.options[1] = new Option("-- No matches found --","");
		}
}

function responseHandler(xmlHttpObject)
{ 
		responseText	=	xmlHttpObject.responseText;isBusy = false; 
		if ( waitAndFill ) { displayData(); waitAndFill = false; } 
}

function validateInput(inputObj)
{
		var emptyErrMsg	=	'<span class="red_text">Please specify name of the employer ! <br/></span>';
		var shortStrMsg	=	'<span class="red_text">Please mention at least two characters !<br/></span>';
		var errorMsg		=	"";
		var error		=	false;
		var divID		=	"error";
		var	str			=	inputObj.value;
			str			=	str.replace(/^\s+/,"");
			str			=	str.replace(/\s+$/,"");
			
		if ( isEmpty(inputObj,null) ) {
				error	=	true;
				errorMsg=	emptyErrMsg;
		}
		else if ( str.length < 2 ) {
				errorMsg=	shortStrMsg;
				error	=	true;
		}
		if ( error ) {
			document.getElementById(divID).innerHTML =  errorMsg;
			show_div(divID);
			return false;
		}	
		return true;
}

function createQuery( formObj )
{
    var elements = formObj.elements;
    var pairs = new Array();

    for (var i = 0; i < elements.length; i++)
	{
		if ( elements[i].type == 'select-multiple' )		// In Multiple Selection there can be more than on value
		{
			for ( var cnt = 0; cnt < elements[i].options.length; cnt++ )
			{
				if (elements[i].options[cnt].selected)
				{
					if ( (name=elements[i].name) && (value=elements[i].options[cnt].value) )
					{
            			pairs.push(name + "=" + encodeURIComponent(value));
					}
				}
			}

		}
		else if ((name = elements[i].name) && (value = elements[i].value))
		{
            pairs.push(name + "=" + encodeURIComponent(value));
		}
    }

    return pairs.join("&");
}

/*
The function getXMLHttpObject returns an xmlHttpObject.
This one tries to find the best one available in case of IE.
*/
function createXMLHTTPObject()
{
		if (typeof XMLHttpRequest != "undefined") {
				return new XMLHttpRequest();
		} else if (window.ActiveXObject) {
				var aVersions = [ 	"MSXML2.XMLHttp.5.0",
					"MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0",
					"MSXML2.XMLHttp","Microsoft.XMLHttp"
							];

				for (var i = 0; i < aVersions.length; i++) {
						try {
								var obj = new ActiveXObject(aVersions[i]);
								return obj ;
						} catch (oError) {
								//Do nothing
						}
				}
		}
		throw new Error("XMLHttp object could be created.");
}

/*
The function  getResponse makes an http request and returns
the response string.
*/
function sendRequest(url,callback,postData) {
	var req = createXMLHTTPObject();
	if (!req) return;
	var method = (postData) ? "POST" : "GET";
	req.open(method,url,true);
	req.setRequestHeader('User-Agent','XMLHTTP/1.0');
	if (postData)
		req.setRequestHeader('Content-type','application/x-www-form-urlencoded');
	req.onreadystatechange = function () {
		if (req.readyState != 4) return;
		if (req.status != 200 && req.status != 304) {
//			alert('HTTP error ' + req.status);
			return;
		}
		callback(req);
	}
	if (req.readyState == 4) return;
	req.send(postData);
}

/*
The function opens a new window
*/
function openwin()
{
	window.open("","newin","width=500,height=350,left=0,top=0,toolbar=no,status=no,scrollbars=yes");
}

function show_div(divId)
{
		document.getElementById(divId).style.display = '';
}

function hide_div(divId)
{
		document.getElementById(divId).style.display = 'none';
}

function view_tab(tabId)
{
		var curr = document.getElementById(tabId);
		hide_div(lastTab);
		show_div(tabId);
		lastTab=tabId;
}
function call_div()
{
              oInterval=setTimeout("ShowDelayedMsg('')", 5000);
}
function ShowDelayedMsg(msg) {
var oDiv=document.getElementById("new");
var oldContent = oDiv.innerHTML;
opacity('new', 100, 0, 500);
}
function opacity(id, opacStart, opacEnd, millisec) {
            //speed for each frame
            var speed = Math.round(millisec / 100);
            var timer = 0;
            //determine the direction for the blending, if start and end are the same nothing happens
            if(opacStart > opacEnd) {
                        for(i = opacStart; i >= opacEnd; i--) {
                                    setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
                                    timer++;
                         }
             } else if(opacStart < opacEnd) {
                         for(i = opacStart; i <= opacEnd; i++)
                                     {
                                     setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
                                     timer++;
                         }
             }
             var oDiv=document.getElementById("new");
 }
 //change the opacity for different browsers
 function changeOpac(opacity, id) {
             var object = document.getElementById(id).style; 
             object.opacity = (opacity / 100);
             object.MozOpacity = (opacity / 100);
             object.KhtmlOpacity = (opacity / 100);
             object.filter = "alpha(opacity=" + opacity + ")";
 }
function switchVersion(version)
{

}
