Ejemplo n.º 1
0
 function do_create()
 {
     $oForm = $this->form_create();
     $res = $oForm->validate();
     $data = $res['results'];
     $errors = $res['errors'];
     $extra_errors = array();
     if (!empty($data['name'])) {
         $oFieldset = KTFieldset::getByName($data['name']);
         if (!PEAR::isError($oFieldset)) {
             // means we're looking at an existing name
             $extra_errors['name'] = _kt("There is already a fieldset with that name.");
         }
     }
     $is_conditional = false;
     // FIXME this is inelegant.  get it from somewhere else.
     if ($this->bHaveConditional && $data['fieldset_type'] == 'conditional') {
         $is_conditional = true;
     }
     if (!empty($errors) || !empty($extra_errors)) {
         return $oForm->handleError(null, $extra_errors);
     }
     // we also need a namespace.
     $temp_name = $data['name'];
     $namespace = KTUtil::nameToLocalNamespace('fieldsets', $temp_name);
     $oOldFieldset = KTFieldset::getByNamespace($namespace);
     while (!PEAR::isError($oOldFieldset)) {
         $temp_name .= '_';
         $namespace = KTUtil::nameToLocalNamespace('fieldsets', $temp_name);
         $oOldFieldset = KTFieldset::getByNamespace($namespace);
     }
     // we now know its a non-conflicting one.
     // FIXME handle conditional fieldsets, which should be ... a different object.
     $oFieldset = KTFieldset::createFromArray(array("name" => $data['name'], "description" => $data['description'], "namespace" => $namespace, "mandatory" => false, "isConditional" => $is_conditional, "isGeneric" => $data['generic'], "isComplete" => false, "isComplex" => false, "isSystem" => false));
     if (PEAR::isError($oFieldset)) {
         return $oForm->handleError(sprintf(_kt("Failed to create fieldset: %s"), $oFieldset->getMessage()));
     }
     $this->successRedirectTo('edit', _kt("Fieldset created."), sprintf('fFieldsetId=%d', $oFieldset->getId()));
 }
Ejemplo n.º 2
0
 /**
  * function to add fieldset entry to fieldsets table
  *
  * @return unknown
  */
 function createFieldset()
 {
     // create the fieldsets entry
     $oFieldset = KTFieldset::createFromArray(array('name' => _kt('Tag Cloud'), 'description' => _kt('The following tags are associated with your document'), 'namespace' => 'tagcloud', 'mandatory' => false, 'isConditional' => false, 'isGeneric' => true, 'isComplete' => false, 'isComplex' => false, 'isSystem' => false));
     return $oFieldset;
 }