var xmlhttp;
var url2;
var stopVar;
var contador = 0;
var emailExist;

function loadXMLDoc()
{
    contador++;
    if (contador < 7) {
        xmlhttp=null;

        // code for Mozilla, etc.
        if (window.XMLHttpRequest) {
            xmlhttp=new XMLHttpRequest();
        }
        // code for IE
        else if (window.ActiveXObject) {
            xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
        if (xmlhttp!=null) {
            xmlhttp.onreadystatechange=state_Change;
            xmlhttp.open("GET",url2,true);
            xmlhttp.send(null);
        }
        else {
            alert("Your browser does not support XMLHTTP.");
        }
    }
    else window.clearInterval(stopVar);
}

function initXMLDoc(url) {
    url2 = url;
    loadXMLDoc();
    stopVar = window.setInterval(loadXMLDoc, "3000");
}



function state_Change() {
    // if xmlhttp shows "loaded"
    if (xmlhttp.readyState==4) {
        // if "OK"
        if (xmlhttp.status==200) {
            alert(xmlhttp.responseText);
            var results = xmlhttp.responseText.split(',');
            document.getElementById('ajaxResult').innerHTML=

            "<table rules=\"all\" border=\"0\">\n<tr height=\"25%\">\n<td><img src=\""+results[5]+"\"></td>"+
            "\n</tr>\n<tr>\n<td>\n<table rules=\"rows\" border=\"0\">\n<tr>\n<td>"+results[1]+" sold</td>"+
            "\n</tr>\n<tr>\n<td>"+results[0]+"positive</td>\n</tr>\n<tr>"+
            "\n<td>Info & Contact</td>\n</tr>\n<tr>\n<td>\n"+"online"+"\n</td>\n</tr>\n<tr>\n<td></td>\n</tr>\n</table>\n</td>"+
            "\n</tr>\n</table>";

        }
        else {
            alert("Problem retrieving data:" + xmlhttp.statusText);
        }
    }
}


function creaAjax(){
    var objetoAjax=null;
    // code for Mozilla, etc.
    if (window.XMLHttpRequest)
    {
        objetoAjax=new XMLHttpRequest()
    }
    // code for IE
    else if (window.ActiveXObject)
    {
        objetoAjax=new ActiveXObject("Microsoft.XMLHTTP")
    }
    return objetoAjax;
}
var ajaxObject = creaAjax();



function checkAvailability()
{

    var value = document.getElementById('account.userID').value;
    var url = '../available.htm?userID='+value;

    new Ajax.Updater({success: 'availabilityResult'}, url, {
        method: 'post'
    });


}

function checkMailAvailability()
{
    if ($('originalEmailAddress') == null || $('originalEmailAddress').value.toLowerCase() != $('user.mail').value.toLowerCase()) {
        var mail = document.getElementById('user.mail').value;

        
        var url = '/availableMail.htm?mail='+mail;

        new Ajax.Request(
        	url, 
        	{
		        method: 'post',
		        asynchronous: false,
		        onComplete: function(transport){
		            if(transport.responseText.match("ok"))
		               	emailExist = false;		            
		            else 
		            	emailExist = true;
		        }
       		}
        );
    } 
    return emailExist;   
}



function updateButtonsTransaction()
{
    setTransactionsOn();
    setAccountInfoOff();
    setChangeIDOff();
    setExpertProfileOff();
    setWidgetsOff();
}

function updateButtonsAccountInfo()
{
    setTransactionsOff();
    setAccountInfoOn();
    setChangeIDOff();
    setExpertProfileOff();
    setWidgetsOff();
}

function updateButtonsChangeID()
{
    setTransactionsOff();
    setAccountInfoOff();
    setChangeIDOn();
    setExpertProfileOff();
    setWidgetsOff();
}

function updateButtonsExpertProfile()
{
    setTransactionsOff();
    setAccountInfoOff();
    setChangeIDOff();
    setExpertProfileOn();
    setWidgetsOff();
}

function updateButtonsWidgets()
{
    setTransactionsOff();
    setAccountInfoOff();
    setChangeIDOff();
    setExpertProfileOff();
    setWidgetsOn();

}



function updateContentAdminTool(content){
	$('ajaxResult').innerHTML = "<center><br/><br/><p><img src='/resources/images/ajax-loader2.gif' alt=\"Loading\"/></p></center>";
	new Ajax.Updater('ajaxResult',content+".htm",{
		evalScripts:true
	}); 
}

function updateContent(content,filter){
    var url = content+".htm";
	
    if (content == 'accinfo')
    {
        updateButtonsAccountInfo();
    }
    else if (content == 'changeid')
    {
        updateButtonsChangeID();
    }
    else if (content == 'ajaxExpertProfile')
    {
        updateButtonsExpertProfile();
    }
    else if (content == 'widgets')
    {
        updateButtonsWidgets();        
    }
    else
    {
        url="transactionsView.htm";
        updateButtonsTransaction();
    }

    $('ajaxResult').innerHTML="<center><br/><br/><p><img src='/resources/images/ajax-loader2.gif' alt=\"Loading\"/></p></center>";
    new Ajax.Updater('ajaxResult',url,{
        evalScripts: 'true'
    });

}

function updateSubContent(content){
    var url=content+".htm";
    var resultDiv = document.getElementById('ipw_ajaxContent');

    ajaxObject.open("POST",url,true);
    ajaxObject.onreadystatechange=function() {

        if (ajaxObject.readyState==4)
        {
            resultDiv.innerHTML = ajaxObject.responseText;
        }
        else
        {
            resultDiv.innerHTML = "<center><br/><br/><p><img src='/resources/images/ajax-loader2.gif' alt=\"Loading\"/></center></p>";
        }
    }
    ajaxObject.send(null);
}

function ajaxPageLoad(pageNumber,url){
    var resultDiv = document.getElementById('transactionViewResult');
    url += "&page=" + pageNumber;
    
    ajaxObject.open("POST",url,true);
    ajaxObject.onreadystatechange=function() {

        if (ajaxObject.readyState==4)
        {
            resultDiv.innerHTML = ajaxObject.responseText;
        }
        else
        {
            resultDiv.innerHTML = "<center><br/><br/><span style=\"text-align:center;\"><p><img src='/resources/images/ajax-loader2.gif' alt=\"Loading\"/></p></span></center>";
        }
    }
    ajaxObject.send(null);
}

//Simulte a sleep in javascript
function mySleepFunc(naptime){

    naptime = naptime * 1000;
    var sleeping = true;
    var now = new Date();
    var alarm;
    var startingMSeconds = now.getTime();
    while(sleeping){
        alarm = new Date();
        var alarmMSeconds = alarm.getTime();
        document.write(".");
        if(alarmMSeconds - startingMSeconds > naptime){
            sleeping = false;
        }

    }
}

function ajaxformCheckBox(thisform,formhandler)
{
    var idToSearch;
    var idToSearch2;
    // Set up data variable
    var formdata = "";
    // Set up Ajax request variable
    try
    {
        xmlhttp = window.XMLHttpRequest?new XMLHttpRequest(): new ActiveXObject("Microsoft.XMLHTTP");
    }
    catch (e)
    {
        alert("Error: Could not load page.");
    }
    // Loop through form fields
    for (i=0; i < thisform.length; i++)
    {
       // Build Send String
        if(thisform.elements[i].type == "text") //Handle Textbox's
        {
            idToSearch = thisform.elements[i].id+'checkbox';
            idToSearch2 = document.getElementById(idToSearch);
            if (idToSearch2)
            {
                if (idToSearch2.checked == true)
                {
                    formdata = formdata + thisform.elements[i].id + "textchecked=" + escape(thisform.elements[i].value) + "&";
                }
                else
                {
                    formdata = formdata + thisform.elements[i].id + "text=" + escape(thisform.elements[i].value) + "&";
                }
            }
            else
            {
                formdata = formdata + thisform.elements[i].id + "text=" + escape(thisform.elements[i].value) + "&";
            }

        }
        // unicamente lo agrego a formdata si esta chequeado
        else if(thisform.elements[i].checked == true)
            formdata = formdata + thisform.elements[i].id+"="+thisform.elements[i].value+ "&";
    }
    //    alert(formdata);
    //Send Ajax Request
    xmlhttp.onreadystatechange = function(){
        //Check page is completed and there were no problems.
        if (xmlhttp.readyState == 4){
            var msg = document.getElementById("ajaxMsg");
            if(xmlhttp.status == 200)

                msg.innerHTML="<p style='color:#006E3A;font-weight:bold'>Your request was successfully performed</p>";
            else
                msg.innerHTML="<p style='color:#B82D18;font-weight:bold'>Your request was not processed due to an internal error, please contact the system administrator</p>"
        }
    }
    //Make connection
    xmlhttp.open("POST", formhandler);
    //Set Headers
    xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    //Send data
    //    alert(formdata);
    xmlhttp.send(formdata);
    //stops form from submitting normally
    return false;
}
function ajaxformQuestion(thisform,formhandler,successMessage,failMessage)
{
    // Set up data variable
    var formdata = "";
    // Set up Ajax request variable
    try {xmlhttp = window.XMLHttpRequest?new XMLHttpRequest(): new ActiveXObject("Microsoft.XMLHTTP");}  catch (e) { alert("Error: Could not load page.");}
    // Loop through form fields
    for (var i=0; i < thisform.length; i++)
    {
        //Build Send String
        if(thisform.elements[i].type == "text"){ //Handle Textbox's
            formdata = formdata + thisform.elements[i].name + "=" + escape(thisform.elements[i].value) + "&";
        }else if(thisform.elements[i].type == "textarea"){ //Handle textareas
            formdata = formdata + thisform.elements[i].name + "=" + escape(thisform.elements[i].value) + "&";
        }else if(thisform.elements[i].type == "checkbox"){ //Handle checkbox's
            formdata = formdata + thisform.elements[i].name + "=" + thisform.elements[i].checked + "&";
        }else if(thisform.elements[i].type == "radio"){ //Handle Radio buttons
            if(thisform.elements[i].checked){
                formdata = formdata + thisform.elements[i].name + "=" + thisform.elements[i].value + "&";
            }
        }else{
            //handle a select box.
            formdata = formdata + thisform.elements[i].name + "=" + escape(thisform.elements[i].value) + "&";
        }
    }

    xmlhttp.onreadystatechange = function(){
         if (xmlhttp.readyState == 4){
            var msg = document.getElementById("ajaxMsg");
            if(xmlhttp.status == 200) {
              	onReadyStateQuestion(xmlhttp.responseText)
            }
        }
    }
    xmlhttp.open("POST", formhandler);
    xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlhttp.send(formdata);
    return false;
}


function ajaxform(thisform,formhandler,successMessage,failMessage)
{
    // Set up data variable
    var formdata = "";

    // Set up Ajax request variable
    try {xmlhttp = window.XMLHttpRequest?new XMLHttpRequest(): new ActiveXObject("Microsoft.XMLHTTP");}  catch (e) { alert("Error: Could not load page.");}

    // Loop through form fields
    for (var i=0; i < thisform.length; i++)
    {
        //Build Send String
        if(thisform.elements[i].type == "text"){ //Handle Textbox's
            formdata = formdata + thisform.elements[i].name + "=" + escape(thisform.elements[i].value) + "&";
        }else if(thisform.elements[i].type == "textarea"){ //Handle textareas
            formdata = formdata + thisform.elements[i].name + "=" + escape(thisform.elements[i].value) + "&";
        }else if(thisform.elements[i].type == "checkbox"){ //Handle checkbox's
            formdata = formdata + thisform.elements[i].name + "=" + thisform.elements[i].checked + "&";
        }else if(thisform.elements[i].type == "radio"){ //Handle Radio buttons
            if(thisform.elements[i].checked){
                formdata = formdata + thisform.elements[i].name + "=" + thisform.elements[i].value + "&";
            }
        }else{
            //handle a select box.
            formdata = formdata + thisform.elements[i].name + "=" + escape(thisform.elements[i].value) + "&";
        }
    }

    //Send Ajax Request
    xmlhttp.onreadystatechange = function(){
   // xmlhttp.onReadyStateChange = function(transport){
   
        //Check page is completed and there were no problems.
        if (xmlhttp.readyState == 4){
            var msg = document.getElementById("ajaxMsg");
            if(xmlhttp.status == 200) {
              	displayMessage(xmlhttp.responseText)
        /*    	if (successMessage != null && successMessage != "")
            		msg.innerHTML="<p style='color:#006E3A;font-weight:bold'>" + successMessage + "</p>";
            	else	
                	msg.innerHTML="<p style='color:#006E3A;font-weight:bold'>Your request was successfully performed</p>";
            } else {
            	if (failMessage != null && failMessage != "")
            		msg.innerHTML="<p style='color:#B82D18;font-weight:bold'>" + failMessage + "</p>";
            	else
                	msg.innerHTML="<p style='color:#B82D18;font-weight:bold'>Your request was not processed due to an internal error, please contact the system administrator</p>";*/
            }
        }
    }
    //Make connection
    xmlhttp.open("POST", formhandler);
    //Set Headers
    xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    //Send data
    xmlhttp.send(formdata);
    //stops form from submitting normally
    return false;
}

function updateContentIndexPage(content){
    var url;
    var title=$('title');

    if (content == 'whatIsRogomo')
    {
        url="/"+content+".htm";
        updateButtonsWhatIsRogomo();
    }
    else if (content == 'canIBeAnExpert')
    {
        url="/"+content+".htm";
        updateButtonsCanIBeAnExpert();
    }
    else if (content == 'tryOurDemo')
    {
        url="/"+content+".htm";
        updateButtonsTryOurDemo();
    }
   	else if (content == 'homeImage')
    {
        url="/"+content+".htm";
        updateButtonsHomeImage();
    }

    var resultDiv = document.getElementById('ajaxResult');
    ajaxObject.open("POST",url,true);
    ajaxObject.onreadystatechange=function() {

        if (ajaxObject.readyState==4)
        {
            resultDiv.innerHTML = ajaxObject.responseText;
        }
        else
        {
            resultDiv.innerHTML = "<center><br/><br/><p><img src='/resources/images/ajax-loader2.gif' alt=\"Loading\"/></p></center>";
        }
    }
    ajaxObject.send(null);
}