function submitQuestion(){
    if(validateQuestionForm()){
        document.getElementById("inputCont").innerHTML="";
        addComment('','','/horoscopos/commentsAstrologer.jsp');
    }
}

function validateQuestionForm(){
    var form = document.register;
    var email = document.getElementById("email").value;
    var name = document.getElementById("name").value;
    var male = form.genero[0].checked;
    var dob = document.getElementById("day").options[document.getElementById("day").selectedIndex].value;
    var mob = document.getElementById("month").options[document.getElementById("month").selectedIndex].value;
    var yob = document.getElementById("year").value;
    var hob = document.getElementById("hour").options[document.getElementById("hour").selectedIndex].value;
    var mob = document.getElementById("minutes").options[document.getElementById("minutes").selectedIndex].value;
    var AMer = document.getElementById("periodo").options[document.getElementById("periodo").selectedIndex].value;
    var pob = document.getElementById("lugar").value;
    var sob = document.getElementById("estado").value;
    var preg = document.getElementById("newQuestion").value;
    // validate entry form
    var message = "Por favor añada la siguiente información:\n\n";
    var valid = true;
    if(email.length < 1 ){
        message += "Dirección de Correo Electrónico\n";
        valid = false;
    }
    if(name.length < 1){
        message += "Su nombre y apellido\n";
        valid = false;
    }
    var gender = "Femenino";
    if(male == true){
        gender = "Masculino";
    }
    if(yob.length<1){
      message += "El año en que nació\n"
      valid = false;
    }
    if(pob.length<1){
      message += "Su lugar de nacimiento\n";
      valid = false;
    }
    if(sob.length<1){
      message += "Su lugar de residencia\n";
      valid = false;
    }
    if(!valid){
        alert(message);
    }
    else{
        // join all this info together!
        var hidden = document.getElementById("newComment");
        var tmp = "EMAIL:" + email + "\n";
        tmp += "NOMBRE:" + name + "\n";
        tmp += "SEXO:" + gender + "\n";
        tmp += "FECHA_NACIMIENTO:" + dob + "/" + mob + "/" + yob + "\n";
        tmp += "HORA_NACIMIENTO:" + hob + ":" + mob + " " + AMer  + "\n";
        tmp += "LUGAR_NACIMIENTO:" + pob + "\n";
        tmp += "LUGAR_RESIDENCIA:" + sob + "\n";
        tmp += "PREGUNTA:" + preg + "\n";
        hidden.value = tmp;
    }
    return valid;
}

function GetXmlHttpObject()
{
  var xmlHttp=null;
  try
    {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
  catch (e)
    {
    // Internet Explorer
    try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
    catch (e)
      {
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    }
  return xmlHttp;
}

function showAll(sId,subCategory,url,showAllStatus){
	var request = GetXmlHttpObject();
	var showAll = showAllStatus;
	var trriBaseKey = null;

	try{
		trriBaseKey = getEl("trriKey").innerHTML;
	}
	catch(x){
	}

	if (trriBaseKey == null) {
		trriBaseKey = "";
	}
	if(request){
		request.onreadystatechange = function(){
		displayResponse(request, "comments");
		};
		request.open("POST", url, true);
		request.setRequestHeader("Content-type","application/x-www-form-urlencoded;charset=UTF-8");
		request.send("id="+trriBaseKey+"&subCategory="+subCategory+"&showAll="+showAll);
	}
}

/*
 * addComment needs to find the trriKey to assign the comment against
 * this will also be passed back to the comment.jsp to refresh
 */
function addComment(sId,subCategory,url){
	var comment="";
	var comnt = getEl("newComment").value;
	var txt="Escribe tu comentario aquí";
	var trriBaseKey = null;
    var divcount = 55;

	try{
		trriBaseKey = getEl("trriKey").innerHTML;
	}
	catch(x){
	}

	if (trriBaseKey == null) {
		trriBaseKey = "";
	}

	// check to see if this is a valuable comment (and if not, bail out)
	if(comnt == txt || comnt == "" || comnt == "null" || comnt.replace(/\s{2,}/gi," ") == " "){
		getEl("newComment").value="Escribe tu comentario aquí";
	}
	else{
		comnt = comnt.replace(/\s{2,}/gi," ").replace(/\n/gi," <br/>");
		comnt = comnt.replace(/(<([^>]+)>)/ig,"");//will strip html tags
		var str= comnt.split(" ");

		for(var i=0;i<str.length;i++){
		  if(str[i].length > divcount){
		        subStringLength = str[i].length;
		        numberOfCuts = Math.floor(subStringLength/divcount); //get numb of evenly times divcount goes into string length

		        for(var x=1; x<=numberOfCuts; x++){
		          //this is to go through the loop numberOfCuts times
	              comment += str[i].substring((x-1)*divcount, (x)*divcount);
		          comment += " ";
		          //this is to get mod characters
		          if((x==numberOfCuts) && ((subStringLength%divcount)>0)){
		            comment += str[i].substring((x)*divcount, ((x)*divcount+(subStringLength%divcount)));
		          	comment += " ";
		          }
		        }
			}
			else{
				comment+=cutString(str[i],70)+" ";
			}
		}
		var request = GetXmlHttpObject();

		if(request){
				request.onreadystatechange = function(){
				if(url.indexOf('Astrologer') > 0){
				    displayResponse(request, "inputCont");
				}
				else{
				    displayResponse(request, "comments");
				}
				};
				comment = encodeURIComponent(comment);
				request.open("POST", url, true);
				request.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8");
				request.send("id="+trriBaseKey+"&subCategory="+subCategory+"&newComment="+comment+"&screenname="+_sns_disLoginId_);

		}
		getEl("newComment").value="Escribe tu comentario aquí";
	}
}

function getEl( id ){ return document.getElementById( id ); }

function cutString (str, maxchars) {
		if(str&&str.length<maxchars) return str;
		else if(str) return (str.substring(0,maxchars).lastIndexOf(" ")>0)?str.substring(0,str.substring(0,maxchars).lastIndexOf(" ")):str.substring(0,maxchars);
		else return "";
	}

function displayResponse(request, elementId){
	if(request.readyState == 4){
	    var element = document.getElementById(elementId);
	   	document.getElementById(elementId).innerHTML = request.responseText;
	   	if(elementId=='comments'){
	   		document.getElementById('newComment').value = "";
	   	}
	}
}

function limitText(limitField, limitCount, limitNum) {
	if (limitField.value.length > limitNum) {
		limitField.value = limitField.value.substring(0, limitNum);
	} else {
		limitCount.value = limitNum - limitField.value.length;
	}
}


