本文整理汇总了PHP中ActivityModel::JoinUsers方法的典型用法代码示例。如果您正苦于以下问题:PHP ActivityModel::JoinUsers方法的具体用法?PHP ActivityModel::JoinUsers怎么用?PHP ActivityModel::JoinUsers使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ActivityModel
的用法示例。
在下文中一共展示了ActivityModel::JoinUsers方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: Post
public function Post($Notify = FALSE, $UserID = FALSE)
{
if (is_numeric($Notify)) {
$UserID = $Notify;
$Notify = FALSE;
}
if (!$UserID) {
$UserID = Gdn::Session()->UserID;
}
switch ($Notify) {
case 'mods':
$this->Permission('Garden.Moderation.Manage');
$NotifyUserID = ActivityModel::NOTIFY_MODS;
break;
case 'admins':
$this->Permission('Garden.Settings.Manage');
$NotifyUserID = ActivityModel::NOTIFY_ADMINS;
break;
default:
$this->Permission('Garden.Profiles.Edit');
$NotifyUserID = ActivityModel::NOTIFY_PUBLIC;
break;
}
$Activities = array();
if ($this->Form->IsPostBack()) {
$Data = $this->Form->FormValues();
$Data = $this->ActivityModel->FilterForm($Data);
if (!isset($Data['Format']) || strcasecmp($Data['Format'], 'Raw') == 0) {
$Data['Format'] = C('Garden.InputFormatter');
}
if ($UserID != Gdn::Session()->UserID) {
// This is a wall post.
$Activity = array('ActivityType' => 'WallPost', 'ActivityUserID' => $UserID, 'RegardingUserID' => Gdn::Session()->UserID, 'HeadlineFormat' => T('HeadlineFormat.WallPost', '{RegardingUserID,you} → {ActivityUserID,you}'), 'Story' => $Data['Comment'], 'Format' => $Data['Format']);
} else {
// This is a status update.
$Activity = array('ActivityType' => 'Status', 'HeadlineFormat' => T('HeadlineFormat.Status', '{ActivityUserID,user}'), 'Story' => $Data['Comment'], 'Format' => $Data['Format'], 'NotifyUserID' => $NotifyUserID);
$this->SetJson('StatusMessage', Gdn_Format::PlainText($Activity['Story'], $Activity['Format']));
}
$Activity = $this->ActivityModel->Save($Activity, FALSE, array('CheckSpam' => TRUE));
if ($Activity == SPAM || $Activity == UNAPPROVED) {
$this->StatusMessage = T('ActivityRequiresApproval', 'Your post will appear after it is approved.');
$this->Render('Blank', 'Utility');
return;
}
if ($Activity) {
if ($UserID == Gdn::Session()->UserID && $NotifyUserID == ActivityModel::NOTIFY_PUBLIC) {
Gdn::UserModel()->SetField(Gdn::Session()->UserID, 'About', Gdn_Format::PlainText($Activity['Story'], $Activity['Format']));
}
$Activities = array($Activity);
ActivityModel::JoinUsers($Activities);
$this->ActivityModel->CalculateData($Activities);
} else {
$this->Form->SetValidationResults($this->ActivityModel->ValidationResults());
$this->StatusMessage = $this->ActivityModel->Validation->ResultsText();
// $this->Render('Blank', 'Utility');
}
}
if ($this->DeliveryType() == DELIVERY_TYPE_ALL) {
Redirect($this->Request->Get('Target', '/activity'));
}
$this->SetData('Activities', $Activities);
$this->Render('Activities');
}