Beispiel #1
0
 public function getCriterionCreateResponse(sfGuardUser $user)
 {
     /** @var sfWebRequest $request */
     $request = $this->getRequest();
     $decision = DecisionTable::getInstance()->getDecisionForUser($user, $request->getParameter('decision_id'));
     if (is_object($decision)) {
         $criterion = new Criterion();
         $criterion->Decision = $decision;
         $criterion->name = $request->getParameter('name', 'New criterion');
         $criterion->description = $request->getParameter('description', '');
         $criterion->variable_type = $request->getParameter('type', 'Benefit');
         $criterion->measurement = $request->getParameter('measure', 'five point scale');
         try {
             $criterion->save();
             $result = array('status' => 'success', 'result' => $criterion->getAPIData());
         } catch (sfException $ex) {
             $result = array('status' => 'error', 'error' => $ex->getMessage());
         }
     } else {
         $result = array('status' => 'error', 'error' => sprintf('Project with id %d does not exist', $request->getParameter('decision_id')));
     }
     return $result;
 }