From 485c112b0ea148addc98b8822a9e034e432f0d41 Mon Sep 17 00:00:00 2001 From: Megan Watson Date: Fri, 19 Mar 2010 19:38:12 +0200 Subject: [PATCH] Initialised packed metadata as an array. Checked that values are set to n/a before setting them to an empty string. --- ktapi/KTAPIDocument.inc.php | 6 +++++- lib/documentmanagement/documentutil.inc.php | 2 ++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/ktapi/KTAPIDocument.inc.php b/ktapi/KTAPIDocument.inc.php index caa6e06..28c0c16 100644 --- a/ktapi/KTAPIDocument.inc.php +++ b/ktapi/KTAPIDocument.inc.php @@ -1401,6 +1401,10 @@ class KTAPI_Document extends KTAPI_FolderItem { $fieldname = $fieldinfo['name']; $value = $fieldinfo['value']; + // if the 'blankvalue' argument was set to 1 (true) then do not use the current value; + // this prevents the 'n/a' values set for blank fields on get_metadata from being saved as such + // while allowing user entered values of 'n/a' to be saved + $value = ($fieldinfo['value'] == 'n/a' && $fieldinfo['blankvalue']) ? '' : $fieldinfo['value']; } elseif ($fieldinfo instanceof stdClass) // is_a($fieldinfo, 'stdClass')) { @@ -2635,4 +2639,4 @@ class KTAPI_Document extends KTAPI_FolderItem } } -?> \ No newline at end of file +?> diff --git a/lib/documentmanagement/documentutil.inc.php b/lib/documentmanagement/documentutil.inc.php index 3de4244..bf5f763 100644 --- a/lib/documentmanagement/documentutil.inc.php +++ b/lib/documentmanagement/documentutil.inc.php @@ -641,6 +641,7 @@ $sourceDocument->getName(), $aSimpleMetadata[$oField->getId()] = $sValue; } + $MDPack = array(); foreach ($aFieldsets as $oFieldset) { $aFields =& $oFieldset->getFields(); $aFieldValues = array(); @@ -694,6 +695,7 @@ $sourceDocument->getName(), return $res; } // XXX: Metadata refactor + $aMetadata = (is_array($aMetadata)) ? $aMetadata : array(); foreach ($aMetadata as $aInfo) { list($oMetadata, $sValue) = $aInfo; if (is_null($oMetadata)) { -- libgit2 0.21.4