aboutsummaryrefslogtreecommitdiffstats
path: root/include/security.php
diff options
context:
space:
mode:
authorPaolo Tacconi <p.tacconi@giunti.it>2014-09-25 08:44:07 +0200
committerPaolo Tacconi <p.tacconi@giunti.it>2014-09-25 08:44:07 +0200
commit6324a07dd8b17db5da0ce66c99fb69e2f3ec49e1 (patch)
tree89e81409add34df97f633515181790d6aed4c726 /include/security.php
parent7da97c198182f8f6f4286e16d80de205431d81bb (diff)
parent92c723d37cd8ded2183d3334eb51e740170e191b (diff)
downloadvolse-hubzilla-6324a07dd8b17db5da0ce66c99fb69e2f3ec49e1.tar.gz
volse-hubzilla-6324a07dd8b17db5da0ce66c99fb69e2f3ec49e1.tar.bz2
volse-hubzilla-6324a07dd8b17db5da0ce66c99fb69e2f3ec49e1.zip
Rebase from upstream
Diffstat (limited to 'include/security.php')
-rw-r--r--include/security.php13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/security.php b/include/security.php
index 0f2edc708..e83cc7061 100644
--- a/include/security.php
+++ b/include/security.php
@@ -82,6 +82,19 @@ function change_channel($change_channel) {
intval(PAGE_REMOVED)
);
+ // It's not there. Is this an administrator, and is this the sys channel?
+ if (is_developer()) {
+ if (! $r) {
+ if (is_site_admin()) {
+ $r = q("select channel.*, xchan.* from channel left join xchan on channel.channel_hash = xchan.xchan_hash where channel_id = %d and ( channel_pageflags & %d) and not (channel_pageflags & %d ) limit 1",
+ intval($change_channel),
+ intval(PAGE_SYSTEM),
+ intval(PAGE_REMOVED)
+ );
+ }
+ }
+ }
+
if($r) {
$hash = $r[0]['channel_hash'];
$_SESSION['uid'] = intval($r[0]['channel_id']);