# HG changeset patch # User Dan Fuhry # Date 1282448164 14400 # Node ID d9d249c4dfd27b9c44bc2b249ce63f76821ef753 # Parent 3c9c1b18567bd2fbe3532fd2ef7d609125e1ec9a# Parent 0e2e476e90e849bd9a97328fde5cd72df1d3e1ed Merged from accidental split diff -r 3c9c1b18567b -r d9d249c4dfd2 includes/namespaces/default.php --- a/includes/namespaces/default.php Sat Aug 21 23:31:36 2010 -0400 +++ b/includes/namespaces/default.php Sat Aug 21 23:36:04 2010 -0400 @@ -134,7 +134,7 @@ if ( isset($cdata_cache[$pathskey]) ) { $this->cdata = $cdata_cache[$pathskey]; - $this->exists = $cdata_cache[$pathskey]['page_exists']; + $this->exists =$cdata_cache[$pathskey]['page_exists']; $this->title = $cdata_cache[$pathskey]['name']; return null; } @@ -556,7 +556,7 @@ $standard_404 .= '

' . $lang->get('page_msg_404_title') . '

' . $lang->get('page_msg_404_body'); } - if ( $session->get_permissions('create_page') ) + if ( $session->check_acl_scope('create_page', $this->namespace) && $session->get_permissions('create_page') ) { $standard_404 .= ' ' . $lang->get('page_msg_404_create', array( 'create_flags' => 'href="'.makeUrlNS($this->namespace, $this->page_id, 'do=edit', true).'" onclick="ajaxEditor(); return false;"', @@ -570,7 +570,7 @@ )); } $standard_404 .= '

'; - if ( $session->get_permissions('history_rollback') ) + if ( $session->check_acl_scope('history_rollback', $this->namespace) && $session->get_permissions('history_rollback') ) { $e = $db->sql_query('SELECT * FROM ' . table_prefix . 'logs WHERE action=\'delete\' AND page_id=\'' . $this->page_id . '\' AND namespace=\'' . $this->namespace . '\' ORDER BY time_id DESC;'); if ( !$e ) @@ -761,7 +761,7 @@ $html .= $lang->get('catedit_catbox_lbl_uncategorized'); } - $can_edit = ( $session->get_permissions('edit_cat') && ( !$paths->page_protected || $session->get_permissions('even_when_protected') ) ); + $can_edit = ( $session->check_acl_scope('edit_cat', $this->namespace) && $session->get_permissions('edit_cat') && ( !$paths->page_protected || $session->get_permissions('even_when_protected') ) ); if ( $can_edit ) { $edit_link = '' . $lang->get('catedit_catbox_link_edit') . ''; diff -r 3c9c1b18567b -r d9d249c4dfd2 includes/sessions.php --- a/includes/sessions.php Sat Aug 21 23:31:36 2010 -0400 +++ b/includes/sessions.php Sat Aug 21 23:36:04 2010 -0400 @@ -3383,7 +3383,7 @@ { // Action $type depends on action $deps[$i] which cannot be satisfied because $deps[$i] is out of scope. // echo '
' . enano_debug_print_backtrace(true) . '
'; - trigger_error("acl_check_deps: $type depends on {$deps[$i]} which is not within scope of $paths->namespace; this indicates a bug in ACL rule specification", E_USER_WARNING); + trigger_error("acl_check_deps: $type depends on {$deps[$i]} which is not within scope of $paths->namespace; this indicates a bug in ACL rule specification. Backtrace:
" . htmlspecialchars(enano_debug_print_backtrace(true)) . "
", E_USER_WARNING); return false; } $deps = array_merge($deps, $this->acl_deps[$deps[$i]]);