function gotoPage(pg){
    var url='';
    switch(pg){
        /*what we do*/
        case 'whatwedo':
            url='/whatwedo/';
        break;
            case 'sociallysafeseal':
                url='/whatwedo/sociallysafeseal/';
            break;
            case 'areyousociallysafe':
                url='/whatwedo/areyousociallysafe/';
            break;
        
        /*case studies*/
        case 'casestudies':
            url='/casestudies/';
        break;
    }
    if(url!=''){
        window.open(url,'_self','');
    }
}//requestPage    

function changePage(obj){
    var url='';
    switch(obj.innerHTML){
        /*Home*/
        case 'Home':
            url='/';
        break;
        
        /*Who we are*/
        case 'Who We Are':
            url='/whoweare/';
        break;
            case 'Parry Aftab':
                url='/whoweare/parry/';
            break;                
            case 'Allan McCullough':
                url='/whoweare/allan/';
            break;
        
        /*What we do*/    
        case 'What We Do':
            url='/whatwedo/';
        break;
            case 'Socially Safe Seal':
                url='/whatwedo/sociallysafeseal/';
            break;
            case 'Are You Socially Safe':
                url='/whatwedo/areyousociallysafe/';
            break;
        
        /*case Studies*/
        case 'Case Studies':
            url='/casestudies/';
        break;
            case 'Socially Safe Seal Case Study':
                url='/casestudies/sociallysafeseal/';
            break;
            case 'Consultancy Case Study 1':
                url='/casestudies/casestudy1/';
            break;
            case 'Consultancy Case Study 2':
                url='/casestudies/casestudy2/';
            break;
            case 'E-Development Case Study':
                url='/casestudies/edevelopmentcasestudy/';
            break;
            case 'Training Case Study':
                url='/casestudies/trainingcasestudy/';
            break;
        
        /*media*/
        case 'Media':
            url='/media/';
        break;
        
        /*events*/
        case 'Events':
            url='/events/';
        break;
        
        /*partner with us*/
        case 'Partner With Us':
            url='/partnerwithus/';
        break;
        
        /*contact us*/
        case 'Contact Us':
            url='/contactus/';
        break;
        
        /*privacy policy*/
        case 'Privacy Policy':
            url='/privacypolicy/';
        break;
        
        /*Terms of service*/
        case 'Terms of Service':
            url='/termsofservice/';
        break;
        
        case 'Unsubscribe':
            url='/unsubscribe/';
        break;
        
        case 'Client Inquiry Form':
            url='/clientinquiryform/';
        break;
        
        case 'Client Login':
            url='http://client.wiredtrust.net';
        break;
        
    }    
    if(url!=''){
        window.open(url,'_self','');
    }    
}//changePage

function submitSurvey(survey,q){
    //what is the response
    var response=false;
    for(var a=0;a<3;a++){
        if(document.getElementById('q'+q+'_'+a).checked==true){
            response=a;
            break;
        }
    }
    if(response!==false){
        var req = new ajaxObject('/classes/controller_survey.php',processDataSurveys);
        req.update('id=submitsurvey&survey='+survey+'&step='+q+'&response='+response);
    }
}//submitSurvey

