   var $j = jQuery.noConflict();
   
   $j(document).ready(function(){
		
		$j.datepicker.regional['es'] = {clearText: 'Reset', clearStatus: '',
                                        closeText: 'x', closeStatus: '',
                                        prevText: '&lt;Ant', prevStatus: '',
                                        nextText: 'Sig&gt;', nextStatus: '',
                                        currentText: 'Hoy', currentStatus: '',
                                        monthNames: ['enero','febrero','marzo','abril','mayo','junio',
                                        'julio','agosto','septembre','octubre','noviembre','diciembre'],
                                        monthNamesShort: ['ene','feb','mar','abr','may','jun',
                                        'jul','ago','sep','oct','nov','dic'],
                                        monthStatus: '', yearStatus: '',
                                        weekHeader: 'Sm', weekStatus: '',
                                        dayNames: ['Domingo','Lunes','Martes','Miércoles','Jueves','Viernes','Sábado'],
                                        dayNamesShort: ['Dom','Lun','Mar','Mié;','Jue','Vie','Sáb'],
                                        dayNamesMin: ['Do','Lu','Ma','Mi','Ju','Vi','Sá'],
                                        dayStatus: 'DD', dateStatus: 'D, M d',
                                        dateFormat: 'dd/mm/yy', firstDay: 1, 
                                        initStatus: '', isRTL: false
                                        };
            
    $j.datepicker.setDefaults($j.datepicker.regional['es']);
        
    //class.Backoffice.php :: Char counter
    /*
    $j("span.charcounter").each(function(){
      $j(this).get(0).innerHTML = $j(this).parent().prev().get(0).value;
    });
    */
    $j("input[maxlength],textarea[maxlength]").keyup(function(ev){
      if($j(this).val().length>=$j(this).attr("maxlength")){
        $j(this).val($j(this).val().substr(0,$j(this).attr("maxlength")));
      }
      $j(this).next().next("p.descripcion").children("span.charcounter").html($j(this).val().length);
      
    });   
		//class.Backoffice.php :: Multiplelist
		$j("input.multiplelist_add").click(function(){
          $j("div.multiplelist select.total option:selected").each(function(){
            $j("div.multiplelist select.selected").append(this);
          });
        });
        
        $j("input.multiplelist_remove").click(function(){
          $j("div.multiplelist select.selected option:selected").each(function(){
            $j("div.multiplelist select.total").append(this);
          });
        });
        
        //bo_formEstabliment.php :: Multiplelist :: Activació valors onsubmit formulari
        $j("select.selected").parents("form").submit(function(){
            $j("select.selected option").attr("selected","selected");            
        });
       
       //bo_formEstabliment.php :: Errorbox :: FadeIn/FadeOut
       $j("div.errorbox").not(".ajaxerrorbox").fadeIn("slow");
       $j("div.errorbox").click(function(){
         $j(this).fadeOut("slow");
       });
       
       
       
       //bo_formEstabliment.php :: Back to list
       $j("#listEstablimentsBUTTON").click(function(){
         document.location="bo_listEstabliments.php";
       });
       
       //bo_listArticles.php :: Go to Ficha tienda
       $j("#tiendaBUTTON").click(function(){
         document.location="bo_formEstabliment.php";
       });
       
       //bo_formEstabliment.php + bo_listArticles.php :: Go to escaparate
       $j("#escaparateBUTTON").click(function(){
         document.location="bo_listArticles.php?pMagatzem=0";
       });
       
       //bo_formEstabliment.php + bo_listArticles.php :: Go to magatzem
       $j("#almacenBUTTON").click(function(){
         document.location="bo_listArticles.php?pMagatzem=1";
       });
       
       //bo_formEstabliment.php + bo_listArticles.php :: Go to escaparate
       $j("#listPromocionesBUTTON").click(function(){
         document.location="bo_listPromocions.php";
       });
       
       
       //bo_listEstabliments.php :: Add establiment
       $j("#addEstablimentBUTTON").click(function(){
         document.location="bo_formEstabliment.php?pTask=insert";
       });
       
       
       //bo_formEstabliment.php :: Logo Upload tool 
       $j('#uploadlogoestabliment').upload({
	    name: 'pLogo',
	    method: 'post',
	    enctype: 'multipart/form-data',
	    action: 'uploadLogoEstabliment.php',
	    onSubmit: function(nIdTool) {
	        this.params({  "pId":$j("#establimentForm input[name=\"pId\"]").val(),
	                       "pIdImage":$j("#uploadlogoestabliment").attr("idimage"),
	                       "pMaxWidth":$j("#uploadlogoestabliment").attr("nmaxwidth"),
	                       "pMaxHeight":$j("#uploadlogoestabliment").attr("nmaxheight")
	                   });
            $j("#uploadlogoestabliment_img").fadeOut("slow");
            $j("#logoEstablimentIMG").fadeOut("slow");
            $j("#uploadlogoestabliment_msg").text('Cargando imagen...');
	        $j("#uploadlogoestabliment_msg").fadeIn("slow");
	    },
	    onComplete: function(strError) {
	        
	        var aError;
	        var strErrMsg;
	        var nErrno;
	        
	        var nIdEstabliment  = $j("#establimentForm input[name=\"pId\"]").val();
            
	        aError = strError.split(" / ");
            
            	        
	        nErrno     = aError[0];
	        strErrMsg  = aError[1];
	        nIdImatge  = aError[2];
	        nWidth     = aError[4];
	        nHeight    = aError[5];

	        $j("#uploadlogoestabliment_msg").fadeOut("slow",function(){
              if(nErrno==0){
                $j("#establimentForm input[name=\"pIdImatge\"]").val(nIdImatge);
                $j("#rotatelogoestablimentrightBUTTON").attr("idimage",nIdImatge);
                $j("#rotatelogoestablimentrightBUTTON").attr("nwidth",nWidth);
                $j("#rotatelogoestablimentrightBUTTON").attr("nheight",nHeight);
                
                $j("#uploadlogoestabliment_img").attr("src","ognShowImatge.php?pId="+ nIdImatge +"&pWidth="+ nWidth +"&pHeight="+ nHeight +"&pDate="+ new Date().getTime()).fadeIn("slow");
                $j("#logoEstablimentIMG").attr("src","ognShowImatge.php?pId="+ nIdImatge +"&pWidth=150&pDate="+ new Date().getTime()).fadeIn("slow");
                
                $j("#deletelogoestablimentBUTTON").show();
                $j("#rotatelogoestablimentrightBUTTON").show();
              }
              else{
                $j("#uploadlogoestabliment_msg").text(strErrMsg);
                $j("#uploadlogoestabliment_msg").fadeIn("slow");
                $j("#uploadlogoestabliment_msg").click(function(){
                  $j(this).fadeOut("slow");
                });
                $j("#uploadlogoestabliment").fadeIn("slow");
              }
              
            });
	    }
	   });
	   
	   //bo_formEstabliment.php :: Logo Upload tool - Delete
        $j("#deletelogoestablimentBUTTON").click(function(){
            
            var nIdEstabliment  = $j("#establimentForm input[name=\"pId\"]").val();
            var nIdImatge       = $j("#establimentForm input[name=\"pIdImatge\"]").val();
           
            //Ajax call
            $j.post("ajaxDeleteLogoEstabliment.php",
                {pIdImatge: nIdImatge,pIdEstabliment: nIdEstabliment},
                function(data){
                    switch(data.nErrno){
                        case 1:
                            $j("#uploadlogoestabliment_msg").fadeOut("slow",function(){
                              $j(this).text(data.strErrMsg);
                               $j(this).fadeIn("slow");
                            });
                            break;
                        case 0:
                           $j("#establimentForm input[name=\"pIdImatge\"]").val("");
                           $j("#uploadlogoestabliment_img").fadeOut("slow",function(){
                             $j(this).attr("src","img/noLogo150x160.gif");
                             $j("#logoEstablimentIMG").attr("src","img/noLogo150x160.gif");
                             $j(this).fadeIn("slow",function(){
                               $j("#deletelogoestablimentBUTTON").hide();
                               $j("#rotatelogoestablimentrightBUTTON").hide();
                             });
                           });
                           
                           //GA tracking
                           if (typeof pageTracker != "undefined") {
                            pageTracker._trackPageview("/bo_ajaxDeleteLogoEstabliment");
                           }
                           break;
                    }                    
            },"json");
        });
        
        
        //bo_formEstabliment.php :: Rotate image
        $j("#rotatelogoestablimentrightBUTTON").click(function(){
            var nIdImatge       = $j(this).attr("idimage");
            var nWidth          = $j(this).attr("nwidth");
            var nHeight         = $j(this).attr("nheight");
            
            //Ajax call
            $j.post("ajaxRotateImage.php",
                {pId: nIdImatge, pWidth: nWidth, pHeight:nHeight},
                function(data){
                    switch(data.nErrno){
                        case 1:
                            $j("#uploadlogoestabliment_msg").fadeOut("slow",function(){
                              $j(this).text(data.strErrMsg);
                               $j(this).fadeIn("slow");
                            });
                            break;
                        case 0:
                           var nIdImatge    = data.nIdImage;
                           var nWidth       = data.nWidth;
                           var nHeight      = data.nHeight;
                           
                           $j("#rotatelogoestablimentrightBUTTON").attr("nwidth",nWidth);
                           $j("#rotatelogoestablimentrightBUTTON").attr("nHeight",nHeight);
                                 
                           $j("#uploadlogoestabliment_img").fadeOut("slow",function(){
                             $j(this).attr("src","ognShowImatge.php?pId="+ nIdImatge +"&pWidth="+ nWidth +"&pHeight="+ nHeight +"&pDate="+ new Date().getTime()).fadeIn("slow");
                             $j("#logoEstablimentIMG").attr("src","ognShowImatge.php?pId="+ nIdImatge +"&pWidth=150&pDate="+ new Date().getTime()).fadeIn("slow");
                           });
                           
                           //GA tracking
                           if (typeof pageTracker != "undefined") {
                            pageTracker._trackPageview("/bo_ajaxRotateLogoEstabliment");
                           }
                           break;
                    }                    
            },"json");
        });
        
        
        
        
        //bo_formEstabliment.php :: Foto Upload tool 
       $j('#uploadgaleriaestabliment').upload({
        name: 'pFile',
        method: 'post',
        enctype: 'multipart/form-data',
        action: 'uploadGaleriaEstabliment.php',
        onSubmit: function(nIdTool) {
            this.params({   "pId":$j("#establimentForm input[name=\"pId\"]").val(),
                            "pIdImage":$j("#uploadgaleriaestabliment").attr("idimage"),
                            "pMaxWidth":$j("#uploadgaleriaestabliment").attr("nmaxwidth"),
                            "pMaxHeight":$j("#uploadgaleriaestabliment").attr("nmaxheight")
                        });
                        
            $j("#uploadgaleriaestabliment_img").fadeOut("slow");
            $j("#uploadgaleriaestabliment_msg").text('Cargando imagen...');
            $j("#uploadgaleriaestabliment_msg").fadeIn("slow");
        },
        onComplete: function(strError) {
            
            var aError;
            var strErrMsg;
            var nErrno;
            
            
            aError = strError.split(" / ");
            
            nErrno     = aError[0];
            strErrMsg  = aError[1];
            nIdImatge  = aError[2];
            nWidth     = aError[4];
            nHeight    = aError[5];
            
                
            $j("#uploadgaleriaestabliment_msg").fadeOut("slow",function(){
              if(nErrno==0){
                
                $j("#uploadgaleriaestabliment").attr("idimage",nIdImatge);
                $j("#rotategaleriaestablimentrightBUTTON").attr("idimage",nIdImatge);
                $j("#rotategaleriaestablimentrightBUTTON").attr("nwidth",nWidth);
                $j("#rotategaleriaestablimentrightBUTTON").attr("nheight",nHeight);
                
                $j("#uploadgaleriaestabliment_img").attr("src","ognShowImatge.php?pId="+ nIdImatge +"&pWidth="+ nWidth +"&pHeight="+ nHeight +"&pDate="+ new Date().getTime()).fadeIn("slow");
                $j("#deletegaleriaestablimentBUTTON").show();
                $j("#rotategaleriaestablimentrightBUTTON").show();
                
              }
              else{
                $j("#uploadgaleriaestabliment_msg").text(strErrMsg);
                $j("#uploadgaleriaestabliment_msg").fadeIn("slow");
                $j("#uploadgaleriaestabliment_msg").click(function(){
                  $j(this).fadeOut("slow");
                });
                $j("#uploadgaleriaestabliment_img").fadeIn("slow");
              }
              
            });
        }
       });
       
       //bo_formEstabliment.php :: Foto Upload tool - Delete
        $j("#deletegaleriaestablimentBUTTON").click(function(){
            
            var nIdEstabliment  = $j("#establimentForm input[name=\"pId\"]").val();
            var nIdImatge       = $j("#uploadgaleriaestabliment").attr("idimage");
           
            //Ajax call
            $j.post("ajaxDeleteGaleriaEstabliment.php",
                {pIdImatge: nIdImatge,pIdEstabliment: nIdEstabliment},
                function(data){
                    switch(data.nErrno){
                        case 1:
                            $j("#uploadgaleriaestabliment_msg").fadeOut("slow",function(){
                              $j(this).text(data.strErrMsg);
                               $j(this).fadeIn("slow");
                            });
                            break;
                        case 0:
                           $j("#uploadgaleriaestabliment").attr("idimage","");
                           $j("#uploadgaleriaestabliment_img").fadeOut("slow",function(){
                             $j(this).attr("src","img/noLogo150x160.gif");
                             $j(this).fadeIn("slow",function(){
                               $j("#deletegaleriaestablimentBUTTON").hide();
                               $j("#rotategaleriaestablimentrightBUTTON").hide();
                             });
                           });
                           
                           //GA tracking
                           if (typeof pageTracker != "undefined") {
                            pageTracker._trackPageview("/bo_ajaxDeleteFotoEstabliment");
                           }
                           break;
                          
                    }                    
            },"json");
        });
        
        
        //bo_formEstabliment.php :: Rotate image
        $j("#rotategaleriaestablimentrightBUTTON").click(function(){
            var nIdImatge       = $j(this).attr("idimage");
            var nWidth          = $j(this).attr("nwidth");
            var nHeight         = $j(this).attr("nheight");
            
            //Ajax call
            $j.post("ajaxRotateImage.php",
                {pId: nIdImatge, pWidth: nWidth, pHeight:nHeight},
                function(data){
                    switch(data.nErrno){
                        case 1:
                            $j("#uploadgaleriaestabliment_msg").fadeOut("slow",function(){
                              $j(this).text(data.strErrMsg);
                               $j(this).fadeIn("slow");
                            });
                            break;
                        case 0:
                           var nIdImatge    = data.nIdImage;
                           var nWidth       = data.nWidth;
                           var nHeight      = data.nHeight;
                           
                           $j("#rotategaleriaestablimentrightBUTTON").attr("nwidth",nWidth);
                           $j("#rotategaleriaestablimentrightBUTTON").attr("nHeight",nHeight);
                                 
                           $j("#uploadgaleriaestabliment_img").fadeOut("slow",function(){
                             $j(this).attr("src","ognShowImatge.php?pId="+ nIdImatge +"&pWidth="+ nWidth +"&pHeight="+ nHeight +"&pDate="+ new Date().getTime()).fadeIn("slow");
                           });
                           
                           //GA tracking
                           if (typeof pageTracker != "undefined") {
                            pageTracker._trackPageview("/bo_ajaxRotateFotoEstabliment");
                           }
                          
                           break;
                    }                    
            },"json");
        });
        
        
        
        
         //bo_formArticle.php :: Foto Upload tool 
       $j('#uploadgaleriaarticle').upload({
        name: 'pFile',
        method: 'post',
        enctype: 'multipart/form-data',
        action: 'uploadGaleriaArticle.php',
        onSubmit: function(nIdTool) {
            this.params({"pIdPicture":$j("#uploadgaleriaarticle").attr("idimage"),
                         "pId":$j("#articleForm input[name=\"pId\"]").val(),
                         "pMaxWidth":$j("#uploadgaleriaarticle").attr("nmaxwidth"),
                         "pMaxHeight":$j("#uploadgaleriaarticle").attr("nmaxheight")
                        });
            $j("#uploadgaleriaarticle_img").fadeOut("slow");
            $j("#uploadgaleriaarticle_msg").text('Cargando imagen...');
            $j("#uploadgaleriaarticle_msg").fadeIn("slow");
            
           
        },
        onComplete: function(strError) {
            
            var aError;
            var strErrMsg;
            var nErrno;
            
            aError = strError.split(" / ");
            
            nErrno     = aError[0];
            strErrMsg  = aError[1];
            nIdImatge  = aError[2];
            nWidth     = aError[4];
            nHeight    = aError[5];
            
            $j("#uploadgaleriaarticle_msg").fadeOut("slow",function(){
              if(nErrno==0){
                
                $j("#uploadgaleriaarticle").attr("idimage",nIdImatge);
                $j("#rotategaleriaarticlerightBUTTON").attr("idimage",nIdImatge);
                $j("#rotategaleriaarticlerightBUTTON").attr("nwidth",nWidth);
                $j("#rotategaleriaarticlerightBUTTON").attr("nheight",nHeight);
                
                $j("#uploadgaleriaarticle_img").attr("src","ognShowImatge.php?pId="+ nIdImatge +"&pWidth="+ nWidth +"&pHeight="+ nHeight +"&pDate="+ new Date().getTime()).fadeIn("slow");
                $j("#deletegaleriaarticleBUTTON").show();
                $j("#rotategaleriaarticlerightBUTTON").show();
                
                $j("#uploadgaleriaarticle_msg").text(strErrMsg);
                $j("#uploadgaleriaarticle_msg").fadeIn("fast");
                
                
              }
              else{
                $j("#uploadgaleriaarticle_msg").text(strErrMsg);
                $j("#uploadgaleriaarticle_msg").fadeIn("slow");
                $j("#uploadgaleriaarticle_msg").click(function(){
                  $j(this).fadeOut("slow");
                });
                $j("#uploadgaleriaarticle_img").fadeIn("slow");
              }
              
            });
        }
       });
       
        //bo_formArticle.php :: Foto Upload tool - Delete
        $j("#deletegaleriaarticleBUTTON").click(function(){
            
            var nIdArticle  = $j("#articleForm input[name=\"pId\"]").val();
            var nIdImatge   = $j("#uploadgaleriaarticle").attr("idimage");
           
            //Ajax call
            $j.post("ajaxDeleteGaleriaArticle.php",
                {pIdImatge: nIdImatge,pIdArticle: nIdArticle},
                function(data){
                    switch(data.nErrno){
                        case 1:
                            $j("#uploadgaleriaarticle_msg").fadeOut("slow",function(){
                              $j(this).text(data.strErrMsg);
                               $j(this).fadeIn("slow");
                            });
                            break;
                        case 0:
                           $j("#uploadgaleriaarticle").attr("idimage","");
                           $j("#uploadgaleriaarticle_img").fadeOut("slow",function(){
                             $j(this).attr("src","img/noLogo150x160.gif");
                             $j(this).fadeIn("slow",function(){
                               $j("#deletegaleriaarticleBUTTON").hide();
                               $j("#rotategaleriaarticlerightBUTTON").hide();
                             });
                           });
                           
                           //GA tracking
                           if (typeof pageTracker != "undefined") {
                            pageTracker._trackPageview("/bo_ajaxDeleteFotoArticle");
                           }
                          
                           break;
                          
                    }                    
            },"json");
        });
        
        
        //bo_formEstabliment.php :: Rotate image
        $j("#rotategaleriaarticlerightBUTTON").click(function(){
            var nIdImatge       = $j(this).attr("idimage");
            var nWidth          = $j(this).attr("nwidth");
            var nHeight         = $j(this).attr("nheight");
            
            //Ajax call
            $j.post("ajaxRotateImage.php",
                {pId: nIdImatge, pWidth: nWidth, pHeight:nHeight},
                function(data){
                    switch(data.nErrno){
                        case 1:
                            $j("#uploadgaleriaarticle_msg").fadeOut("slow",function(){
                              $j(this).text(data.strErrMsg);
                               $j(this).fadeIn("slow");
                            });
                            break;
                        case 0:
                           var nIdImatge    = data.nIdImage;
                           var nWidth       = data.nWidth;
                           var nHeight      = data.nHeight;
                           
                           $j("#rotategaleriaarticlerightBUTTON").attr("nwidth",nWidth);
                           $j("#rotategaleriaarticlerightBUTTON").attr("nHeight",nHeight);
                                 
                           $j("#uploadgaleriaarticle_img").fadeOut("slow",function(){
                             $j(this).attr("src","ognShowImatge.php?pId="+ nIdImatge +"&pWidth="+ nWidth +"&pHeight="+ nHeight +"&pDate="+ new Date().getTime()).fadeIn("slow");
                           });
                           
                           //GA tracking
                           if (typeof pageTracker != "undefined") {
                            pageTracker._trackPageview("/bo_ajaxRotateFotoArticle");
                           }
                          
                           break;
                    }                    
            },"json");
        });
        
        
        
        
        
        
        var markFormFields   = function(aFormFields,strAlert){
            for(var i=0;i<aFormFields.length;i++){
                aFormFields[i].addClass("empty");
            }
            $j("#errorbox").removeClass("errorboxok").html("Datos incorrectos o incompletos.<br/>Por favor, revise los campos marcados en rojo.<br/>"+strAlert).fadeIn('slow',function(){
              $j("html").scrollTop(0);
            });
        };
        var pickEmptyFormField   = function(oFormField,aFormFields){
            if(oFormField.val()==""){
                aFormFields.push(oFormField);
            }
        };
        
        var pickNumericFormField   = function(oFormField,aFormFields){
            var nValue  = oFormField.val().replace(/\./g,"").replace(/\,/,".");
            if(isNaN(parseFloat(nValue))){
                aFormFields.push(oFormField);
            }
            else{
                oFormField.val(parseFloat(nValue).toString().replace(/\./,","));
            }            
        };
        
        $j("input.required, textarea.required").blur(function(){
	        if($j(this).val()==''){
	          $j(this).addClass('empty');
	          $j(this).next("p.empty").html('Este campo es obligatorio').fadeIn('slow');
	        }
	        else{
	          $j(this).removeClass('empty');
	          $j(this).next("p.empty").fadeOut('slow');
	        }
	      });
	      
        //bo_formEstabliment :: geoCoder button
        $j("#resetPlanoBUTTON").click(function(){
            nLat    = $j("#gcDefaultLat").val();
            nLng   = $j("#gcDefaultLng").val();
            
            resetMap(nLat,nLng);
        });
        $j("#codeAdrBUTTON").click(function(){
            geoCodeAddress(getGAddr());
        });
        
        
        
        //bo_formEstabliment :: submit validation
        $j("#establimentForm").submit(function(){
            var oInput;
            var aEmptyFields  = Array();
            var bError   = false;
            
            //Eliminem errors previs
            $j("#establimentForm input, #establimentForm textarea, #establimentForm select.selected").removeClass("empty");
            
            // Empty textbox & textareas
            pickEmptyFormField($j("#establimentForm input[name=\"pNom\"]"),aEmptyFields);
            //pickEmptyFormField($j("#establimentForm input[name=\"pAdr\"]"),aEmptyFields);
            pickEmptyFormField($j("#establimentForm input[name=\"pEmail\"]"),aEmptyFields);
            pickEmptyFormField($j("#establimentForm input[name=\"pPwd\"]"),aEmptyFields);
            pickEmptyFormField($j("#establimentForm input[name=\"pRePwd\"]"),aEmptyFields);
            //pickEmptyFormField($j("#establimentForm input[name=\"pTfn1\"]"),aEmptyFields);
            pickEmptyFormField($j("#establimentForm input[name=\"pCP\"]"),aEmptyFields);
            pickEmptyFormField($j("#establimentForm textarea[name=\"pArticles\"]"),aEmptyFields);
            
            // Comprovaci password
            if($j("#establimentForm input[name=\"pPwd\"]").val()!=$j("#establimentForm input[name=\"pRePwd\"]").val()){
                 aEmptyFields.push($j("#establimentForm input[name=\"pPwd\"]"));
                 aEmptyFields.push($j("#establimentForm input[name=\"pRePwd\"]"));
            }
            
            if(aEmptyFields.length>0){
                markFormFields(aEmptyFields);
                aEmptyFields[0].focus();
                bError  = true;
            }
            
            // Empty multiplelist
            if($j("select.selected option").length==0){
                $j("select.selected").addClass("empty");
                bError  = true;
            }
            
            return(!bError);            
        });
        
            
        
        //bo_index.php :: Login form submit
        $j("#bo_loginSUBMIT").click(function(){
            var strUsername  = $j("#loginForm input[name=\"pUsername\"]").val();
            var strPassword  = $j("#loginForm input[name=\"pPassword\"]").val();
            if((strUsername=='')||(strPassword=='')){
                $j("div.ajaxerrorbox").html("Debes indicar tu nombre de usuario y contraseña").fadeIn("slow");
                return(false);
            }
            
            //Ajax call
            $j.post("ajaxLoginBackoffice.php",
                {pUsername: strUsername,pPassword: strPassword},
                function(data){
                        
                    switch(data.nErrno){
                        case 3: // Login establiment
                            document.location="bo_accepto.php";
                            break;
                        
                        case 2: // Error - Login KO
                            $j("div.ajaxerrorbox").html(data.strErrMsg).fadeIn("slow");
                            break;
                            
                        case 1: // Login establiment
                            document.location="bo_postLogin.php";
                            break;
                           
                        case 0: // Login admin
                            document.location="bo_listEstabliments.php";
                            
                            //GA tracking
                            if (typeof pageTracker != "undefined") {
                              pageTracker._trackPageview("/bo_ajaxLoginBackoffice");
                            }
                            
                            break;
                           
                    }                    
            },"json");
        });
        
        //bo_listEstabliments.php :: delete Establiment
        $j(".deleteEstablimentBUTTON").click(function(){
            if(confirm(strJSConfirmDeleteEstabliment)){
	            var nIdEstabliment  = $j(this).attr("nId");
	            
	            //Ajax call
	            $j.post("ajaxDeleteEstabliment.php",
	                {pId: nIdEstabliment},
	                function(data){
	                    var nIdEstabliment   = data.nIdEstabliment;
	                    switch(data.nErrno){
	
	                        case 1:
	                           $j("div.ajaxerrorbox").html(data.strErrMsg).fadeIn("slow");
	                           $j("#listEstablimentsTABLE a.deleteEstablimentBUTTON[nId=\""+ nIdEstabliment +"\"]").parent().parent().addClass("empty");
	                           break;
	
	                        case 0:
	                           $j("#listEstablimentsTABLE a.deleteEstablimentBUTTON[nId=\""+ nIdEstabliment +"\"]").parent().parent().addClass("empty").fadeOut("slow");
	                           
	                           //GA tracking
                             if (typeof pageTracker != "undefined") {
                              pageTracker._trackPageview("/bo_ajaxDeleteEstabliment");
                             }
                            
                             break;
	                    }                    
	            },"json");
	          }
        });
        
        //bo_listEstabliments.php :: publish Establiment
        $j(".publishEstablimentBUTTON").click(function(){
            
            var nIdEstabliment  = $j(this).attr("nid");
            var nPublicar       = $j(this).attr("npublicar");
            
            //Ajax call
            $j.post("ajaxPublishEstabliment.php",
                {pId: nIdEstabliment, pPublicar: nPublicar},
                function(data){
                    var nIdEstabliment   = data.nIdEstabliment;
                    switch(data.nErrno){

                        case 1:
                           $j("div.ajaxerrorbox").html(data.strErrMsg).fadeIn("slow");
                           $j("#listEstablimentsTABLE a.publishEstablimentBUTTON[nId=\""+ nIdEstabliment +"\"]").parent().parent().addClass("empty");
                           break;

                        case 0:
                           $j("#listEstablimentsTABLE a.publishEstablimentBUTTON[nId=\""+ nIdEstabliment +"\"] > img").fadeOut("slow",function(){
                            
                            var strSrc  = (data.nPublicar) ? "img/icoPublicarOn.png" : "img/icoPublicarOff.png";
                            var nPublicarAttr   = (data.nPublicar) ? 0: 1;
                            
                            $j(this).parent().attr("npublicar",nPublicarAttr);
                            $j(this).attr("src",strSrc);
                            
                            $j(this).fadeIn("slow");
                           
                           });
                           
                           //GA tracking
                           if (typeof pageTracker != "undefined") {
                            pageTracker._trackPageview("/bo_ajaxPublishEstabliment");
                           }
                            
                           break;
                    }                    
            },"json");
        });
        
        /***
        *   BO_ARTICLES
        */
        
       //bo_formArticle.php :: Back to list
       $j("#listArticlesBUTTON").click(function(){
         var bMagatzem  = $j(this).parent().attr("bMagatzem");
         var nPag       = $j(this).parent().attr("nPag");
         
         document.location="bo_listArticles.php?pMagatzem="+ bMagatzem +"&pPag="+ nPag;
       });
      
       //bo_listArticles.php :: Add article
       $j("#addArticleBUTTON").click(function(){
         var nPag       = $j(this).parent().attr("nPag");
         document.location="bo_formArticle.php?pMagatzem=1&pTask=insert&pPag="+ nPag;
       });
       
       //bo_formArticle :: submit buttons
       $j("#submitArticleEscaparateBUTTON").click(function(){
        $j("#articleForm input[name=\"pMagatzem\"]").val(0);
        $j("#articleForm").submit();
       });
       $j("#submitArticleAlmacenBUTTON").click(function(){
        $j("#articleForm input[name=\"pMagatzem\"]").val(1);
        $j("#articleForm").submit();
       });
       
       //bo_formArticle :: submit validation
        $j("#articleForm").submit(function(){
            
            var oInput;
            var aEmptyFields  = Array();
            var bError   = false;
            var strAlert  = '';
            
            //Eliminem errors previs
            $j("#articleForm input, #articleForm textarea, #articleForm select").removeClass("empty");
            
            // Empty textbox & textareas
            pickEmptyFormField($j("#articleForm input[name=\"pLit\"]"),aEmptyFields);
            //pickEmptyFormField($j("#articleForm input[name=\"pPreu\"]"),aEmptyFields);
            pickEmptyFormField($j("#articleForm textarea[name=\"pKeywords\"]"),aEmptyFields);
            
            // Valors numrics
            //pickNumericFormField($j("#articleForm input[name=\"pPreu\"]"),aEmptyFields);
            pickNumericFormField($j("#articleForm input[name=\"pPreuOferta\"]"),aEmptyFields);
            
            
            // Combos categories
            var aIdCategories   = Array();
            $j("select.combocategories[nLevel=3]").each(function(){
                var nCategoria    = $j(this).attr("nCategoria");
                var nIdCategoria  = 0;
                for(var i=0;i<=3;i++){
                    var nIdCategoria    = $j("select.combocategories[nCategoria="+ parseInt(nCategoria) +"][nLevel="+ parseInt(3-i) +"]").val();
                      
                    if(nIdCategoria!=0){
                      
                      if((i>0)&&($j("select.combocategories[nCategoria="+ parseInt(nCategoria) +"][nLevel="+ parseInt(3-i+1) +"]").val()==0)&&($j("select.combocategories[nCategoria="+ parseInt(nCategoria) +"][nLevel="+ parseInt(3-i+1) +"] option").length>1) ){
                        aEmptyFields.push($j("select.combocategories[nCategoria="+ parseInt(nCategoria) +"][nLevel="+ parseInt(3-i+1) +"]"));
                        strAlert  += "<br/>Hay que seleccionar hasta el último nivel de categorías disponible";
                      }
                      
                      aIdCategories.push(nIdCategoria);
                      
                      break;
	                  }
                }
            });
            $j("#articleForm input[name=\"pListCategories\"]").val(aIdCategories);
            
            if(aIdCategories.length==0){
                aEmptyFields.push($j("select.combocategories[nLevel=0]:first"));
                strAlert    += '<br/>Hay que seleccionar una categoría como mínimo\n'; 
            }
            
            if(aEmptyFields.length>0){
                markFormFields(aEmptyFields,strAlert);
                aEmptyFields[0].focus();
                bError  = true;
            }
            
            return(!bError);            
        });
        
       
       //bo_listArticles.php :: Delete article
        $j("a.deleteArticle").click(function(){
            if(confirm(strJSConfirmDeleteArticle)){
	            var nIdArticle  = $j(this).attr("nId");
	            //Ajax call
	            $j.post("ajaxDeleteArticle.php",
	                {pId: nIdArticle},
	                function(data){
	                    var nIdArticle   = data.nIdArticle;
	                        
	                    switch(data.nErrno){
	                        case 1:
	                           $j("div.ajaxerrorbox").html(data.strErrMsg).fadeIn("slow");
	                           break;
	
	                        case 0:
	                           $j("a.deleteArticle[nId=\""+ nIdArticle +"\"]").parents("div.productos_content").fadeOut("slow");
	                           
	                           //GA tracking
	                           if (typeof pageTracker != "undefined") {
	                             pageTracker._trackPageview("/bo_ajaxDeleteArticle");
	                           }
	                           break;
	                    }                    
	            },"json");
            }
        });
        
        //bo_listArticles.php :: Emmagtzemar article
        $j("a.magatzemArticle").click(function(){
            
            var nIdArticle  = $j(this).attr("nId");
            var bMagatzem   = $j(this).attr("bMagatzem");
            //Ajax call
            $j.post("ajaxMagatzemArticle.php",
                {pId: nIdArticle, pMagatzem: bMagatzem},
                function(data){
                    var nIdArticle   = data.nIdArticle;
                    switch(data.nErrno){
                        case 1:
                           $j("div.ajaxerrorbox").html(data.strErrMsg).fadeIn("slow");
                           break;
                        case 5:
                           document.location  = "bo_upgradeTarifa.php";
                           break;
                        case 0:
                           $j("a.magatzemArticle[nId=\""+ nIdArticle +"\"]").parents("div.productos_content").fadeOut("slow");
                           
                           //GA tracking
                           if (typeof pageTracker != "undefined") {
                            pageTracker._trackPageview("/bo_ajaxMagatzemArticle");
                           }  
                           break;
                    }                    
            },"json");
        });
        
        
        
        //bo_formArticle.php :: Gallery Upload tool 
       $j('.uploadGallery').upload({
        name: 'pImage',
        idimage: $j(this).attr("nIdImage"),
        method: 'post',
        params:{'pId':$j("#articleForm input[name=\"pId\"]").val(),'pIdImage':$j("#articleForm input[name=\"pIdGallery\"]").val()},
        enctype: 'multipart/form-data',
        action: 'uploadGalleryArticle.php',
        onSubmit: function(nIdTool) {
            this.params({'pIdImage':$j("#articleForm input[name=\"pIdGallery\"]").val()});
            $j("#uploadMsgBoard").fadeOut("slow");
            $j('#uploadMsgBoard').text('Uploading ...');
            $j("#uploadMsgBoard").fadeIn("slow");
        },
        onComplete: function(strError) {
            
            var aError;
            var strErrMsg;
            var nErrno;
            
            //alert(strError);
            aError = strError.split(" / ");
            
            nErrno     = aError[0];
            strErrMsg  = aError[1];
            nIdImatge  = aError[2];
            
            //Actualitzem el valor de l'id de la imatge
            if(nErrno==0){
               $j("#articleForm input[name=\"pIdGallery\"]").val(nIdImatge);
            }
            $j("#uploadMsgBoard").fadeOut("slow",function(){
              if(nErrno==0){
                $j(".uploadGallery").attr("src","ognShowImatge.php?pId="+ nIdImatge +"&pWidth=150&pHeight=150&pDate="+ new Date().getTime()).fadeIn("slow");
                $j("#deleteGalleryArticleBUTTON").show();
              }
              else{
                $j("#uploadMsgBoard").text(strErrMsg);
                $j("#uploadMsgBoard").fadeIn("slow");
                $j("#uploadMsgBoard").click(function(){
                  $j(this).fadeOut("slow");
                });
                $j("#uploadMsgBoard").fadeIn("slow");
              }
              
            });
        }
       });
      
       
       //bo_formEstabliment.php :: Logo Upload tool - Delete
        $j("#deleteGalleryArticleBUTTON").click(function(){
            
            var nId             = $j("#articleForm input[name=\"pId\"]").val();
            var nIdImatge       = $j("#articleForm input[name=\"pIdGallery\"]").val();
           
            //Ajax call
            $j.post("ajaxDeleteGalleryArticle.php",
                {pIdImatge: nIdImatge,pId: nId},
                function(data){
                    switch(data.nErrno){
                        case 1:
                            $j("#uploadMsgBoard").fadeOut("slow",function(){
                              $j(this).text(data.strErrMsg);
                               $j(this).fadeIn("slow");
                            });
                            break;
                        case 0:
                           $j("#articleForm input[name=\"pIdGallery\"]").val("");
                           $j(".uploadGallery").fadeOut("slow",function(){
                             $j(this).attr("src","img/noLogo150x160.gif");
                             $j(this).fadeIn("slow",function(){
                               $j("#deleteGalleryArticleBUTTON").hide();
                             });
                           });
                         
                         //GA tracking
                         if (typeof pageTracker != "undefined") {
                          pageTracker._trackPageview("/bo_ajaxDeleteFotoArticle");
                         } 
                         break;
                    }                    
            },"json");
        });
        
        //bo_formEstabliment.php :: Actualitzaci combo categories
        $j(".combocategories").change(function(){
            var nCategoria  = $j(this).attr("nCategoria");
            var nLevel  = $j(this).attr("nLevel");
            var nId = $j(this).val();
            //Ajax call
            $j.post("ajaxLoadCategories.php",
                {pId:nId,pLevel:nLevel},
                function(data){
                  var nLastPosition  = ($j.browser.msie) ? 0 : null;
                  
                  $j("select.combocategories[nCategoria=\""+  parseInt(nCategoria) +"\"]:gt("+ (parseInt(nLevel)+1) +")").each(function(){
                    $j(this).get(0).options.length  = 0;
                    $j(this).get(0).add(new Option("---------------------------",0),nLastPosition);
                  });
                  
                  var oCombo    = $j("select.combocategories[nCategoria="+ parseInt(nCategoria) +"][nLevel="+ (parseInt(nLevel)+1) +"]").get(0);
                  oCombo.options.length = 0;
                  
                  if((data.nErrno==0)&&(data.aCategories.length>0)){
                      oCombo.add(new Option(unescape(data.strErrMsg).replace(/\+/g,' '),0),nLastPosition);
	                  
	                  var aOptions  = Array();
	                  if(data.nErrno==0){
	                    for(i=0;i<data.aCategories.length;i++){
	                        var oOption = new Option(unescape(data.aCategories[i]["text"]).replace(/\+/g,' '),data.aCategories[i]["value"]);
                            //var oOption = new Option(data.aCategories[i]["text"],data.aCategories[i]["value"]);
                            oCombo.add(oOption,nLastPosition);
	                    }                    
	                  }
                  }
                  else {
                    oCombo.add(new Option("---------------------------",0),nLastPosition);
                  }
                  
                  //GA tracking
                  if (typeof pageTracker != "undefined") {
                    pageTracker._trackPageview("/bo_ajaxLoadCategories");
                  }     
                        
                },"json"); 
        });
        
        
        // Recordatori de password
        $j("#recordatoriA").click(function(){
            $j("#recordatoriDIV").fadeIn("slow");
        });
        
        $j("#recordatoriSUBMIT").click(function(){
            var aEmptyFields  = Array();
            var bError   = false;
            
            //Eliminem errors previs
            $j("#recordatoriDIV input").removeClass("empty");
            
            // Empty textbox & textareas
            pickEmptyFormField($j("#recordatoriDIV input[name=\"pEmail\"]"),aEmptyFields);
            
            if(aEmptyFields.length>0){
                markFormFields(aEmptyFields);
                //aEmptyFields[0].focus();
                bError  = true;
            }
            
            if(!bError){
                var strEmail    = $j("#recordatoriDIV input[name=\"pEmail\"]").val();
                $j("#recordatoriDIV").fadeOut("slow",function(){
                    //Ajax call
	                $j.post("ajaxRecordatoriPwd.php",
	                    {pEmail: strEmail},
	                    function(data){
	                        switch(data.nErrno){
	            
	                            case 1: // Error
	                                $j("div.ajaxerrorbox").html(data.strErrMsg).fadeIn("slow");
	                            
	                                break;
	                               
	                            case 0: // OK
	                                $j("div.ajaxerrorbox").html(data.strErrMsg).addClass("errorboxok").fadeIn("slow");	                               
	                            break;
	                               
	                        }
	                        //GA tracking
                          if (typeof pageTracker != "undefined") {
                            pageTracker._trackPageview("/bo_ajaxRecordatoriPwd");
                          }
                                      
	                },"json");
                });
                
            } 
        });
        
        //header.php :: logo link
        $j("div.logo").click(function(){
            document.location   = "bo_index.php";
        });
        //bo_help.php :: desplegat
        $j("ol.ogn_slidable_list li p").hide();
        
        $j("ol.ogn_slidable_list li em").hover(function(){
            $j(this).css("color","#E4166A");
        },function(){
            if($j(this).next("p").css("display")=='none'){
            $j(this).css("color","#555");
            }
        });
        
        $j("ol.ogn_slidable_list li em").toggle(function(){
            $j(this).next("p").slideDown("slow");
            $j(this).css("color","#E4166A");
        },function(){
            $j(this).next("p").slideUp("slow");
            $j(this).css("color","#555");
        
        });
        
        
        //bo_listArticles.php :: Change Order
        $j(".prod_acciones input").click(function(){
            $j(this).val("");
            $j(this).removeClass("empty");
        });
        
        $j(".prod_acciones input").change(function(){
            //validation
            if(isNaN(parseInt($j(this).val()))){
                $j(this).addClass("empty");
            }
            else{
                $j(this).val(parseInt($j(this).val()));
                
                var nIdEstabliment  = $j(this).parent().attr("idestabliment");
                var nIdArticle      = $j(this).parent().attr("idarticle");
                var bMagatzem       = $j(this).parent().attr("bmagatzem");
                var nPag            = $j(this).parent().attr("npag");
                
                document.location   = "bo_reorderArticle.php?pIdArticle="+nIdArticle+"&pOrder="+ $j(this).val() +"&pIdEstabliment="+nIdEstabliment+"&pMagatzem="+ bMagatzem +"&pPag="+ nPag;                
            }   
        });
        
        // header.php :: Logo links to backoffice
        $j("div.logo").click(function(){
            document.location   = "index.php";
        });
        $j("div.logo").css("cursor","pointer");
        
        // bo_accepto.php :: Form validation
        $j("#fAccepto").submit(function(){
        
            
            if($j("#fAccepto input[name=\"pAccepto\"]:checked").length==0){
                $j("#checkrow").css("background-color","pink");
                return(false);                
            }
            return(true);
        });
        
        
        //bo_listPromocions.php :: Add promocio
       $j("#addPromocioBUTTON").click(function(){
         document.location="bo_formPromocio.php?pTask=insert";
       });
    
        
        //bo_formPromocio.php :: Show/Hide valor input forms
        $j("#fPromocio input[name=\"pIdTipus\"]").click(function(){
            $j("#fPromocio select[name=\"pDescompte\"],#fPromocio input[name=\"pImport\"],#fPromocio input[name=\"pRegal\"]").val("").parents("div.ognfc").hide();
            $j("#fPromocio select[name=\"pDescompte\"]").val(20);
            switch(parseInt($j(this).val())){
                case 1:
                     $j("#fPromocio select[name=\"pDescompte\"]").parents("div.ognfc").fadeIn("slow");
                     break;
                case 2:
                     $j("#fPromocio input[name=\"pImport\"]").parents("div.ognfc").fadeIn("slow");
                     break;
                case 3:
                     $j("#fPromocio input[name=\"pRegal\"]").parents("div.ognfc").fadeIn("slow");
                     break;
                default:
                    alert($j(this).val());
            }
            
        });
        
        // bo_formPromocio :: Gestió dates
        $j("#fPromocio input[name=\"pDesde\"],#fPromocio input[name=\"pFins\"]").click(function(){
            $j("#fPromocio input[name=\"pValidesa\"]").eq(1).attr('checked','checked');
        });

        $j("#fPromocio input[name=\"pValidesa\"]:eq(0)").click(function(){
            $j("#fPromocio input[name=\"pDesde\"], #fPromocio input[name=\"pFins\"]").removeClass("empty").val('');
        });
        
        
        
        
        // bo_formArticle :: submit validation
        $j("#fPromocio").submit(function(){
            var oInput;
            var aEmptyFields  = Array();
            var bError   = false;
            var strAlert    = '';
            
            //Eliminem errors previs
            $j("#fPromocio input, #fPromocio textarea, #fPromocio select, #fPromocio label").removeClass("empty");
            
            // Empty textbox & textareas
            pickEmptyFormField($j("#fPromocio input[name=\"pNom\"]"),aEmptyFields);
            pickEmptyFormField($j("#fPromocio textarea[name=\"pText\"]"),aEmptyFields);
            
            //  Validacions addicionals
            /*
            if(parseInt($j("#fPromocio input[name=\"pIdTipus\"]:checked").val())==2){
            
	            pickNumericFormField($j("#fPromocio input[name=\"pImport\"]"),aEmptyFields);
	            
	            if(parseInt($j("#fPromocio input[name=\"pImport\"]").val())>999){
	                aEmptyFields.push($j("#fPromocio input[name=\"pImport\"]"));
	                bError  = true;
	            }
	            if(parseInt($j("#fPromocio input[name=\"pImport\"]").val())<1){
	                aEmptyFields.push($j("#fPromocio input[name=\"pImport\"]"));
	                bError  = true;
	            }
	        }
	        
            if(parseInt($j("#fPromocio input[name=\"pIdTipus\"]:checked").val())==3){
                pickEmptyFormField($j("#fPromocio input[name=\"pRegal\"]"),aEmptyFields);            
            }
            */
            if($j("#fPromocio input[name=\"pNom\"]").val().length>30){
                aEmptyFields.push($j("#fPromocio input[name=\"pNom\"]"));
                strAlert    += 'El campo \'Nombre\' no puede tener más de 30 caracteres\n'; 
            }
            
            if($j("#fPromocio textarea[name=\"pText\"]").val().length>105){
                aEmptyFields.push($j("#fPromocio textarea[name=\"pText\"]"));
                strAlert    += 'El campo \'Texto\' no puede tener más de 105 caracteres\n'; 
            }
            
            if($j("#fPromocio textarea[name=\"pLletra\"]").val().length>300){
                aEmptyFields.push($j("#fPromocio textarea[name=\"pLletra\"]"));
                strAlert    += 'El campo \'Información adicional\' no puede tener más de 300 caracteres\n'; 
            }
            
            
            // Validaci dates
            if($j("#fPromocio input[name='pValidesa']:checked").val()==1){
                pickEmptyFormField($j("#fPromocio input[name=\"pDesde\"]"),aEmptyFields);
                pickEmptyFormField($j("#fPromocio input[name=\"pFins\"]"),aEmptyFields);
            
	            var strDesde    = $j("#fPromocio input[name=\"pDesde\"]").val();
	            var aDesde = strDesde.split('/');
	            var dDesde = new Date();
	            dDesde.setFullYear(aDesde[2],aDesde[1]-1,aDesde[0]);
	            
	            var strFins    = $j("#fPromocio input[name=\"pFins\"]").val();
	            var aFins = strFins.split('/');
	            var dFins = new Date();
	            dFins.setFullYear(aFins[2],aFins[1]-1,aFins[0]);
	            
	            if(dDesde>dFins){
	                aEmptyFields.push($j("#fPromocio input[name=\"pDesde\"]"));
	                aEmptyFields.push($j("#fPromocio input[name=\"pFins\"]"));
	                strAlert += '<br/>La fecha de fin de validez no puede ser anterior a la fecha de inicio';
	            }
	            var dToday  = new Date();
	            if (dFins<dToday){
	                aEmptyFields.push($j("#fPromocio input[name=\"pFins\"]"));
	                strAlert += '<br/>La fecha de fin de validez no puede ser anterior a la del día de hoy';
	            }
            }
            
            
            // Validació radio activar
            if($j("#fPromocio input[name=\"pActivat\"]:checked").length==0){
                  $j("#fPromocio input[name=\"pActivat\"]").next("label").addClass("empty");
                  strAlert += '<br/>Hay que indicar si deseas que la promoción aparezca publicada';
                  aEmptyFields.push($j("fPromocio input[name=\"pActivat\"]"));
            }     
            
            if(aEmptyFields.length>0){
                markFormFields(aEmptyFields,strAlert);
                //aEmptyFields[0].focus();
                bError  = true;
            }
            
            
            return(!bError);            
        });
        
        $j("a.activarPromocioBUTTON").click(function(){
            
            var nIdPromocio  = $j(this).attr("nid");
            var nActivat      = $j(this).attr("nactivat");

            //Ajax call
            $j.post("ajaxActivatePromocio.php",
                {pId: nIdPromocio, pActivat: nActivat},
                function(data){
                    
                    var nIdPromocio   = data.nIdPromocio;
                    var strEstat      = data.strEstat;
                    
                    switch(data.nErrno){

                        case 1:
                           $j("div.ajaxerrorbox").html(data.strErrMsg).fadeIn("slow");
                           $j("#listPromocionsTABLE a.activarPromocioBUTTON[nId=\""+ nIdPromocio +"\"]").parent().parent().addClass("empty");
                           break;

                        case 0:
                           $j("#listPromocionsTABLE a.activarPromocioBUTTON[nId=\""+ nIdPromocio +"\"] > img").fadeOut("slow",function(){
                            
                            var strSrc  = (data.nActivat) ? "img/icoPublicarOn.png" : "img/icoPublicarOff.png";
                            var nActivatAttr   = (data.nActivat) ? 0 : 1;
                            
                            $j(this).parent().attr("nactivat",nActivatAttr);
                            $j(this).attr("src",strSrc);
                            
                            
                            $j(this).fadeIn("slow",function(){
                              $j("#listPromocionsTABLE a.activarPromocioBUTTON[nId=\""+ nIdPromocio +"\"]").parent().next("td").html(strEstat);
                            });
                            
                            //GA tracking
                            if (typeof pageTracker != "undefined") {
                              pageTracker._trackPageview("/bo_ajaxActivatePromocio");
                            }       
                           });
                           break;
                    }
                    
                                              
            },"json");
        });
        
        
        $j("a.deletePromocioBUTTON").click(function(){
            if(confirm(strJSConfirmDeletePromocio)){
                var nId  = $j(this).attr("nId");
                
                //Ajax call
                $j.post("ajaxDeletePromocio.php",
                    {pId: nId},
                    function(data){
                        var nId = data.nId;
                            
                        switch(data.nErrno){
                            case 1:
                               $j("div.ajaxerrorbox").html(data.strErrMsg).fadeIn("slow");
                               break;
    
                            case 0:
                               $j("a.deletePromocioBUTTON[nId=\""+ nId +"\"]").parents("tr").next("tr").hide();
                               $j("a.deletePromocioBUTTON[nId=\""+ nId +"\"]").parents("tr").fadeOut("slow");
                               var nNumPromos   = parseInt($j("#numpromos").html());
                               nNumPromos--;
                               $j("#numpromos").html(nNumPromos);
                               
                               //GA tracking
                               if (typeof pageTracker != "undefined") {
                                pageTracker._trackPageview("/bo_ajaxDeletePromocio");
                               } 
                               break;
                        }                    
                },"json");
            }
        });
        
        $j("input.ogndatepicker").datepicker();
        
        // bo_formPromocion.php :: Toggle ejemplos
        $j("#promocionesToggleSamples").click(function(){
            $j("#promocionesSamples").slideToggle();
        });
        
        // bo_listPromocions.php :: Toggle preview
        $j(".promocioTogglePreview").click(function(){
            $j(this).parents("tr").eq(0).next("tr").toggle();
        });
        
        
        
        //*** News
        
        //bo_listNews.php :: Add news
        $j("#addNewsBUTTON").click(function(){
          document.location="bo_formNews.php?pTask=insert";
        });
        
        //bo_formNews.php :: Back to list
        $j("#listNewsBUTTON").click(function(){
          document.location="bo_listNews.php";
        });
        
        
        // bo_formNews :: submit validation
        $j("#newsForm").submit(function(){
            var bReturn = true;
            $j("#newsForm :input").blur();
            $j("#newsForm :input").each(function(){
              if($j(this).hasClass('empty')){
                bReturn = false;
              }
            }); 
            return(bReturn);       
          }); 
        /*
        $j("#fNews").submit(function(){
            
            var oInput;
            var aEmptyFields  = Array();
            var bError   = false;
            var strAlert    = '';
            
            //Eliminem errors previs
            $j("#fNews input, #fNews textarea, #fNews select, #fNews label").removeClass("empty");
            
            // Empty textbox & textareas
            pickEmptyFormField($j("#fNews input[name=\"pTitular\"]"),aEmptyFields);
            pickEmptyFormField($j("#fNews textarea[name=\"pText\"]"),aEmptyFields);
            
            // Validaci dates
            pickEmptyFormField($j("#fNews input[name=\"pDataPub\"]"),aEmptyFields);
            
            
            if(aEmptyFields.length>0){
                markFormFields(aEmptyFields,strAlert);
                bError  = true;
            }
            
            return(!bError);            
        });
        */
        // bo_listNews  :: Publish news
        $j("a.publishNewsBUTTON").click(function(){
            
            var nIdNews   = $j(this).attr("nid");
            var nPublicar = $j(this).attr("npublicar");

            //Ajax call
            $j.post("ajaxPublishNews.php",
                {pId: nIdNews, 
                 pPublicar: nPublicar},
                function(data){
                    
                    var nIdNews   = data.nIdNews;
                    
                    switch(data.nErrno){

                        case 1:
                           $j("div.ajaxerrorbox").html(data.strErrMsg).fadeIn("slow");
                           $j("#listNewsTABLE a.publishNewsBUTTON[nId=\""+ nIdNews +"\"]").parent().parent().addClass("empty");
                           break;

                        case 0:
                           $j("#listNewsTABLE a.publishNewsBUTTON[nId=\""+ nIdNews +"\"] > img").fadeOut("slow",function(){
                            
                            var strSrc  = (data.nPublicar) ? "img/icoPublicarOn.png" : "img/icoPublicarOff.png";
                            var nPublicarAttr   = (data.nPublicar) ? 0 : 1;
                            
                            $j(this).parent().attr("npublicar",nPublicarAttr);
                            $j(this).attr("src",strSrc);
                            
                            $j(this).fadeIn("slow");
                            
                                   
                           });
                           break;
                    }
                    
                                              
            },"json");
        });
        
        
        $j("a.deleteNewsBUTTON").click(function(){
            if(confirm(strJSConfirmDeleteNews)){
                var nId  = $j(this).attr("nId");
                
                //Ajax call
                $j.post("ajaxDeleteNews.php",
                    {pId: nId},
                    function(data){
                        var nId = data.nId;
                            
                        switch(data.nErrno){
                            case 1:
                               $j("div.ajaxerrorbox").html(data.strErrMsg).fadeIn("slow");
                               break;
    
                            case 0:
                               $j("a.deleteNewsBUTTON[nId=\""+ nId +"\"]").parents("tr").fadeOut("slow");
                               var nNumNews   = parseInt($j("#numnews").html());
                               nNumNews--;
                               $j("#numnews").html(nNumNews);
                               break;
                        }                    
                },"json");
            }
        });
        
        //Uploadify
        $j('#uploadify1').uploadify({
                'uploader': 'include/uploadify.swf',
				        'script':    'uploadFotoNews.php',
				        'folder':    'uploads',
				        'auto':true,
				        'multi':false,
				        'onSelect': function(event, ID, fileObj){
				          var nIdNews     = $j("#uploadify1").attr("idnews");
				          var nIdImage    = $j("#uploadify1").attr("idimage");
				          var nMaxWidth   = $j("#uploadify1").attr("nmaxwidth");
                  var nMaxHeight  = $j("#uploadify1").attr("nmaxheight");
                  
                  $j('#uploadify1').uploadifySettings('scriptData', {'pId': nIdNews,
                                                                     'pIdImage': nIdImage,
                                                                     'pMaxWidth': nMaxWidth,
                                                                     'pMaxHeight': nMaxHeight});
                  
				          },
				        'onComplete' : function(event, ID, fileObj, response, data){
				          aError    = response.split(" / ");
                  
                  nErrno     = aError[0];
				          strErrMsg  = aError[1];
				          nIdImatge  = aError[2];
				          nWidth     = aError[4];
				          nHeight    = aError[5];
				
		              if(nErrno==0){
		                
		                $j("#newsForm input[name=\"pIdImatge\"]").val(nIdImatge);
		                
		                $j("#rotatenewsrightBUTTON").attr("idimage",nIdImatge);
                    $j("#rotatenewsrightBUTTON").attr("nwidth",nWidth);
		                $j("#rotatenewsrightBUTTON").attr("nheight",nHeight);
		                
		                $j("#deletenewsrightBUTTON").attr("idimage",nIdImatge);
                    
		                $j("#uploadnews_img").attr("src","ognShowImatge.php?pId="+ nIdImatge +"&pWidth="+ nWidth +"&pHeight="+ nHeight +"&pDate="+ new Date().getTime()).fadeIn("slow");
		                
		                $j("#deletenewsBUTTON").show();
		                $j("#rotatenewsrightBUTTON").show();
		              }
		              else{
		                alert(response);
		                /*
		                $j("#uploadlogoestabliment_msg").text(strErrMsg);
		                $j("#uploadlogoestabliment_msg").fadeIn("slow");
		                $j("#uploadlogoestabliment_msg").click(function(){
		                  $j(this).fadeOut("slow");
		                });
		                $j("#uploadlogoestabliment").fadeIn("slow");
		                */
		              }
				              
				           
				        },
				        'cancelImg': 'img/cancel.png',
                'buttonImg': 'img/ico_upload.png',
				        'width':16,
				        'height':16,
				        'queueID':'uploadify1_msg',
				        'fileDataName':'pFoto',
				        'fileExt':'*.jpg;*.png'
				});
				
				
				//bo_formNews.php :: Foto Upload tool - Delete
        $j("#deletenewsBUTTON").click(function(){
            
            var nId         = $j("#newsForm input[name=\"pId\"]").val();
            var nIdImatge   = $j("#newsForm input[name=\"pIdImatge\"]").val();
            //Ajax call
            $j.post("ajaxDeleteFotoNews.php",
                {pIdImatge: nIdImatge,pId: nId},
                function(data){
                    switch(data.nErrno){
                        case 1:
                            $j("#uploadnews_msg").fadeOut("slow",function(){
                              $j(this).text(data.strErrMsg);
                               $j(this).fadeIn("slow");
                            });
                            break;
                        case 0:
                           $j("#uploadify1").attr("idimage","");
                           $j("#uploadnews_img").fadeOut("slow",function(){
                             $j(this).attr("src","img/noLogo150x160.gif");
                             $j(this).fadeIn("slow",function(){
                               $j("#deletenewsBUTTON").hide();
                               $j("#rotatenewsrightBUTTON").hide();
                             });
                           });
                           break;
                    }                    
            },"json");
        });
        
        
        //bo_formNews.php :: Rotate image
        $j("#rotatenewsrightBUTTON").click(function(){
            var nIdImatge       = $j(this).attr("idimage");
            var nWidth          = $j(this).attr("nwidth");
            var nHeight         = $j(this).attr("nheight");
            
            //Ajax call
            $j.post("ajaxRotateImage.php",
                {pId: nIdImatge, pWidth: nWidth, pHeight:nHeight},
                function(data){
                    switch(data.nErrno){
                        case 1:
                            $j("#uploadnews_msg").fadeOut("slow",function(){
                              $j(this).text(data.strErrMsg);
                               $j(this).fadeIn("slow");
                            });
                            break;
                        case 0:
                           var nIdImatge    = data.nIdImage;
                           var nWidth       = data.nWidth;
                           var nHeight      = data.nHeight;
                           
                           $j("#rotatenewsrightBUTTON").attr("nwidth",nWidth);
                           $j("#rotatenewsrightBUTTON").attr("nHeight",nHeight);
                                 
                           $j("#uploadnews_img").fadeOut("slow",function(){
                             $j(this).attr("src","ognShowImatge.php?pId="+ nIdImatge +"&pWidth="+ nWidth +"&pHeight="+ nHeight +"&pDate="+ new Date().getTime()).fadeIn("slow");
                           });
                           
                           break;
                    }                    
            },"json");
        });
				        
      /* Tarifes */
      
      $j("#submitConfirmSubscripcion").click(function(){
        $j("#fConfirmSubscripcion").submit();
      });
      
      $j("#fSubscripcio input[maxlength],#fSubscripcio  textarea[maxlength]").keyup(function(ev){
		      if($j(this).val().length>=$j(this).attr("maxlength")){
		        $j(this).val($j(this).val().substr(0,$j(this).attr("maxlength")));
		      }
      }); 
      
      $j("#fSubscripcio .ccnumber").blur(function(){
        if($j(this).val()==''){
          $j(this).addClass('empty');
          $j("p#ccempty").html('Este campo es obligatorio').fadeIn('slow');
        }
        else if(isNaN($j(this).val())){
          $j(this).addClass('empty');
          $j("p#ccempty").html('Debe indicar un valor numérico').fadeIn('slow');
        }
        else{
          var nMaxChars     = $j(this).attr("maxlength");
          var nActualLength = $j(this).val().length;
          for(i=0;i<nMaxChars-nActualLength;i++){
            $j(this).val('0'+$j(this).val());
          }
          $j(this).removeClass('empty');
          $j("p#ccempty").fadeOut('slow');
        }
      });
      
      $j("#fSubscripcio input[name=\"pFactCP\"]").blur(function(){
        if((isNaN($j(this).val()))||($j(this).val().length!=5)){
          $j(this).addClass('empty');
          $j(this).next().html('El cógigo postal debe indicarse con un número de cinco dígitos').fadeIn('slow');
        }
        else{
          $j(this).removeClass('empty');
          $j(this).next().fadeOut('slow');
        }
        
      });
      
      $j("#fSubscripcio input[name=\"pEmail\"]").blur(function(){
        if(!ognValidateEmail($j(this).val())){
          $j(this).addClass('empty');
          $j(this).next().html('Debe indicar una dirección de correo elecrónico válida').fadeIn('slow');
        }
        else{
          $j(this).removeClass('empty');
          $j(this).next().fadeOut('slow');
        }
        
      });
      
      
      $j("#fSubscripcio").submit(function(){
        var bReturn = true;
        $j("#fSubscripcio :input").blur();
        $j("#fSubscripcio :input").each(function(){
          if($j(this).hasClass('empty')){
            bReturn = false;
          }
        }); 
        return(bReturn);       
      }); 
    
      $j("#fConfirmSubscripcion input:checkbox,#fSubscripcio input:checkbox").blur(function(){
        if(!$j(this).is(":checked")){
          $j(this).addClass('empty');
          $j(this).nextAll("p").eq(0).html("Debes leer y aceptar las Condiciones Generales de Suscripción y Uso y la Política de Privacidad.").fadeIn('slow');
        }
        else{
          $j(this).removeClass('empty');
          $j(this).nextAll("p").eq(0).fadeOut('slow');
        }
      });
      
      $j("#fConfirmSubscripcion").submit(function(){
        var bReturn = true;
        $j("#fConfirmSubscripcion :input").blur();
        $j("#fConfirmSubscripcion :input").each(function(){
          if($j(this).hasClass('empty')){
            bReturn = false;
          }
        }); 
        return(bReturn);       
      }); 
      
    });
    
