Example #1
0
 /**
  * viewAction
  *
  * Show the campaign view page
  */
 public function viewAction()
 {
     $auth = Zend_Auth::getInstance();
     $user = $auth->getIdentity();
     $cmpid = $this->_request->getParam('cmpid');
     $cmpmodel = new Default_Model_Campaigns();
     // Check if campaign exists
     if (!isset($cmpid) || !$cmpmodel->campaignExists($cmpid)) {
         $target = $this->_urlHelper->url(array('controller' => 'campaign', 'action' => 'index', 'language' => $this->view->language), 'lang_default', true);
         $this->_redirector->gotoUrl($target);
     }
     // Get campaign & its contents.
     $cmp = $cmpmodel->getCampaignById($cmpid)->toArray();
     $cmp['ingress_cmp'] = str_replace("\n", '<br>', $cmp['ingress_cmp']);
     $cmp['description_cmp'] = str_replace("\n", '<br>', $cmp['description_cmp']);
     $cnts = $cmpmodel->getAllContentsInCampaign($cmpid);
     // If user has identity
     if ($auth->hasIdentity()) {
         $this->view->identity = true;
         $uhgModel = new Default_Model_UserHasGroup();
         $this->view->userHasGroup = $uhgModel->userHasGroup($cmp['id_grp_cmp'], $user->user_id);
         // Get group admins.
         $grpAdminsModel = new Default_Model_GroupAdmins();
         $grpAdmins = $grpAdminsModel->getGroupAdmins($cmp['id_grp_cmp']);
         $this->view->userIsGroupAdmin = $this->checkIfArrayHasKeyWithValue($grpAdmins, 'id_usr', $user->user_id);
     } else {
         $this->view->identity = false;
     }
     // Campaign weblinks
     $campaignWeblinksModel = new Default_Model_CampaignWeblinks();
     $cmp['campaignWeblinks'] = $campaignWeblinksModel->getCampaignWeblinks($cmpid);
     $i = 0;
     foreach ($cmp['campaignWeblinks'] as $weblink) {
         if (strlen($weblink['name_cwl']) == 0 || strlen($weblink['url_cwl']) == 0) {
             unset($cmp['campaignWeblinks'][$i]);
         }
         $i++;
     }
     // Get group info.
     $grpmodel = new Default_Model_Groups();
     $grp = $grpmodel->getGroupData($cmp['id_grp_cmp']);
     $grpname = $grp['group_name_grp'];
     // Get campaign campaigns
     $cmpHasCmpModel = new Default_Model_CampaignHasCampaign();
     $linkedcampaigns = $cmpHasCmpModel->getCampaignCampaigns($cmpid);
     $linkedcampaigns = array_merge($linkedcampaigns['parents'], $linkedcampaigns['childs']);
     // Get files
     $filesModel = new Default_Model_Files();
     $files = $filesModel->getFilenames($cmpid, "campaign");
     $comments = new Oibs_Controller_Plugin_Comments("campaign", $cmpid);
     if ($this->view->identity) {
         $comments->allowComments(true);
     }
     $this->view->jsmetabox->append('commentUrls', $comments->getUrls());
     $comments->loadComments();
     $this->view->hasFeeds = Oibs_Controller_Plugin_RssReader::hasFeeds($cmpid, "campaign");
     $this->view->comments = $comments;
     $this->view->campaign = $cmp;
     $this->view->cmpcnts = $cnts;
     $this->view->grpname = $grpname;
     $this->view->linkedcampaigns = $linkedcampaigns;
     $this->view->status = $cmpmodel->getStatus($cmpid);
     $this->view->files = $files;
 }
Example #2
0
 public function editfeedsAction()
 {
     $params = $this->getRequest()->getParams();
     if (!isset($params['type']) || !isset($params['id'])) {
         return false;
     }
     $reader = new Oibs_Controller_Plugin_RssReader($params['id'], $params['type']);
     $auth = Zend_Auth::getInstance();
     if (!$auth->hasIdentity()) {
         return false;
     }
     $userId = $auth->getIdentity()->user_id;
     $admin = false;
     if (!($admin = $reader->isAdmin($userId))) {
         return false;
     }
     $rssModel = new Default_Model_RssFeeds();
     $request = $this->getRequest();
     if ($request->isPost()) {
         $urls = array();
         if (isset($params['feeds'])) {
             $urls = $params['feeds'];
         }
         $reader->addUrls($urls, $params['id'], $params['type']);
         $this->_redirect($reader->getLinkBack());
     }
     $urls = $rssModel->getUrls($params['id'], $params['type']);
     $this->view->title = "Massidea.org";
     $this->view->pageTitle = $reader->getTitle();
     $this->view->linkback = $reader->getLinkBack();
     $this->view->admin = $admin;
     $this->view->count = count($urls) != 0 ? count($urls) : 1;
     $this->view->urls = $urls;
 }
