var responsetextBuffer; // a placeholder to place the response in, which has a delayed execution time

jQuery(document).ready(function(){
  jQuery('div#pagetools_content > a#back_link').click(function(){
    window.history.go(-1);
    return false;
  });

  jQuery('div#pagetools_content > a#email_this_page').click(function(){

    if (email_this_page_slide_busy) return false;

    jQuery('div#email_this_page_div > div#step1 input#tellafriend_sender_name').css('border-color','white');
    jQuery('div#email_this_page_div > div#step1 input#tellafriend_sender_email').css('border-color','white');
    jQuery('div#email_this_page_div > div#step1 input#tellafriend_to_name').css('border-color','white');
    jQuery('div#email_this_page_div > div#step1 input#tellafriend_to_email').css('border-color','white');
    
    email_this_page_slide_busy = true;
    if (!email_this_page_show)
    {
      email_this_page_show = true;
      jQuery('div#pagetools_bar > div#slider').animate({height:"321px", top:"-321px"}, 700);
      jQuery('div#email_this_page_div > div#step1').show();
      jQuery('div#email_this_page_div > div#step2').hide();
      jQuery('div#email_this_page_div > div#step3_success').hide();
      jQuery('div#email_this_page_div > div#step3_failed').hide();
      email_this_page_slide_busy = false;
    }
    else
    {
      email_this_page_show = false;
      jQuery('div#pagetools_bar > div#slider').animate({height:"0px", top:"0px"}, 700);
      email_this_page_slide_busy = false;
    }
    return false;
  });

  jQuery('div#email_this_page_div > a#close_email_this_page').click(function(){
    email_this_page_slide_busy = true;
    email_this_page_show = false;
    jQuery('div#pagetools_bar > div#slider').animate({height:"0px",top:"0px"}, 700);
    email_this_page_slide_busy = false;
    return false;
  });

  jQuery('div#email_this_page_div > div#step1 > form > input#email_this_page_submit_button').click(function(){
    
    var url = '/tellafriend/submit';
    var data = {
      "tellafriend[sender_name]":jQuery('form input#tellafriend_sender_name').val(),
      "tellafriend[sender_email]":jQuery('form input#tellafriend_sender_email').val(),
      "tellafriend[to_name]":jQuery('form input#tellafriend_to_name').val(),
      "tellafriend[to_email]":jQuery('form input#tellafriend_to_email').val(),
      "tellafriend[additional_message]":jQuery('form textarea#tellafriend_additional_message').val(),
      "tellafriend[_csrf_token]":jQuery('form input#tellafriend__csrf_token').val()
    };

    
    jQuery('div#pagetools_bar > div#slider').animate({height:"143px", top:"-143px"}, 700);
    jQuery('div#email_this_page_div > div#step1').fadeOut();
    jQuery('div#email_this_page_div > div#step2').fadeIn();
    
    
    time1 = new Date();
    startTime = time1.getTime();
    
    jQuery.post(url,data, function(tellafriend,textStatus,XMLHttpRequest){
      time2 = new Date();
      diff = time2.getTime() - startTime;
      if (diff < 2500) {
        diff = 2500; // introduce a delaytime, so the "sending" message is displayed longer
      }
      else
      {
        diff = 1; // if the sending took more than 2 seconds, do not delay this "sending" message
      }
      responsetextBuffer = tellafriend;

      jQuery('div#email_this_page_div > div#step1 input#tellafriend_sender_name').css('border-color','white');
      jQuery('div#email_this_page_div > div#step1 input#tellafriend_sender_email').css('border-color','white');
      jQuery('div#email_this_page_div > div#step1 input#tellafriend_to_name').css('border-color','white');
      jQuery('div#email_this_page_div > div#step1 input#tellafriend_to_email').css('border-color','white');
      
      window.setTimeout(function(){
        tellafriend = responsetextBuffer;
        
        if (tellafriend.sent==1)
        {
          jQuery('span#messagesentsuccess_text').text((jQuery('span#messagesentsuccess_text_original').text().replace('%name%',tellafriend.toname)));
          jQuery('div#pagetools_bar > div#slider').animate({height:"113px", top:"-113px"}, 700);
          jQuery('div#email_this_page_div > div#step2').fadeOut();
          jQuery('div#email_this_page_div > div#step3_success').fadeIn();

          jQuery('form input#tellafriend_sender_name').val('');
          jQuery('form input#tellafriend_sender_email').val('');
          jQuery('form input#tellafriend_to_name').val('');
          jQuery('form input#tellafriend_to_email').val('');
          jQuery('form textarea#tellafriend_additional_message').val('');

        }
        else
        {
          
          if (tellafriend.formerrors)
          {
            console.debug(tellafriend.errors.sender_email);
            if (tellafriend.errors.sender_name) jQuery('div#email_this_page_div > div#step1 input#tellafriend_sender_name').css('border-color','red');
            if (tellafriend.errors.sender_email) jQuery('div#email_this_page_div > div#step1 input#tellafriend_sender_email').css('border-color','red');
            if (tellafriend.errors.to_name) jQuery('div#email_this_page_div > div#step1 input#tellafriend_to_name').css('border-color','red');
            if (tellafriend.errors.to_email) jQuery('div#email_this_page_div > div#step1 input#tellafriend_to_email').css('border-color','red');
            jQuery('div#pagetools_bar > div#slider').animate({height:"321px", top:"-321px"}, 700);
            jQuery('div#email_this_page_div > div#step2').fadeOut();
            jQuery('div#email_this_page_div > div#step1').fadeIn();
          }
          else
          {
            jQuery('span#messagesentfailed_text').text((jQuery('span#messagesentfailed_text_original').text().replace('%name%',tellafriend.toname)));
            jQuery('div#pagetools_bar > div#slider').animate({height:"113px", top:"-113px"}, 700);
            jQuery('div#email_this_page_div > div#step2').fadeOut();
            jQuery('div#email_this_page_div > div#step3_failed').fadeIn();
          }
        }
      }, diff);

    });


  });

  Shadowbox.init();
  
});

var email_this_page_slide_busy = false;
var email_this_page_show = false;
