public function getField($pType, $pParams)
 {
     $id = is_string($pParams['name']) ? $pParams['name'] : serialize($pParams['name']);
     if (!isset($this->_conditions[$id])) {
         $this->_conditions[$id] = CopixFieldFactory::get($pType, $pParams);
         if (!$this->_conditions[$id] instanceof ICopixFieldList) {
             unset($this->_conditions[$id]);
             throw new CopixException($pType . ' n\'implémente pas ICopixFieldList');
         }
     } else {
         $this->_conditions[$id]->setParams($pParams);
     }
     return $this->_conditions[$id]->getHTML();
 }
 public function getField($pName, $pParams = array(), $pAssert = true)
 {
     $id = is_string($pName) ? $pName : serialize($pName);
     if (!isset($this->_fields[$id])) {
         if (isset($pParams['kind']) && $pParams['kind'] == 'error') {
             return false;
         }
         $pParams['type'] = isset($pParams['type']) ? $pParams['type'] : null;
         $pParams['name'] = $pName;
         $this->_fields[$id] = CopixFieldFactory::get($pParams['type'], $pParams, $pAssert);
         if (!$this->_fields[$id] instanceof ICopixFieldForm) {
             unset($this->_fields[$id]);
             throw new CopixException($pType . ' n\'implémente pas ICopixFieldForm');
         }
         $this->_fields[$id]->setMode($this->_mode);
         $this->_fields[$id]->fillFromRecord($this->_record);
     } else {
         foreach ($pParams as $key => $params) {
             if ($key != 'validator') {
                 $this->_fields[$id]->setParam($key, $params);
             }
         }
     }
     if (CopixRequest::get('error_' . $this->_id) == null) {
         $this->_fields[$id]->setDefaultValue(isset($pParams['value']) ? $pParams['value'] : null);
     }
     return $this->_fields[$id];
 }
 public function addField($pName, $pType = null, $pParams = array())
 {
     $this->_tabField[$pName] = CopixFieldFactory::get($pType, array_merge($pParams, array('name' => $pName)));
 }