From 236d796455c44b0ca40ca6582ae1fbb614f8bf21 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Tue, 03 Jan 2012 06:08:04 -0500
Subject: [PATCH] Fixed: FS#1858 - Old SSH-RSA Public Key not deleted from authorized_keys when deleted or changed
---
interface/web/dashboard/dashboard.php | 82 +++++++++++++++++++++++++++++-----------
1 files changed, 59 insertions(+), 23 deletions(-)
diff --git a/interface/web/dashboard/dashboard.php b/interface/web/dashboard/dashboard.php
index f2d2f4d..c077881 100644
--- a/interface/web/dashboard/dashboard.php
+++ b/interface/web/dashboard/dashboard.php
@@ -90,37 +90,73 @@
* Check the ISPConfig-Version (only for the admin)
*/
if($_SESSION["s"]["user"]["typ"] == 'admin') {
- $new_version = @file_get_contents('http://www.ispconfig.org/downloads/ispconfig3_version.txt');
- $new_version = trim($new_version);
- if($new_version != ISPC_APP_VERSION) {
- $info[] = array('info_msg' => 'There is a new Version of ISPConfig 3 available! <a href="http://www.ispconfig.org">See more...</a>');
+ if(!isset($_SESSION['s']['new_ispconfig_version'])) {
+ $new_version = @file_get_contents('http://www.ispconfig.org/downloads/ispconfig3_version.txt');
+ $_SESSION['s']['new_ispconfig_version'] = trim($new_version);
+ }
+ $v1 = ISPC_APP_VERSION;
+ $v2 = $_SESSION['s']['new_ispconfig_version'];
+ $this_version = explode(".",$v1);
+ $this_fullversion = (($this_version[0] < 10) ? '0'.$this_version[0] : $this_version[0]) .
+ ((isset($this_version[1]) && $this_version[1] < 10) ? '0'.$this_version[1] : $this_version[1]) .
+ ((isset($this_version[2]) && $this_version[2] < 10) ? '0'.$this_version[2] : $this_version[2]) .
+ ((isset($this_version[3]) && $this_version[3] < 10) ? (($this_version[3] < 1) ? '00' : '0'.$this_version[3]) : @$this_version[3]);
+
+
+ $new_version = explode(".",$v2);
+ $new_fullversion = (($new_version[0] < 10) ? '0'.$new_version[0] : $new_version[0]) .
+ ((isset($new_version[1]) && $new_version[1] < 10) ? '0'.$new_version[1] : $new_version[1]) .
+ ((isset($new_version[2]) && $new_version[2] < 10) ? '0'.$new_version[2] : $new_version[2]) .
+ ((isset($new_version[3]) && $new_version[3] < 10) ? (($new_version[3] < 1) ? '00' : '0'.$new_version[3]) : @$new_version[3]);
+ if($new_fullversion > $this_fullversion) {
+ $info[] = array('info_msg' => 'There is a new Version of ISPConfig 3 available!<br>' .
+ 'This Version: ' . $v1 . '<br>' .
+ 'New Version : ' . $v2 .
+ '<br><br><a href="http://www.ispconfig.org/ispconfig-3/download" target="ISPC">See more...</a>');
}
}
$app->tpl->setloop('info', $info);
-/*
- * Show all modules, the user is allowed to use
-*/
-$modules = explode(',', $_SESSION['s']['user']['modules']);
-$mod = array();
-if(is_array($modules)) {
- foreach($modules as $mt) {
- if(is_file('../' . $mt . '/lib/module.conf.php')) {
- if(!preg_match("/^[a-z]{2,20}$/i", $mt)) die('module name contains unallowed chars.');
- include_once('../' . $mt.'/lib/module.conf.php');
- /* We don't want to show the dashboard */
- if ($mt != 'dashboard') {
- $mod[] = array( 'modules_title' => $app->lng($module['title']),
- 'modules_startpage' => $module['startpage'],
- 'modules_name' => $module['name']);
- }
- }
+/* Load the dashlets*/
+$dashlet_list = array();
+$handle = @opendir(ISPC_WEB_PATH.'/dashboard/dashlets');
+while ($file = @readdir ($handle)) {
+ if ($file != '.' && $file != '..' && !is_dir($file)) {
+ $dashlet_name = substr($file,0,-4);
+ $dashlet_class = 'dashlet_'.$dashlet_name;
+ include_once(ISPC_WEB_PATH.'/dashboard/dashlets/'.$file);
+ $dashlet_list[$dashlet_name] = new $dashlet_class;
}
-
- $app->tpl->setloop('modules', $mod);
}
+
+/* Which dashlets in which column */
+/******************************************************************************/
+$leftcol_dashlets = array('modules','invoices');
+$rightcol_dashlets = array('limits');
+/******************************************************************************/
+
+
+/* Fill the left column */
+$leftcol = array();
+foreach($leftcol_dashlets as $name) {
+ if(isset($dashlet_list[$name])) {
+ $leftcol[]['content'] = $dashlet_list[$name]->show();
+ }
+}
+$app->tpl->setloop('leftcol', $leftcol);
+
+/* Fill the right columnn */
+$rightcol = array();
+foreach($rightcol_dashlets as $name) {
+ if(isset($dashlet_list[$name])) {
+ $rightcol[]['content'] = $dashlet_list[$name]->show();
+ }
+}
+$app->tpl->setloop('rightcol', $rightcol);
+
+
//* Do Output
$app->tpl->pparse();
--
Gitblit v1.9.1