public function setOriginal($filename)
{
+ if ($this->isGroup()) {
+ // Until Group avatars are handled just like profile avatars.
+ return $this->getGroup()->setOriginal($filename);
+ }
+
$imagefile = new ImageFile($this->id, Avatar::path($filename));
$avatar = new Avatar();
}
try {
- return User_group::listFind('id', $ids);
+ return User_group::multiGet('id', $ids);
} catch (NoResultException $e) {
return null; // throw exception when we handle it everywhere
}
{
$subs = Subscription::getSubscribedIDs($this->id, $offset, $limit);
try {
- $profiles = Profile::listFind('id', $subs);
+ $profiles = Profile::multiGet('id', $subs);
} catch (NoResultException $e) {
return $e->obj;
}
{
$subs = Subscription::getSubscriberIDs($this->id, $offset, $limit);
try {
- $profiles = Profile::listFind('id', $subs);
+ $profiles = Profile::multiGet('id', $subs);
} catch (NoResultException $e) {
return $e->obj;
}
common_debug("Updating User ({$this->id}) nickname from {$dataObject->nickname} to {$this->nickname}");
$origuser = clone($local);
$local->nickname = $this->nickname;
- $result = $local->updateKeys($origuser);
- if ($result === false) {
- common_log_db_error($local, 'UPDATE', __FILE__);
- // TRANS: Server error thrown when user profile settings could not be updated.
- throw new ServerException(_('Could not update user nickname.'));
- }
+ // updateWithKeys throws exception on failure.
+ $local->updateWithKeys($origuser);
// Clear the site owner, in case nickname changed
if ($local->hasRole(Profile_role::OWNER)) {
{
$this->_deleteNotices();
$this->_deleteSubscriptions();
- $this->_deleteMessages();
$this->_deleteTags();
$this->_deleteBlocks();
$this->_deleteAttentions();
$self->delete();
}
- function _deleteMessages()
- {
- $msg = new Message();
- $msg->from_profile = $this->id;
- $msg->delete();
-
- $msg = new Message();
- $msg->to_profile = $this->id;
- $msg->delete();
- }
-
function _deleteTags()
{
$tag = new Profile_tag();
$object->id = $this->getUri();
$object->title = $this->getBestName();
$object->link = $this->getUrl();
+ $object->summary = $this->getDescription();
try {
$avatar = Avatar::getUploaded($this);
return $this->nickname;
}
+ public function getDescription()
+ {
+ return $this->bio;
+ }
+
/**
* Returns the best URI for a profile. Plugins may override.
*
return $this->getUser()->shortenLinks($text, $always);
}
+ public function delPref($namespace, $topic) {
+ return Profile_prefs::setData($this, $namespace, $topic, null);
+ }
+
public function getPref($namespace, $topic, $default=null) {
- return Profile_prefs::getData($this, $namespace, $topic, $default);
+ // If you want an exception to be thrown, call Profile_prefs::getData directly
+ try {
+ return Profile_prefs::getData($this, $namespace, $topic, $default);
+ } catch (NoResultException $e) {
+ return null;
+ }
+ }
+
+ // The same as getPref but will fall back to common_config value for the same namespace/topic
+ public function getConfigPref($namespace, $topic)
+ {
+ return Profile_prefs::getConfigData($this, $namespace, $topic);
}
public function setPref($namespace, $topic, $data) {