Use a closure for the files app entry and deprecate old methods

This commit is contained in:
Joas Schilling 2015-03-17 12:14:34 +01:00
parent d96b97043b
commit 9c45ab49a1
3 changed files with 38 additions and 45 deletions

View 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(

View 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();

View 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 );