diff options
Diffstat (limited to 'modules/gallery')
| -rw-r--r-- | modules/gallery/helpers/gallery.php | 118 | ||||
| -rw-r--r-- | modules/gallery/libraries/Admin_View.php | 60 | ||||
| -rw-r--r-- | modules/gallery/libraries/Theme_View.php | 63 | 
3 files changed, 123 insertions, 118 deletions
| diff --git a/modules/gallery/helpers/gallery.php b/modules/gallery/helpers/gallery.php index 2fa7ad1c..476e9cbe 100644 --- a/modules/gallery/helpers/gallery.php +++ b/modules/gallery/helpers/gallery.php @@ -78,4 +78,122 @@ class gallery_Core {    static function time($timestamp) {      return date(module::get_var("gallery", "time_format", "H:i:s"), $timestamp);    } + +  static function site_menu($menu, $theme) { +    if ($theme->page_type != "login") { +      $menu->append(Menu::factory("link") +                    ->id("home") +                    ->label(t("Home")) +                    ->url(url::site("albums/1"))); + +      $item = $theme->item(); + +      $can_edit = $item && access::can("edit", $item); +      $can_add = $item && access::can("add", $item); + +      if ($can_add) { +        $menu->append(Menu::factory("dialog") +                      ->id("add_photos_item") +                      ->label(t("Add photos")) +                      ->url(url::site("simple_uploader/app/$item->id"))); +      } + +      $menu->append($options_menu = Menu::factory("submenu") +                    ->id("options_menu") +                    ->label(t("Options"))); +      if ($item && ($can_edit || $can_add)) { +        if ($can_edit) { +          $options_menu +            ->append(Menu::factory("dialog") +                     ->id("edit_item") +                     ->label($item->is_album() ? t("Edit album") : t("Edit photo")) +                     ->url(url::site("form/edit/{$item->type}s/$item->id"))); +        } + +        // @todo Move album options menu to the album quick edit pane +        if ($item->is_album()) { +          if ($can_add) { +            $options_menu +              ->append(Menu::factory("dialog") +                       ->id("add_album") +                       ->label(t("Add an album")) +                       ->url(url::site("form/add/albums/$item->id?type=album"))); +          } + +          if ($can_edit) { +            $options_menu +              ->append(Menu::factory("dialog") +                       ->id("edit_permissions") +                       ->label(t("Edit permissions")) +                       ->url(url::site("permissions/browse/$item->id"))); +          } +        } +      } + +      if (user::active()->admin) { +        $menu->append($admin_menu = Menu::factory("submenu") +                      ->id("admin_menu") +                      ->label(t("Admin"))); +        gallery::admin_menu($admin_menu, $theme); +        module::event("admin_menu", $admin_menu, $theme); +      } + +      module::event("site_menu", $menu, $theme); +    } +  } + +  static function admin_menu($menu, $theme) { +    $menu +      ->append(Menu::factory("link") +               ->id("dashboard") +               ->label(t("Dashboard")) +               ->url(url::site("admin"))) +      ->append(Menu::factory("submenu") +               ->id("settings_menu") +               ->label(t("Settings")) +               ->append(Menu::factory("link") +                        ->id("graphics_toolkits") +                        ->label(t("Graphics")) +                        ->url(url::site("admin/graphics"))) +               ->append(Menu::factory("link") +                        ->id("languages") +                        ->label(t("Languages")) +                        ->url(url::site("admin/languages"))) +               ->append(Menu::factory("link") +                        ->id("l10n_mode") +                        ->label(Session::instance()->get("l10n_mode", false) +                                ? t("Stop translating") : t("Start translating")) +                        ->url(url::site("l10n_client/toggle_l10n_mode?csrf=" . +                                        access::csrf_token()))) +               ->append(Menu::factory("link") +                        ->id("advanced") +                        ->label(t("Advanced")) +                        ->url(url::site("admin/advanced_settings")))) +      ->append(Menu::factory("link") +               ->id("modules") +               ->label(t("Modules")) +               ->url(url::site("admin/modules"))) +      ->append(Menu::factory("submenu") +               ->id("content_menu") +               ->label(t("Content"))) +      ->append(Menu::factory("submenu") +               ->id("appearance_menu") +               ->label(t("Appearance")) +               ->append(Menu::factory("link") +                        ->id("themes") +                        ->label(t("Theme Choice")) +                        ->url(url::site("admin/themes"))) +               ->append(Menu::factory("link") +                        ->id("theme_options") +                        ->label(t("Theme Options")) +                        ->url(url::site("admin/theme_options")))) +      ->append(Menu::factory("submenu") +               ->id("statistics_menu") +               ->label(t("Statistics"))) +      ->append(Menu::factory("link") +               ->id("maintenance") +               ->label(t("Maintenance")) +               ->url(url::site("admin/maintenance"))); +    return $menu; +  }  }
\ No newline at end of file diff --git a/modules/gallery/libraries/Admin_View.php b/modules/gallery/libraries/Admin_View.php index 2a48d1e3..5c3fe081 100644 --- a/modules/gallery/libraries/Admin_View.php +++ b/modules/gallery/libraries/Admin_View.php @@ -44,63 +44,9 @@ class Admin_View_Core extends Gallery_View {      $this->set_global("user", user::active());    } -  public function admin_menu($menu=null) { -    if (!$menu) { -      $menu = Menu::factory("root"); -    } - -    $menu -      ->append(Menu::factory("link") -               ->id("dashboard") -               ->label(t("Dashboard")) -               ->url(url::site("admin"))) -      ->append(Menu::factory("submenu") -               ->id("settings_menu") -               ->label(t("Settings")) -               ->append(Menu::factory("link") -                        ->id("graphics_toolkits") -                        ->label(t("Graphics")) -                        ->url(url::site("admin/graphics"))) -               ->append(Menu::factory("link") -                        ->id("languages") -                        ->label(t("Languages")) -                        ->url(url::site("admin/languages"))) -               ->append(Menu::factory("link") -                        ->id("l10n_mode") -                        ->label(Session::instance()->get("l10n_mode", false) -                                ? t("Stop translating") : t("Start translating")) -                        ->url(url::site("l10n_client/toggle_l10n_mode?csrf=" . -                                        access::csrf_token()))) -               ->append(Menu::factory("link") -                        ->id("advanced") -                        ->label(t("Advanced")) -                        ->url(url::site("admin/advanced_settings")))) -      ->append(Menu::factory("link") -               ->id("modules") -               ->label(t("Modules")) -               ->url(url::site("admin/modules"))) -      ->append(Menu::factory("submenu") -               ->id("content_menu") -               ->label(t("Content"))) -      ->append(Menu::factory("submenu") -               ->id("appearance_menu") -               ->label(t("Appearance")) -               ->append(Menu::factory("link") -                        ->id("themes") -                        ->label(t("Theme Choice")) -                        ->url(url::site("admin/themes"))) -               ->append(Menu::factory("link") -                        ->id("theme_options") -                        ->label(t("Theme Options")) -                        ->url(url::site("admin/theme_options")))) -      ->append(Menu::factory("submenu") -               ->id("statistics_menu") -               ->label(t("Statistics"))) -      ->append(Menu::factory("link") -               ->id("maintenance") -               ->label(t("Maintenance")) -               ->url(url::site("admin/maintenance"))); - +  public function admin_menu() { +    $menu = Menu::factory("root"); +    gallery::admin_menu($menu, $this);      module::event("admin_menu", $menu, $this);      $menu->compact();      return $menu; diff --git a/modules/gallery/libraries/Theme_View.php b/modules/gallery/libraries/Theme_View.php index 60471f75..af8e9961 100644 --- a/modules/gallery/libraries/Theme_View.php +++ b/modules/gallery/libraries/Theme_View.php @@ -80,67 +80,8 @@ class Theme_View_Core extends Gallery_View {    public function site_menu() {      $menu = Menu::factory("root"); -    if ($this->page_type != "login") { -      $menu->append(Menu::factory("link") -                    ->id("home") -                    ->label(t("Home")) -                    ->url(url::site("albums/1"))); - -      $item = $this->item(); - -      $can_edit = $item && access::can("edit", $item); -      $can_add = $item && access::can("add", $item); - -      if ($can_add) { -        $menu->append(Menu::factory("dialog") -                      ->id("add_photos_item") -                      ->label(t("Add photos")) -                      ->url(url::site("simple_uploader/app/$item->id"))); -      } - -      $menu->append($options_menu = Menu::factory("submenu") -                    ->id("options_menu") -                    ->label(t("Options"))); -      if ($item && ($can_edit || $can_add)) { -        if ($can_edit) { -          $options_menu -            ->append(Menu::factory("dialog") -                     ->id("edit_item") -                     ->label($item->is_album() ? t("Edit album") : t("Edit photo")) -                     ->url(url::site("form/edit/{$item->type}s/$item->id"))); -        } - -        // @todo Move album options menu to the album quick edit pane -        if ($item->is_album()) { -          if ($can_add) { -            $options_menu -              ->append(Menu::factory("dialog") -                       ->id("add_album") -                       ->label(t("Add an album")) -                       ->url(url::site("form/add/albums/$item->id?type=album"))); -          } - -          if ($can_edit) { -            $options_menu -              ->append(Menu::factory("dialog") -                       ->id("edit_permissions") -                       ->label(t("Edit permissions")) -                       ->url(url::site("permissions/browse/$item->id"))); -          } -        } -      } - -      if (user::active()->admin) { -        $menu->append($admin_menu = Menu::factory("submenu") -                      ->id("admin_menu") -                      ->label(t("Admin"))); -        Admin_View::admin_menu($admin_menu, $this); -        module::event("admin_menu", $admin_menu, $this); -      } - -      module::event("site_menu", $menu, $this); -    } - +    gallery::site_menu($menu, $this); +    module::event("site_menu", $menu, $this);      return $menu->compact();    } | 
