/** Edit an activity
  */
 public function editactivityAction()
 {
     if ($this->_getparam('id', false)) {
         $form = new ActivityForm();
         $form->submit->setLabel(self::UPDATE);
         $this->view->form = $form;
         if ($this->getRequest()->isPost() && $form->isValid($this->_request->getPost())) {
             if ($form->isValid($form->getValues())) {
                 $activities = new PrimaryActivities();
                 $where = array();
                 $where[] = $activities->getAdapter()->quoteInto('id = ?', (int) $this->_getParam('id'));
                 $update = $activities->update($form->getValues(), $where);
                 $this->_flashMessenger->addMessage('Activity details updated');
                 $this->_redirect($this->_redirectUrl . 'activities');
             } else {
                 $form->populate($form->getValues());
             }
         } else {
             $id = (int) $this->_request->getParam('id', 0);
             if ($id > 0) {
                 $activities = new PrimaryActivities();
                 $activity = $activities->fetchRow('id=' . (int) $id);
                 if (count($activity)) {
                     $form->populate($activity->toArray());
                 } else {
                     throw new Pas_Exception_Param($this->_nothingFound);
                 }
             }
         }
     } else {
         throw new Pas_Exception_Param($this->_missingParameter);
     }
 }
 public function configure()
 {
     parent::configure();
     $filename = $this->getObject()->getData();
     $this->widgetSchema['resource_uri_upload'] = new sfWidgetFormInputFileEditable(array('label' => 'File', 'file_src' => '/uploads/materiale/' . $filename['resource_uri_upload'], 'is_image' => false, 'edit_mode' => !$this->isNew()));
     $this->validatorSchema['resource_uri_upload_delete'] = new sfValidatorPass();
     $this->validatorSchema['resource_uri_upload'] = new sfValidatorFile(array('required' => false, 'path' => sfConfig::get('sf_upload_dir') . '/materiale'));
 }
 function editAction($activity_id, $system_id)
 {
     $activity = Activities::findFirstById($activity_id);
     $system = Systems::findFirstById($system_id);
     $form = new ActivityForm($activity);
     $bugs_id = new Select('bugs_id', Bugs::find(), array('useEmpty' => true));
     $bugs_id->setLabel('Select Bugs');
     $bugs_id->setDefault(array($activity->bugs_id));
     $array = [];
     foreach (Bugs::find(array('system_id = ' . $system_id)) as $bug) {
         if ($bug->modules_id) {
             $modules_name = '[' . $bug->modules->name . '] - ';
         } else {
             $modules_name = '';
         }
         $array[$bug->id] = $modules_name . ' ' . $bug->description;
     }
     $bugs_id->setOptions($array);
     $form->add($bugs_id);
     /*=======  Modules  =======*/
     $modulesId = new Select('modules_id', Modules::find(array('system_id = ' . $system_id)), array('using' => array('id', 'name'), 'useEmpty' => true));
     $modulesId->setLabel('Select Modules');
     $modulesId->setDefault(array($activity->modules_id));
     $form->add($modulesId);
     $this->view->activity = $activity;
     $this->view->system = $system;
     $this->view->page = 'Modules';
     $this->view->form = $form;
     if ($this->request->isPost()) {
         $activities = new Activities();
         $activity_id = $this->request->getPost('id');
         $activities = Activities::find($activity_id);
         if ($activities->update($this->request->getPost()) == false) {
             foreach ($activities->getMessages() as $message) {
                 $this->flash->error((string) $message);
             }
         } else {
             $this->flash->success('Edit Activity Success');
             $this->response->redirect('activity/system/' . $system_id);
         }
     }
 }