var http_request = false;
var http_request2 = false;

if (document.layers) {browserType = "nn4"}
if (document.all) {browserType = "ie"}
if (window.navigator.userAgent.toLowerCase().match("gecko")) {
 browserType= "gecko"
}

   function makeLogRequest(url, parameters) {

      http_request = false;

      if (window.XMLHttpRequest) { // Mozilla, Safari,...
	
         http_request = new XMLHttpRequest();

         if (http_request.overrideMimeType) {
		
         	// set type accordingly to anticipated content type

            //http_request.overrideMimeType('text/xml');

            http_request.overrideMimeType('text/html');
		
         }

      } else if (window.ActiveXObject) { // IE
		
         try {

            http_request = new ActiveXObject("Msxml2.XMLHTTP");

         } catch (e) {

            try {

               http_request = new ActiveXObject("Microsoft.XMLHTTP");

            } catch (e) {}

         }

      }

      if (!http_request) {

         alert('Cannot create XMLHTTP instance');

         return false;

      }
	
      http_request.onreadystatechange = alertContents;

      http_request.open('GET', url + parameters, true);

      http_request.send(null);

   }

   function alertContents() {
	
	//alert(http_request.readyState)
      if (http_request.readyState == 4 || http_request.readyState == "complete") {
		
         if (http_request.status == 200) {
		
		//alert(countVal);
		result = http_request.responseText;
		document.getElementById('logwait').innerHTML = ""
		switch(result){
			case '1':
				window.location = "coffeechat.php";
				break;
			case '2':
				document.getElementById('logusername').style.background="#CC0000";
				document.getElementById('logpassword').style.background="#CC0000";
				document.getElementById('logerrormess').innerHTML = "Account Has Not Been Activated!";
				break;
			case '3':
				document.getElementById('logusername').style.background="#CC0000";
				document.getElementById('logpassword').style.background="#CC0000";
				document.getElementById('logerrormess').innerHTML = "Invalid Login!";
				break;
		}
		//alert(result);
		//document.getElementById('logindiv').innerHTML = result;
		
		         

         } else {

            alert('There was a problem with the request.');

         }

      }
	

   }

   
function get(obj,val) {
	resetErrors();
	
	var getstr = "?";
   for (i=0; i<obj.getElementsByTagName("input").length; i++) {
        if (obj.getElementsByTagName("input")[i].type == "text") {
           getstr += obj.getElementsByTagName("input")[i].name + "=" + cleanstring(obj.getElementsByTagName("input")[i].value) + "&";
        }
        if (obj.getElementsByTagName("input")[i].type == "password") {
           getstr += obj.getElementsByTagName("input")[i].name + "=" + cleanstring(obj.getElementsByTagName("input")[i].value) + "&";
        }
	if (obj.getElementsByTagName("input")[i].type == "hidden") {
           getstr += obj.getElementsByTagName("input")[i].name + "=" + cleanstring(obj.getElementsByTagName("input")[i].value) + "&";
        }
        if (obj.getElementsByTagName("input")[i].type == "checkbox") {
           if (obj.getElementsByTagName("input")[i].checked) {
              getstr += obj.getElementsByTagName("input")[i].name + "=" + cleanstring(obj.getElementsByTagName("input")[i].value) + "&";
           } else {
              getstr += obj.getElementsByTagName("input")[i].name + "=&";
           }
        }
        if (obj.getElementsByTagName("input")[i].type == "radio") {
           if (obj.getElementsByTagName("input")[i].checked) {
              getstr += obj.getElementsByTagName("input")[i].name + "=" + cleanstring(obj.getElementsByTagName("input")[i].value) + "&";
           }
     }  
     
  }
  for(i=0; i<obj.getElementsByTagName("select").length;i++){
	  //if (obj.getElementsByTagName("select")[i].tagName == "SELECT") {
		try {

            var sel = obj.getElementsByTagName("select")[i];
        	getstr += sel.name + "=" + cleanstring(sel.options[sel.selectedIndex].value) + "&";

         } catch (e) {}
        
     //}
  }
  	
	switch(val){
		case '1':
		
			//getstr += "stepval=" + countVal + "&" + "origval=" + oriVal + "&";
			//getstr += "woType=" + workoutType + "&";
			//getstr += "woDuration=" + woDuration + "&";
			//getstr += "selexercises=" + selexercises;
			//alert(oriVal);
			//oriVal += shiftVal;
			//alert(getstr);
			//alert(getstr);
			document.getElementById('logwait').innerHTML = "<img src='images/ajax-loader.gif'>"
   			makeLogRequest('do_login.php', getstr);
			break;
		case '2':
			//getstr += "woType=" + workoutType + "&";
			//getstr += "woDuration=" + woDuration + "&";
			//getstr += "selexercises=" + selexercises;
			//finishType = 1;
			//alert(getstr);
			document.getElementById('regsubbut').disabled = true;
			document.getElementById('regwait').innerHTML = "<img src='images/ajax-loader.gif'>"
			makeRegRequest('do_register.php',getstr);
			break;
		case '3':
			
			break;
	}
}


function onKeyPressAllowNumbers(e)
{
	var key = window.event ? e.keyCode : e.which;
	var keychar = String.fromCharCode(key);
	return (keychar <= 31 || (keychar >= 46 && keychar <= 57));
	
}

