Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Appelman <icewind1991@gmail.com>2011-08-08 23:42:25 +0400
committerRobin Appelman <icewind1991@gmail.com>2011-08-08 23:43:31 +0400
commite6f6d3dabccb5f9fd42d7f0f609107a9023fc4d3 (patch)
treeb99446ea286dd9df0275500c1798eb1654aadb01
parent7820e8959c1764f6260005ff8aeca41ca13c3e8e (diff)
dont use a different navigation page for settings stuff
-rw-r--r--admin/appinfo/app.php7
-rw-r--r--apps/files_publiclink/appinfo/app.php2
-rw-r--r--apps/user_ldap/appinfo/app.php2
-rw-r--r--core/templates/layout.admin.php69
-rw-r--r--core/templates/layout.user.php13
-rw-r--r--files/appinfo/app.php5
-rw-r--r--help/appinfo/app.php9
-rw-r--r--lib/app.php181
-rw-r--r--lib/template.php16
-rw-r--r--settings/appinfo/app.php1
10 files changed, 43 insertions, 262 deletions
diff --git a/admin/appinfo/app.php b/admin/appinfo/app.php
index 08a36060fe3..80850638f71 100644
--- a/admin/appinfo/app.php
+++ b/admin/appinfo/app.php
@@ -2,11 +2,4 @@
OC_App::register( array( "order" => 1, "id" => "admin", "name" => "Administration" ));
-// OC_App::addAdminPage( array( "id" => "core_system", "order" => 1, "href" => OC_Helper::linkTo( "admin", "system.php" ), "name" =>"System", "icon" => OC_Helper::imagePath( "admin", "administration.png" )));
-OC_App::addAdminPage( array( "id" => "core_users", "order" => 2, "href" => OC_Helper::linkTo( "admin", "users.php" ), "name" => "Users", "icon" => OC_Helper::imagePath( "admin", "users.png" )));
-OC_App::addAdminPage( array( "id" => "core_apps", "order" => 3, "href" => OC_Helper::linkTo( "admin", "apps.php?installed" ), "name" => "Apps", "icon" => OC_Helper::imagePath( "admin", "apps.png" )));
-
-// Add subentries for App installer
-//OC_App::addNavigationSubEntry( "core_apps", array( "id" => "core_apps_get", "order" => 4, "href" => OC_Helper::linkTo( "admin", "apps.php" ), "name" => "Get new apps", "icon" => OC_Helper::imagePath( "admin", "navicon.png" )));
-
?>
diff --git a/apps/files_publiclink/appinfo/app.php b/apps/files_publiclink/appinfo/app.php
index 17646b3e5b5..e2d8d27c007 100644
--- a/apps/files_publiclink/appinfo/app.php
+++ b/apps/files_publiclink/appinfo/app.php
@@ -1,6 +1,6 @@
<?php
-OC_App::addNavigationSubEntry('files_index', array( "id" => "files_publiclink_administration", "order" => 1, "href" => OC_Helper::linkTo( "files_publiclink", "admin.php" ), "name" => "Public Links"));
+OC_App::addNavigationEntry(array( "id" => "files_publiclink_administration", "order" => 2, "href" => OC_Helper::linkTo( "files_publiclink", "admin.php" ), "name" => "Public Links"));
?>
diff --git a/apps/user_ldap/appinfo/app.php b/apps/user_ldap/appinfo/app.php
index 7f20372ea8d..a6fca415012 100644
--- a/apps/user_ldap/appinfo/app.php
+++ b/apps/user_ldap/appinfo/app.php
@@ -36,4 +36,4 @@ $entry = array(
'href' => OC_Helper::linkTo( "user_ldap", "settings.php" ),
'name' => 'LDAP'
);
-OC_App::addNavigationSubEntry( "core_users", $entry);
+// OC_App::addNavigationSubEntry( "core_users", $entry);
diff --git a/core/templates/layout.admin.php b/core/templates/layout.admin.php
deleted file mode 100644
index 853fcff608d..00000000000
--- a/core/templates/layout.admin.php
+++ /dev/null
@@ -1,69 +0,0 @@
-<!DOCTYPE html>
-<html>
- <head>
- <title>ownCloud</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <link rel="shortcut icon" href="<?php echo image_path('', 'favicon.png'); ?>" /><link rel="apple-touch-icon-precomposed" href="<?php echo image_path('', 'favicon-touch.png'); ?>" />
- <?php foreach($_['cssfiles'] as $cssfile): ?>
- <link rel="stylesheet" href="<?php echo $cssfile; ?>" type="text/css" media="screen" />
- <?php endforeach; ?>
- <script type="text/javascript">
- var oc_webroot = '<?php global $WEBROOT; echo $WEBROOT; ?>';
- var oc_current_user = '<?php echo OC_User::getUser() ?>';
- // </script>
- <?php foreach($_['jsfiles'] as $jsfile): ?>
- <script type="text/javascript" src="<?php echo $jsfile; ?>"></script>
- <?php endforeach; ?>
- <?php foreach($_['headers'] as $header): ?>
- <?php
- echo '<'.$header['tag'].' ';
- foreach($header['attributes'] as $name=>$value){
- echo "$name='$value' ";
- };
- echo '>';
- echo $header['text'];
- echo '</'.$header['tag'].'>';
- ?>
- <?php endforeach; ?>
- </head>
-
- <body id="body-settings">
- <div id="header">
- <a href="<?php echo link_to('', 'index.php'); ?>" title="" id="owncloud"><img src="<?php echo image_path('', 'owncloud-logo-small-white.png'); ?>" alt="ownCloud" /></a>
- <ul id="metanav">
- <li><a href="<?php echo link_to('', 'index.php'); ?>" title="Back to files"><img class='svg' src="<?php echo image_path('', 'actions/back.svg'); ?>"></a></li>
- <li><a href="<?php echo link_to('', 'index.php?logout=true'); ?>" title="Log out"><img class='svg' src="<?php echo image_path('', 'actions/logout.svg'); ?>"></a></li>
- </ul>
- </div>
-
- <div id="navigation">
- <ul>
- <?php foreach($_['settingsnavigation'] as $entry):?>
- <li><a style="background-image:url(<?php echo $entry['icon']; ?>)" href="<?php echo $entry['href']; ?>" title="" <?php if( $entry["active"] ): ?> class="active"<?php endif; ?>><?php echo $entry['name'] ?></a></li>
- <?php if( sizeof( $entry["subnavigation"] )): ?>
- <?php foreach($entry["subnavigation"] as $subentry):?>
- <li><a href="<?php echo $subentry['href']; ?>" title="" <?php if( $subentry['active'] ): ?>class="active"<?php endif; ?>><?php echo $subentry['name'] ?></a></li>
- <?php endforeach; ?>
- <?php endif; ?>
- <?php endforeach; ?>
- <?php if(isset($_['adminnavigation'])):?>
- <?php foreach($_['adminnavigation'] as $entry):?>
- <li><a style="background-image:url(<?php echo $entry['icon']; ?>)" href="<?php echo $entry['href']; ?>" title="" <?php if( $entry["active"] ): ?> class="active"<?php endif; ?>><?php echo $entry['name'] ?></a>
- <?php if( sizeof( $entry["subnavigation"] )): ?>
- <ul>
- <?php foreach($entry["subnavigation"] as $subentry):?>
- <li class="subentry"><a class="subentry<?php if( $subentry['active'] ): ?> active<?php endif; ?>" href="<?php echo $subentry['href']; ?>" title=""><?php echo $subentry['name'] ?></a></li>
- <?php endforeach; ?>
- </ul>
- <?php endif; ?>
- </li>
- <?php endforeach; ?>
- <?php endif; ?>
- </ul>
- </div>
-
- <div id="content">
- <?php echo $_['content']; ?>
- </div>
- </body>
-</html>
diff --git a/core/templates/layout.user.php b/core/templates/layout.user.php
index 57c48563bd8..db142241d64 100644
--- a/core/templates/layout.user.php
+++ b/core/templates/layout.user.php
@@ -32,13 +32,12 @@
<a href="<?php echo link_to('', 'index.php'); ?>" title="" id="owncloud"><img src="<?php echo image_path('', 'owncloud-logo-small-white.png'); ?>" alt="ownCloud" /></a>
<?php echo $_['searchbox']?>
<ul id="metanav">
- <li><a href="<?php echo link_to('settings', 'index.php'); ?>" title="Settings"><img class='svg' src="<?php echo image_path('', 'actions/settings.svg'); ?>"></a></li>
<li><a href="<?php echo link_to('', 'index.php'); ?>?logout=true" title="Log out"><img class='svg' src="<?php echo image_path('', 'actions/logout.svg'); ?>"></a></li>
</ul>
</div>
<div id="navigation">
- <ul>
+ <ul id="apps">
<?php foreach($_['navigation'] as $entry): ?>
<li><a style="background-image:url(<?php echo $entry['icon']; ?>)" href="<?php echo $entry['href']; ?>" title="" <?php if( $entry['active'] ): ?> class="active"<?php endif; ?>><?php echo $entry['name']; ?></a>
<?php if( sizeof( $entry["subnavigation"] )): ?>
@@ -51,6 +50,16 @@
</li>
<?php endforeach; ?>
</ul>
+ <ul id="settings">
+ <?php foreach($_['settingsnavigation'] as $entry):?>
+ <li><a style="background-image:url(<?php echo $entry['icon']; ?>)" href="<?php echo $entry['href']; ?>" title="" <?php if( $entry["active"] ): ?> class="active"<?php endif; ?>><?php echo $entry['name'] ?></a></li>
+ <?php if( sizeof( $entry["subnavigation"] )): ?>
+ <?php foreach($entry["subnavigation"] as $subentry):?>
+ <li><a href="<?php echo $subentry['href']; ?>" title="" <?php if( $subentry['active'] ): ?>class="active"<?php endif; ?>><?php echo $subentry['name'] ?></a></li>
+ <?php endforeach; ?>
+ <?php endif; ?>
+ <?php endforeach; ?>
+ </ul>
</div>
<div id="content">
<?php echo $_['content']; ?>
diff --git a/files/appinfo/app.php b/files/appinfo/app.php
index 0f95b19f592..a4cec3d6ec2 100644
--- a/files/appinfo/app.php
+++ b/files/appinfo/app.php
@@ -3,10 +3,5 @@
OC_App::register( array( "order" => 2, "id" => "files", "name" => "Files" ));
OC_App::addNavigationEntry( array( "id" => "files_index", "order" => 1, "href" => OC_Helper::linkTo( "files", "index.php" ), "icon" => OC_Helper::imagePath( "files", "home.png" ), "name" => "Files" ));
-OC_App::addAdminPage( array( "id" => "files_administration", "order" => 3, "href" => OC_Helper::linkTo( "files", "admin.php" ), "name" => "Files", "icon" => OC_Helper::imagePath( "files", "folder.png" )));
-
-
-// To add navigation sub entries use
-// OC_App::addNavigationSubEntry( "files_index", array( ... ));
?>
diff --git a/help/appinfo/app.php b/help/appinfo/app.php
index 2e82c0cd181..372e28c97bd 100644
--- a/help/appinfo/app.php
+++ b/help/appinfo/app.php
@@ -2,13 +2,4 @@
OC_App::register( array( "order" => 1, "id" => "help", "name" => "Help" ));
-// Workaround for having help as the last entry always
-$entry = array( "id" => "help", "order" => 1000, "href" => OC_Helper::linkTo( "help", "index.php" ), "name" => "Help", "icon" => OC_Helper::imagePath( "help", "help.png" ));
-if( isset( $_SESSION["user_id"] ) && OC_Group::inGroup( $_SESSION["user_id"], "admin" )){
- OC_App::addAdminPage( $entry );
-}
-else{
- OC_App::addSettingsPage( $entry );
-}
-
?>
diff --git a/lib/app.php b/lib/app.php
index 9e81ed8184e..51e86c847dd 100644
--- a/lib/app.php
+++ b/lib/app.php
@@ -30,10 +30,7 @@ class OC_App{
static private $init = false;
static private $apps = array();
static private $activeapp = '';
- static private $adminpages = array();
- static private $settingspages = array();
static private $navigation = array();
- static private $subnavigation = array();
/**
* @brief loads all apps
@@ -167,38 +164,6 @@ class OC_App{
}
/**
- * @brief adds a sub entry to the navigation
- * @param $parent id of the parent
- * @param $data array containing the data
- * @returns true/false
- *
- * This function adds a new sub entry to the navigation visible to users.
- * these entries are visible only if the parent navigation entry is marked
- * as being active (see activateNavigationEntry()). $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 addNavigationSubEntry( $parent, $data ){
- $data['active']=false;
- if(!isset($data['icon'])){
- $data['icon']='';
- }
- if( !array_key_exists( $parent, self::$subnavigation )){
- self::$subnavigation[$parent] = array();
- }
- self::$subnavigation[$parent][] = $data;
- return true;
- }
-
- /**
* @brief marks a navigation entry as active
* @param $id id of the entry
* @returns true/false
@@ -224,70 +189,6 @@ class OC_App{
}
/**
- * @brief registers an admin page
- * @param $data array containing the data
- * @returns true/false
- *
- * This function registers a admin page that will be shown in the admin
- * menu. $data is an associative array.
- * The following keys are required:
- * - id: unique id for this entry ('files_admin')
- * - href: link to the admin page
- * - name: Human readable name ('Files Administration')
- *
- * The following keys are optional:
- * - order: integer, that influences the position of your application in
- * the list. Lower values come first.
- */
- public static function addAdminPage( $data = array()){
- // TODO: write function
- OC_App::$adminpages[] = $data;
- return true;
- }
-
- /**
- * @brief registers a settings page
- * @param $data array containing the data
- * @returns true/false
- *
- * This function registers a settings page. $data is an associative array.
- * The following keys are required:
- * - app: app the settings belong to ('files')
- * - id: unique id for this entry ('files_public')
- * - href: link to the admin page
- * - name: Human readable name ('Public files')
- *
- * The following keys are optional:
- * - order: integer, that influences the position of your application in
- * the list. Lower values come first.
- *
- * For the main settings page of an app, the keys 'app' and 'id' have to be
- * the same.
- */
- public static function addSettingsPage( $data = array()){
- // TODO: write function
- OC_App::$settingspages[] = $data;
- return true;
- }
-
- /**
- * @brief Returns the navigation
- * @returns associative array
- *
- * This function returns an array containing all entries added. The
- * entries are sorted by the key 'order' ascending. Additional to the keys
- * given for each app the following keys exist:
- * - active: boolean, signals if the user is on this navigation entry
- * - children: array that is empty if the key 'active' is false or
- * contains the subentries if the key 'active' is true
- */
- public static function getNavigation(){
- $navigation = self::proceedNavigation( self::$navigation );
- $navigation = self::addSubNavigation( $navigation );
- return $navigation;
- }
-
- /**
* @brief Returns the Settings Navigation
* @returns associative array
*
@@ -295,57 +196,20 @@ class OC_App{
* entries are sorted by the key 'order' ascending.
*/
public static function getSettingsNavigation(){
- $navigation = self::proceedNavigation( self::$settingspages );
- $navigation = self::addSubNavigation( $navigation );
-
- return $navigation;
- }
-
- /**
- * @brief Returns the admin navigation
- * @returns associative array
- *
- * This function returns an array containing all admin pages added. The
- * entries are sorted by the key 'order' ascending.
- */
- public static function getAdminNavigation(){
- $navigation = self::proceedNavigation( self::$adminpages );
- $navigation = self::addSubNavigation( $navigation );
-
- return $navigation;
- }
-
- /// Private foo
- private static function addSubNavigation( $list ){
- if(isset(self::$subnavigation[self::$activeapp])){
- $subNav=self::$subnavigation[self::$activeapp];
- foreach( $list as &$naventry ){
- if( $naventry['id'] == self::$activeapp ){
- $naventry['active'] = true;
- $naventry['subnavigation'] = $subNav;
- }
- }
- }else{
- foreach(self::$subnavigation as $parent=>$entries){
- $activeParent=false;
- foreach($entries as &$subNav){
- $subNav['active']=$subNav['id'] == self::$activeapp;
- if($subNav['active']){
- $activeParent=true;
- }
- }
- if($activeParent){
- foreach( $list as &$naventry ){
- if( $naventry['id'] == $parent ){
- $naventry['active'] = true;
- $naventry['subnavigation'] = $entries;
- }
- }
- }
- }
+ $admin=array(
+ array( "id" => "core_users", "order" => 2, "href" => OC_Helper::linkTo( "admin", "users.php" ), "name" => "Users", "icon" => OC_Helper::imagePath( "admin", "users.png" )),
+ array( "id" => "core_apps", "order" => 3, "href" => OC_Helper::linkTo( "admin", "apps.php?installed" ), "name" => "Apps", "icon" => OC_Helper::imagePath( "admin", "apps.png" )),
+ array( "id" => "files_administration", "order" => 3, "href" => OC_Helper::linkTo( "files", "admin.php" ), "name" => "Files", "icon" => OC_Helper::imagePath( "files", "folder.png" )),
+ );
+ $settings=array(
+ array( "id" => "help", "order" => 1000, "href" => OC_Helper::linkTo( "help", "index.php" ), "name" => "Help", "icon" => OC_Helper::imagePath( "help", "help.png" )),
+ array( "id" => "settings", "order" => 1, "href" => OC_Helper::linkTo( "settings", "index.php" ), "name" => "Personal", "icon" => OC_Helper::imagePath( "settings", "personal.png" ))
+ );
+ if( OC_Group::inGroup( $_SESSION["user_id"], "admin" )){
+ $settings=array_merge($admin,$settings);
}
-
- return $list;
+ $navigation = self::proceedNavigation($settings);
+ return $navigation;
}
/// This is private as well. It simply works, so don't ask for more details
@@ -354,9 +218,6 @@ class OC_App{
$naventry['subnavigation'] = array();
if( $naventry['id'] == self::$activeapp ){
$naventry['active'] = true;
- if( array_key_exists( $naventry['id'], self::$subnavigation )){
- $naventry['subnavigation'] = self::$subnavigation[$naventry['id']];
- }
}
else{
$naventry['active'] = false;
@@ -393,6 +254,22 @@ class OC_App{
}
/**
+ * @brief Returns the navigation
+ * @returns associative array
+ *
+ * This function returns an array containing all entries added. The
+ * entries are sorted by the key 'order' ascending. Additional to the keys
+ * given for each app the following keys exist:
+ * - active: boolean, signals if the user is on this navigation entry
+ * - children: array that is empty if the key 'active' is false or
+ * contains the subentries if the key 'active' is true
+ */
+ public static function getNavigation(){
+ $navigation = self::proceedNavigation( self::$navigation );
+ return $navigation;
+ }
+
+ /**
* get the id of loaded app
* @return string
*/
diff --git a/lib/template.php b/lib/template.php
index 124343bd85b..12047a38a13 100644
--- a/lib/template.php
+++ b/lib/template.php
@@ -242,22 +242,8 @@ class OC_Template{
// Add navigation entry
$page->assign( "navigation", OC_App::getNavigation());
- }
- elseif( $this->renderas == "admin" )
- {
- $page = new OC_Template( "core", "layout.admin" );
- $search=new OC_Template( 'core', 'part.searchbox');
- $search->assign('searchurl',OC_Helper::linkTo( 'search', 'index.php' ));
- $page->assign('searchbox', $search->fetchPage());
-
- // Add menu data
- if( OC_Group::inGroup( $_SESSION["user_id"], "admin" )){
- $page->assign( "adminnavigation", OC_App::getAdminNavigation());
- }
$page->assign( "settingsnavigation", OC_App::getSettingsNavigation());
- }
- else
- {
+ }else{
$page = new OC_Template( "core", "layout.guest" );
}
diff --git a/settings/appinfo/app.php b/settings/appinfo/app.php
index db4594dcc2d..4ffb944aba3 100644
--- a/settings/appinfo/app.php
+++ b/settings/appinfo/app.php
@@ -1,6 +1,5 @@
<?php
OC_App::register( array( "id" => "settings", "name" => "Settings" ));
-OC_App::addSettingsPage( array( "id" => "settings", "order" => -1000, "href" => OC_Helper::linkTo( "settings", "index.php" ), "name" => "Personal", "icon" => OC_Helper::imagePath( "settings", "personal.png" )));
?>