private static $owner;
+ /**
+ * Returns the numeric account type by their string
+ *
+ * @param string $accounttype as string constant
+ * @return int|null Numeric account type - or null when not set
+ */
+ public static function getAccountTypeByString(string $accounttype)
+ {
+ switch ($accounttype) {
+ case 'person':
+ return User::ACCOUNT_TYPE_PERSON;
+ case 'organisation':
+ return User::ACCOUNT_TYPE_ORGANISATION;
+ case 'news':
+ return User::ACCOUNT_TYPE_NEWS;
+ case 'community':
+ return User::ACCOUNT_TYPE_COMMUNITY;
+ default:
+ return null;
+ break;
+ }
+ }
+
/**
* Fetch the system account
*
}
}
- $system['spubkey'] = $system['uprvkey'] = $system['prvkey'];
- $system['username'] = $system['name'];
+ $system['sprvkey'] = $system['uprvkey'] = $system['prvkey'];
+ $system['spubkey'] = $system['upubkey'] = $system['pubkey'];
$system['nickname'] = $system['nick'];
return $system;
}
*/
public static function getOwnerDataById(int $uid, bool $check_valid = true)
{
+ if ($uid == 0) {
+ return self::getSystemAccount();
+ }
+
if (!empty(self::$owner[$uid])) {
return self::$owner[$uid];
}
if (!$repair) {
// Check if "addr" is present and correct
$addr = $owner['nickname'] . '@' . substr(DI::baseUrl(), strpos(DI::baseUrl(), '://') + 3);
- $repair = ($addr != $owner['addr']);
+ $repair = ($addr != $owner['addr']) || empty($owner['prvkey']) || empty($owner['pubkey']);
}
if (!$repair) {
$photo_failure = false;
$filename = basename($photo);
- $curlResult = DI::httpRequest()->get($photo, true);
+ $curlResult = DI::httpRequest()->get($photo);
if ($curlResult->isSuccess()) {
$img_str = $curlResult->getBody();
$type = $curlResult->getContentType();
$condition['blocked'] = false;
break;
case 'blocked':
+ $condition['account_removed'] = false;
$condition['blocked'] = true;
+ $condition['verified'] = true;
break;
case 'removed':
$condition['account_removed'] = true;