	// Global variables
	var validDomains = ["sosstaffing", "employmenttrends"];
	var cookieName = "sosdomain";

	/**
	 * Loads a skin based on the domain being accessed.
	 */
	function loadTimecardSkin()
	{
		var domain, skins;
		skins = "skin/";
		domain = getSLD();
		document.getElementById("headFrame").src = skins + domain + "/head.html";
		document.getElementById("footFrame").src = skins + domain + "/foot.html";
		includeCSS(skins + domain + "/timecard.css");
	}
	
	function loadLoginTimecardSkin()
	{
		var domain, skins;
		skins = "skin/";
		domain = getLoginSLD();
		document.getElementById("headFrame").src = skins + domain + "/head.html";
		document.getElementById("footFrame").src = skins + domain + "/foot.html";
		includeCSS(skins + domain + "/timecard.css");
		setCookie(cookieName, domain, 30);
	}
	
	function loadCookieSkin()
	{
		var domain, skins;
		skins = "skin/";
		domain = getSLD();
		document.getElementById("headFrame").src = skins + domain + "/head.html";
		document.getElementById("footFrame").src = skins + domain + "/foot.html";
		includeCSS(skins + domain + "/timecard.css");
	}


	/**
	 * This function includes an additions CSS file for the main web page.
	 */
	function includeCSS(src) 
	{
	    if (document.createElement && document.getElementsByTagName) 
	    {
	        var head_tag = document.getElementsByTagName("head")[0];
	        var script_tag = document.createElement("link");
	        script_tag.setAttribute("type", "text/css");
	        script_tag.setAttribute("href", src);
	        script_tag.setAttribute("rel", "stylesheet");
	        head_tag.appendChild(script_tag);
	    }
	}
	
	/**
	 * Determines what the domain of the request was
	 */
	function getDomain (thestring) 
	{
		var urlpattern = new RegExp("(http|ftp|https)://(.*?)/.*$");
		var parsedurl = thestring.match(urlpattern);
		return parsedurl[2];
	}
	

	
	/**
	 * Determines the second level domain (SLD)
	 */
	function getSLD()
	{
		domain = getParam("domain");
		if (domain != "")
		{
			return domain;
		}
		domain = getCookie(cookieName);
		if (domain != null && domain != "")
		{
			return domain;
		}
		domain = getDomain(location.href);
		if (domain.indexOf(":") > 0)
		{
			var domainandport;
			domainandport = domain.split(":");
			domain = domainandport[0];
		}
		if (domain.indexOf(".") > 0)
		{
			var domainparts;
			domainparts = domain.split(".");
			domain = domainparts[domainparts.length - 2];
		}
		// Added the following code to restrict domains
		var valid = validDomains[0];
		for (var x = 0; x < validDomains.length; x++)
		{
			if (validDomains[x] == domain)
				valid = domain;
			                          
		}
		return valid;
	}
	
	function getLoginSLD()
	{
		domain = getParam("domain");
		backTo = getParam("josso_back_to");
		if (domain != "")
		{
			return domain;
		}
		if (backTo == null || backTo == "")
		{
			domain = getCookie(cookieName);
			if (domain != null && domain != "")
			{
				return domain;
			}
		}
		domain = getDomain(backTo);
		if (domain.indexOf(":") > 0)
		{
			var domainandport;
			domainandport = domain.split(":");
			domain = domainandport[0];
		}
		if (domain.indexOf(".") > 0)
		{
			var domainparts;
			domainparts = domain.split(".");
			domain = domainparts[domainparts.length - 2];
		}
		// Added the following code to restrict domains
		var valid = validDomains[0];
		for (var x = 0; x < validDomains.length; x++)
		{
			if (validDomains[x] == domain)
				valid = domain;
			                          
		}
		return valid;
	}
	
	/**
	 * Resizes an object based on its background size...
	 */
	function resizeFrames() 
	{
		document.getElementById("headFrame").height = document.getElementById("headFrame").contentWindow.document.body.scrollHeight + "px";
		if (document.getElementById("footFrame").contentWindow.document.body.scrollHeight)
		{
			document.getElementById("footFrame").height = document.getElementById("footFrame").contentWindow.document.body.scrollHeight + "px";
		}
	}
	
//	function resizeFrame(name)
//	{
//		document.getElementById(name).height = document.getElementById(name).contentWindow.document.body.scrollHeight + "px";
//	}
	
	function resizeFrame(frm)
	{
		frm.height = frm.contentWindow.document.body.scrollHeight + "px";
	}

	
	/**
	 * Gets parameters from the querystring
	 * @param name Parameter name
	 * @return Parameter
	 */
	function getParam(name)
	{
		name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
		var regexS = "[\\?&]"+name+"=([^&#]*)";
		var regex = new RegExp( regexS );
		var results = regex.exec( window.location.href );
		if( results == null )
			return "";
		else
			return results[1];
	}

	
	/**
	 * Sets a cookie
	 * 
	 * @param cookieName Name of the cookie to set
	 * @param value Value of the cookie
	 * @param expiredays Number of days before it expires
	 */
	function setCookie(cookieName, value, expires)
	{
		var today = new Date();
		today.setTime( today.getTime() );
		expires = expires * 1000 * 60 * 60 * 24;
		var expires_date = new Date( today.getTime() + (expires) );
		document.cookie=cookieName+ "=" +escape(value)+ ((expires==null) ? "" : ";expires=" + expires_date.toUTCString() ) + ";domain=" + window.location.hostname;
	}
	
	
	/**
	 * Gets the cookie specified
	 * 
	 * @param cookieName Name of the cookie
	 * @return The Cookie value
	 */
	function getCookie(cookieName)
	{
		if (document.cookie.length > 0)
		{
			cookieStart=document.cookie.indexOf(cookieName + "=");
			if (cookieStart!=-1)
			{
				cookieStart=cookieStart + cookieName.length+1;
				cookieEnd=document.cookie.indexOf(";",cookieStart);
				if (cookieEnd==-1) 
					cookieEnd=document.cookie.length;
				return unescape(document.cookie.substring(cookieStart, cookieEnd));
			}
		}
		return "";
	}
	

	/*
	function getCookie(name) 
	{
	    var theCookies = document.cookie.split(/[; ]+/);
	    for (var i = 0 ; i < theCookies.length; i++) 
	    {
	        var aName = theCookies[i].substring(0,theCookies[i].indexOf('='));
	        if (aName == name) 
	        {
	            return theCookies[i];
	        }
	    }
	}
	*/


