* (bug 17239) Added prop=displaytitle to action=parse
* (bug 17317) Added watch parameter to action=protect
* (bug 17007) Added export and exportnowrap parameters to action=query
+* (bug 17326) BREAKING CHANGE: Changed output format for iiprop=metadata
=== Languages updated in 1.15 ===
if (is_string($subElemValue) && $this->mDoubleQuote)
$subElemValue = $this->doubleQuote($subElemValue);
- // Replace spaces with underscores
- $newSubElemId = str_replace(' ', '_', $subElemId);
- if($newSubElemId != $subElemId) {
- $elemValue[$newSubElemId] = $subElemValue;
- unset($elemValue[$subElemId]);
- $subElemId = $newSubElemId;
- }
-
if (gettype($subElemId) === 'integer') {
$indElements[] = $subElemValue;
unset ($elemValue[$subElemId]);
$vals['sha1'] = wfBaseConvert( $file->getSha1(), 36, 16, 40 );
if( isset( $prop['metadata'] ) ) {
$metadata = $file->getMetadata();
- $vals['metadata'] = $metadata ? unserialize( $metadata ) : null;
- $result->setIndexedTagName_recursive( $vals['metadata'], 'meta' );
+ $vals['metadata'] = $metadata ? self::processMetaData( unserialize( $metadata ), $result ) : null;
}
if( isset( $prop['mime'] ) )
$vals['mime'] = $file->getMimeType();
return $vals;
}
+
+ public static function processMetaData($metadata, $result)
+ {
+ $retval = array();
+ foreach($metadata as $key => $value)
+ {
+ $r = array('name' => $key);
+ if(is_array($value))
+ $r['value'] = self::processMetaData($value, $result);
+ else
+ $r['value'] = $value;
+ $retval[] = $r;
+ }
+ $result->setIndexedTagName($retval, 'metadata');
+ return $retval;
+ }
public function getAllowedParams() {
return array (