// Place your application-specific JavaScript functions and classes here
// This file is automatically included by javascript_include_tag :defaults

$(document).ready(function() {

  $('#playlist_tab').click(function(){
    $('#playlist').show();
    $('#recent').hide();
    $('#playlist_tab').addClass('active');
    $('#recent_tab').removeClass('active');
    return false;
  });

  $('#recent_tab').click(function(){
    $('#playlist').hide();
    $('#recent').show();
    $('#playlist_tab').removeClass('active');
    $('#recent_tab').addClass('active');
    return false;
  });

  $("#purchase_order_coupon_code, #purchase_order_program_title").change(function() {
    $("#hidden_"+$(this).attr("id")).val($(this).val());
  });

  $("#purchase_order_license_agreement, #purchase_order_terms_of_service").change(function() {
    $("#hidden_"+$(this).attr("id")).val($(this).attr("checked") ? "1" : "0");
  });

  $('a[rel*=facebox]').facebox({opacity: 0.5})
  $('div.flash').fadeIn("slow");

  $('#question-1 select').change(function(e){
    $('#question-3, select.subcat').hide();
    if(this.value == "") {
      $('#question-2').hide();
    }
    else {
      $('#question-2').show();
      $('#question-2 select').val("");
    }
  })

  $('#playlist_pricing_category_id').change(function(){
    $('select.subcat').hide();
    $('select.cat-' + this.value).show();
    if(this.value)
      $('#question-3').show();
    else
      $('#question-3').hide();
  })

  $('select.subcat').change(function(){   
    $('#selected_subcategory').val(this.value);
  })

  $(document).bind('afterReveal.facebox',function(){
      $('#update-billing').livequery(function(){
        $(this).ajaxForm({
          dataType: 'json',
          beforeSubmit: function() { $.facebox.close(); return true; },
          success: function(json) {
            $('#flash').html('');
            for (var key in json.flash) {
              $('#flash').append($('<div/>').addClass('flash').addClass(key).html(json.flash[key]));
            }
            $('.billing_information').html(json.billing_information);
          }
        });
      });
  });

  function setDefaults() {
    //Assign default value to form fields
    $("#search-box").DefaultValue("Find a Song");
    $("#contact_name").DefaultValue("First and Last Name");
    $("#contact_email").DefaultValue("Email Address");
    $("#contact_body").DefaultValue("Your Message");
    $("#playlist_name").DefaultValue("Playlist Name");
    $("#email_to").DefaultValue("To Email:");
    $("#email_from").DefaultValue("From Email:");
    $("#email_body").DefaultValue("Your message (optional)");
    $("#login").DefaultValue("First and Last Name");
    $("#password").DefaultValue("Password");
    $("#artist_name").DefaultValue("Artist Name");
    $("#artist_pricing_multiplier").DefaultValue("Pricing Multiplier");
    $("#artist_bio").DefaultValue("Briefly describe your music");
    $("#email").DefaultValue("Email Address");
    $("#user_login").DefaultValue("First and Last Name");
    $("#user_email").DefaultValue("Email Address");
    $("#user_password").DefaultValue("Password");
    $("#user_password_confirmation").DefaultValue("Password");
    $("#track_title").DefaultValue("Title");
  }

  setDefaults();
  $(document).bind('reveal.facebox', setDefaults);
  
  $(document).pngFix();
  
});

$(document).ajaxSend(function(event, request, settings) {
  if (settings.contentType == "application/x-www-form-urlencoded") {
    if (typeof(AUTH_TOKEN) == "undefined") return;
    if(settings.data)
      settings.data += "&";
    else {
      request.setRequestHeader("Content-Type",settings.contentType);
      settings.data = "";
    }
    settings.data += "authenticity_token=" + encodeURIComponent(AUTH_TOKEN);
  }
});
