Update of /cvsroot/php-blog/serendipity/include
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23140/include
Modified Files:
functions_installer.inc.php
Log Message:
* fix comparison logic, unset right variable (doesn't work with references inside foreach loop)
* remove categories for which no entries remain
(fixes that a 'chief' user could basically see the same things as 'admin')
Index: functions_installer.inc.php
===================================================================
RCS file: /cvsroot/php-blog/serendipity/include/functions_installer.inc.php,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -d -r1.15 -r1.16
--- functions_installer.inc.php 6 Dec 2004 10:57:07 -0000 1.15
+++ functions_installer.inc.php 7 Dec 2004 15:23:23 -0000 1.16
@@ -143,27 +143,31 @@
function serendipity_parseTemplate($filename, $userlevel=null) {
global $serendipity;
- if ( is_null($userlevel) ) {
+ if (is_null($userlevel)) {
$userlevel = $serendipity['serendipityUserlevel'];
}
$config = include($filename);
- foreach ( $config as $n => $category ) {
- foreach ( $category['items'] as $i => $item ) {
+ foreach ($config as $n => $category) {
+ foreach ($category['items'] as $i => $item) {
$items = &$config[$n]['items'][$i];
- if ( !isset($items['userlevel']) || !is_numeric($items['userlevel']) ) {
+ if (!isset($items['userlevel']) || !is_numeric($items['userlevel'])) {
$items['userlevel'] = USERLEVEL_ADMIN;
}
- if ( !isset($items['flags']) || !is_array($items['flags']) ) {
+ if (!isset($items['flags']) || !is_array($items['flags'])) {
$items['flags'] = array();
}
- if ( $items['userlevel'] < $userlevel ) {
- unset($items);
+ if ($userlevel < $items['userlevel']) {
+ unset($config[$n]['items'][$i]);
}
}
+
+ if (count($config[$n]['items']) < 1) {
+ unset($config[$n]);
+ }
}
return $config;
|