function updateSurvey(survey,step,question){    
    switch(survey){
        case 'sociallysafe':        
            var div=document.getElementById('div_survey');
            div.innerHTML='';
            
            var h3=document.createElement('h3');
            h3.appendChild(document.createTextNode(step+' of 15'));
            var p1=document.createElement('p');
            p1.appendChild(document.createTextNode(question));
            var ul=document.createElement('ul');
            for(var a=0;a<3;a++){
                var li=document.createElement('li');
                var input=document.createElement('input');
                input.setAttribute('type','radio');
                input.setAttribute('id','q'+step+'_'+a);
                input.setAttribute('name','q'+step);
                switch(a){
                    case 0:
                        input.setAttribute('value','yes');
                        li.appendChild(input);
                        li.appendChild(document.createTextNode('Yes'));
                    break;
                    case 1:
                        input.setAttribute('value','no');
                        li.appendChild(input);
                        li.appendChild(document.createTextNode('No'));
                    break;
                    case 2:
                        input.setAttribute('value','notsure');
                        li.appendChild(input);
                        li.appendChild(document.createTextNode('Not Sure'));
                    break;
                }//switch
                ul.appendChild(li);    
            }//for a
            
            var p2=document.createElement('p');            
            var input=document.createElement('input');
            input.setAttribute('type','button');
            input.setAttribute('onclick','submitSurvey(\'sociallysafe\','+step+')');
            input.setAttribute('value','Next\u00a0\u00bb\u00a0');
            p2.appendChild(input);
            
            div.appendChild(h3);
            div.appendChild(p1);
            div.appendChild(ul);
            div.appendChild(p2);
        break;
    }//switch survey    
}//updateSurvey

function completeSurvey(score){
    var div=document.getElementById('div_survey');
    div.innerHTML='';
    
    var p1=document.createElement('p');
    p1.appendChild(document.createTextNode('Your total Socially Safe\u2122 Risk Factor Score is '+score+'.'));
    
    var p2=document.createElement('p');
    p2.appendChild(document.createTextNode('So what does this mean for you?'));
    
    if(score<4){
        var p3=document.createElement('p');
        p3.appendChild(document.createTextNode('Congratulations! You are either operating in a low risk environment, or being extra cautious. Either way, working with knowledgeable professionals will allow you more choices and innovative ways to improve your interactivity and user-features without adding to your risks. Like in Goldilocks and the 3 Bears, too cold isn\'t always better!'));
    }else if(score>3&&score<21){        
        var p3=document.createElement('p');
        p3.appendChild(document.createTextNode('You are facing more risks than you realize, but luckily can make things safer more easily than some other networks, services or sites. A thorough audit of your practices will be able to help you find ways to streamline risk management and be seamlessly safer and more secure.'));
    }else if(score>20){
        var p3=document.createElement('p');
        p3.appendChild(document.createTextNode('You have more risks than many other sites, networks and online services. Not all risks are obvious to providers until it\'s too late. But the right design, expertise and forward-thinking can make all the difference in the world in protecting your brand, your users and your network.'));
    }
    
    var p4=document.createElement('p');
    p4.appendChild(document.createTextNode('To see what WiredTrust can do for you '));
    var a=document.createElement('a');
    a.setAttribute('href','/contactus/');
    a.appendChild(document.createTextNode('contact us'));        
    p4.appendChild(a);
    p4.appendChild(document.createTextNode(' for a chat.'));
    
    div.appendChild(p1);
    div.appendChild(p2);
    div.appendChild(p3);
    div.appendChild(p4);
}//completesurvey    

function resetForm(form){
    var inputfields=new Array();//required
    var checkfields=new Array();//not required
    var selectfields=new Array();//required
    var otherfields=new Array();//not required 
    switch(form){
        case 'contactus':
            var inputfields=new Array('name','email','message','verificationcode');
            var checkfields=new Array('copymessage');
            var selectfields=new Array('about');
        break;
        case 'alerts':
            var inputfields=new Array('name','email');
        break;
        case 'unsubscribe':
            var inputfields=new Array('email','verificationcode');
        break;
    }
    
    if(inputfields.length>0){
        for(a in inputfields){            
            var elem=form+'_'+inputfields[a];
            document.getElementById(elem).value='';
            document.getElementById(elem).style.backgroundImage='url()';                            
        }    
    }
    if(checkfields.length>0){
        for(a in checkfields){
            var elem=form+'_'+checkfields[a];
            document.getElementById(elem).checked=false;                
        }    
    }
    if(selectfields.length>0){
        for(a in selectfields){
            var elem=form+'_'+selectfields[a];
            document.getElementById(elem).selectedIndex=0;
        }    
    }
    if(otherfields.length>0){
        for(a in otherfields){
            var elem=form+'_'+otherfields[a];
            document.getElementById(elem).value='';
            document.getElementById(elem).style.backgroundImage='url()';                
        }    
    }    
}//resetForm
    
