function validate_email(field,alerttxt)
{
with (field)
{
apos=value.indexOf("@");
dotpos=value.lastIndexOf(".");
if (apos<1||dotpos-apos<2) 
  {alert(alerttxt);return false;}
else {return true;}
}
}

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(username,"Not a valid username.")==false)
    {
      username.focus();return false;
    }
    else if (validate_required(secret,"You must enter a secret.")==false)
    {
      secret.focus();return false;
    }
    else
    {
//      ajaxFunction();
      xmlhttpPost();
      return false;
    }
  }
}

function switchMenu(obj, mynum) {
	var el = document.getElementById(obj);
	if ( el.style.display != "none" ) {
		el.style.display = 'none';
	                var allsecrets = document.getElementById('mycomms' + mynum);
		allsecrets.innerHTML = '';
	}
	else {
		el.style.display = '';
		xmlhttpPost3(mynum);
	}
}

// If the element's string matches the regular expression it is all numbers
function isNumeric(elem, helperMsg){
	var numericExpression = /^[0-9]+$/;
	if(elem.value.match(numericExpression)){
		return true;
	}else{
		alert(helperMsg);
		return false;
	}
}


function textCounter(field,cntfield,maxlimit) {
if (field.value.length > maxlimit) // if too long...trim it!
field.value = field.value.substring(0, maxlimit);
// otherwise, update 'characters left' counter
else
cntfield.value = maxlimit - field.value.length;
}


function xmlhttpPost() {
    var xmlHttpReq = false;
    var self = this;
strURL = "submitsecret.php";
    // Mozilla/Safari
    if (window.XMLHttpRequest) {
        self.xmlHttpReq = new XMLHttpRequest();
    }
    // IE
    else if (window.ActiveXObject) {
        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }

	document.forms['myform'].elements['secret'].value = document.forms['myform'].elements['secret'].value.replace(/^\s+|\s+$/g, '');
	document.forms['myform'].elements['secret'].value = document.forms['myform'].elements['secret'].value.replace(/<\/?[^>]+(>|$)/g,'');
	document.forms['myform'].elements['secret'].value = document.forms['myform'].elements['secret'].value.replace(/<\/?[^>]+(>|$)/g,'');
	document.forms['myform'].elements['secret'].value = document.forms['myform'].elements['secret'].value.replace(/fuck|shit|nigger|cock|cunt|pussy|dick|tits|clit/gi,'#####');
	//document.forms['myform'].elements['secret'].value = document.forms['myform'].elements['secret'].value.replace(/\x26/,"%26");

	document.forms['myform'].elements['username'].value = document.forms['myform'].elements['username'].value.replace(/^\s+|\s+$/g, '');
	document.forms['myform'].elements['username'].value = document.forms['myform'].elements['username'].value.replace(/<\/?[^>]+(>|$)/g,'');
	document.forms['myform'].elements['username'].value = document.forms['myform'].elements['username'].value.replace(/<\/?[^>]+(>|$)/g,'');
	document.forms['myform'].elements['username'].value = document.forms['myform'].elements['username'].value.replace(/fuck|shit|nigger|cunt|cock|pussy|dick|tits|clit/gi,'#####');
	//document.forms['myform'].elements['username'].value = document.forms['myform'].elements['username'].value.replace(/\x26/,"%26");

    self.xmlHttpReq.open('POST', strURL, true);
    self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    self.xmlHttpReq.onreadystatechange = function() {
        if (self.xmlHttpReq.readyState == 4) {
            updatepage(self.xmlHttpReq.responseText);
        }
    }
    self.xmlHttpReq.send(getquerystring());
//    self.xmlHttpReq.send(document.forms['myform'].elements['secret'].value);
}

function getquerystring() {
    var form     = document.forms['myform'];
    var word = form.secret.value;
word = stripslashes(word);
    var user1 = form.username.value;

    qstr = 'secret=' + escape(word);  // NOTE: no '?' before querystring
    qstr += '&user=' + escape(user1);
    return qstr;
}

function updatepage(str){
  var allsecrets = document.getElementById('allsecrets');
  allsecrets.innerHTML = str + allsecrets.innerHTML;
  document.forms['myform'].elements['secret'].value = '';
  document.forms['myform'].elements['remLen1'].value = 500;
}



function validate_form2(thisform)
{
  with (thisform)
  {
    if (validate_required(username,"Not a valid username.")==false)
    {
    username.focus();return false;
    }
    else if (validate_required(comment,"You must enter a comment.")==false)
    {
      comment.focus();return false;
    }
    else
    {
      xmlhttpPost2(thisform);
      comment.value='Comment posted! Share some more thoughts...';
      eval('remLen' + secretid.value + '.value=200;');
      return false;
    }
  }
}



function xmlhttpPost2(thisform) {
    var xmlHttpReq = false;
    var self = this;
strURL = "submitcomment.php";
    // Mozilla/Safari
    if (window.XMLHttpRequest) {
        self.xmlHttpReq = new XMLHttpRequest();
    }
    // IE
    else if (window.ActiveXObject) {
        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }

    self.xmlHttpReq.open('POST', strURL, true);
    self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    self.xmlHttpReq.onreadystatechange = function() {
        if (self.xmlHttpReq.readyState == 4) {
            updatepage2(self.xmlHttpReq.responseText, thisform);
        }
    }
    self.xmlHttpReq.send(getquerystring2(thisform));
}



