]> source.dussan.org Git - nextcloud-server.git/commitdiff
Use a closure for the files app entry and deprecate old methods
authorJoas Schilling <nickvergessen@owncloud.com>
Tue, 17 Mar 2015 11:14:34 +0000 (12:14 +0100)
committerJoas Schilling <nickvergessen@owncloud.com>
Tue, 17 Mar 2015 11:17:09 +0000 (12:17 +0100)
apps/files/appinfo/app.php
lib/private/app.php
lib/public/app.php

index 87791e2558e9e46e186a87a93acc92cba3018848..528156e1a28679c55f1567061b81c4b370462ad0 100644 (file)
@@ -1,32 +1,37 @@
 <?php
 
-$l = \OC::$server->getL10N('files');
 
-OCP\App::registerAdmin('files', 'admin');
+\OCP\App::registerAdmin('files', 'admin');
 
-OCP\App::addNavigationEntry(array("id" => "files_index",
-       "order" => 0,
-       "href" => OCP\Util::linkTo("files", "index.php"),
-       "icon" => OCP\Util::imagePath("core", "places/files.svg"),
-       "name" => $l->t("Files")));
+\OC::$server->getNavigationManager()->add(function () {
+       $l = \OC::$server->getL10N('files');
+       return [
+               'id' => 'files_index',
+               'order' => 0,
+               'href' => \OCP\Util::linkTo('files', 'index.php'),
+               'icon' => \OCP\Util::imagePath('core', 'places/files.svg'),
+               'name' => $l->t('Files'),
+       ];
+});
 
 \OC::$server->getSearch()->registerProvider('OC\Search\Provider\File', array('apps' => array('files')));
 
-$templateManager = OC_Helper::getFileTemplateManager();
+$templateManager = \OC_Helper::getFileTemplateManager();
 $templateManager->registerTemplate('text/html', 'core/templates/filetemplates/template.html');
 $templateManager->registerTemplate('application/vnd.oasis.opendocument.presentation', 'core/templates/filetemplates/template.odp');
 $templateManager->registerTemplate('application/vnd.oasis.opendocument.text', 'core/templates/filetemplates/template.odt');
 $templateManager->registerTemplate('application/vnd.oasis.opendocument.spreadsheet', 'core/templates/filetemplates/template.ods');
 
-\OCA\Files\App::getNavigationManager()->add(
-       array(
-               "id" => 'files',
-               "appname" => 'files',
-               "script" => 'list.php',
-               "order" => 0,
-               "name" => $l->t('All files')
-       )
-);
+\OCA\Files\App::getNavigationManager()->add(function () {
+       $l = \OC::$server->getL10N('files');
+       return [
+               'id' => 'files',
+               'appname' => 'files',
+               'script' => 'list.php',
+               'order' => 0,
+               'name' => $l->t('All files'),
+       ];
+});
 
 \OC::$server->getActivityManager()->registerExtension(function() {
        return new \OCA\Files\Activity(
index 9ae4ae30d74f76d8a1bcdf5b8d524b18e88a064c..f51736a59a8adb47460a1be839774a25507cd776 100644 (file)
@@ -318,29 +318,6 @@ class OC_App {
                $appManager->disableApp($app);
        }
 
-       /**
-        * adds an entry to the navigation
-        *
-        * @param array $data array containing the data
-        * @return bool
-        *
-        * This function adds a new entry to the navigation visible to users. $data
-        * is an associative array.
-        * The following keys are required:
-        *   - id: unique id for this entry ('addressbook_index')
-        *   - href: link to the page
-        *   - name: Human readable name ('Addressbook')
-        *
-        * The following keys are optional:
-        *   - icon: path to the icon of the app
-        *   - order: integer, that influences the position of your application in
-        *     the navigation. Lower values come first.
-        */
-       public static function addNavigationEntry($data) {
-               OC::$server->getNavigationManager()->add($data);
-               return true;
-       }
-
        /**
         * marks a navigation entry as active
         *
@@ -350,6 +327,8 @@ class OC_App {
         * This function sets a navigation entry as active and removes the 'active'
         * property from all other entries. The templates can use this for
         * highlighting the current position of the user.
+        *
+        * @deprecated Use \OC::$server->getNavigationManager()->setActiveEntry() instead
         */
        public static function setActiveNavigationEntry($id) {
                OC::$server->getNavigationManager()->setActiveEntry($id);
@@ -380,6 +359,8 @@ class OC_App {
         *
         * This function returns the id of the active navigation entry (set by
         * setActiveNavigationEntry
+        *
+        * @deprecated Use \OC::$server->getNavigationManager()->getActiveEntry() instead
         */
        public static function getActiveNavigationEntry() {
                return OC::$server->getNavigationManager()->getActiveEntry();
index bef4e96ae02d0a5e605962df01646328416d5e2d..736c2b64c7dba6643f2bb4f901e9304d6fed812d 100644 (file)
@@ -49,8 +49,6 @@ class App {
 
        /**
         * Adds an entry to the navigation
-        * @param array $data containing the data
-        * @return boolean
         *
         * This function adds a new entry to the navigation visible to users. $data
         * is an associative array.
@@ -62,10 +60,17 @@ class App {
         * The following keys are optional:
         *   - icon: path to the icon of the app
         *   - order: integer, that influences the position of your application in
-        *       the navigation. Lower values come first.
+        *     the navigation. Lower values come first.
+        *
+        * @param array $data containing the data
+        * @return boolean
+        *
+        * @deprecated Use \OC::$server->getNavigationManager()->add() instead to
+        * register a closure, this helps to speed up all requests against ownCloud
         */
-       public static function addNavigationEntry( $data ) {
-               return \OC_App::addNavigationEntry( $data );
+       public static function addNavigationEntry($data) {
+               \OC::$server->getNavigationManager()->add($data);
+               return true;
        }
 
        /**
@@ -76,6 +81,8 @@ class App {
         * This function sets a navigation entry as active and removes the 'active'
         * property from all other entries. The templates can use this for
         * highlighting the current position of the user.
+        *
+        * @deprecated Use \OC::$server->getNavigationManager()->setActiveEntry() instead
         */
        public static function setActiveNavigationEntry( $id ) {
                return \OC_App::setActiveNavigationEntry( $id );