diff options
author | RedMatrix <info@friendica.com> | 2014-09-19 06:25:58 +1000 |
---|---|---|
committer | RedMatrix <info@friendica.com> | 2014-09-19 06:25:58 +1000 |
commit | caabc69e08b41defde120e903f05661e4daab8e6 (patch) | |
tree | 67ec5a38ed5e7b30d6d859914c001b564e114671 /include | |
parent | 595be9919b0ce85087937985444477189381976c (diff) | |
parent | 5c8f5e2aa3afdf6608a7e95bea4a7c44e8b6e38b (diff) | |
download | volse-hubzilla-caabc69e08b41defde120e903f05661e4daab8e6.tar.gz volse-hubzilla-caabc69e08b41defde120e903f05661e4daab8e6.tar.bz2 volse-hubzilla-caabc69e08b41defde120e903f05661e4daab8e6.zip |
Merge pull request #596 from beardy-unixer/master
Allow syschan use and extend ping
Diffstat (limited to 'include')
-rw-r--r-- | include/security.php | 13 |
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']); |