Beispiel #1
0
 public function init()
 {
     parent::init();
     $this->setTitle('Edit Sponsor')->setAttrib('id', 'advgroup_sponsor_edit');
     $this->submit->setLabel('Save Changes');
     $this->addElement('Cancel', 'cancel', array('prependText' => ' or ', 'label' => 'Cancel', 'link' => true, 'href' => '', 'onclick' => 'parent.Smoothbox.close();', 'decorators' => array('ViewHelper')));
     $this->addDisplayGroup(array('submit', 'cancel'), 'buttons');
 }
Beispiel #2
0
 public function createAction()
 {
     $this->view->form = $form = new Advgroup_Form_Sponsor_Create();
     $request = Zend_Controller_Front::getInstance()->getRequest();
     // Not post/invalid
     if (!$request->isPost()) {
         return;
     }
     if (!$form->isValid($request->getPost())) {
         return;
     }
     // Process
     $groupId = $this->_getParam('group_id');
     $tabId = $this->_getParam('tab');
     if (!($groupId && is_numeric($groupId))) {
         return;
     }
     //die("haha");
     $this->view->group = $group = Engine_Api::_()->getItem('group', $this->_getParam('group_id'));
     $values = $form->getValues();
     $values['group_id'] = $group->getIdentity();
     $db = Engine_Api::_()->getDbtable('sponsors', 'advgroup')->getAdapter();
     $db->beginTransaction();
     try {
         $table = Engine_Api::_()->getDbtable('sponsors', 'advgroup');
         $sponsor = $table->createRow();
         $sponsor->setFromArray($values);
         $sponsor->save();
         // Add photo
         if (!empty($values['photo'])) {
             $sponsor->setPhoto($form->photo);
         }
         // Commit
         $db->commit();
         return $this->_forward('success', 'utility', 'core', array('messages' => array(Zend_Registry::get('Zend_Translate')->_('Added Successfully')), 'layout' => 'default-simple', 'parentRedirect' => $this->view->url(array('id' => $groupId), 'group_profile') . ($tabId && is_numeric($tabId) ? "?tab={$tabId}" : ""), 'closeSmoothbox' => true));
     } catch (Engine_Image_Exception $e) {
         $db->rollBack();
         $form->addError(Zend_Registry::get('Zend_Translate')->_('The image you selected was too large.'));
     } catch (Exception $e) {
         $db->rollBack();
         throw $e;
     }
 }
Beispiel #3
0
 public function indexAction()
 {
     $params = $this->_getAllParams();
     $session = new Zend_Session_Namespace('mobile');
     if ($session->mobile) {
         if ($params['nomobile'] == 1) {
             return $this->setNoRender();
         }
     }
     // Don't render this if not authorized
     $this->view->viewer = $viewer = Engine_Api::_()->user()->getViewer();
     if (!Engine_Api::_()->core()->hasSubject()) {
         return $this->setNoRender();
     }
     // Get subject and check auth
     $subject = Engine_Api::_()->core()->getSubject('group');
     if (!$subject->authorization()->isAllowed($viewer, 'view')) {
         return $this->setNoRender();
     }
     // Get params
     $this->view->page = $page = $this->_getParam('page', 1);
     $this->view->search = $search = $this->_getParam('search');
     // Prepare data
     $this->view->group = $group = $subject;
     //check auth if can manage
     $is_Owner = $group->user_id == $viewer->getIdentity() ? true : false;
     $canAdd = $subject->authorization()->isAllowed(null, 'sponsor');
     $allow_manage = "";
     $levelAdd = Engine_Api::_()->authorization()->getAdapter('levels')->getAllowed('group', $viewer, 'sponsor');
     if ($is_Owner || $canAdd && $levelAdd) {
         $this->view->canAdd = $canAdd = true;
     } else {
         $this->view->canAdd = $canAdd = false;
     }
     $this->view->form = $form = new Advgroup_Form_Sponsor_Create();
     // Get paginator
     $table = Engine_Api::_()->getItemTable('advgroup_sponsor');
     $select = $table->select()->where('group_id = ?', $subject->getIdentity())->order('sponsor_id DESC');
     $number = 8;
     if (empty($params['number'])) {
         $number = 8;
     } else {
         $number = $params['number'];
     }
     $this->view->paginator = $paginator = Zend_Paginator::factory($select);
     // Set item count per page and current page number
     $paginator->setItemCountPerPage($number);
     // Add count to title if configured
     if ($this->_getParam('titleCount', false) && $paginator->getTotalItemCount() > 0) {
         $this->_childCount = $paginator->getTotalItemCount();
     }
     $request = Zend_Controller_Front::getInstance()->getRequest();
     // Not post/invalid
     if (!$request->isPost()) {
         return;
     }
     if (!$form->isValid($request->getPost())) {
         return;
     }
     // Process
     $values = $form->getValues();
     $this->view->formValues = $values;
     $values['event_id'] = $event->getIdentity();
     $db = Engine_Api::_()->getDbtable('sponsors', 'advgroup')->getAdapter();
     $db->beginTransaction();
     try {
         $table = Engine_Api::_()->getDbtable('sponsors', 'advgroup');
         $sponsor = $table->createRow();
         $sponsor->setFromArray($values);
         $sponsor->save();
         // Add photo
         if (!empty($values['photo'])) {
             $sponsor->setPhoto($form->photo);
         }
         // Commit
         $db->commit();
     } catch (Engine_Image_Exception $e) {
         $db->rollBack();
         $form->addError(Zend_Registry::get('Zend_Translate')->_('The image you selected was too large.'));
     } catch (Exception $e) {
         $db->rollBack();
         throw $e;
     }
 }