// predefined variables
var strURL, strDesc, strLoc, strSearh, intLocLength, intDescLength, intNewLength;
var intLSMaxLength, intLSHalfMaxLength, strLSLinkClass, strLSLineSeparator, strLSLinePrepend, strLSLineAppend;
var strLSHeader, strLSFooter, strLSDisplayID, strLSDisplayConuntry, strLSJobSearchURL, strOutput;

// basic function
function lsEL(x) { return document.getElementById(x); }
function lsGetCookie(name) {
	var nameEQ = name + "="; var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) { 
		var c = ca[i]; 
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function getLS() {
if (lsGetCookie('strPreviousSearch')) {
	strOutput = strLSHeader;
	
	var strLS = unescape(lsGetCookie('strPreviousSearch')).replace(/\+/g, " ");
	var arrLS = strLS.split("||");	
	if (strLSDisplayConuntry == "in") { strLSJobSearchURL = "http://search7.jobstreet.com/searchGo.asp?"; } 
	else if (strLSDisplayConuntry == "id") { strLSJobSearchURL = "http://search6.jobstreet.com/searchGo.asp?"; } 
	else { strLSJobSearchURL = "http://search3.jobstreet.com/searchGo.asp?"; }

	for (var i = 0; i < arrLS.length; i++) {
		var arrLSItem = arrLS[i].split("&&");		
		if (arrLSItem.length > 3) {
			// this happen when user key-in keyword started with "&&"
			strDesc = "&&" + arrLSItem[1].replace(/\.\.\.$/, "");
			strLoc = arrLSItem[2].replace(/\.\.\.$/, "");
			strURL = arrLSItem[3];
		}
		else {			
			strDesc = arrLSItem[0].replace(/\.\.\.$/, "");
			strLoc = arrLSItem[1].replace(/\.\.\.$/, "");
			strURL = arrLSItem[2];
		}		
		if ( strDesc.length == 0 && strLoc.length == 0 && strURL.charAt(0) == "&" ) {
			// this happen when keyword is "&"
			strDesc = "&"; strURL = strURL.substring(1);  
		}
		strURL = strURL.replace(/&sourceid=[a-z0-9]+/, "&sourceid=ss");
		
		intLocLength = strLoc.length;
		intDescLength = strDesc.length;
		if ( intLocLength > 0 || intDescLength > 0 ) {
			strSearch = "<a href=\"" + strLSJobSearchURL + strURL + "\"";
			if ( strLSLinkClass.length > 0 ) { strSearch += " class=\"" + strLSLinkClass + "\""; }
			strSearch += ">";		
		
			if (intLocLength == 0) {  
				if (intDescLength > intLSMaxLength) { strDesc = strDesc.substring(0, (intLSMaxLength - 3)) + "..."; } 
				strSearch += strDesc + "</a>";
			} 
			else {
				if (intLocLength > intLSHalfMaxLength && intDescLength > intLSHalfMaxLength) {
					strLoc = strLoc.substring(0, (intLSHalfMaxLength - 3)) + "..."; strDesc = strDesc.substring(0, (intLSHalfMaxLength - 3)) + "...";			
				}
				else if (intLocLength <= intLSHalfMaxLength && intDescLength <= intLSHalfMaxLength) {  }
				else {
					if (intDescLength <= intLSHalfMaxLength) {
						intNewLength = intLSHalfMaxLength + ( intLSHalfMaxLength - intDescLength );
						if ( intLocLength > intNewLength ) { strLoc = strLoc.substring(0, (intNewLength - 3)) + "..."; }			
					}
					else { 
						intNewLength = intLSHalfMaxLength + ( intLSHalfMaxLength - intLocLength );
						if ( intDescLength > intNewLength ) { strDesc = strDesc.substring(0, (intNewLength - 3)) + "..."; }
					}
				}
				strSearch += strDesc + " in " + strLoc + "</a>";
			}	
			strOutput += strLSLinePrepend + strSearch + strLSLineAppend + strLSLineSeparator;
		}
	}
	strOutput += strLSFooter;
	lsEL(strLSDisplayID).innerHTML = strOutput;
}}