(function($){

 // wait for the DOM to be loaded 
 
  $(document).ready(function() {

    // hide form on load and click to show
    $("#addShopForm").hide();
    $("#shopSubmitted").hide();
    $("#addShop").show();        
    $('#addShop').click(function(){
      $("#addShopForm").slideToggle();
    });

    $("#userAddForm").validate({

      rules: {
        "sl_url": {
          url: true
        },
        "sl_image": {
          url: true,
          accept: "png|jpg"
        }
      },

      submitHandler: function(form) {
      $.post(add_base + '/templates/addShop.php', $("#userAddForm").serialize(), function(data){
          $("#addShopForm").hide();
          $("#shopSubmitted").show();
          $("#addShop").hide();            
        });
      }

    });
  
  });


function validReviewForm() {
    $("#userAddReview-73").validate({
      submitHandler: function(form) {
        console.log('success!');
      }
    });      
}

  
  $('form.reviewForm .button-primary').live('click', function(e){
    e.preventDefault();

    var form = $(this).closest('form');
    var formid = "#" + form.attr("ID");

    $(formid).validate ({
      rules: {
        "sr_email": {
          email: true
        }
      }
    });

    if ($(formid).valid()) {
      console.log("success");
      $.post(add_base + '/templates/addReview.php', form.serialize(), function(data){
      //console.log('form callback', data);

      if ( data == 'ok' ) {
        var feedback = $('<div />', { text: 'Thank you for submitting your review!'}).addClass('reviewFeedback success');

        feedback.appendTo( form.parent() );
        
        form.slideUp(200);
        
        var toFunc = function(){
          feedback.remove();
        };
        
        var to = setTimeout( toFunc, 3000 );
      } else {
        var feedback = $('<div />', { text: 'Something went wrong. Please try and submit your review again. If you continue to have problems let us know.'}).addClass('reviewFeedback error');

        feedback.appendTo( form.parent() );
        
        form.slideUp(200);
        
        var toFunc = function(){
          feedback.remove();
      };
      
      var to = setTimeout( toFunc, 3000 );
    
    }
      
    });
    } else {
      console.log("failure");
    }
/*
 */

  });

  
  $('a.writeReview').live('click', function(e){
    e.preventDefault();
    
    var link = $(this),
        gid = link.attr('gid'),
        form = link.siblings('form'),
        reviews = link.siblings('#reviews');
              
    reviews.hide();
    form.slideToggle(200);
    

    
    //console.log( link, gid, form );
    
    //var queryString = $('#userAddReview-'+id).formSerialize();
    //$.post('wp-content/plugins/barber-shop-locator/core/templates/addReview.php', queryString);
  	
    
  });
  
    $('a.readReviews').live('click', function(e){
      e.preventDefault();
      
      var link = $(this),
          gid = link.attr('gid'),
          form = link.siblings('form'),
          reviews = link.siblings('#reviews');
          
      form.hide();      
      reviews.slideToggle(200);

      $.post(add_base + '/templates/showReviews.php', { gid: gid }, function(data){

        reviews.html(data);        

        $('#showreviews-'+gid).simplePageSwitcher({
            effectFade : true,
            perPage    : 10
        });
        
      });    	
  });
  


})(jQuery);