function makeRegRequest(url, parameters,val) {

      http_request2 = false;

      if (window.XMLHttpRequest) { // Mozilla, Safari,...
	
         http_request2 = new XMLHttpRequest();

         if (http_request2.overrideMimeType) {
		
         	// set type accordingly to anticipated content type

            //http_request.overrideMimeType('text/xml');

            http_request2.overrideMimeType('text/html');
		
         }

      } else if (window.ActiveXObject) { // IE
		
         try {

            http_request2 = new ActiveXObject("Msxml2.XMLHTTP");

         } catch (e) {

            try {

               http_request2 = new ActiveXObject("Microsoft.XMLHTTP");

            } catch (e) {}

         }

      }

      if (!http_request2) {

         alert('Cannot create XMLHTTP instance');

         return false;

      }
	
      http_request2.onreadystatechange = getContents;

      http_request2.open('GET', url + parameters, true);

      http_request2.send(null);

   }
   function getContents() {
	
	//alert(http_request.readyState)
      if (http_request2.readyState == 4 || http_request2.readyState == "complete") {
		
         if (http_request2.status == 200) {
			
			//alert(countVal);
			result = http_request2.responseText;
			//document.getElementById('signupdiv').innerHTML = result;
			document.getElementById('regwait').innerHTML = ""
			document.getElementById('regsubbut').disabled = false;
			var resultArray = result.split(",");
		if(result == "ok"){
			document.getElementById('signupdiv').innerHTML = "<div style=\"margin:20px 0 0 0;font-size:16px;color:#360;font-weight:bold\">Thanks for joining Coffee Chat!</div><div style=\"margin:10px 0 10px 0;font-size:14px;color:#000;\">To complete your registration, please check your email for the activation link.</div>"
		}else{
			for(i=1;i<resultArray.length;i++){
				var tempArray = resultArray[i].split("-");
				//document.getElementById('tempdiv').innerHTML = tempArray[0];
				switch(tempArray[0]){
					case '1':
						var divObj = document.getElementById('reguseerror');
						switch(tempArray[1]){
							case '1':
								divObj.innerHTML = '*Invalid Character';
								break;
							case '2':
								divObj.innerHTML = '*Remove Space';
								break;
							case '3':
								divObj.innerHTML = '*Username Required';
								break;
							case '4':
								divObj.innerHTML = '*Min 5 characters';
								break;
							case '5':
								divObj.innerHTML = '*Too many characters';
								break;
							case '6':
								divObj.innerHTML = '*Username taken';
								break;
						}
						break;
					case '2':
						var divObj = document.getElementById('regpasserror');
						switch(tempArray[1]){
							case '1':
								divObj.innerHTML = '*Invalid Character';
								break;
							case '2':
								divObj.innerHTML = '*Remove Space';
								break;
							case '3':
								divObj.innerHTML = '*Password Required';
								break;
							case '4':
								divObj.innerHTML = '*Min 5 characters';
								break;
							case '5':
								divObj.innerHTML = '*Too many characters';
								break;
						}
						break;
					case '3':
						var divObj = document.getElementById('regemailerror');
						divObj.innerHTML = '*Not a valid email';
							
						break;
					case '4':
						var divObj = document.getElementById('regcodeerror');
						divObj.innerHTML = '*Invalid code';
						break;
					
				}
			}
		}
			
			
		 }
	}
   }
   function showLoginRegister(val){
	document.getElementById('loginbutton').style.backgroundImage = 'url(images/tabbackoff.gif)';
	document.getElementById('regbutton').style.backgroundImage = 'url(images/tabbackoff.gif)';
	try {

            resetInput();
	resetErrors();

         } catch (e) {
         }
	
   	switch(val){
   		case '1':
   			document.getElementById('signupdiv').style.display="none";
   			document.getElementById('logindiv').style.display="block";
			document.getElementById('loginbutton').style.backgroundImage = 'url(images/tabbackselect.gif)';
			
   			break;
   		case '2':
   			document.getElementById('signupdiv').style.display="block";
   			document.getElementById('logindiv').style.display="none";
			document.getElementById('regbutton').style.backgroundImage = 'url(images/tabbackselect.gif)';
			
   			break;
   	}
}
function switchTabs(val){
}
function resetErrors(){
	document.getElementById('reguseerror').innerHTML = "";
	document.getElementById('regpasserror').innerHTML = "";
	document.getElementById('regemailerror').innerHTML = "";
	document.getElementById('regcodeerror').innerHTML = "";
	document.getElementById('actmessage').innerHTML ="";
	document.getElementById('logerrormess').innerHTML="";
	document.getElementById('logusername').style.background="#FFFFFF";
	document.getElementById('logpassword').style.background="#FFFFFF";
	
}
function resetInput(){
	document.getElementById('logusername').value = "";
	document.getElementById('logpassword').value = "";
	document.getElementById('regusername').value = "";
	document.getElementById('regpassword').value = "";
	document.getElementById('regusername').value = "";
	document.getElementById('regemail').value = "";
	document.getElementById('captcha').value = "";
	document.getElementById('regfirstname').value = "";
	document.getElementById('reglastname').value = "";
	
}
function cleanstring(val){
	var nameClean = val;
	nameClean = nameClean.replace(/[^a-zA-Z 0-9 _ - @ .]+/g,'');
        return nameClean;
}
function validate_required(field,alerttxt)
{
with (field)
  {
  if (value==null||value=="")
    {
    alert(alerttxt);return false;
    }
  else
    {
    return true;
    }
  }
}
function validate_form(thisform)
{
with (thisform)
  {
  if (validate_required(topic,"Topic must be filled out!")==false)
  {
	  topic.focus();
	  return false;
	}
	
	if (validate_required(discussion,"Discussion must be filled out!")==false)
  {
	  discussion.focus();
	  return false;
	}
	if (validate_required(response,"Response must be filled out!")==false)
  {
	  response.focus();
	  return false;
	}
  }
  
}

function validate_form2(thisform)
{
with (thisform)
  {
	if (validate_required(response,"Response must be filled out!")==false)
  {
	  response.focus();
	  return false;
	}
  }
  
}

