public function setCalculatedFields(&$User)
{
if ($v = val('Attributes', $User)) {
if (is_string($v)) {
setValue('Attributes', $User, dbdecode($v));
}
}
if ($v = val('Permissions', $User)) {
if (is_string($v)) {
setValue('Permissions', $User, dbdecode($v));
}
}
if ($v = val('Preferences', $User)) {
if (is_string($v)) {
setValue('Preferences', $User, dbdecode($v));
}
}
if ($v = val('Photo', $User)) {
if (!isUrl($v)) {
$PhotoUrl = Gdn_Upload::url(changeBasename($v, 'n%s'));
} else {
$PhotoUrl = $v;
}
setValue('PhotoUrl', $User, $PhotoUrl);
}
// We store IPs in the UserIP table. To avoid unnecessary queries, the full list is not built here. Shim for BC.
setValue('AllIPAddresses', $User, [val('InsertIPAddress', $User), val('LastIPAddress', $User)]);
setValue('_CssClass', $User, '');
if (val('Banned', $User)) {
setValue('_CssClass', $User, 'Banned');
}
$this->EventArguments['User'] =& $User;
$this->fireEvent('SetCalculatedFields');
}