function submitForm(form){    
    var params='';
    var res=true;
    var inputfields=new Array();//required
    var checkfields=new Array();//not required
    var selectfields=new Array();//required
    var otherfields=new Array();//not required    
    switch(form){
        case 'contactus':
            var inputfields=new Array('name','email','message','verificationcode');
            var checkfields=new Array('copymessage');
            var selectfields=new Array('about');            
        break;
        case 'alerts':
            var inputfields=new Array('name','email');
        break;
        case 'unsubscribe':
            var inputfields=new Array('email','verificationcode');
        break;
    } 
    if(inputfields.length>0){
        for(a in inputfields){
            var elem=form+'_'+inputfields[a];
            if(document.getElementById(elem).value!=''&&document.getElementById(elem).style.backgroundImage!='url("/img/error.png")'){
                params+='&'+elem+'='+encodeURIComponent(document.getElementById(elem).value);
            }else{
                res=false;
            }    
        }    
    }
    if(checkfields.length>0){
        for(a in checkfields){
            var elem=form+'_'+checkfields[a];            
            params+='&'+elem+'='+encodeURIComponent(document.getElementById(elem).checked);                
        }    
    }
    if(selectfields.length>0){
        for(a in selectfields){
            var elem=form+'_'+selectfields[a];
            if(document.getElementById(elem).value.substr(0,2)!='--'&&document.getElementById(elem).value!=''){
                params+='&'+elem+'='+encodeURIComponent(document.getElementById(elem).value);
            }else{
                res=false;
            }    
        }    
    }
    if(otherfields.length>0){
        for(a in otherfields){
            var elem=form+'_'+otherfields[a];
            params+='&'+elem+'='+encodeURIComponent(document.getElementById(elem).value);    
        }    
    }
    
    
    if(res!==false&&params!=''){        
        var req = new ajaxObject('/classes/controller_form.php',processDataForms);
        req.update('id=submitform&form='+form+params);
    }
}//submitForm

