From 29035bacf7df6fc4e4b77f0c512290f03be74638 Mon Sep 17 00:00:00 2001 From: e107steved Date: Thu, 4 Dec 2008 20:17:54 +0000 Subject: [PATCH] More handling of updated plugin.xml structure --- e107_admin/admin.php | 54 ++++++++++++++++++++---------- e107_admin/includes/categories.php | 6 ++-- e107_files/shortcode/admin_nav.sc | 4 +-- 3 files changed, 41 insertions(+), 23 deletions(-) diff --git a/e107_admin/admin.php b/e107_admin/admin.php index 2b2ebc369..d3115f181 100644 --- a/e107_admin/admin.php +++ b/e107_admin/admin.php @@ -11,8 +11,8 @@ | GNU General Public License (http://gnu.org). | | $Source: /cvs_backup/e107_0.8/e107_admin/admin.php,v $ -| $Revision: 1.4 $ -| $Date: 2008-10-11 11:55:18 $ +| $Revision: 1.5 $ +| $Date: 2008-12-04 20:17:49 $ | $Author: e107steved $ +----------------------------------------------------------------------------+ */ @@ -148,28 +148,38 @@ function render_links($link, $title, $description, $perms, $icon = FALSE, $mode { global $td,$tp; $text = ''; - if (getperms($perms)) { - if ($mode == 'adminb') { + if (getperms($perms)) + { + if ($mode == 'adminb') + { $text = "
".$icon." ".$title." ".($description ? "[ ".$description." ]" : "")."
"; - } else { - if ($td == (ADLINK_COLS+1)) { + } + else + { + if ($td == (ADLINK_COLS+1)) + { $text .= ''; $td = 1; } - if ($td == 1) { + if ($td == 1) + { $text .= ''; } - if ($mode == 'default') { + if ($mode == 'default') + { $text .= "".$icon." ".$tp->toHTML($title,FALSE,"defs, emotes_off").""; } - else if ($mode == 'classis') { - $text .= "".$icon."
+ elseif ($mode == 'classis') + { + $text .= "".$icon."
".$tp->toHTML($title,FALSE,"defs, emotes_off")."

"; - }elseif ($mode == 'beginner'){ + } + elseif ($mode == 'beginner') + { $text .= "".$icon."
".$tp->toHTML($title,FALSE,"defs, emotes_off")."



"; @@ -193,6 +203,7 @@ function render_clean() return $text; } + $newarray = asortbyindex($array_functions, 1); @@ -269,7 +280,7 @@ function getPluginLinks($iconSize = E_16_PLUGMANAGER, $linkStyle = 'adminb') require_once(e_HANDLER.'xml_class.php'); $xml = new xmlClass; // We're going to have some plugins with plugin.xml files, surely? So create XML object now - $xml->filter = array('name' => FALSE,'description'=>FALSE,'administration' => FALSE); // .. and they're all going to need the same filter + $xml->filter = array('@attributes' => FALSE,'description'=>FALSE,'administration' => FALSE); // .. and they're all going to need the same filter if ($sql->db_Select("plugin", "*", "plugin_installflag=1")) { @@ -285,12 +296,19 @@ function getPluginLinks($iconSize = E_16_PLUGMANAGER, $linkStyle = 'adminb') if (is_readable(e_PLUGIN.$plugin_path."/plugin.xml")) { $readFile = $xml->loadXMLfile(e_PLUGIN.$plugin_path.'/plugin.xml', true, true); - include_lan_admin($plugin_path); - $eplug_name = $tp->toHTML($readFile['name'],FALSE,"defs, emotes_off"); - $eplug_conffile = $readFile['administration']['configFile']; - $eplug_icon_small = $plugin_path.'/'.$readFile['administration']['iconSmall']; - $eplug_icon = $plugin_path.'/'.$readFile['administration']['icon']; - $eplug_caption = $tp->toHTML($readFile['description'],FALSE,"defs, emotes_off"); + if ($readFile === FALSE) + { + echo 'Error in file: '.e_PLUGIN.$plugin_path.'/plugin.xml'.'
'; + } + else + { + include_lan_admin($plugin_path); + $eplug_name = $tp->toHTML($readFile['@attributes']['name'],FALSE,"defs, emotes_off"); + $eplug_conffile = $readFile['administration']['configFile']; + $eplug_icon_small = $plugin_path.'/'.$readFile['administration']['iconSmall']; + $eplug_icon = $plugin_path.'/'.$readFile['administration']['icon']; + $eplug_caption = $tp->toHTML($readFile['description'],FALSE,"defs, emotes_off"); + } } elseif (is_readable(e_PLUGIN.$plugin_path."/plugin.php")) { diff --git a/e107_admin/includes/categories.php b/e107_admin/includes/categories.php index 0de18bc70..db82e81ea 100644 --- a/e107_admin/includes/categories.php +++ b/e107_admin/includes/categories.php @@ -11,8 +11,8 @@ | GNU General Public License (http://gnu.org). | | $Source: /cvs_backup/e107_0.8/e107_admin/includes/categories.php,v $ -| $Revision: 1.3 $ -| $Date: 2008-08-25 10:46:32 $ +| $Revision: 1.4 $ +| $Date: 2008-12-04 20:17:49 $ | $Author: e107steved $ +----------------------------------------------------------------------------+ */ @@ -49,7 +49,7 @@ foreach ($admin_cat['id'] as $cat_key => $cat_id) require_once(e_HANDLER.'xml_class.php'); $xml = new xmlClass; // We're going to have some plugins with plugin.xml files, surely? So create XML object now - $xml->filter = array('name' => FALSE,'administration' => FALSE); // .. and they're all going to need the same filter + $xml->filter = array('@attributes' => FALSE,'administration' => FALSE); // .. and they're all going to need the same filter if ($text_rend) { diff --git a/e107_files/shortcode/admin_nav.sc b/e107_files/shortcode/admin_nav.sc index 92b414c45..38d0b5abe 100644 --- a/e107_files/shortcode/admin_nav.sc +++ b/e107_files/shortcode/admin_nav.sc @@ -1,6 +1,6 @@ /* * e107 website system (c) 2001-2008 Steve Dunstan (e107.org) -* $Id: admin_nav.sc,v 1.3 2008-12-03 22:29:52 e107steved Exp $ +* $Id: admin_nav.sc,v 1.4 2008-12-04 20:17:54 e107steved Exp $ */ if (ADMIN) { @@ -32,7 +32,7 @@ if (ADMIN) require_once(e_HANDLER.'xml_class.php'); $xml = new xmlClass; // We're going to have some plugins with plugin.xml files, surely? So create XML object now - $xml->filter = array('name' => FALSE, 'administration' => FALSE); // .. and they're all going to need the same filter + $xml->filter = array('@attributes' => FALSE, 'administration' => FALSE); // .. and they're all going to need the same filter $nav_sql = new db; if ($nav_sql -> db_Select("plugin", "*", "plugin_installflag=1"))