private function getCampaignTitle() { $cmpModel = new Default_Model_Campaigns(); $cmp = $cmpModel->getCampaignById($this->id); return $cmp->name_cmp; }
/** * linkAction * * Link content to campaign. */ public function linkAction() { $auth = Zend_Auth::getInstance(); if ($auth->hasIdentity()) { $usrId = $auth->getIdentity()->user_id; $cmpId = $this->_request->getParam('cmpid'); if (!isset($cmpId)) { $redirectUrl = $this->_urlHelper->url(array('controller' => 'campaign', 'action' => 'index', 'language' => $this->view->language), 'lang_default', true); $this->_redirector->gotoUrl($redirectUrl); } $this->view->cmpid = $cmpId; $cmpmodel = new Default_Model_Campaigns(); $cmp = $cmpmodel->getCampaignById($cmpId); $usrmodel = new Default_Model_User(); $usrcnt = $usrmodel->getUserContent($usrId); if (!empty($usrcnt)) { $cmpcnt = $cmpmodel->getAllContentsInCampaign($cmpId); $cnt = array(); foreach ($usrcnt as $usercontent) { if (!$this->checkIfArrayHasKeyWithValue($cmpcnt, 'id_cnt', $usercontent['id_cnt'])) { $cnt[] = $usercontent; } } $hasUserContents = true; } else { $hasUserContents = false; } $this->view->cmp = $cmp; $this->view->usrcnt = $cnt; $this->view->hasUserContents = $hasUserContents; } else { // If not logged, redirecting to system message page $message = 'campaign-link-not-logged'; $url = $this->_urlHelper->url(array('controller' => 'msg', 'action' => 'index', 'language' => $this->view->language), 'lang_default', true); $this->flash($message, $url); } }
function endAction() { $auth = Zend_Auth::getInstance(); if ($auth->hasIdentity()) { $cmpId = $this->_request->getParam('id'); if (!$cmpId) { $target = $this->_urlHelper->url(array('controller' => 'index', 'action' => 'index', 'language' => $this->view->language), 'lang_default', true); $this->_redirector->gotoUrl($target); } // Get group id from campaign info. $cmpModel = new Default_Model_Campaigns(); $cmp = $cmpModel->getCampaignById($cmpId)->toArray(); $grpId = $cmp['id_grp_cmp']; // Only group admins can end campaign. $grpAdminsModel = new Default_Model_GroupAdmins(); $grpAdmins = $grpAdminsModel->getGroupAdmins($grpId); $userIsGroupAdmin = $this->checkIfArrayHasKeyWithValue($grpAdmins, 'id_usr', $auth->getIdentity()->user_id); if (!$userIsGroupAdmin) { $redirectUrl = $this->_urlHelper->url(array('controller' => 'campaign', 'action' => 'index', 'language' => $this->view->language), 'lang_default', true); $this->_redirector->gotoUrl($redirectUrl); } // Check if campaign status is ended $status = $cmpModel->getStatus($cmpId); if ($status === "ended") { $redirectUrl = $this->_urlHelper->url(array('controller' => 'campaign', 'action' => 'index', 'language' => $this->view->language), 'lang_default', true); $this->_redirector->gotoUrl($redirectUrl); } // Chang end date to yesterday $cmpModel->endCampaign($cmpId, $cmp['start_time_cmp']); // Redirect back to the campaign page. $target = $this->_urlHelper->url(array('cmpid' => $cmpId, 'language' => $this->view->language), 'campaign_view', true); $this->_redirector->gotoUrl($target); } else { // Not logged in. $redirectUrl = $this->_urlHelper->url(array('controller' => 'campaign', 'action' => 'index', 'language' => $this->view->language), 'lang_default', true); $this->_redirector->gotoUrl($redirectUrl); } }
/** * removecampaignlinkAction - Remove campaign link */ public function removecampaignlinkAction() { // Get authentication $auth = Zend_Auth::getInstance(); // If user has identity if ($auth->hasIdentity()) { $parentCmpId = $this->_request->getParam('parentcmpid'); $this->view->parentcmpid = $parentCmpId; $childCmpId = $this->_request->getParam('childcmpid'); $this->view->childcmpid = $childCmpId; if (!(isset($parentCmpId) && isset($childCmpId))) { $redirectUrl = $this->_urlHelper->url(array('controller' => 'campaign', 'action' => 'index', 'language' => $this->view->language), 'lang_default', true); $this->_redirector->gotoUrl($redirectUrl); } $cmpModel = new Default_Model_Campaigns(); $cmp = $cmpModel->getCampaignById($parentCmpId); $grpId = $cmp['id_grp_cmp']; $usrId = $auth->getIdentity()->user_id; $grpadminmodel = new Default_Model_GroupAdmins(); if (!$grpadminmodel->userIsAdmin($grpId, $usrId)) { $redirectUrl = $this->_urlHelper->url(array('controller' => 'campaign', 'action' => 'index', 'language' => $this->view->language), 'lang_default', true); $this->_redirector->gotoUrl($redirectUrl); } $cmphascmpmodel = new Default_Model_CampaignHasCampaign(); $cmphascmpmodel->removeCampaignFromCampaign($parentCmpId, $childCmpId); $cmphascmpmodel->removeCampaignFromCampaign($childCmpId, $parentCmpId); // TODO: // Tell the user that the unlink was created. // Redirect back to the current campaign's page. $target = $this->_urlHelper->url(array('cmpid' => $parentCmpId, 'language' => $this->view->language), 'campaign_view', true); $this->_redirector->gotoUrl($target); } else { // If not logged, redirecting to system message page $message = 'content-link-not-logged'; $url = $this->_urlHelper->url(array('controller' => 'msg', 'action' => 'index', 'language' => $this->view->language), 'lang_default', true); $this->flash($message, $url); } }