mirror of
https://github.com/Pathduck/gallery3.git
synced 2026-07-22 07:43:53 -04:00
Don't display the add menu if the underlying operating system directory is not writable. THis should fix ticket #775
This commit is contained in:
@@ -89,9 +89,11 @@ class gallery_Core {
|
||||
$item = $theme->item();
|
||||
|
||||
$can_edit = $item && access::can("edit", $item);
|
||||
$is_album_writable =
|
||||
is_writable($item->is_album() ? $item->file_path() : $item->parent()->file_path());
|
||||
$can_add = $item && access::can("add", $item);
|
||||
|
||||
if ($can_add) {
|
||||
if ($can_add && $is_album_writable) {
|
||||
$menu->append($add_menu = Menu::factory("submenu")
|
||||
->id("add_menu")
|
||||
->label(t("Add")));
|
||||
@@ -105,6 +107,9 @@ class gallery_Core {
|
||||
->label(t("Add an album"))
|
||||
->url(url::site("form/add/albums/$item->id?type=album")));
|
||||
}
|
||||
} else if (!$is_album_writable) {
|
||||
message::warning(t("The album '%album_name' is not writable.",
|
||||
array("album_name" => $item->title)));
|
||||
}
|
||||
|
||||
$menu->append($options_menu = Menu::factory("submenu")
|
||||
|
||||
@@ -31,11 +31,14 @@ class server_add_event_Core {
|
||||
$paths = unserialize(module::get_var("server_add", "authorized_paths"));
|
||||
|
||||
if ($item && user::active()->admin && $item->is_album() && !empty($paths)) {
|
||||
$menu->get("add_menu")
|
||||
->append(Menu::factory("dialog")
|
||||
->id("server_add")
|
||||
->label(t("Server add"))
|
||||
->url(url::site("server_add/browse/$item->id")));
|
||||
$add_menu = $menu->get("add_menu");
|
||||
if ($add_menu) {
|
||||
$add_menu
|
||||
->append(Menu::factory("dialog")
|
||||
->id("server_add")
|
||||
->label(t("Server add"))
|
||||
->url(url::site("server_add/browse/$item->id")));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user