1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- <?php
- /**
- * Copyright (c) 2013 Bart Visscher <bartv@thisnet.nl>
- * This file is licensed under the Affero General Public License version 3 or
- * later.
- * See the COPYING-README file.
- *
- */
- namespace OC;
- /**
- * Manages the ownCloud navigation
- */
- class NavigationManager implements \OCP\INavigationManager {
- protected $entries = array();
- protected $activeEntry;
- /**
- * Creates a new navigation entry
- * @param array $entry containing: id, name, order, icon and href key
- */
- public function add(array $entry) {
- $entry['active'] = false;
- if(!isset($entry['icon'])) {
- $entry['icon'] = '';
- }
- $this->entries[] = $entry;
- }
- /**
- * @brief returns all the added Menu entries
- * @return array of the added entries
- */
- public function getAll() {
- return $this->entries;
- }
- /**
- * @brief removes all the entries
- */
- public function clear() {
- $this->entries = array();
- }
- /**
- * Sets the current navigation entry of the currently running app
- * @param string $id of the app entry to activate (from added $entry)
- */
- public function setActiveEntry($id) {
- $this->activeEntry = $id;
- }
- /**
- * @brief gets the active Menu entry
- * @return string id or empty string
- *
- * This function returns the id of the active navigation entry (set by
- * setActiveEntry
- */
- public function getActiveEntry() {
- return $this->activeEntry;
- }
- }
|