summaryrefslogtreecommitdiff
path: root/core/js/quick.js
blob: 0462e939d2067219b8c089020cd3f45fe0232e64 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
$(document).ready(function() {
  $(".gItem").hover(show_quick, function() {});
});

var show_quick = function() {
  var cont = $(this);
  var quick = $(this).find(".gQuick");
  $("#gQuickPane").remove();
  cont.append("<div id=\"gQuickPane\"></div>");
  var img = cont.find(".gThumbnail");
  var pos = cont.position();
  $("#gQuickPane").css({
    "position": "absolute",
    "top": pos.top,
    "left": pos.left,
    "width": cont.innerWidth(),
    "height": 32
  });
  cont.hover(function() { }, hide_quick);
  $.get(
    quick.attr("href"),
    {},
    function(data, textStatus) {
      $("#gQuickPane").html(data);
      $("#gQuickPane a").click(function(e) {
        e.preventDefault();
        quick_do(cont, $(this), img);
      });
    }
  );
};

var quick_do = function(cont, pane, img) {
  if (pane.hasClass("gDialogLink")) {
    openDialog(pane, function() { window.location.reload(); });
  } else {
    img.css("opacity", "0.1");
    cont.addClass("gLoadingLarge");
    $.ajax({
      type: "GET",
      url: pane.attr("href"),
      dataType: "json",
      success: function(data) {
		img.css("opacity", "1");
		img.attr("width", data.width);
		img.attr("height", data.height);
		img.attr("src", data.src);
		if (data.height > data.width) {
		  img.css("margin-top", -$("#gQuickPane").height());
		} else {
		  img.css("margin-top", 0);			
		}
		cont.removeClass("gLoadingLarge");
      }
    });
  }
  return false;
};

var hide_quick = function() {
  $("#gQuickPane").remove();
};