summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/gallery/libraries/Menu.php9
-rw-r--r--modules/gallery/libraries/Theme_View.php11
-rw-r--r--themes/default/css/screen.css8
-rw-r--r--themes/default/js/ui.init.js47
4 files changed, 38 insertions, 37 deletions
diff --git a/modules/gallery/libraries/Menu.php b/modules/gallery/libraries/Menu.php
index 162cd3b0..a39b59a5 100644
--- a/modules/gallery/libraries/Menu.php
+++ b/modules/gallery/libraries/Menu.php
@@ -136,7 +136,9 @@ class Menu_Core extends Menu_Element {
return new Menu_Element_Dialog($type);
case "root":
- return new Menu("root");
+ $menu = new Menu("root");
+ $menu->css_class("gMenu");
+ return $menu;
case "submenu":
return new Menu("submenu");
@@ -156,6 +158,7 @@ class Menu_Core extends Menu_Element {
}
}
}
+ return $this;
}
public function __construct($type) {
@@ -206,8 +209,8 @@ class Menu_Core extends Menu_Element {
}
public function __toString() {
- $html = $this->is_root ? "<ul class=\"gMenu\">" :
- "<li title=\"$this->label\"><a href=\"#\">$this->label</a><ul class=\"gMenu\">";
+ $html = $this->is_root ? "<ul class=\"$this->css_class\">" :
+ "<li title=\"$this->label\"><a href=\"#\">$this->label</a><ul>";
$html .= implode("\n", $this->elements);
$html .= $this->is_root ? "</ul>" : "</ul></li>";
return $html;
diff --git a/modules/gallery/libraries/Theme_View.php b/modules/gallery/libraries/Theme_View.php
index 75138f25..fa45ec89 100644
--- a/modules/gallery/libraries/Theme_View.php
+++ b/modules/gallery/libraries/Theme_View.php
@@ -99,19 +99,19 @@ class Theme_View_Core extends Gallery_View {
}
public function album_menu() {
- $this->_menu("album");
+ print $this->_menu("album");
}
public function tag_menu() {
- $this->_menu("tag");
+ print $this->_menu("tag");
}
public function photo_menu() {
- $this->_menu("photo");
+ print $this->_menu("photo");
}
public function thumb_menu($item) {
- $this->_menu("thumb", $item);
+ print $this->_menu("thumb", $item)->css_class("gThumbMenu");
}
private function _menu($type, $item=null) {
@@ -127,8 +127,7 @@ class Theme_View_Core extends Gallery_View {
}
}
- $menu->compact();
- print $menu;
+ return $menu->compact();
}
public function pager() {
diff --git a/themes/default/css/screen.css b/themes/default/css/screen.css
index 93b68e68..c0954690 100644
--- a/themes/default/css/screen.css
+++ b/themes/default/css/screen.css
@@ -582,21 +582,21 @@ form .gError,
margin-bottom: 0;
}
-/* Photo Menu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
+/* Thumb Menu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
-#gContent .gPhotoMenu {
+#gContent .gThumbMenu {
bottom: 0;
left: 0;
position: absolute;
width: 100%;
}
-#gContent .gPhotoMenu li {
+#gContent .gThumbMenu li {
border-left: none;
border-right: none;
}
-#gContent .gPhotoMenu a:hover {
+#gContent .gThumbMenu a:hover {
text-decoration: none;
}
diff --git a/themes/default/js/ui.init.js b/themes/default/js/ui.init.js
index 37261727..ac7ef8d2 100644
--- a/themes/default/js/ui.init.js
+++ b/themes/default/js/ui.init.js
@@ -15,8 +15,6 @@ $(document).ready(function() {
// Remove .gMenu from thumb menu's before initializing Superfish
// @todo gallery_menu should only apply gMenu to top-level menus, submenus should be gSubMenu-N
- $("#gContent .gItem .gMenu").removeClass("gMenu");
- $("#gContent .gQuick + ul").addClass("gPhotoMenu");
// Initialize Superfish menus
$("ul.gMenu").addClass("sf-menu");
@@ -41,28 +39,6 @@ $(document).ready(function() {
$(dialogLinks[i]).bind("click", handleDialogEvent);
}
- // Initialize photo menus
- if ($("#gContent .gPhotoMenu").length) {
- $("#gContent .gPhotoMenu li").addClass("ui-state-default");
- $("#gContent .gPhotoMenu li a")
- .not('[class]')
- .addClass("gButtonLink ui-icon")
- .css({
- "height":"10px",
- "margin":"0",
- "padding":"0"
- });
- //$(".gPhotoMenu ul").hide();
- $(".gPhotoMenu").hover(
- function(){
- $(this + " ul").show();
- },
- function(){
- $(this + " ul").hide();
- }
- );
- }
-
// Initialize view menu
if ($("#gViewMenu").length) {
$("#gViewMenu ul").removeClass("gMenu").removeClass("sf-menu");
@@ -118,6 +94,29 @@ $(document).ready(function() {
}
);
+ // Initialize thumbnail menus
+ if ($("#gContent .gThumbMenu").length) {
+ $("#gContent .gThumbMenu li").addClass("ui-state-default");
+ $("#gContent .gThumbMenu li a")
+ .not('[class]')
+ .addClass("gButtonLink ui-icon")
+ .css({
+ height: "10px",
+ margin: "0",
+ padding: "0"
+ });
+
+ $(".gThumbMenu ul").hide();
+ $(".gThumbMenu").hover(
+ function() {
+ $(this).find("ul").slideDown("fast");
+ },
+ function() {
+ $(this).find("ul").slideUp("slow");
+ }
+ );
+ }
+
});
/**