本文整理汇总了PHP中DiscussionModel::GetParticipated方法的典型用法代码示例。如果您正苦于以下问题:PHP DiscussionModel::GetParticipated方法的具体用法?PHP DiscussionModel::GetParticipated怎么用?PHP DiscussionModel::GetParticipated使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DiscussionModel
的用法示例。
在下文中一共展示了DiscussionModel::GetParticipated方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: DiscussionsController_Participated_Create
public function DiscussionsController_Participated_Create(&$Sender, $Args)
{
$Sender->Permission('Garden.SignIn.Allow');
$Page = GetValue(0, $Args);
$Limit = GetValue(1, $Args);
list($Offset, $Limit) = OffsetLimit($Page, Gdn::Config('Vanilla.Discussions.PerPage', 30));
// Get Discussions
$DiscussionModel = new DiscussionModel();
$Sender->DiscussionData = $DiscussionModel->GetParticipated(Gdn::Session()->UserID, $Offset, $Limit);
$Sender->SetData('Discussions', $Sender->DiscussionData);
$CountDiscussions = $DiscussionModel->GetCountParticipated(Gdn::Session()->UserID);
$Sender->SetData('CountDiscussions', $CountDiscussions);
// Build a pager
$PagerFactory = new Gdn_PagerFactory();
$Sender->EventArguments['PagerType'] = 'Pager';
$Sender->FireEvent('BeforeBuildPager');
$Sender->Pager = $PagerFactory->GetPager($Sender->EventArguments['PagerType'], $Sender);
$Sender->Pager->ClientID = 'Pager';
$Sender->Pager->Configure($Offset, $Limit, $CountDiscussions, 'discussions/participated/%1$s');
$Sender->FireEvent('AfterBuildPager');
// Deliver JSON data if necessary
if ($Sender->DeliveryType() != DELIVERY_TYPE_ALL) {
$Sender->SetJson('LessRow', $Sender->Pager->ToString('less'));
$Sender->SetJson('MoreRow', $Sender->Pager->ToString('more'));
$Sender->View = 'discussions';
}
// Add modules
$Sender->AddModule('NewDiscussionModule');
$Sender->AddModule('CategoriesModule');
$BookmarkedModule = new BookmarkedModule($Sender);
$BookmarkedModule->GetData();
$Sender->AddModule($BookmarkedModule);
$Sender->Render($this->GetView('participated.php'));
}
示例2: DiscussionsController_Participated_Create
/**
* Create paginated list of discussions user has participated in.
*/
public function DiscussionsController_Participated_Create($Sender, $Args = array())
{
$Sender->Permission('Garden.SignIn.Allow');
Gdn_Theme::Section('DiscussionList');
$Page = GetValue(0, $Args);
$Limit = GetValue(1, $Args);
// Set criteria & get discussions data
list($Offset, $Limit) = OffsetLimit($Page, C('Vanilla.Discussions.PerPage', 30));
$DiscussionModel = new DiscussionModel();
$Sender->DiscussionData = $DiscussionModel->GetParticipated(Gdn::Session()->UserID, $Offset, $Limit);
$Sender->SetData('Discussions', $Sender->DiscussionData);
//Set view
$Sender->View = 'index';
if (C('Vanilla.Discussions.Layout') === 'table') {
$Sender->View = 'table';
}
// Build a pager
$PagerFactory = new Gdn_PagerFactory();
$Sender->EventArguments['PagerType'] = 'Pager';
$Sender->FireEvent('BeforeBuildParticipatedPager');
$Sender->Pager = $PagerFactory->GetPager($Sender->EventArguments['PagerType'], $Sender);
$Sender->Pager->ClientID = 'Pager';
$Sender->Pager->Configure($Offset, $Limit, FALSE, 'discussions/participated/{Page}');
$Sender->SetData('CountDiscussions', false);
// force prev/next pager
$Sender->FireEvent('AfterBuildParticipatedPager');
// Deliver JSON data if necessary
if ($Sender->DeliveryType() != DELIVERY_TYPE_ALL) {
$Sender->SetJson('LessRow', $Sender->Pager->ToString('less'));
$Sender->SetJson('MoreRow', $Sender->Pager->ToString('more'));
$Sender->View = 'discussions';
}
$Sender->SetData('_PagerUrl', 'discussions/participated/{Page}');
$Sender->SetData('_Page', $Page);
$Sender->SetData('_Limit', $Limit);
// Add modules
$Sender->AddModule('NewDiscussionModule');
$Sender->AddModule('DiscussionFilterModule');
$Sender->AddModule('CategoriesModule');
$Sender->AddModule('BookmarkedModule');
$Sender->Title(T('Participated Discussions'));
$Sender->SetData('Breadcrumbs', array(array('Name' => T('Participated Discussions'), 'Url' => '/discussions/participated')));
$Sender->Render();
}