Very, very cautiously let a developer switch to the sys chan if

they're also an administrator.
This commit is contained in:
Thomas Willingham 2014-09-15 03:59:04 +01:00
parent b6612693b6
commit e3b967f475

View File

@ -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']);