function admin_md_details_update() { $request =& HTTPRequest::instance(); $_label = $request->get('label'); $_gid = (int) $request->get('group_id'); $mdFactory = new Docman_MetadataFactory($_gid); $md =& $mdFactory->getFromLabel($_label); if ($md !== null) { if ($md->getGroupId() == $_gid) { // Name if ($md->canChangeName()) { $_name = trim($request->get('name')); $md->setName($_name); } // Description if ($md->canChangeDescription()) { $_descr = $request->get('descr'); $md->setDescription($_descr); } // Is empty allowed if ($md->canChangeIsEmptyAllowed()) { $_isEmptyAllowed = (int) $request->get('empty_allowed'); if ($_isEmptyAllowed === 1) { $md->setIsEmptyAllowed(PLUGIN_DOCMAN_DB_TRUE); } else { $md->setIsEmptyAllowed(PLUGIN_DOCMAN_DB_FALSE); } } if ($md->canChangeIsMultipleValuesAllowed()) { $_isMultipleValuesAllowed = (int) $request->get('multiplevalues_allowed'); if ($_isMultipleValuesAllowed === 1) { $md->setIsMultipleValuesAllowed(PLUGIN_DOCMAN_DB_TRUE); } else { $md->setIsMultipleValuesAllowed(PLUGIN_DOCMAN_DB_FALSE); } } // Usage if (!$md->isRequired()) { $_useIt = (int) $request->get('use_it'); if ($_useIt === 1) { $md->setUseIt(PLUGIN_DOCMAN_METADATA_USED); } else { $md->setUseIt(PLUGIN_DOCMAN_METADATA_UNUSED); } } $updated = $mdFactory->update($md); if ($updated) { $this->_controler->feedback->log('info', $GLOBALS['Language']->getText('plugin_docman', 'admin_metadata_update')); } else { $this->_controler->feedback->log('warning', $GLOBALS['Language']->getText('plugin_docman', 'admin_metadata_not_update')); } } else { $this->_controler->feedback->log('error', $GLOBALS['Language']->getText('plugin_docman', 'admin_metadata_id_mismatched')); $this->_controler->feedback->log('error', $GLOBALS['Language']->getText('plugin_docman', 'admin_metadata_not_update')); } } else { $this->_controler->feedback->log('error', $GLOBALS['Language']->getText('plugin_docman', 'admin_metadata_bad_label')); $this->_controler->feedback->log('error', $GLOBALS['Language']->getText('plugin_docman', 'admin_metadata_not_update')); } }