Raise an Exception when Profile::load is profided the system user nickname
This commit is contained in:
parent
e155821d7a
commit
8f0e36d617
|
@ -35,6 +35,7 @@ use Friendica\Core\System;
|
||||||
use Friendica\Core\Worker;
|
use Friendica\Core\Worker;
|
||||||
use Friendica\Database\DBA;
|
use Friendica\Database\DBA;
|
||||||
use Friendica\DI;
|
use Friendica\DI;
|
||||||
|
use Friendica\Network\HTTPException;
|
||||||
use Friendica\Protocol\Activity;
|
use Friendica\Protocol\Activity;
|
||||||
use Friendica\Protocol\Diaspora;
|
use Friendica\Protocol\Diaspora;
|
||||||
use Friendica\Util\DateTimeFormat;
|
use Friendica\Util\DateTimeFormat;
|
||||||
|
@ -206,9 +207,11 @@ class Profile
|
||||||
*
|
*
|
||||||
* @param App $a
|
* @param App $a
|
||||||
* @param string $nickname string
|
* @param string $nickname string
|
||||||
*
|
* @param bool $show_contacts
|
||||||
* @return array Profile
|
* @return array Profile
|
||||||
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
|
*
|
||||||
|
* @throws HTTPException\NotFoundException
|
||||||
|
* @throws HTTPException\InternalServerErrorException
|
||||||
* @throws \ImagickException
|
* @throws \ImagickException
|
||||||
*/
|
*/
|
||||||
public static function load(App $a, string $nickname, bool $show_contacts = true)
|
public static function load(App $a, string $nickname, bool $show_contacts = true)
|
||||||
|
@ -219,6 +222,12 @@ class Profile
|
||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// System user, aborting
|
||||||
|
if ($profile['uid'] === 0) {
|
||||||
|
DI::logger()->warning('System user found in Profile::load', ['nickname' => $nickname, 'callstack' => System::callstack(20)]);
|
||||||
|
throw new HTTPException\NotFoundException(DI::l10n()->t('User not found.'));
|
||||||
|
}
|
||||||
|
|
||||||
$a->setProfileOwner($profile['uid']);
|
$a->setProfileOwner($profile['uid']);
|
||||||
|
|
||||||
DI::page()['title'] = $profile['name'] . ' @ ' . DI::config()->get('config', 'sitename');
|
DI::page()['title'] = $profile['name'] . ' @ ' . DI::config()->get('config', 'sitename');
|
||||||
|
|
Loading…
Reference in New Issue
Block a user