msgWindow=false;
valid_phone=false;
form_updated=false;
var csw_all_orders = new Array();
AJAX_IN_USE = false;

if (! ("console" in window) || !("firebug" in console)) {
    var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
    window.console = {};
    for (var i = 0; i <names.length; ++i) window.console[names[i]] = function() {};
}


function cmdAjax(_R,_Fields,_Values,_DEBUG){
    if(AJAX_IN_USE===true){
        return false;
    }
    
    AJAX_IN_USE=true;
    var _ElementID = 'content';
    var params = "r="+_R+"&Fields="+escape(_Fields)+"&Values="+escape(_Values)+"&Debug="+_DEBUG;
    params = params.replace( /\+/g,'%2B');   //Added 08-03-06 to preserve a '+' in values
    if(_DEBUG){
        if(!confirm('Debug Send: \n'+unescape(params.replace(/&/g,'\n')))){
            return false;
        }
    }
    var xmlHttp;
    try{
        // Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    }
    catch (e){
    // Internet Explorer
        try{
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e){
            try{
                xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (e){
                alert("Your browser does not support AJAX!");
                return false;
            }
        }
    }
    xmlHttp.onreadystatechange=function(){
        if(xmlHttp.readyState==4){
            AJAX_IN_USE=false; 
            var XMLObj = xmlHttp.responseXML;
            if(XMLObj){
                var _Status=(XMLObj.getElementsByTagName("STATUS")[0].childNodes[0].nodeValue);
                var _Reason=(XMLObj.getElementsByTagName("REASON")[0].childNodes[0].nodeValue);
                if(_DEBUG && XMLObj.getElementsByTagName("DEBUG").length > 0){
                    var _DebugMsg=(XMLObj.getElementsByTagName("DEBUG")[0].childNodes[0].nodeValue);
                    if(!confirm('Debug: \n'+_DebugMsg.replace(/<br>/g,'\n'))){
                        return false;
                    }
                }

                if(_Status > 0){
                    if(_Status == 10){      // Redirect to <AJAXCMD></AJAXCMD> set by passing 4th parameter to AjaxExit()
                        var _REDIRECT=(XMLObj.getElementsByTagName("AJAXCMD")[0].childNodes[0].nodeValue);
                        location.href=_REDIRECT;
                        return false;
                    }else if(_Status == 50){ // Confirm Message, Used for javascript confirm to continue page.
                        if(XMLObj.getElementsByTagName("CONFIRM").length){
                            _Conf = XMLObj.getElementsByTagName("CONFIRM");
                            var _Confirm=(XMLObj.getElementsByTagName("CONFIRM")[0].firstChild.data);
                            if(!confirm(_Confirm)){
                                return false;
                            }
                        }
                    }else{
                        if(_Status == 1){  // Alert Message, Used for javascript alert.
                            alert(_Reason.replace(/<br>/g,'\n'));
                        }else{
                            alert('Error ('+_Status+'): '+_Reason.replace(/<br>/g,'\n'));
                        }
                        if(_Status > 2 ){  // Any Other Besides Message or Soft Error
                            return false;
                        }
                    }
                }
                
                var Elements = XMLObj.getElementsByTagName("ELEMENT");
                var JSCRIPT = XMLObj.getElementsByTagName("JSCRIPT");   //End Javascript code to run first
                
                //if ( _Action == "DISPLAY"){
                var HTML_DATA = XMLObj.getElementsByTagName("DATA");
                if(HTML_DATA.length){
                    _HTMLContent="";
                    div = document.getElementById(_ElementID);
                    div.innerHTML = "";
                    for(_HTML=0; _HTML < HTML_DATA.length; _HTML++)
                    {
                        //var _Content=(xml_item.childNodes[0].nodeValue);
                        var _Content=(HTML_DATA[_HTML].childNodes[0].nodeValue);
                        _HTMLContent += _Content;
                    }
                    if(_HTMLContent){
                        // blast new HTML content into Selected div
                        div.innerHTML +=  _HTMLContent;
                    }
                }
                //}
                if( Elements.length){
                    //if(XMLObj && _Fields)
                    for ( var i=0, len=Elements.length; i<len; ++i ){
                        //alert(Elements[i]);
                        //alert(Elements[i].getAttribute('id'));
                        
                        var _Element = Elements[i].getAttribute('id');
                        var _Remove = Elements[i].getAttribute('remove');
                        
                        if(_Remove){
                            var _Elem = document.getElementById(_Element);
                            if(_Elem){
                                document.body.removeChild(_Elem);
                            }
                        }else{
                            var _ElemValues =Elements[i].getElementsByTagName('VALUE');
                            var _STYLE =Elements[i].getElementsByTagName('STYLE');
                            
                            var Object = document.getElementById(_Element);
                            if(!Object){
                                alert('Error getting element:' + _Element);
                                return false;
                            }
                            var mNode = Object.nodeName;
                            var mType = Object.type;
                            
                            if(_ElemValues.length){
                                //alert(mNode + ':' + mType);
                                if(mNode=='INPUT'){
                                
                                    if(mType=='checkbox'){
                                        if(_ElemValues[0].firstChild){
                                            Object.checked = (_ElemValues[0].firstChild.data == Object.value) ? true : false;
                                        }    
                                    }else{
                                        if(_ElemValues[0].firstChild){
                                            Object.value = _ElemValues[0].firstChild.data;
                                        }else{
                                            Object.value = '';
                                        }
                                    }
                                
                                }
                                if( mNode=='TEXTAREA'){
                                    if(_ElemValues[0].firstChild){
                                        Object.value = _ElemValues[0].firstChild.data;
                                    }else{
                                        Object.value = '';
                                    }
                                }
                                if( mNode=='DIV' ){
                                    Object.innerHTML = _ElemValues[0].firstChild.data;
                                }
                                if( mNode=='SELECT' ){
                                    //var mydisplays = Elements[i].getElementsByTagName('DISPLAY');
                                    //if(myvalues.length != mydisplays.length){
                                    //    alert('Error: Val:'+_ElemValues.length+' <> Dis:' +mydisplays.length);
                                    //    return false;
                                    //}
                                    //Removal all elements from drop down.
                                    
                                    for(nI = Object.options.length - 1; nI >= 0; nI--){
                                         Object.remove(nI);
                                    }
                                    //alert(_ElemValues[nI].getAttribute('display'));
                                    for(nI = 0; nI < _ElemValues.length; nI++){
                                        var OptionObject = document.createElement("option");
                                        if(_ElemValues[nI].getAttribute('display')){
                                            _OptionText = _ElemValues[nI].getAttribute('display') ;
                                        }else{
                                            _OptionText = _ElemValues[nI].firstChild.data ;
                                        }
                                        OptionObject.text = _OptionText ;
                                        OptionObject.value = (_ElemValues[nI].firstChild) ? _ElemValues[nI].firstChild.data : '' ;
                                        if( _ElemValues[nI].getAttribute('select')){
                                            OptionObject.selected = true;
                                        }
                                        Object.options.add(OptionObject);
                                    }
                                }
                            }
                            if(Elements[i].getAttribute('size')){
                                if(Object.size){
                                    Object.size=Elements[i].getAttribute('size');
                                }
                            }
                            if(Elements[i].getAttribute('onkeydown')){
                                if(Object.onkeydown){
                                    Object.onkeydown();
                                }
                            }
                            if(Elements[i].getAttribute('onkeyup')){
                                if(Object.onkeyup){
                                    Object.onkeyup();
                                }
                            }
                            if(Elements[i].getAttribute('onchange')){
                                if(Object.onchange){
                                    Object.onchange();
                                }
                            }
                            if(Elements[i].getAttribute('ondblclick')){
                                if(Object.ondblclick){
                                    Object.ondblclick();
                                }
                            }
                            if(Elements[i].getAttribute('onfocus')){
                                if(Object.onfocus){
                                    Object.onfocus();
                                }
                            }
                            if(Elements[i].getAttribute('onblur')){
                                if(Object.onblur){
                                    Object.onblur();
                                }
                            }
                            if(Elements[i].getAttribute('focus')){
                                Object.focus();
                            }
                            
                            //alert('STYLE LEN:'+_STYLE.length);
                            for(var nI=0; nI < _STYLE.length; nI++){
                               
                                var tV = escape(_STYLE[nI].firstChild.data);
                                var tA = _STYLE[nI].getAttribute('name');
                                //alert('style: '+ tA);
                                //alert('Set: Object.style.' + tA);
                                //alert('Set: '+Object.id+ '.style.' + tA + '= \'' + tV + '\'');
                                if(tA == 'className' || tA == 'title' || tA == 'disabled' ){
                                    if(tV == 'true' || tV == 'false'){
                                        eval("Object." + tA + "= " + tV + ";");
                                    }else{
                                        eval("Object." + tA + "= '" + tV + "';");
                                    }
                                }else{
                                    eval("Object.style." + tA + "= '" + tV + "';");
                                }
                                
                            }
                        }
                    }
                }
                
                if(JSCRIPT.length)
                {
                    for(_js=0; _js < JSCRIPT.length; _js++)
                    {
                        //alert('inserting javascript: '+ (_js+1) + ' of ' + JSCRIPT.length);
                        if(document.getElementById('script_' + _ElementID)){
                            ElementRemove('script_' + _ElementID);
                        }
                        
                        var _Content=(JSCRIPT[_js].childNodes[0].nodeValue);
                        var newScript;
                        try{
                            newScript = document.createElement('script');
                            newScript.type = "text/javascript";
                            newScript.setAttribute('id','script_' + _ElementID);
                            newScript.text = _Content;
                            document.body.appendChild(newScript);
                        }catch (e){
                            try {
                                newScript = document.createElement('script');
                                newScript.type = "text/javascript";
                                newScript.setAttribute('id','script_' + mydiv);
                                var s = document.createTextNode(content);
                                newScript.appendChild(s);
                                document.body.appendChild(newScript);
                            } catch(e){
                                alert("Dynamic JavaScript Failed to load!");
                            }
                        }
                    }
                }
            }else{
                return false;
            }
        }
    }
    
    xmlHttp.open('POST','http://www.cjtreasurechest.com/inc/ajax.php',true);
    xmlHttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
    xmlHttp.setRequestHeader('Content-length', params.length);
    xmlHttp.setRequestHeader('Connection', 'close');
    xmlHttp.send(params);
    return true;
}  

function formRegister(_R){
    var u_value = document.getElementById('username').value;
    var dn_value = document.getElementById('display_name').value;
    var p_value = document.getElementById('password1').value;
    var e_value = document.getElementById('email').value; 
    var m_value = document.getElementById('dob_month').options[document.getElementById('dob_month').selectedIndex].value;
    var d_value = document.getElementById('dob_day').options[document.getElementById('dob_day').selectedIndex].value;
    var y_value = document.getElementById('dob_year').options[document.getElementById('dob_year').selectedIndex].value;
    if(!u_value){
        alert('You must fill out your username');
        document.getElementById('username').focus();
    }else if(u_value.length < 6){
        alert('Username must be at least 6 characters');
        document.getElementById('username').focus();
    }else if(!p_value){
        alert('You must fill out your password');
        document.getElementById('password1').focus();
    }else if(p_value.length < 6){
        alert('Password must be at least 6 characters');
        document.getElementById('password1').focus();
    }else if(!e_value){
        alert('You must fill out your email address');
        document.getElementById('email').focus();
    }else if(m_value == 0 || d_value == 0 || y_value == 0){
        alert('You must fill out your date of birth.\nMonth:'+m_value+'\nDay:'+d_value+'\nYear:'+y_value);
        document.getElementById('dob_month').focus();
    }else{
        cmdAjax( _R ,'username|display_name|password|email|dob_month|dob_day|dob_year',u_value+'|'+dn_value+'|'+p_value+'|'+e_value+'|'+m_value+'|'+d_value+'|'+y_value,false);
        //alert('Sorry for the delay while I build this function in.');
    }
       
}
  
function addOption( _ElementID , _Value, _Display){
    _Element = document.getElementById( _ElementID );
    var OptionObject = document.createElement("option");
    if(!_Display){
        _Display = _Value;
    }
    OptionObject.text = _Display ;
    OptionObject.value = _Value ;
    _Element.options.add(OptionObject);
}
    
function ElementRemove(_ELEMENTID){
    var this_element = document.getElementById(_ELEMENTID);
    if(this_element)    {
        document.body.removeChild(this_element);
    }
}
    
    
var sMax;	// Isthe maximum number of stars
var holder; // Is the holding pattern for clicked state
var preSet; // Is the PreSet value onces a selection has been made
var rated;


function ratetGame(_Obj){
    var game_id = _Obj.parentNode.id.replace('rateGame_', '');
	
	sMax = 0;	// Isthe maximum number of stars
	for(n=0; n<_Obj.childNodes.length; n++){
		if(_Obj.childNodes[n].nodeName == "A"){
			sMax++;	
		}
	}
    var rating = _Obj.childNodes[1].id;
    //alert (game_id + '-'+sMax);
    return;
}

// Rollover for image Stars //


function rateGame(_Obj){
    var game_id = _Obj.parentNode.id.replace('rateGame_', '');
 	var star_rating = _Obj.id.replace("star_", '').replace(game_id+'_', ''); // Get the selected star
    //alert( _Obj.childNodes[1].className);
	sMax = 0;	// Isthe maximum number of stars
	for(n=0; n<_Obj.parentNode.childNodes.length; n++){
		if(_Obj.parentNode.childNodes[n].nodeName == "A"){
			sMax++;	
		}
	}
	
	//if(!){
	s = _Obj.id.replace("star_", '').replace(game_id+'_', ''); // Get the selected star
	a = 0;
	//alert('Game id:' + game_id +'\nRating: '+ star_rating +'\nTitle:'+ _Obj.title);
		for(i=1; i<=sMax; i++){		
			if(i<=s){
				document.getElementById('star_'+game_id+'_'+i).childNodes[1].className = "star_full point";
				document.getElementById("rateStatus_" + game_id).innerHTML = _Obj.title;	
				holder = a+1;
				a++;
			}else{
				document.getElementById('star_'+game_id+'_'+i).childNodes[1].className = "star_empty point";
			}
		}
	//}
}

// For when you roll out of the the whole thing //
function rateOff(_Obj){
    if(!_Obj.parentNode){
          alert(game_id);
        }  
    var game_id = _Obj.parentNode.id.replace('rateGame_', '');
	var f_status = document.getElementById("rateStatus_"+game_id);
    preSet = document.getElementById("rateStatus_" + game_id).title;

	for(i=1; i<=sMax; i++){		
		if(i<=preSet){
			document.getElementById('star_'+game_id+'_'+i).childNodes[1].className = "star_full point";
			holder = a+1;
			a++;
		}else{
			document.getElementById('star_'+game_id+'_'+i).childNodes[1].className = "star_empty point";
		}
	}
	document.getElementById("rateStatus_" + game_id).innerHTML = document.getElementById("curRateStatus_" + game_id).innerHTML;	
	
}

// When you actually rate something //
function rateIt(_Obj){
    var game_id = _Obj.parentNode.id.replace('rateGame_', '');
	var star_rating = _Obj.id.replace("star_", '').replace(game_id+'_', '');; // Get the selected star
	
//	sMax = 0;	// Isthe maximum number of stars
//	for(n=0; n<_Obj.childNodes.length; n++){
//		if(_Obj.childNodes[n].nodeName == "A"){
//			sMax++;	
//		}
//	}
//    //var rating = _Obj.childNodes[1].id;
    //alert (game_id + '-'+ star_rating);
	toggleDisabled(document.getElementById('rateGame_'+game_id));
	
	sendRate(game_id,star_rating);
	//rating(me);
}

// Send the rating information somewhere using Ajax or something like that.
function sendRate(game_id,rating){
	cmdAjax('k%2BSTe81tSsaDhyxJCnh61e6m8xqxf2xwOHl86dvxBT0%3D','game_id|rating',game_id+'|'+rating,false);
}

function toggleDisabled(_Obj) {
    try {
        //alert (_Obj.disabled);
        _Obj.disabled = _Obj.disabled ? false : true;
    }
    catch(E){}
   if (_Obj.childNodes && _Obj.childNodes.length > 0) {
        for (var x = 0; x < _Obj.childNodes.length; x++) {
            toggleDisabled(_Obj.childNodes[x]);
        }
    }
}


function ToggleVis(_Ele,_Action){
    //alert('func ' +_Ele + '--' +_Action);
    if(!_Ele){
        return false;
    }
    _Obj = document.getElementById(_Ele);
    if(_Action==undefined){
        _Obj.style.visibility = (_Obj.style.visibility == 'visible') ? 'hidden' : 'visible';
    }else{
        if(_Action){
            _Obj.style.visibility = 'visible';
        }else{
            _Obj.style.visibility = 'hidden';
        }
    }
    return true;
}


function ValidateInput(sInput,ValidChars){
   var sChar;
   var new_input
   new_input="";
   for (i = 0; i < sInput.length; i++)
   {
      sChar = sInput.charAt(i);
      if (ValidChars.indexOf(sChar) != -1)
      {
         new_input = new_input + sChar;
      }
   }
   return new_input;
}
 