/**
* Data class for group direct messages
*
- * @category PrivateGroup
+ * @category GroupPrivateMessage
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
* @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
*
* @see DB_DataObject
*/
-
class Group_message extends Memcached_DataObject
{
public $__table = 'group_message'; // table name
* @param mixed $v Value to lookup
*
* @return Group_message object found, or null for no hits
- *
*/
function staticGet($k, $v=null)
{
{
if (!$user->hasRight(Right::NEWMESSAGE)) {
// XXX: maybe break this out into a separate right
- throw new Exception(sprintf(_('User %s not allowed to send private messages.'),
+ // TRANS: Exception thrown when trying to send group private message without having the right to do that.
+ // TRANS: %s is a user nickname.
+ throw new Exception(sprintf(_m('User %s is not allowed to send private messages.'),
$user->nickname));
}
// We use the same limits as for 'regular' private messages.
if (Message::contentTooLong($text)) {
+ // TRANS: Exception thrown when trying to send group private message that is too long.
+ // TRANS: %d is the maximum meggage length.
throw new Exception(sprintf(_m('That\'s too long. Maximum message size is %d character.',
'That\'s too long. Maximum message size is %d characters.',
Message::maxContent()),
// Valid! Let's do this thing!
$gm = new Group_message();
-
+
$gm->id = UUID::gen();
$gm->uri = common_local_url('showgroupmessage', array('id' => $gm->id));
$gm->from_profile = $user->id;
function distribute()
{
$group = User_group::staticGet('id', $this->to_group);
-
+
$member = $group->getMembers();
while ($member->fetch()) {
{
$group = User_group::staticGet('id', $this->to_group);
if (empty($group)) {
- throw new ServerException(_('No group for group message'));
+ // TRANS: Exception thrown when trying to send group private message to a non-existing group.
+ throw new ServerException(_m('No group for group message.'));
}
return $group;
}
{
$sender = Profile::staticGet('id', $this->from_profile);
if (empty($sender)) {
- throw new ServerException(_('No sender for group message'));
+ // TRANS: Exception thrown when trying to send group private message without having a sender.
+ throw new ServerException(_m('No sender for group message.'));
}
return $sender;
}
return $gm;
}
-
}