本文整理汇总了PHP中Campaign::UnlinkAll方法的典型用法代码示例。如果您正苦于以下问题:PHP Campaign::UnlinkAll方法的具体用法?PHP Campaign::UnlinkAll怎么用?PHP Campaign::UnlinkAll使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Campaign
的用法示例。
在下文中一共展示了Campaign::UnlinkAll方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: SetMembers
/**
* Sets the Members of a group
* @return
*/
public function SetMembers()
{
// Check the token
if (!Kit::CheckToken('assign_token')) {
trigger_error(__('Sorry the form has expired. Please refresh.'), E_USER_ERROR);
}
$db =& $this->db;
$response = new ResponseManager();
$campaignObject = new Campaign();
$campaignId = Kit::GetParam('CampaignID', _REQUEST, _INT);
$layouts = Kit::GetParam('LayoutID', _POST, _ARRAY, array());
// Authenticate this user
$auth = $this->user->CampaignAuth($campaignId, true);
if (!$auth->edit) {
trigger_error(__('You do not have permission to edit this campaign'), E_USER_ERROR);
}
// Get all current members
$currentMembers = Layout::Entries(NULL, array('campaignId' => $campaignId));
// Flatten
$currentLayouts = array_map(function ($element) {
return $element->layoutId;
}, $currentMembers);
// Work out which ones are NEW
$newLayouts = array_diff($currentLayouts, $layouts);
// Check permissions to all new layouts that have been selected
foreach ($newLayouts as $layoutId) {
// Authenticate
$auth = $this->user->LayoutAuth($layoutId, true);
if (!$auth->view) {
trigger_error(__('Your permissions to view a layout you are adding have been revoked. Please reload the Layouts form.'), E_USER_ERROR);
}
}
// Remove all current members
$campaignObject->UnlinkAll($campaignId);
// Add all new members
$displayOrder = 1;
foreach ($layouts as $layoutId) {
// By this point everything should be authenticated
$campaignObject->Link($campaignId, $layoutId, $displayOrder);
$displayOrder++;
}
$response->SetFormSubmitResponse(__('Layouts Added to Campaign'), false);
$response->Respond();
}
示例2: SetMembers
/**
* Sets the Members of a group
* @return
*/
public function SetMembers()
{
// Check the token
if (!Kit::CheckToken()) {
trigger_error('Token does not match', E_USER_ERROR);
}
$db =& $this->db;
$response = new ResponseManager();
Kit::ClassLoader('campaign');
$campaignObject = new Campaign($db);
$campaignId = Kit::GetParam('CampaignID', _REQUEST, _INT);
$layouts = Kit::GetParam('LayoutID', _POST, _ARRAY, array());
// Authenticate this user
$auth = $this->user->CampaignAuth($campaignId, true);
if (!$auth->edit) {
trigger_error(__('You do not have permission to edit this campaign'), E_USER_ERROR);
}
// Remove all current members
$campaignObject->UnlinkAll($campaignId);
// Add all new members
$displayOrder = 1;
foreach ($layouts as $layoutId) {
// Authenticate
$auth = $this->user->LayoutAuth($layoutId, true);
if (!$auth->view) {
trigger_error(__('Your permissions to view a layout you are adding have been revoked. Please reload the Layouts form.'), E_USER_ERROR);
}
$campaignObject->Link($campaignId, $layoutId, $displayOrder);
$displayOrder++;
}
$response->SetFormSubmitResponse(__('Layouts Added to Campaign'), false);
$response->Respond();
}