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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
|
/**
* Initialize jQuery UI and Gallery Plugin elements
*/
var short_forms = new Array(
"#gQuickSearchForm",
"#gAddTagForm",
"#gSearchForm"
);
$(document).ready(function() {
// Initialize Superfish menus
$("ul.gMenu").addClass("sf-menu");
$('ul.sf-menu').superfish({
delay: 500,
animation: {
opacity:'show',
height:'show'
},
speed: 'fast'
});
$("#gSiteMenu").css("display", "block");
// Initialize status message effects
$("#gMessage li").gallery_show_message();
// Initialize dialogs
$("#gLoginLink").addClass("gDialogLink");
$(".gDialogLink").gallery_dialog();
// Initialize view menu
if ($("#gViewMenu").length) {
$("#gViewMenu ul").removeClass("gMenu").removeClass("sf-menu");
$("#gViewMenu a").addClass("ui-icon");
}
// Initialize short forms
for (var i in short_forms) {
short_form_init(short_forms[i]);
$(short_forms[i]).addClass("gShortForm");
}
$(".gShortForm input[type=text]").addClass("ui-corner-left");
$(".gShortForm input[type=submit]").addClass("ui-state-default ui-corner-right");
// Apply jQuery UI button css to submit inputs
$("input[type=submit]:not(.gShortForm input)").addClass("ui-state-default ui-corner-all");
// Apply styles and icon classes to gContextMenu
if ($(".gContextMenu").length) {
$(".gContextMenu li").addClass("ui-state-default");
$(".gContextMenu a").addClass("gButtonLink ui-icon-left");
$(".gContextMenu a").prepend("<span class=\"ui-icon\"></span>");
$(".gContextMenu a span").each(function() {
var iconClass = $(this).parent().attr("class").match(/ui-icon-.[^\s]+/).toString();
$(this).addClass(iconClass);
});
}
// Album view only
if ($("#gAlbumGrid").length) {
// Vertical align thumbnails/metadata in album grid
$(".gItem").gallery_valign();
// Initialize context menus
$(".gItem").hover(
function(){
// Insert invisible placeholder to hold the item's position in the grid
var placeHolder = $(this).clone();
$(placeHolder).attr("id", "gPlaceHolder");
$(placeHolder).css("visibility", "hidden");
$(this).after($(placeHolder));
// Style and position the item
$(this).addClass("gHoverItem");
var position = $(this).position();
$(this).css("position", "absolute");
$(this).css("top", position.top);
$(this).css("left", position.left);
$(this).css("z-index", "1000");
// Initialize the contextual menu
$(this).gallery_context_menu();
// Set height based on height of descendents
var title = $(this).find("h2");
var meta = $(this).find(".gMetadata");
var context_label = $(this).find(".gContextMenu li:first");
var item_ht = $(this).height();
var title_ht = $(title).gallery_height();
var meta_ht = $(meta).gallery_height();
var context_label_ht = $(context_label).gallery_height();
$(this).height(item_ht + title_ht + meta_ht + context_label_ht);
},
function() {
// Reset item height, position, and z-index
if ($(this).next().height()) {
var sib_height = $(this).next().height();
} else {
var sib_height = $(this).prev().height();
}
if ($.browser.msie && $.browser.version >= 8) {
sib_height = sib_height + 1;
}
$(this).css("height", sib_height);
$(this).css("position", "relative");
$(this).css("top", null);
$(this).css("left", null);
$(this).css("z-index", 1);
// Remove the placeholder and hover class from the item
$("#gPlaceHolder").remove();
$(this).removeClass("gHoverItem");
}
);
}
// Photo/Item item view
if ($("#gItem").length) {
// Ensure the resized image fits within its container
$("#gItem").gallery_fit_photo();
// Initialize context menus
var resize = $("#gItem").gallery_get_photo();
$(resize).hover(function(){
$(this).gallery_context_menu();
});
// Add scroll effect for links to named anchors
$.localScroll({
queue: true,
duration: 1000,
hash: true
});
}
// Initialize button hover effect
$.fn.gallery_hover_init();
});
|