var lastpos=0;
var total_len=0;
var sserver="";
var schannel="";
var sprop1="";
var sprop2="";
var sprop3="";
var sprop4="";
var sprop5="";
var sprop8="";
var sprop9="";
var sprop10="";
var sprop11="";
var sprop12="";
var sprop13="";
var sprop14="";
var sprop15="";
var sprop16="";
var sprop17="";
var sprop18="";
var sprop19="";
var sprop43="";
var sprop44="";
var sprop45="";
var sprop46="";
var sprop47="";
var sprop48="";
var shier1="";
var sPageType="";
var lastProp = 0;
var corp="";
var provider="";

function validateValue( strValue, strMatchPattern ) {
	var objRegExp = new RegExp( strMatchPattern);
	return objRegExp.test(strValue);
}

function getURL(uri) {

	if (typeof pageNameInit != 'undefined') {
		pageName = pageNameInit;
	}  

	uri.fullPath = location.href;
	uri.dir = uri.fullPath.substring(0, uri.fullPath.lastIndexOf('\/'));
	uri.len = uri.fullPath.length;
	uri.location=uri.fullPath; 
	if (uri.location.substr(0,7) == 'http:\/\/') uri.location = uri.location.substr(7,uri.len); if (uri.location.substr(0,8) == 'https:\/\/') uri.location = uri.location.substr(8,uri.len);

	uri.dom = uri.location.substring (0, uri.location.lastIndexOf('\/'));
	uri.channel = ''; var pos = uri.location.indexOf('\/'); if (pos > -1) {uri.channel = uri.location.substr(pos+1); uri.location = uri.location.substr(0,pos);}
	pos = uri.channel.indexOf('?');if (pos > -1) {uri.channel = uri.channel.substring(0, pos);}
	pos = uri.channel.indexOf(';');if (pos > -1) {uri.channel = uri.channel.substring(0, pos);}

	sserver=uri.location; 
	sserver = sserver.toLowerCase();
	if (sserver.substring(0, 9) == "corporate")
		corp = sserver.substr(0, 4).toLowerCase(); 

	if (sserver.toLowerCase().indexOf("provider") > -1) {
		provider = "provider";
	}

	uri.path = ''; var pos = uri.dom.indexOf('\/'); if (pos > -1) {uri.path = uri.dom.substr(pos+1); uri.dom = uri.dom.substr(0,pos);}
	if (typeof pageNameInit == 'undefined') {
		schannel=setSChannel(uri.channel).toLowerCase(); 
	} else {
		npos = pageNameInit.indexOf(':');if (npos > -1) {schannel=pageNameInit.substr(0, npos).toLowerCase();}
	}


	if (typeof pageNameInit == 'undefined') {
		sprop1=setSProp(uri.channel, schannel); 
		if (sprop1 != "")
			sprop1 = (schannel + ":" + sprop1).toLowerCase();
	} else {
		sprop1 = pageNameInit.toLowerCase();
		if (corp != "") {
			if (sprop1.substring(0, 4) != "corp")
				sprop1 = corp + ":" + sprop1;
		}
		if (provider != "") {
			if (sprop1.substring(0, 8) != "provider")
				sprop1 = provider + ":" + sprop1;
		}
	}

	if (typeof pageNameInit == 'undefined') {
		sprop2=setSProp(uri.channel, sprop1).toLowerCase(); 
		if (sprop2 != "")
			sprop2 = (sprop1 + ":" +sprop2).toLowerCase();
	}

	if (typeof pageNameInit == 'undefined') {
		sprop3=setSProp(uri.channel, sprop2).toLowerCase(); 
		if (sprop3 != "")
			sprop3 = (sprop2 + ":" +sprop3).toLowerCase();
	}

	if (typeof pageNameInit == 'undefined') {
		sprop4=setSProp(uri.channel, sprop3).toLowerCase(); 
		if (sprop4 != "")
			sprop4 = (sprop3 + ":" + sprop4).toLowerCase();
	}

	if (typeof pageNameInit == 'undefined') {
		sprop5=setSProp(uri.channel, sprop4).toLowerCase(); 
		if (sprop5 != "")
			sprop5 = (sprop4 + ":" + sprop5).toLowerCase();
	}


	uri.page = uri.fullPath.substring(uri.dir.length+1, uri.len+1);

	pos = uri.page.indexOf('?');if (pos > -1) {uri.page = uri.page.substring(0, pos);}
	pos = uri.page.indexOf('#');if (pos > -1) {uri.page = uri.page.substring(0, pos);}
	pos = uri.page.indexOf(';');if (pos > -1) {uri.page = uri.page.substring(0, pos);}
	uri.ext = ''; pos = uri.page.indexOf('.');if (pos > -1) {uri.ext =uri.page.substring(pos+1); uri.page = uri.page.substr(0,pos);}
	uri.file = uri.page;
	if (uri.ext != '') uri.file += '.' + uri.ext;
	uri.args = location.search.substr(1).split("?");

	if (uri.file == "defaultError.html")
		sPageType="errorPage";

	if (typeof pageName == 'undefined') {
		if (uri.file == '' && uri.path != '')
			pageName = uri.path;
		else if (uri.file != '' && uri.path == '')
			pageName = uri.file;
		else
			pageName = uri.path + "/" + uri.file;
	}

	if (typeof pageNameInit == 'undefined') {
		shier1=setSHier1(pageName);
		shier1=replaceMyChar(shier1,"/","|").toLowerCase(); 
	} else {
		shier1=replaceMyChar(pageNameInit,":","|").toLowerCase(); 
	}

	if (pageName == "/" || pageName == "www.mbf.com.au" || pageName=="mbf.com.au") {
		pageName = "MBF_HOME";
		schannel = "MBF_HOME".toLowerCase();
		shier1 = "MBF_HOME".toLowerCase();
	} else {
		pageName = replaceMyChar(pageName,"/",":");
		if (pageName.length > 100)
			pageName = pageName.substring (0,99);
	}

	if (corp != "") {
		if (pageName.substring(0, 4) != "corp")
			pageName = corp + ":" + pageName;
		if (schannel.substring(0, 4) != "corp")
			schannel = corp + ":" + schannel;
		if (shier1.substring(0, 4) != "corp")
			if (shier1 != "")
				shier1 = corp + "|" + shier1;
	}

	if (provider != "") {
		if (pageName.substring(0, 8) != "provider")
			pageName = provider + ":" + pageName;
		if (schannel.substring(0, 8) != "provider")
			schannel = provider + ":" + schannel;
		if (shier1.substring(0, 8) != "provider")
			if (shier1 != "")
				shier1 = provider + "|" + shier1;
	}

	return pageName.toLowerCase();
}

