summaryrefslogtreecommitdiff
path: root/modules/organize
diff options
context:
space:
mode:
Diffstat (limited to 'modules/organize')
-rw-r--r--modules/organize/controllers/organize.php1
-rw-r--r--modules/organize/helpers/organize_event.php24
-rw-r--r--modules/organize/views/organize_dialog.html.php1
3 files changed, 19 insertions, 7 deletions
diff --git a/modules/organize/controllers/organize.php b/modules/organize/controllers/organize.php
index d2f3fbf5..2b6e4186 100644
--- a/modules/organize/controllers/organize.php
+++ b/modules/organize/controllers/organize.php
@@ -42,6 +42,7 @@ class Organize_Controller extends Controller {
$v->file_filter = addslashes($file_filter);
$v->sort_order = addslashes(json_encode($sort_order));
$v->sort_fields = addslashes(json_encode($sort_fields));
+ $v->selected_id = Input::instance()->get("selected_id", null);
$v->rest_uri = url::site("rest") . "/";
$v->controller_uri = url::site("organize") . "/";
$v->swf_uri = url::file("modules/organize/lib/Gallery3WebClient.swf?") .
diff --git a/modules/organize/helpers/organize_event.php b/modules/organize/helpers/organize_event.php
index ae05fb5d..1593d30e 100644
--- a/modules/organize/helpers/organize_event.php
+++ b/modules/organize/helpers/organize_event.php
@@ -32,13 +32,23 @@ class organize_event_Core {
}
static function context_menu($menu, $theme, $item) {
- if ($item->is_album() && access::can("edit", $item)) {
- $menu->get("options_menu")
- ->append(Menu::factory("dialog")
- ->id("organize")
- ->label(t("Organize album"))
- ->css_class("ui-icon-folder-open g-organize-link")
- ->url(url::site("organize/dialog/{$item->id}")));
+ if (access::can("edit", $item)) {
+ if ($item->is_album()) {
+ $menu->get("options_menu")
+ ->append(Menu::factory("dialog")
+ ->id("organize")
+ ->label(t("Organize album"))
+ ->css_class("ui-icon-folder-open g-organize-link")
+ ->url(url::site("organize/dialog/{$item->id}")));
+ } else {
+ $parent = $item->parent();
+ $menu->get("options_menu")
+ ->append(Menu::factory("dialog")
+ ->id("move")
+ ->label(t("Move to another album"))
+ ->css_class("ui-icon-folder-open g-organize-link")
+ ->url(url::site("organize/dialog/{$parent->id}?selected_id={$item->id}")));
+ }
}
}
diff --git a/modules/organize/views/organize_dialog.html.php b/modules/organize/views/organize_dialog.html.php
index 4cc6385e..83143f97 100644
--- a/modules/organize/views/organize_dialog.html.php
+++ b/modules/organize/views/organize_dialog.html.php
@@ -94,6 +94,7 @@
sortOrder: "<?= $sort_order ?>",
sortFields: "<?= $sort_fields ?>",
albumId: "<?= $album->id ?>",
+ selectedId: "<?= $selected_id ?>",
restUri: "<?= $rest_uri ?>",
controllerUri: "<?= $controller_uri ?>"
};