jQuery(function($) {
  var timeFrameTemplate = $(".time-frame:last").html();

  var ajaxize = function() {
    $('.image_upload').each(function() {
      var upload = $(this);
      if(upload.data('ajaxed')) return;

      new AjaxUpload(upload, {
        action: AjaxUploadSettings.url,
	data: {
          action: 'precinkt_image_upload'
        },
        autoSubmit: true,
        onSubmit: function() {
          upload.closest('.upload').find('.spinner').show();
          upload.hide();
        },
        onComplete: function(file, response) {
          var params = response.split(',');
          upload.closest('.upload').find('.image_attachment_id').val(params[0]);
          var img = upload.closest('.upload').find('img');
          if(img.length == 0) {
            img = $('<img />').attr('alt', '').insertAfter(upload.closest('.upload').find('label'));
          }
          img.attr('src', params[1]);
          upload.closest('.upload').find('.spinner').hide();
          upload.show();
        }
      });

      upload.data('ajaxed', true);
    });
  };
  ajaxize();

  $('.submission-form').submit(function() {
    var count = $(this).parent().find('.time-frame').length;
    if(count < 4) {
      alert("Please add at least 4 locations to your Precinkt.");
      return false;
    }

    /*$('.image_upload').each(function() {
      if($(this).val() == "") {
        $(this).removeAttr('name');
      }
    });*/

    return true;
  });

  $('.delete-image-upload').live('click', function() {
    $(this).parent().find('input[type="hidden"]').val('');
    $(this).parent().find('img').remove();
  });

  $('.delete-time-frame').live('click', function() {
    if($('.time-frame').length <= 4) {
      alert("A Precinkt must have at least 4 locations.");
    } else {
      $(this).closest('.time-frame').remove();
    }
  });

  $('.add-time-frame').click(function() {
    var count = $(this).parent().find('.time-frame').length;
    var newTimeframe = $('<div class="time-frame"></div>').append(timeFrameTemplate);
    $(".time-frame:last").after(newTimeframe);

    // Update the time frame.
    $(".time-frame:last").find(".upload img").remove();
    $(".time-frame:last").find(".upload input:hidden").val('');
    $(".time-frame:last input:text, .time-frame:last textarea").val('');
    $(".time-frame:last input[name], .time-frame:last textarea[name]").attr('name', function() {
      var old = $(this).attr('name');
      return old.replace(/\[\d+\](\[\])?$/, '[' + count + ']$1');
    });

    ajaxize();
    //toggleImageButtons();
  });

  $('a.lightview').hover(function() {
    var overlay = $('<div></div>');
    overlay.addClass('photo-overlay');
    $('body').append(overlay);

    var width = 400;
    var height = 400;

    var thumbnail_offset = $(this).find('img').offset();
    var thumbnail_width = $(this).find('img').width();
    var thumbnail_height = $(this).find('img').height();

    var x = (thumbnail_offset.left + (thumbnail_width / 2)) - (width / 2);
    var y = (thumbnail_offset.top + (thumbnail_height / 2)) - (height / 2);

    overlay.css({position: 'absolute', background: '#FFF url(/wp-admin/images/wpspin_light.gif) no-repeat scroll center center', width: width, height: height, top: y, left: x});

    var overlayImage = $('<div></div>');
    overlayImage.css({backgroundImage: 'url(' + $(this).attr('href') + ')', width: width, height: height});
    overlay.append(overlayImage);

    overlay.hover(null, function() {
      $('.photo-overlay').remove();
    });
  });
});
