diff --git a/presentation/lookAndFeel/knowledgeTree/documentmanagement/getTypeMetadataFields.php b/presentation/lookAndFeel/knowledgeTree/documentmanagement/getTypeMetadataFields.php index 5371fff..c3b6ebc 100644 --- a/presentation/lookAndFeel/knowledgeTree/documentmanagement/getTypeMetadataFields.php +++ b/presentation/lookAndFeel/knowledgeTree/documentmanagement/getTypeMetadataFields.php @@ -4,34 +4,23 @@ require_once('../../../../config/dmsDefaults.php'); require_once(KT_LIB_DIR . '/dispatcher.inc.php'); require_once(KT_LIB_DIR . '/templating/templating.inc.php'); -require_once(KT_LIB_DIR . '/documentmanagement/DocumentField.inc'); +require_once(KT_LIB_DIR . '/metadata/fieldset.inc.php'); require_once(KT_LIB_DIR . '/visualpatterns/PatternMetaData.inc'); class GetTypeMetadataFieldsDispatcher extends KTDispatcher { function do_main() { - return $this->getTypeMetadataFields($_REQUEST['fDocumentTypeID']); + return $this->getTypeMetadataFieldsets ($_REQUEST['fDocumentTypeID']); } - function getTypeMetadataFields ($iDocumentTypeID) { - /*ok*/ $sQuery = array("SELECT DF.id AS id " . - "FROM document_fields AS DF LEFT JOIN document_type_fields_link AS DTFL ON DTFL.field_id = DF.id " . - "WHERE DF.is_generic = ? " . - "AND DTFL.document_type_id = ?", array(false, $iDocumentTypeID)); - - $aIDs = DBUtil::getResultArray($sQuery); - - $aFields = array(); - foreach ($aIDs as $iID) { - $aFields[] =& call_user_func(array('DocumentField', 'get'), $iID); - } + function getTypeMetadataFieldsets ($iDocumentTypeID) { $aTemplateData = array( 'caption' => _('Type specific meta data'), 'empty_message' => _("No Type Specific Meta Data"), - 'fields' => $aFields, + 'fieldsets' => KTFieldSet::getForDocumentType($iDocumentTypeID), ); $oTemplating = KTTemplating::getSingleton(); - $oTemplate = $oTemplating->loadTemplate("ktcore/metadata_fields/editable_metadata_fields"); + $oTemplate = $oTemplating->loadTemplate("ktcore/metadata_fields/editable_metadata_fieldsets"); return $oTemplate->render($aTemplateData); } } diff --git a/templates/ktcore/metadata_fields/editable_metadata_fieldsets.smarty b/templates/ktcore/metadata_fields/editable_metadata_fieldsets.smarty new file mode 100644 index 0000000..1b054c0 --- /dev/null +++ b/templates/ktcore/metadata_fields/editable_metadata_fieldsets.smarty @@ -0,0 +1,76 @@ +{literal} + +{/literal} + + + + + +{if !$metadata_prefix} + {assign var="metadata_prefix" value="emd"} +{/if} + +{if $caption} +

{$caption}

+{/if} + +{foreach from=$fieldsets item=oFieldset} +
+ {$oFieldset->getName()} + + + { foreach item=oField from=$oFieldset->getFields() } + + + + + { /foreach } +
{$oField->getName()} + + {php} + $oField = $this->_tpl_vars['oField']; + $sPrefix = $this->_tpl_vars['metadata_prefix']; + $sValue = $this->_tpl_vars['values'][$oField->getID()]; + $this->assign('pattern', + new PatternMetadata($oField->getName(), $sPrefix . $oField->getID(), $sValue)); + {/php} + {$pattern->render()} + +
+