Пример #1
0
 function &getFields()
 {
     return DocumentField::getByFieldset($this);
 }
Пример #2
0
 function _upgradeSavedSearch($aSearch)
 {
     $aMapping = array('-1' => 'ktcore.criteria.name', '-6' => 'ktcore.criteria.id', '-2' => 'ktcore.criteria.title', '-3' => 'ktcore.criteria.creator', '-4' => 'ktcore.criteria.datecreated', '-5' => 'ktcore.criteria.documenttype', '-7' => 'ktcore.criteria.datemodified', '-8' => 'ktcore.criteria.size', '-9' => 'ktcore.criteria.content', '-10' => 'ktcore.criteria.workflowstate', '-13' => 'ktcore.criteria.discussiontext', '-12' => 'ktcore.criteria.searchabletext', '-11' => 'ktcore.criteria.transactiontext');
     $aFieldsets =& KTFieldset::getList('disabled != true');
     foreach ($aFieldsets as $oFieldset) {
         $aFields =& DocumentField::getByFieldset($oFieldset);
         foreach ($aFields as $oField) {
             $sNamespace = $oFieldset->getNamespace() . '.' . $oField->getName();
             $sId = (string) $oField->getId();
             $aMapping[$sId] = $sNamespace;
         }
     }
     foreach (array_keys($aSearch['subgroup']) as $sgkey) {
         $sg =& $aSearch['subgroup'][$sgkey];
         foreach (array_keys($sg['values']) as $vkey) {
             $item =& $sg['values'][$vkey];
             $type = $item['type'];
             $toreplace = 'bmd' . ((int) $type < 0 ? '_' : '') . abs((int) $type);
             $item['type'] = $aMapping[$type];
             $nData = array();
             foreach ($item['data'] as $k => $v) {
                 $k = str_replace($toreplace, $aMapping[$type], $k);
                 $nData[$k] = $v;
             }
             $item['data'] = $nData;
         }
     }
     return $aSearch;
 }
Пример #3
0
 function do_changeToSimple()
 {
     $this->startTransaction();
     $oFieldset =& $this->oValidator->validateFieldset($_REQUEST['fFieldsetId']);
     $oFieldset->setIsComplex(false);
     $res = $oFieldset->update();
     $this->oValidator->notError($res, array('redirect_to' => array('manageConditional', 'fFieldsetId=' . $oFieldset->getId()), 'message' => _kt('Error changing to simple')));
     $aFields = DocumentField::getByFieldset($oFieldset);
     if (!empty($aFields)) {
         $aFieldIds = array();
         foreach ($aFields as $oField) {
             $aFieldIds[] = $oField->getId();
         }
         // value instances
         $sTable = KTUtil::getTableName('field_value_instances');
         $aQuery = array("DELETE FROM {$sTable} WHERE field_id IN (" . DBUtil::paramArray($aFieldIds) . ")", $aFieldIds);
         $res = DBUtil::runQuery($aQuery);
         //$this->addInfoMessage('value instances: ' . print_r($res, true));
         // behaviours
         $sTable = KTUtil::getTableName('field_behaviours');
         $aQuery = array("DELETE FROM {$sTable} WHERE field_id IN (" . DBUtil::paramArray($aFieldIds) . ")", $aFieldIds);
         $res = DBUtil::runQuery($aQuery);
         //$this->addInfoMessage('behaviours: ' . print_r($res, true));
     }
     $this->oValidator->notError($res, array('redirect_to' => array('manageConditional', 'fFieldsetId=' . $oFieldset->getId()), 'message' => _kt('Error changing to simple')));
     KTEntityUtil::clearAllCaches('KTFieldBehaviour');
     KTEntityUtil::clearAllCaches('KTValueInstance');
     $this->commitTransaction();
     $this->addInfoMessage(_kt('Changed to simple'));
     redirect($this->sParentUrl);
     exit(0);
 }