var CrossSiteDomainUtil = new Object();

CrossSiteDomainUtil.sendAnyGetRequestUrl = function(url) {
	var script_id = null;
	var script = document.createElement('script');
	script.setAttribute('type', 'text/javascript');
	script.setAttribute('src', url);
	script.setAttribute('id', 'script_id');

	script_id = document.getElementById('script_id');
	if(script_id){
		document.getElementsByTagName('head')[0].removeChild(script_id);
	}
   // Insert <script> into DOM
   document.getElementsByTagName('head')[0].appendChild(script);
}

/*Unsued*/
CrossSiteDomainUtil.refineUrl = function (url) {
	return url.replace(/&amp;/, '&');
}

/*Unsued*/
CrossSiteDomainUtil.sleepStupidly = function (usec) {
	var endtime= new Date().getTime() + usec;
    while (new Date().getTime() < endtime);
}

/*Unsued*/
/*Need @IncludeJavaScriptLibrary({"theme:scripts/DES.js", "theme:scripts/base64.js", "theme:scripts/common/t5util.js"})*/
CrossSiteDomainUtil.catchSigninFormForCrossDomain = function (formId, url, ursParam, splitString, key) {
	$$("#" + formId )[0].observe("submit", function() {
		var loginName= $$("#" + formId + " #systemSigninSigninName")[0].value;
		var Password = $$("#" + formId + " #systemSigninPassword")[0].value;
		
		var encryptedParam = des (key, loginName + splitString + Password,1,0,0,1);
		encryptedParam = Base64.encode(stringToHex(encryptedParam))
		encryptedParam = T5Util.convertInvalidUrlParam(encryptedParam);
		url = url.replace(ursParam, encryptedParam);
		
		CrossSiteDomainUtil.sendAnyGetRequestUrl(url);
		
		CrossSiteDomainUtil.sleepStupidly(1500);
		
		return false;
	});
}