Example #3
0
 /**
  * feedsAction
  *
  * @author Mikko Korpinen
  */
 public function feedsAction()
 {
     // User identity, group header and group menu:
     // Group id
     $grpId = $this->_request->getParam('groupid');
     $grpModel = new Default_Model_Groups();
     // Check if group exists
     if (!isset($grpId) || !$grpModel->groupExistsById($grpId)) {
         $target = $this->_urlHelper->url(array('controller' => 'group', 'action' => 'index', 'language' => $this->view->language), 'lang_default', true);
         $this->_redirector->gotoUrl($target);
     }
     // Group data
     $grpData = $this->getGroupData($grpId);
     // Menudata
     $menuData['id_grp'] = $grpId;
     $menuData['grp_action'] = 'feeds';
     $menuData['group_name_grp'] = $grpData['group_name_grp'];
     $menuData['grp_admins'] = $grpData['grp_admins'];
     // Set $this->view->...
     $this->view->grpData = $grpData;
     $this->view->menuData = $menuData;
     // Group feedsAction special stuff:
     // Get feeds
     $feedsModel = new Oibs_Controller_Plugin_RssReader();
     $hasFeeds = $feedsModel->hasFeeds($grpId, "group");
     $feedsData = array();
     $feedsData = $feedsModel->read($grpId, "group");
     $isAdmin = false;
     if ($grpData['user_identity']) {
         $isAdmin = $feedsModel->isAdmin($grpData['user_id']);
     }
     $editLink = $feedsModel->getEditLink();
     // Set $this->view->...
     $this->view->hasFeeds = $hasFeeds;
     $this->view->feeds = $feedsData;
     $this->view->isAdmin = $isAdmin;
     $this->view->editFeedsLink = $editLink;
 }
Example #4
0
 public function readrssAction()
 {
     $this->_helper->viewRenderer->setNoRender(true);
     if (!isset($this->params['type']) || !isset($this->params['id'])) {
         return;
     }
     $reader = new Oibs_Controller_Plugin_RssReader();
     //$admin = groupadmins->userIsAdmin
     $data = $reader->read($this->params['id'], $this->params['type']);
     $auth = Zend_Auth::getInstance();
     $isAdmin = false;
     if ($auth->hasIdentity()) {
         $isAdmin = $reader->isAdmin($auth->getIdentity()->user_id);
     }
     //echo strlen(json_encode($data));
     //echo strlen($this->view->partial('partials/rssreader.phtml', array("data" => $data)));
     echo $this->view->partial('partials/rssreader.phtml', array("data" => $data, "admin" => $isAdmin, 'link' => $reader->getEditLink()));
 }
Example #5
0
 /**
  * viewAction - shows an individual group's page
  *
  * @author Mikko Aatola
  */
 function viewAction()
 {
     // Get authentication
     $auth = Zend_Auth::getInstance();
     // If user has identity
     if ($auth->hasIdentity()) {
         $this->view->identity = true;
     } else {
         $this->view->identity = false;
     }
     // Get data for this specific group.
     $grpId = $this->_request->getParam('groupid');
     $grpModel = new Default_Model_Groups();
     $usrHasGrpModel = new Default_Model_UserHasGroup();
     $usrHasGrpWaitingModel = new Default_Model_UserHasGroupWaiting();
     $grpAdminsModel = new Default_Model_GroupAdmins();
     $campaignModel = new Default_Model_Campaigns();
     $grpAdmins = $grpAdminsModel->getGroupAdmins($grpId);
     $user = $auth->getIdentity();
     $grpData = $grpModel->getGroupData($grpId);
     $grpData['description_grp'] = str_replace("\n", '<br>', $grpData['description_grp']);
     $grpData['body_grp'] = str_replace("\n", '<br>', $grpData['body_grp']);
     // Group type
     $grpTypeId = $grpModel->getGroupTypeId($grpId);
     $grpTypeModel = new Default_Model_GroupTypes();
     $isClosed = $grpTypeModel->isClosed($grpTypeId);
     // Waiting list count
     $usrWaitingCount = $usrHasGrpWaitingModel->getUserCountByGroup($grpId);
     // Group weblinks
     $groupWeblinksModel = new Default_Model_GroupWeblinks();
     $grpData['groupWeblinks'] = $groupWeblinksModel->getGroupWeblinks($grpId);
     $i = 0;
     foreach ($grpData['groupWeblinks'] as $weblink) {
         if (strlen($weblink['name_gwl']) == 0 || strlen($weblink['url_gwl']) == 0) {
             unset($grpData['groupWeblinks'][$i]);
         }
         $i++;
     }
     // Get group groups
     $grpHasGrpModel = new Default_Model_GroupHasGroup();
     $linkedgroups = $grpHasGrpModel->getGroupGroups($grpId);
     $linkedgroups = array_merge($linkedgroups['parents'], $linkedgroups['childs']);
     $comments = new Oibs_Controller_Plugin_Comments("group", $grpId);
     if ($this->view->identity) {
         $comments->allowComments(true);
     }
     $this->view->jsmetabox->append('commentUrls', $comments->getUrls());
     $comments->loadComments();
     $this->view->comments = $comments;
     $this->view->hasFeeds = Oibs_Controller_Plugin_RssReader::hasFeeds($grpId, "group");
     // Add data to the view.
     $this->view->grpId = $grpId;
     $this->view->grpData = $grpData;
     $this->view->grpUsers = $usrHasGrpModel->getAllUsersInGroup($grpId);
     $this->view->grpAdmins = $grpAdmins;
     $this->view->userHasGroup = $usrHasGrpModel;
     $this->view->userHasGroupWaiting = $usrHasGrpWaitingModel;
     //$this->view->campaigns = $campaignModel->getCampaignsByGroup($grpId);
     $this->view->openCampaigns = $campaignModel->getOpenCampaignsByGroup($grpId);
     $this->view->notstartedCampaigns = $campaignModel->getNotstartedCampaignsByGroup($grpId);
     $this->view->endedCampaigns = $campaignModel->getEndedCampaignsByGroup($grpId);
     $this->view->userIsGroupAdmin = isset($user->user_id) ? $this->checkIfArrayHasKeyWithValue($grpAdmins, 'id_usr', $user->user_id) : false;
     $this->view->linkedgroups = $linkedgroups;
     $this->view->isClosed = $isClosed;
     $this->view->usrWaitingCount = $usrWaitingCount;
 }