function validateInput(obj,required,validate,validatetype){
    obj.style.backgroundImage='url(/img/loadercircle.gif)';    
    var res=false;
    if(!required&&obj.value==''){
        res=true;
    }else if(validate){
        switch(validatetype){
            case 'name':
                var patt=/^([A-Z][a-zA-Z\-\.']+\s?){1,4}$/;
                res=patt.test(obj.value);
            break;
            case 'email':            
                var patt=/(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|”(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*”)@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])/;
                res=patt.test(obj.value);
            break;
            case 'phone':            
                var patt=/^(\d{3}-){2}\d{4}$/;
                res=patt.test(obj.value);
            break;
            case 'password':
                var patt=/^[a-zA-Z0-9]{8,12}$/;
                res=patt.test(obj.value);
            break;
            case 'number':
                var patt=/^[0-9]+$/;
                res=patt.test(obj.value);
                if(res&&obj.value.length>1&&obj.value<10){
                    obj.value=obj.value.substr(1,2)
                }    
            break; 
            case 'date':                    
                var patt=/^(January|February|March|April|May|June|July|August|September|October|November|December)[\s,\-]\d{1,2}(nd|rd|th|st)?[\s,\-]\d{4}$/;
                res=patt.test(obj.value);
                if(res&&obj.value.length>1&&obj.value<10){
                    obj.value=obj.value.substr(1,2)
                }                
            break;   
        }
    }
    if(res==true){
        obj.style.backgroundImage='url(/img/checkmark.png)';
    }else{
        obj.style.backgroundImage='url(/img/error.png)';
    }    
}//validateInput

function processDataSurveys(responseText, responseStatus) {
  if (responseStatus==200) {
    var jsonObj=eval("("+responseText+")");
    
    if(jsonObj.metadata.id=='submitsurvey'){
        if(jsonObj.metadata.survey=='sociallysafe'){
            if(jsonObj.metadata.step<16){
                updateSurvey(jsonObj.metadata.survey,jsonObj.metadata.step,jsonObj.metadata.question);                
            }else{
                completeSurvey(jsonObj.metadata.score);
            }    
        }
    }
  } else {
    //alert(responseStatus + ' -- Error Processing Request');
  }
}//processDataSurveys

function processDataForms(responseText, responseStatus) {
  if (responseStatus==200) {
    var jsonObj=eval("("+responseText+")");
   
    if(jsonObj.metadata.id=='submitform'){
        if(jsonObj.metadata.form=='contactus'){
            window.scroll(0,100);
            if(jsonObj.metadata.status==false){
                document.getElementById('contactus_msg').style.color='red';
                document.getElementById('contactus_msg').innerHTML='Please correct the following errors:  '+jsonObj.metadata.message;                
            }else if(jsonObj.metadata.status==true){
                document.getElementById('contactus_msg').style.color='black';
                document.getElementById('contactus_msg').innerHTML='Thank you '+jsonObj.metadata.message+' for your submission.  We will be in touch soon. Warm Regards, WiredTrust';
                resetForm('contactus');
            }
        }else if(jsonObj.metadata.form=='alerts'){
            resetForm('alerts');
        }else if(jsonObj.metadata.form=='unsubscribe'){
            window.scroll(0,100);
            if(jsonObj.metadata.status==false){
                document.getElementById('unsubscribe_msg').style.color='red';
                document.getElementById('unsubscribe_msg').innerHTML='Please correct the following errors:  '+jsonObj.metadata.message;                
            }else if(jsonObj.metadata.status==true){
                document.getElementById('unsubscribe_msg').style.color='black';
                document.getElementById('unsubscribe_msg').innerHTML='Thank you.  '+jsonObj.metadata.message+' has been unsubscribed from WiredTrust Alerts. Warm Regards, WiredTrust';
                resetForm('unsubscribe');
            }
        }    
    }
  } else {
    //alert(responseStatus + ' -- Error Processing Request');
  }
}//processDataTimecard      

/*  AJAX OBJECT FROM http://www.hunlock.com/blogs/The_Ultimate_Ajax_Object */

function ajaxObject(url, callbackFunction) {
  var that=this;      
  this.updating = false;
  this.abort = function() {
    if (that.updating) {
      that.updating=false;
      that.AJAX.abort();
      that.AJAX=null;
    }
  }
  this.update = function(passData,postMethod) { 
    if (that.updating) { return false; }
    that.AJAX = null;                          
    if (window.XMLHttpRequest) {              
      that.AJAX=new XMLHttpRequest();              
    } else {                                  
      that.AJAX=new ActiveXObject("Microsoft.XMLHTTP");
    }                                             
    if (that.AJAX==null) {                             
      return false;                               
    } else {
      that.AJAX.onreadystatechange = function() {  
        if (that.AJAX.readyState==4) {             
          that.updating=false;                
          that.callback(that.AJAX.responseText,that.AJAX.status,that.AJAX.responseXML);        
          that.AJAX=null;                                         
        }                                                      
      }                                                        
      that.updating = new Date();                              
      if (/post/i.test(postMethod)) {
        var uri=urlCall+'?'+that.updating.getTime();
        that.AJAX.open("POST", uri, true);
        that.AJAX.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        that.AJAX.setRequestHeader("Content-Length", passData.length);
        that.AJAX.send(passData);
      } else {
        var tmptym=that.updating.getTime();
        ajaxrequesttime=tmptym;
        var uri=urlCall+'?'+passData+'&ts='+(that.updating.getTime());;//(that.updating.getTime()); 
        that.AJAX.open("GET", uri, true);                             
        that.AJAX.send(null);                                         
      }              
      return true;                                             
    }                                                                           
  }
  var urlCall = url;        
  this.callback = callbackFunction || function () { };
}    