function setSServer(input) {
	var mypos = input.indexOf('\/');
	sserver=input.substr(0,mypos);
	return sserver;
}

function setSChannel(input) {
	schannel = "";


	if (input == "")
		schannel = "";
	else {
		var mypos = input.indexOf('\/');
		if ( mypos > -1)
			schannel=input.substr(0,mypos);
		else if (mypos == -1 && input.length > 0) {
			schannel = input;
			mypos = input.length;
		} else {
			schannel = "";
		}
		
	}
	lastpos = mypos;
	return schannel;
}

function setSHier1 (dom) {
	if (dom != "") {
		if ((validateValue( dom, ".html" )) || (validateValue( dom, ".htm" )) || (validateValue( dom, ".jsp" )) || (validateValue( dom, ".do" ))) { 
			var mypos = dom.lastIndexOf('\/');
			shier1=dom.substr(0,mypos);
		} else {
			shier1 = dom;
		}
	}
	return shier1;
}

function setSProp(input, schannel) {
	if (schannel != "" && input != "") {
		len = schannel.length;
		var mytext = input.substring (lastpos+1);
		var mypos = mytext.indexOf('\/');
		if (mypos > -1) {
			sprop = mytext.substring (0, mypos);
			lastpos = lastpos + mypos + 1;
		} else {
			sprop = "";
		}

		if (mypos == -1 && lastProp == 0) {
			if ((!validateValue( mytext, ".html" )) && (!validateValue( mytext, ".htm" )) && (!validateValue( mytext, ".jsp" )) && (!validateValue( mytext, ".do" ))) 
				sprop = mytext;
			lastProp = 1;
		}
	}
	else
		sprop = "";
	return sprop;
}

function getPageName () {
	var uri = new Object();
	var p = getURL(uri);

	return p;
}

function replaceChars(entry) {
	slash = "/"; 
	colon = ":"; 
	mystring = "" + entry; 

	while (mystring.indexOf(slash)>-1) {
		pos= mystring.indexOf(slash);
		mystring = "" + (mystring.substring(0, pos) + colon + 
		mystring.substring((pos + slash.length), mystring.length));
	}
	return mystring;
}

function replaceMyChar(entry,orig,sub) {
	//orig = "/"; 
	//sub = ":"; 
	mystring = "" + entry; 

	while (mystring.indexOf(orig)>-1) {
		pos= mystring.indexOf(orig);
		mystring = "" + (mystring.substring(0, pos) + sub + 
		mystring.substring((pos + orig.length), mystring.length));
	}
	return mystring;
}
