equal
deleted
inserted
replaced
174 |
174 |
175 profiler_log("PageProcessor [{$this->namespace}:{$this->page_id}]: Started send process"); |
175 profiler_log("PageProcessor [{$this->namespace}:{$this->page_id}]: Started send process"); |
176 |
176 |
177 if ( !$this->perms->get_permissions('read') ) |
177 if ( !$this->perms->get_permissions('read') ) |
178 { |
178 { |
179 $this->err_access_denied(); |
179 // Permission denied to read page. Is this one of our core pages that must always be allowed? |
180 profiler_log("PageProcessor [{$this->namespace}:{$this->page_id}]: Finished send process"); |
180 // NOTE: Not even the administration panel will work if ACLs deny access to it. |
181 return false; |
181 if ( $this->namespace == 'Special' && in_array($this->page_id, array('Login', 'Logout', 'LangExportJSON', 'CSS')) ) |
|
182 { |
|
183 // Do nothing; allow execution to continue |
|
184 } |
|
185 else |
|
186 { |
|
187 // Page isn't whitelisted, behave as normal |
|
188 $this->err_access_denied(); |
|
189 profiler_log("PageProcessor [{$this->namespace}:{$this->page_id}]: Finished send process"); |
|
190 return false; |
|
191 } |
182 } |
192 } |
183 $pathskey = $paths->nslist[ $this->namespace ] . $this->page_id; |
193 $pathskey = $paths->nslist[ $this->namespace ] . $this->page_id; |
184 $strict_no_headers = false; |
194 $strict_no_headers = false; |
185 if ( $this->namespace == 'Admin' && strstr($this->page_id, '/') ) |
195 if ( $this->namespace == 'Admin' && strstr($this->page_id, '/') ) |
186 { |
196 { |