// javascript
// Author Simon Hobbs
// used by the index page of spinroom and skins (called by pages derived from normalPage.dwt)
//
// openGameHelp: Simon Hobbs: used by games.html to open the chartwell games help in a window
// needs to be changed to handle skinning.
function openGameHelp(helpPage) {
	if (helpPage !="") { 
		dummy = window.open("http://games.thespinroom.com/casino/vccasino/client/help/en/" + helpPage,"POP_HELP","scrollbars=yes,width=450,height=500");
		dummy.focus();
	}
}

function download(downloadText) {
	document.write("<a href='aff_download.htm' class='bigDownload'>");
	document.write(downloadText);
	document.write("</a>");
}

// login from form and popup result in a new window.
function login(fm) {
	var w = 480, h = 340;

	if (document.all || document.layers) {
	   w = screen.availWidth;
	   h = screen.availHeight;
	}
		
	var popW = 685, popH = 715;
	var leftPos = (w-popW)/2, topPos = (h-popH)/2;
    var gamewin = window.open('','GAMEMENU','resizable,scrollbars,width=' + popW + ',height=' + popH + ',top=' + topPos + ',left=' + leftPos);
	fm.target="GAMEMENU";

    var OID = getCookie("OIDTracker");
    if (OID != null) {
	   fm.oid.value = OID;
	}
	fm.submit();
	gamewin.focus();

	var cmd = "clearLoginBoxes()";
	setTimeout(cmd,20000);
}

// clears the login boxes after a login attempt
function clearLoginBoxes () {
	if (document.forms['LOGIN']) {
		document.forms['LOGIN'].username.value="";
		document.forms['LOGIN'].password.value="";
	}
}

function storeOID() {
  if (location.search != "") { 

	var days = 30;
	var today = new Date();
	var defaultExpire = new Date();
	defaultExpire.setTime(today.getTime() + 1000*60*60*24*days);
	
    var x = location.search.substr(1).split("&")	

	for (var i=0; i<x.length; i++) {
		var y = x[i].split("=");
		if (y[0] == "OID") {
		  setCookie("OIDTracker", y[1], defaultExpire, "", "", false);
		}
	}
  }
}

// SWH: grab the referrer the first time called only!
function storeREFERRER() {

  if (getCookie("REFERRERTracker") == null) {
    if (document.referrer) {
      setCookie("REFERRERTracker", document.referrer, "", "", "", false);
    }
  }
}

// SWH: this should be called on the onLoad() of every page to set the cookies.
function storeInfo() {
  storeOID();
  storeREFERRER();
} 

function chartwellSkin() {
	document.write("vc casino");
}

function name() {
	document.write("VC Casino");
}

/**
 * Sets a Cookie with the given name and value.
 *
 * name       Name of the cookie
 * value      Value of the cookie
 * [expires]  Expiration date of the cookie (default: end of current session)
 * [path]     Path where the cookie is valid (default: path of calling document)
 * [domain]   Domain where the cookie is valid
 *              (default: domain of calling document)
 * [secure]   Boolean value indicating if the cookie transmission requires a
 *              secure transmission
 */
function setCookie(name, value, expires, path, domain, secure) {
    document.cookie= name + "=" + escape(value) +
        ((expires) ? "; expires=" + expires.toGMTString() : "") +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        ((secure) ? "; secure" : "");
}

/**
 * Gets the value of the specified cookie.
 *
 * name  Name of the desired cookie.
 *
 * Returns a string containing value of specified cookie,
 *   or null if cookie does not exist.
 */
function getCookie(name) {
    var dc = document.cookie;
    var prefix = name + "=";
    var begin = dc.indexOf("; " + prefix);
    if (begin == -1) {
        begin = dc.indexOf(prefix);
        if (begin != 0) return null;
    } else {
        begin += 2;
    }
    var end = document.cookie.indexOf(";", begin);
    if (end == -1) {
        end = dc.length;
    }
    return unescape(dc.substring(begin + prefix.length, end));
}

/**
 * Deletes the specified cookie.
 *
 * name      name of the cookie
 * [path]    path of the cookie (must be same as path used to create cookie)
 * [domain]  domain of the cookie (must be same as domain used to create cookie)
 */
function deleteCookie(name, path, domain) {
    if (getCookie(name)) {
        document.cookie = name + "=" + 
            ((path) ? "; path=" + path : "") +
            ((domain) ? "; domain=" + domain : "") +
            "; expires=Thu, 01-Jan-70 00:00:01 GMT";
    }
}

function parseQueryString(queryString) {
  var queryObject = new Object();
  queryString = queryString.replace(/^.*\?(.+)$/,'$1');

  while ((pair = queryString.match(/([^=]+)=\'?([^\&\']*)\'?\&?/)) && pair[0].length) {
    queryString = queryString.substring( pair[0].length );

    if (/^\-?\d+$/.test(pair[2])) pair[2] = parseInt(pair[2]);
    queryObject[pair[1]] = pair[2];
  }
  return queryObject;
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function parseQueryString(queryString) {
 var queryObject = new Object();
  
  queryString = queryString.replace(/^.*\?(.+)$/,'$1');
  while ((pair = queryString.match(/([^=]+)=\'?([^\&\']*)\'?\&?/)) && pair[0].length) {
    queryString = queryString.substring( pair[0].length );

    if (/^\-?\d+$/.test(pair[2])) pair[2] = parseInt(pair[2]);
    queryObject[pair[1]] = pair[2];
  }
  return queryObject;
}
