예제 #1
0
 public function submit_add()
 {
     if (!Loader::helper('validation/token')->validate('add_workflow')) {
         $this->error->add(Loader::helper('validation/token')->getErrorMessage());
     }
     $wfName = trim($this->post('wfName'));
     if (!$wfName) {
         $this->error->add(t('You must give the workflow a name.'));
     }
     if (!Loader::helper('validation/strings')->alphanum($wfName, true)) {
         $this->error->add(t('Workflow Names must only include alphanumerics and spaces.'));
     }
     $db = Loader::db();
     $wfID = $db->getOne('SELECT wfID FROM Workflows WHERE wfName=?', array($wfName));
     if ($wfID) {
         $this->error->add(t('Workflow with that name already exists.'));
     }
     if (!$this->error->has()) {
         $type = WorkflowType::getByID($this->post('wftID'));
         if (!is_object($type) || !$type instanceof WorkflowType) {
             $this->error->add(t('Invalid Workflow Type.'));
             $this->add();
             return;
         }
         $wf = Workflow::add($type, $wfName);
         $wf->updateDetails($this->post());
         $this->redirect('/dashboard/workflow/workflows/', 'view_detail', $wf->getWorkflowID(), 'workflow_created');
     }
     $this->add();
 }
예제 #2
0
 public function getWorkflowTypeObject()
 {
     return Type::getByID($this->wftID);
 }
예제 #3
0
 public function submit_add()
 {
     if (!Loader::helper('validation/token')->validate('add_workflow')) {
         $this->error->add(Loader::helper('validation/token')->getErrorMessage());
     }
     $wfName = trim($this->post('wfName'));
     if (!$wfName) {
         $this->error->add(t('You must give the workflow a name.'));
     } elseif (preg_match('/[<>{};?"`]/i', $wfName)) {
         $this->error->add(t('Invalid characters in workflow name.'));
     }
     $db = Loader::db();
     $wfID = $db->getOne('SELECT wfID FROM Workflows WHERE wfName=?', array($wfName));
     if ($wfID) {
         $this->error->add(t('Workflow with that name already exists.'));
     }
     if (!$this->error->has()) {
         $type = WorkflowType::getByID($this->post('wftID'));
         if (!is_object($type) || !$type instanceof WorkflowType) {
             $this->error->add(t('Invalid Workflow Type.'));
             $this->add();
             return;
         }
         $wf = Workflow::add($type, $wfName);
         $wf->updateDetails($this->post());
         $this->redirect('/dashboard/system/permissions/workflows/', 'view_detail', $wf->getWorkflowID(), 'workflow_created');
     }
     $this->add();
 }