Ejemplo n.º 1
0
 /**
  * createAction
  *
  * Show the campaign creation page
  */
 public function createAction()
 {
     $auth = Zend_Auth::getInstance();
     if ($auth->hasIdentity()) {
         $usrId = $auth->getIdentity()->user_id;
         $grpId = $this->_request->getParam('grpid');
         if (!$grpId) {
             $redirectUrl = $this->_urlHelper->url(array('controller' => 'campaign', 'action' => 'list', 'language' => $this->view->language), 'lang_default', true);
             $this->_redirector->gotoUrl($redirectUrl);
         }
         $grpAdminModel = new Default_Model_GroupAdmins();
         if (!$grpAdminModel->userIsAdmin($grpId, $usrId)) {
             // Only group admins can create campaigns.
             $target = $this->_urlHelper->url(array('groupid' => $grpId, 'language' => $this->view->language), 'group_shortview', true);
             $this->_redirector->gotoUrl($target);
         }
         $this->view->grpid = $grpId;
         // Add the "add new campaign"-form to the view.
         $form = new Default_Form_AddCampaignForm();
         $this->view->form = $form;
         // Handle posted form.
         $request = $this->getRequest();
         if ($request->isPost()) {
             $post = $request->getPost();
             if ($form->isValid($post)) {
                 $campaignModel = new Default_Model_Campaigns();
                 $name = $post['campaign_name'];
                 $ingress = $post['campaign_ingress'];
                 $desc = $post['campaign_desc'];
                 $start = $post['campaign_start'];
                 $end = $post['campaign_end'];
                 $newCampaign = $campaignModel->createCampaign($name, $ingress, $desc, $start, $end, $grpId);
                 // Set weblinks
                 $campaignWeblinksModel = new Default_Model_CampaignWeblinks();
                 if (isset($post['weblinks_name_site1']) && isset($post['weblinks_url_site1'])) {
                     $campaignWeblinksModel->setWeblink($newCampaign['id_cmp'], $post['weblinks_name_site1'], $post['weblinks_url_site1'], 1);
                 }
                 if (isset($post['weblinks_name_site2']) && isset($post['weblinks_url_site2'])) {
                     $campaignWeblinksModel->setWeblink($newCampaign['id_cmp'], $post['weblinks_name_site2'], $post['weblinks_url_site2'], 2);
                 }
                 if (isset($post['weblinks_name_site3']) && isset($post['weblinks_url_site3'])) {
                     $campaignWeblinksModel->setWeblink($newCampaign['id_cmp'], $post['weblinks_name_site3'], $post['weblinks_url_site3'], 3);
                 }
                 if (isset($post['weblinks_name_site4']) && isset($post['weblinks_url_site4'])) {
                     $campaignWeblinksModel->setWeblink($newCampaign['id_cmp'], $post['weblinks_name_site4'], $post['weblinks_url_site4'], 4);
                 }
                 if (isset($post['weblinks_name_site5']) && isset($post['weblinks_url_site5'])) {
                     $campaignWeblinksModel->setWeblink($newCampaign['id_cmp'], $post['weblinks_name_site5'], $post['weblinks_url_site5'], 5);
                 }
                 $target = $this->_urlHelper->url(array('groupid' => $grpId, 'language' => $this->view->language), 'group_shortview', true);
                 $this->_redirector->gotoUrl($target);
             }
         }
     } else {
         $redirectUrl = $this->_urlHelper->url(array('controller' => 'campaign', 'action' => 'list', 'language' => $this->view->language), 'lang_default', true);
         $this->_redirector->gotoUrl($redirectUrl);
     }
 }
Ejemplo n.º 2
0
 /**
  * createAction
  *
  * Show the campaign creation page
  */
 public function createAction()
 {
     $auth = Zend_Auth::getInstance();
     if ($auth->hasIdentity()) {
         $usrId = $auth->getIdentity()->user_id;
         $grpId = $this->_request->getParam('grpid');
         if (!$grpId) {
             $redirectUrl = $this->_urlHelper->url(array('controller' => 'campaign', 'action' => 'list', 'language' => $this->view->language), 'lang_default', true);
             $this->_redirector->gotoUrl($redirectUrl);
         }
         // TODO:
         // if (!userIsAdminInGroup(grpid)) die;
         $this->view->grpid = $grpId;
         // Add the "add new campaign"-form to the view.
         $form = new Default_Form_AddCampaignForm();
         $this->view->form = $form;
         // Handle posted form.
         $request = $this->getRequest();
         if ($request->isPost()) {
             $post = $request->getPost();
             if ($form->isValid($post)) {
                 $campaignModel = new Default_Model_Campaigns();
                 $name = $post['campaign_name'];
                 $ingress = $post['campaign_ingress'];
                 $desc = $post['campaign_desc'];
                 $start = $post['campaign_start'];
                 $end = $post['campaign_end'];
                 $newCampaign = $campaignModel->createCampaign($name, $ingress, $desc, $start, $end, $grpId);
                 // Redirect back to campaigns page.
                 $target = $this->_urlHelper->url(array('groupid' => $grpId, 'language' => $this->view->language), 'group_shortview', true);
                 $this->_redirector->gotoUrl($target);
             }
         }
     } else {
         $redirectUrl = $this->_urlHelper->url(array('controller' => 'campaign', 'action' => 'list', 'language' => $this->view->language), 'lang_default', true);
         $this->_redirector->gotoUrl($redirectUrl);
     }
 }