remote delegation issue when already logged in with different account on same site.
This commit is contained in:
parent
ae6ae88151
commit
0db2fe6e39
4
boot.php
4
boot.php
@ -1553,6 +1553,10 @@ function goaway($s) {
|
||||
* @return int|bool account_id or false
|
||||
*/
|
||||
function get_account_id() {
|
||||
|
||||
if(intval($_SESSION['account_id']))
|
||||
return intval($_SESSION['account_id']);
|
||||
|
||||
if(get_app()->account)
|
||||
return intval(get_app()->account['account_id']);
|
||||
|
||||
|
@ -105,6 +105,7 @@ function magic_init(&$a) {
|
||||
$r = q("select * from channel left join hubloc on channel_hash = hubloc_hash where hubloc_addr = '%s' limit 1",
|
||||
dbesc($delegate)
|
||||
);
|
||||
|
||||
if($r && intval($r[0]['channel_id'])) {
|
||||
$allowed = perm_is_allowed($r[0]['channel_id'],get_observer_hash(),'delegate');
|
||||
if($allowed) {
|
||||
@ -112,6 +113,7 @@ function magic_init(&$a) {
|
||||
$_SESSION['delegate'] = get_observer_hash();
|
||||
$_SESSION['account_id'] = intval($r[0]['channel_account_id']);
|
||||
change_channel($r[0]['channel_id']);
|
||||
|
||||
$delegation_success = true;
|
||||
}
|
||||
}
|
||||
|
@ -1 +1 @@
|
||||
2016-01-23.1287H
|
||||
2016-01-24.1288H
|
||||
|
Reference in New Issue
Block a user