/*
 *
 * > FASHIONPEOPLE / v2
 *
 *   AUTHOR: DAVIDE BERNARDO
 *
 */

   function CheckLength(idObjArea, idObjLen, maxLen) {

       var maxchars = maxLen;

       text = document.getElementById(idObjArea).value;
       len  = text.length;

       if (len >= maxchars) {
          document.getElementById(idObjArea).value = text.substr(0, maxchars);
          len = (document.getElementById(idObjArea).value).length; 
          document.getElementById(idObjArea).blur();
       }
      
       document.getElementById(idObjLen).value = maxchars - len;
     
   }

   function checkFieldsNewMember(baseUrl) {
   	  
   	  var reg  = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   	
      if (document.getElementById('nome').value == '') {
         alert("Inserire il nome");
         return false;
      }
      else if (document.getElementById('cognome').value == '') {
         alert("Inserire il cognome");
         return false;
      }      
      else if (document.getElementById('numero').value == '') {
         alert("Inserire il numero di cellulare");
         return false;
      }      
      else if (document.getElementById('email').value == '') {
         alert("Inserire l'email");
         return false;
      }
      else if (reg.test(document.getElementById('email').value) == false) {
         alert('Indirizzo Email non valido');
         return false;
      }        
      
      newMember( baseUrl,
                 document.getElementById('nome').value, 
                 document.getElementById('cognome').value,
                 document.getElementById('numero').value,                 
                 document.getElementById('email').value                 
               );	
   	
   }

   function newMember(baseUrl, nome, cognome, numero, email) {
   	
      if ((nome) && (cognome) && (numero) && (email)) {
      	
         var requestObject     = new Object();
         requestObject.nome    = nome;
         requestObject.cognome = cognome;
         requestObject.numero  = numero;
         requestObject.email   = email;
         
         var jsonRequest       = JSON.stringify(requestObject);
         
         new Ajax.Request(baseUrl + '/default/index/newmember', {
      	
            method:     'POST',
            parameters: { json: jsonRequest },
                           onSuccess: 
                              function(transport, json) { 
                              //use and handle foo response data  
                              }
                           ,
                           on500:
                              function(transport) {
         	                  //handle error, inform user
                              },
                           onComplete: parseNewMember
         
         });   
             
      }   	
          
   }
   

   function parseNewMember(response) {
   	
      var data = JSON.parse(response.responseText);   	
      
      if (data) {

         document.getElementById('newMemberDiv').style.display          = "none";	         
      	 document.getElementById('newMemberErrorEmail').style.display   = "none";	         
      	 document.getElementById('newMemberErrorGeneric').style.display = "none";	         
      	
         if (data.status) 	 
            document.getElementById('newMemberDiv').style.display = "block";	
         else if ((!data.status) && (data.errorcode == 'email'))
            document.getElementById('newMemberErrorEmail').style.display = "block";	
         else if (!data.status)   
            document.getElementById('newMemberErrorGeneric').style.display = "block";	         
             
         self.location.hash = "newMember";         
      	
      }
      
   }
      
   function checkFieldsAddComment(baseUrl) {
   	  
      if (document.getElementById('commento').value == '') {
         alert("Inserire il commento");
         return false;
      }
      
      addArticoloComment(baseUrl,
                         document.getElementById('idArticolo').value, 
                         document.getElementById('commento').value
                         );	
   	
   } 
       
   function addArticoloComment(baseUrl, idArticolo, commento) {
   	
      if ((idArticolo) && (commento)) {
      	
         var requestObject         = new Object();
         requestObject.idArticolo  = idArticolo;
         requestObject.commento    = commento;
         var jsonRequest           = JSON.stringify(requestObject);
         
        new Ajax.Request(baseUrl + '/articoli/index/addcomment', {

        	 method:     'POST',
             parameters: { json: jsonRequest },
                         onSuccess: 
                            function(transport, json) { 
                               //use and handle foo response data  
                            }
                            ,
                         on500:
                            function(transport) {
         	                //handle error, inform user
                            },
                         onComplete: parseAddArticoloComment
         
         });   
             
      }   	
          
   }       
       
   function parseAddArticoloComment(response) {
   	
      var data = JSON.parse(response.responseText);

      if (data) {
      	
         if (data.status) {
            articoliCommentsPage(data.baseUrl, data.idArticolo, 1);   
            document.getElementById("commento").value = "";
            self.location.hash = "comments";
         }
         
      }
    
   }            
         
   function articoliCommentsPage(baseUrl, idArticolo, page) {
   	
      if ((idArticolo) && (page)) {
      	
         var requestObject         = new Object();
         requestObject.idArticolo  = idArticolo;
         requestObject.page        = page;         
         var jsonRequest           = JSON.stringify(requestObject);
         
         new Ajax.Request(baseUrl + '/articoli/index/commentspage', {
      	
         method:     'POST',
         parameters: { json: jsonRequest },
                         onSuccess: 
                            function(transport, json) { 
                            //use and handle foo response data  
                            }
                            ,
                         on500:
                             function(transport) {
         	                 //handle error, inform user
                             },
                         onComplete: parseListArticoliComments
         
         });   
             
      }   	
          
   }     
   
   function parseListArticoliComments(response) {
   	
      var data = JSON.parse(response.responseText);
      
      if (data) {
         document.getElementById("commentiSize").innerHTML = data.htmlSize;      	
         document.getElementById("listComments").innerHTML = data.html;
         self.location.hash = "comments";
      }
    
   }       