function getquerystring2(thisform) {
  with (thisform){



	comment.value = comment.value.replace(/^\s+|\s+$/g, '');
	comment.value = comment.value.replace(/<\/?[^>]+(>|$)/g,'');
	comment.value = comment.value.replace(/<\/?[^>]+(>|$)/g,'');
	comment.value = comment.value.replace(/fuck|shit|nigger|cunt|cock|pussy|dick|tits|clit/gi,'#####');
	//comment.value = comment.value.replace(/\x26/,"%26");



	username.value = username.value.replace(/^\s+|\s+$/g, '');
	username.value = username.value.replace(/<\/?[^>]+(>|$)/g,'');
	username.value = username.value.replace(/<\/?[^>]+(>|$)/g,'');
	username.value = username.value.replace(/fuck|shit|nigger|cunt|cock|pussy|dick|tits|clit/gi,'#####');
	//username.value = username.value.replace(/\x26/,"%26");


    var word = comment.value;
    var user1 = username.value;
    var secretid2 = secretid.value;
  }


    qstr = 'comment=' + escape(word);  // NOTE: no '?' before querystring
    qstr += '&user=' + escape(user1);
    qstr += '&secretid=' + escape(secretid2);
    return qstr;

}

function updatepage2(str, thisform){
with (thisform)
{
  var secid = secretid.value;
}
  var allsecrets = document.getElementById('myvar' + secid);
  allsecrets.innerHTML = str + allsecrets.innerHTML;

}



function xmlhttpPost3(mynum) {
    var xmlHttpReq = false;
    var self = this;
strURL = "getcomments.php?secretid=" + mynum;
    // Mozilla/Safari
    if (window.XMLHttpRequest) {
        self.xmlHttpReq = new XMLHttpRequest();
    }
    // IE
    else if (window.ActiveXObject) {
        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }

    self.xmlHttpReq.open('POST', strURL, true);
    self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    self.xmlHttpReq.onreadystatechange = function() {
        if (self.xmlHttpReq.readyState == 4) {
            updatepage3(self.xmlHttpReq.responseText, mynum);
        }
    }
    self.xmlHttpReq.send(getquerystring3());
//    self.xmlHttpReq.send(document.forms['myform'].elements['secret'].value);
}

function getquerystring3() {
//    var form  = document.forms['myform'];
//    var word = form.secret.value;
//    var user1 = form.username.value;

//    qstr = 'secret=' + escape(word);  // NOTE: no '?' before querystring
//    qstr += '&user=' + escape(user1);
    qstr = '';
    return qstr;
}

function updatepage3(str, mynum){
  var allsecrets = document.getElementById('mycomms' + mynum);
  allsecrets.innerHTML = str + allsecrets.innerHTML;
}


function like(secid,lcount){

    var xmlHttpReq = false;
    var self = this;
strURL = "like.php";
    // Mozilla/Safari
    if (window.XMLHttpRequest) {
        self.xmlHttpReq = new XMLHttpRequest();
    }
    // IE
    else if (window.ActiveXObject) {
        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }

    self.xmlHttpReq.open('POST', strURL, true);
    self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    self.xmlHttpReq.onreadystatechange = function() {
        if (self.xmlHttpReq.readyState == 4) {
  document.getElementById("like" + secid).src ="likeyes.jpg";
  document.getElementById("likecount" + secid).innerHTML=lcount+1;
  document.getElementById("like" + secid).onclick=function() {alert('You already said you liked this. Thanks!')};
        }
    }
    var qstr = 'secretid=' + escape(secid);  // NOTE: no '?' before querystring
    self.xmlHttpReq.send(qstr);

}

function dislike(secid,lcount){

    var xmlHttpReq = false;
    var self = this;
strURL = "dislike.php";
    // Mozilla/Safari
    if (window.XMLHttpRequest) {
        self.xmlHttpReq = new XMLHttpRequest();
    }
    // IE
    else if (window.ActiveXObject) {
        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }

    self.xmlHttpReq.open('POST', strURL, true);
    self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    self.xmlHttpReq.onreadystatechange = function() {
        if (self.xmlHttpReq.readyState == 4) {
  document.getElementById("dislike" + secid).src ="dislikeyes.jpg";
  document.getElementById("dislikecount" + secid).innerHTML=lcount+1;
  document.getElementById("dislike" + secid).onclick=function() {alert('You already said you disliked this. Thanks!')};
        }
    }
    var qstr = 'secretid=' + escape(secid);  // NOTE: no '?' before querystring
    self.xmlHttpReq.send(qstr);

}



function stripslashes(str) {
str=str.replace(/\\'/g,'\'');
str=str.replace(/\\"/g,'"');
str=str.replace(/\\0/g,'\0');
str=str.replace(/\\\\/g,'\\');
return str;
}
