function do_main() { $this->aBreadcrumbs[] = array('url' => $_SERVER['PHP_SELF'], 'name' => _kt('Document Type Management')); $this->oPage->setBreadcrumbDetails(_kt('view types')); $addFields = array(); $addFields[] = new KTStringWidget(_kt('Name'), _kt('A short, human-readable name for the document type.'), 'name', null, $this->oPage, true); // Get document types $aDocumentTypes = DocumentType::getList(); // Get document type ids associated with documents - allow delete on those not associated $aAssocDocs = DocumentType::getAssociatedTypes(); $oTemplating =& KTTemplating::getSingleton(); $oTemplate = $oTemplating->loadTemplate('ktcore/documenttypes/list'); $oTemplate->setData(array('context' => $this, 'document_types' => $aDocumentTypes, 'associated_types' => $aAssocDocs, 'add_fields' => $addFields)); return $oTemplate; }
function do_selectType() { $aTypes = DocumentType::getList(); // FIXME what is the error message? $_REQUEST['fBrowseMode'] = 'document_type'; if (empty($aTypes)) { $this->errorRedirectToMain('No document types available.'); exit(0); } $oTemplating =& KTTemplating::getSingleton(); $oTemplate = $oTemplating->loadTemplate('kt3/browse_types'); $aTemplateData = array('context' => $this, 'document_types' => $aTypes); return $oTemplate->render($aTemplateData); }
function do_update() { $types_mapping = (array) KTUtil::arrayGet($_REQUEST, 'fDocumentTypeAssignment'); $aWorkflows = KTWorkflow::getList(); $aTypes = DocumentType::getList(); $sQuery = 'DELETE FROM ' . KTUtil::getTableName('type_workflow_map'); $aParams = array(); DBUtil::runQuery(array($sQuery, $aParams)); $aOptions = array('noid' => true); $sTable = KTUtil::getTableName('type_workflow_map'); foreach ($aTypes as $oType) { $t = $types_mapping[$oType->getId()]; if ($t == null) { $t = null; } $res = DBUtil::autoInsert($sTable, array('document_type_id' => $oType->getId(), 'workflow_id' => $t), $aOptions); } $this->successRedirectToMain(_kt('Type mapping updated.')); }