function bookmark_mp_edit() {
  var item = $(this).parent().parent();
  var url = item.find(".title").attr("title");
  item.load("/save/?ajax&lid=" + encodeURIComponent(url), null, function () {
    $("#save-form").submit(bookmark_mp_save);
  });
  return false;
}

function bookmark_mp_save() {
  var item = $(this);
  var data = {
    title: item.find("#id_title").val(),
    link: item.find("#id_link").val(),
    tags: item.find("#id_tags").val(),
    fast_add: item.find("#id_fast_add").val(),
    user: item.find("#id_user").val(),
    package_id: item.find("#id_package_id").val(),
    bookmark_id: item.find("#id_bookmark_id").val()
  };

  $.post("/save/?ajax", data, function (result) {
    if (result != "failure") {
      item.before($("div", result));
      item.remove();
      $("div.package .edit").click(bookmark_mp_edit);
    }
    else {
      alert("Failed to validate link before saving.");
    }
  });

  return false;
}

function bookmark_edit() {
  var item = $(this).parent().parent();
  var url = item.find(".title").attr("title");
  item.load("/save/?ajax&lid=" + encodeURIComponent(url), null, function () {
    $("#save-form").submit(bookmark_save);
  });
  return false;
}

function bookmark_save() {
  var item = $(this);
  var data = {
    title: item.find("#id_title").val(),
    link: item.find("#id_link").val(),
    tags: item.find("#id_tags").val(),
    listpack: item.find("#id_listpack").val(),
    user: item.find("#id_user").val(),
    bookmark_id: item.find("#id_bookmark_id").val()
  };

  $.post("/save/?ajax", data, function (result) {
    if (result != "failure") {
      item.before($("div", result));
      item.remove();
      $("div.package .edit").click(bookmark_edit);
    }
    else {
      alert("Failed to validate link before saving.");
    }
  });

  return false;
}

function bookmark_report() {
  var item = $(this).parent().parent();
  var url = item.find(".title").attr("title");
  $(this).load("/report/link/" + encodeURIComponent(url) + "/?ajax", null, function () {
  $(this).before("<span class='report'>reported</span>")
  $(this).remove();
  });
  return false;
}

function bookmark_liked() {
  var item = $(this).parent();
  var url = item.find(".title").attr("title");
  $(this).load("/liked/link/" + encodeURIComponent(url) + "/?ajax", null, function () {
  //$(this).before("<span class='liked'>liked</span>")
  $(this).remove();
  });
  return false;
}

function bookmark_close() {
  var item = $(this);
  var item2 = $(this).parent();
  item2.parent().parents('div:first').find("div.bookmark").hide();
  $('.open').click(bookmark_open)
  return false;
}

function bookmark_open() {
  var item = $(this);
  item.next().show();
  var item2 = $(this).parent();
  item2.parent().parents('div:first').find("div.bookmark").show();
  $('.close').click(bookmark_close)
  return false;
}

$(document).ready(function () {
  $("div.package .edit").click(bookmark_edit);
  $("div.package .mp_edit").click(bookmark_mp_edit);
  $("div.package .report").click(bookmark_report);
  $("div.package .bookmark").hide()
  $(".close").hide()
  $(".open").click(bookmark_open)
  $(".liked").click(bookmark_liked)
});
