From 2c4cbe57c7233d06d59d5675c6ed700baccdca44 Mon Sep 17 00:00:00 2001 From: bshuttle Date: Thu, 31 Aug 2006 10:45:31 +0000 Subject: [PATCH] finish off the basic document fieldset-editing stuff. --- lib/documentmanagement/documentcontentversion.inc.php | 4 ++-- plugins/ktcore/KTDocumentActions.php | 2 +- plugins/ktcore/admin/fieldsets/basic.inc.php | 173 ++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------------------------------------------------------------------------------------------- templates/kt3/fieldsets/generic.smarty | 15 ++++++++++----- templates/kt3/fieldsets/generic_versioned.smarty | 16 ++++++++++++---- templates/ktcore/metadata/admin/edit_lookuptree.smarty | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 174 insertions(+), 135 deletions(-) create mode 100644 templates/ktcore/metadata/admin/edit_lookuptree.smarty diff --git a/lib/documentmanagement/documentcontentversion.inc.php b/lib/documentmanagement/documentcontentversion.inc.php index a00a674..89c186b 100644 --- a/lib/documentmanagement/documentcontentversion.inc.php +++ b/lib/documentmanagement/documentcontentversion.inc.php @@ -100,10 +100,10 @@ class KTDocumentContentVersion extends KTEntity { if (empty($this->iMimeTypeId)) { $this->iMimeTypeId = 0; } - if (empty($this->iMajorVersion)) { + if (is_null($this->iMajorVersion)) { $this->iMajorVersion = 0; } - if (empty($this->iMinorVersion)) { + if (is_null($this->iMinorVersion)) { $this->iMinorVersion = 1; } return parent::create(); diff --git a/plugins/ktcore/KTDocumentActions.php b/plugins/ktcore/KTDocumentActions.php index 797b68f..8e8c176 100644 --- a/plugins/ktcore/KTDocumentActions.php +++ b/plugins/ktcore/KTDocumentActions.php @@ -449,7 +449,7 @@ class KTDocumentCheckInAction extends KTDocumentAction { )), array('ktcore.widgets.reason', array( 'label' => _kt("Reason"), - 'description' => _kt("Please specify why you are cancelling this document's checked-out status. Please bear in mind that you can use a maximum of 250 characters."), + 'description' => _kt("Please describe the changes you made to the document. Bear in mind that you can use a maximum of 250 characters."), 'name' => 'reason', )), array('ktcore.widgets.boolean',array( diff --git a/plugins/ktcore/admin/fieldsets/basic.inc.php b/plugins/ktcore/admin/fieldsets/basic.inc.php index f70ab22..d25f27f 100644 --- a/plugins/ktcore/admin/fieldsets/basic.inc.php +++ b/plugins/ktcore/admin/fieldsets/basic.inc.php @@ -28,10 +28,11 @@ require_once(KT_LIB_DIR . '/dispatcher.inc.php'); require_once(KT_LIB_DIR . '/metadata/fieldset.inc.php'); require_once(KT_LIB_DIR . '/widgets/forms.inc.php'); require_once(KT_LIB_DIR . '/plugins/pluginutil.inc.php'); +require_once(KT_LIB_DIR . "/documentmanagement/MDTree.inc"); class BasicFieldsetManagementDispatcher extends KTAdminDispatcher { var $bAutomaticTransaction = true; - var $bHaveConditional = null; + var $bHaveConditional = null; var $sHelpPage = 'ktcore/admin/document fieldsets.html'; function predispatch() { @@ -437,9 +438,9 @@ class BasicFieldsetManagementDispatcher extends KTAdminDispatcher { } foreach ($_REQUEST['metadata'] as $iMetaDataId) { $oMetaData =& MetaData::get($iMetaDataId); - if (PEAR::isError($oMetaData)) { - $this->errorRedirectTo('managelookups', _kt('Invalid lookup selected')); - } + if (PEAR::isError($oMetaData)) { + $this->errorRedirectTo('managelookups', _kt('Invalid lookup selected')); + } $oMetaData->delete(); } $this->successRedirectTo('managelookups', _kt('Lookups removed')); @@ -457,9 +458,9 @@ class BasicFieldsetManagementDispatcher extends KTAdminDispatcher { } foreach ($_REQUEST['metadata'] as $iMetaDataId) { $oMetaData =& MetaData::get($iMetaDataId); - if (PEAR::isError($oMetaData)) { - $this->errorRedirectTo('managelookups', _kt('Invalid lookup selected')); - } + if (PEAR::isError($oMetaData)) { + $this->errorRedirectTo('managelookups', _kt('Invalid lookup selected')); + } $oMetaData->setDisabled(true); $oMetaData->update(); } @@ -478,9 +479,9 @@ class BasicFieldsetManagementDispatcher extends KTAdminDispatcher { } foreach ($_REQUEST['metadata'] as $iMetaDataId) { $oMetaData =& MetaData::get($iMetaDataId); - if (PEAR::isError($oMetadata)) { - $this->errorRedirectTo('managelookups', _kt('Invalid lookup selected')); - } + if (PEAR::isError($oMetadata)) { + $this->errorRedirectTo('managelookups', _kt('Invalid lookup selected')); + } $oMetaData->setDisabled(!$oMetaData->getDisabled()); $oMetaData->update(); } @@ -499,9 +500,9 @@ class BasicFieldsetManagementDispatcher extends KTAdminDispatcher { } foreach ($_REQUEST['metadata'] as $iMetaDataId) { $oMetaData =& MetaData::get($iMetaDataId); - if (PEAR::isError($oMetaData)) { - $this->errorRedirectTo('managelookups', _kt('Invalid lookups selected')); - } + if (PEAR::isError($oMetaData)) { + $this->errorRedirectTo('managelookups', _kt('Invalid lookups selected')); + } $bStuck = (boolean)$oMetaData->getIsStuck(); $oMetaData->setIsStuck(!$bStuck); $oMetaData->update(); @@ -538,42 +539,19 @@ class BasicFieldsetManagementDispatcher extends KTAdminDispatcher { // {{{ TREE // create and display the tree editing form. - function do_editTree() { + function do_managetree() { global $default; // extract. - $iFieldsetId = KTUtil::arrayGet($_REQUEST, 'fFieldsetId', false); - $iFieldId = KTUtil::arrayGet($_REQUEST, 'field_id', false); - - $oFieldset =& KTFieldset::get($iFieldsetId); - if(PEAR::isError($oFieldset)) { - $this->errorRedirectTo('main', _kt('Unable to find fieldset'), sprintf('fFieldId=%d&fFieldsetId=%d', $iFieldsetId, $iFieldId)); - exit(0); - } + $iFieldsetId = KTUtil::getId($this->oFieldset); + $iFieldId = KTUtil::getId($this->oField); - $oField =& DocumentField::get($iFieldId); - if(PEAR::isError($oField)) { - $this->errorRedirectTo('main', _kt('Unable to find field'), sprintf('fFieldId=%d&fFieldsetId=%d', $iFieldsetId, $iFieldId)); - exit(0); - } + $oFieldset =& $this->oFieldset; + $oField =& $this->oField; - - - - - $this->aBreadcrumbs[] = array( - 'url' => $_SERVER['PHP_SELF'], - 'query' => 'action=edit&fFieldsetId=' . $iFieldsetId, - 'name' => $oFieldset->getName() - ); - $this->aBreadcrumbs[] = array( - 'url' => $_SERVER['PHP_SELF'], - 'query' => 'action=editField&fFieldsetId=' . $iFieldsetId . '&fFieldId=' . $oField->getId(), - 'name' => $oField->getName() - ); $this->oPage->setBreadcrumbDetails(_kt('edit lookup tree')); - $field_id = KTUtil::arrayGet($_REQUEST, 'field_id'); + $field_id = $iFieldId; $current_node = KTUtil::arrayGet($_REQUEST, 'current_node', 0); $subaction = KTUtil::arrayGet($_REQUEST, 'subaction'); @@ -593,15 +571,15 @@ class BasicFieldsetManagementDispatcher extends KTAdminDispatcher { $fieldTree->buildForField($oField->getId()); if ($subaction !== null) { - $target = 'editTree'; + $target = 'managetree'; $msg = _kt('Changes saved.'); if ($subaction === "addCategory") { $new_category = KTUtil::arrayGet($_REQUEST, 'category_name'); if (empty($new_category)) { - return $this->errorRedirectTo("editTree", _kt("Must enter a name for the new category."), array("field_id" => $field_id, "fFieldsetId" => $iFieldsetId)); - } else { - $this->subact_addCategory($field_id, $current_node, $new_category, $fieldTree); - } + return $this->errorRedirectTo("managetree", _kt("Must enter a name for the new category."), array("field_id" => $field_id, "fFieldsetId" => $iFieldsetId)); + } else { + $this->subact_addCategory($field_id, $current_node, $new_category, $fieldTree); + } $msg = _kt('Category added'). ': ' . $new_category; } if ($subaction === "deleteCategory") { @@ -634,29 +612,31 @@ class BasicFieldsetManagementDispatcher extends KTAdminDispatcher { $free_metadata = MetaData::getList('document_field_id = '.$oField->getId().' AND (treeorg_parent = 0 OR treeorg_parent IS NULL) AND (disabled = 0)'); // render edit template. - $oTemplating =& KTTemplating::getSingleton(); - $oTemplate = $oTemplating->loadTemplate("ktcore/edit_lookuptrees"); + + $oTemplate = $this->oValidator->validateTemplate("ktcore/metadata/admin/edit_lookuptree"); $renderedTree = $this->_evilTreeRenderer($fieldTree); $this->oPage->setTitle(_kt('Edit Lookup Tree')); //$this->oPage->requireJSResource('thirdparty/js/MochiKit/Base.js'); - - if ($current_node == 0) { $category_name = 'Root'; } - else { - $oNode = MDTreeNode::get($current_node); - $category_name = $oNode->getName(); - } - + + if ($current_node == 0) { $category_name = 'Root'; } + else { + $oNode = MDTreeNode::get($current_node); + $category_name = $oNode->getName(); + } + $aTemplateData = array( + "context" => $this, + "args" => $this->meldPersistQuery("","managetree", true), "field" => $oField, "oFieldset" => $oFieldset, "tree" => $fieldTree, "renderedTree" => $renderedTree, "currentNode" => $current_node, - 'category_name' => $category_name, + 'category_name' => $category_name, "freechildren" => $free_metadata, - "context" => $this, + ); return $oTemplate->render($aTemplateData); } @@ -682,9 +662,9 @@ class BasicFieldsetManagementDispatcher extends KTAdminDispatcher { function subact_unlinkKeyword(&$constructedTree, $keyword) { $oKW = MetaData::get($keyword); - if (PEAR::isError($oKW)) { - return true; - } + if (PEAR::isError($oKW)) { + return true; + } $constructedTree->reparentKeyword($oKW->getId(), 0); return true; } @@ -706,10 +686,10 @@ class BasicFieldsetManagementDispatcher extends KTAdminDispatcher { function _evilTreeRecursion($subnode, $treeToRender) { - // deliver us from evil.... - $iFieldId = $treeToRender->field_id; - $oField = DocumentField::get($iFieldId); - $iFieldsetId = $oField->getParentFieldsetId(); + // deliver us from evil.... + $iFieldId = $treeToRender->field_id; + $oField = DocumentField::get($iFieldId); + $iFieldsetId = $oField->getParentFieldsetId(); $treeStr = "