validateGroup must handle isSubContent

* Update validateGroup in h4p.classes.php to allow subContentId into the data
 * Fix h5p-content-upgrade-process.js to take into account isSubContent

Relates to: #HFP-285
pull/27/head
Tom Arild Jakobsen 2016-11-29 15:44:32 +01:00
parent 0882879552
commit 5494443533
2 changed files with 5 additions and 3 deletions

View File

@ -3056,7 +3056,9 @@ class H5PContentValidator {
$function = null;
$field = null;
if (count($semantics->fields) == 1 && $flatten) {
$isSubContent = isset($semantics->isSubContent) && $semantics->isSubContent === TRUE;
if (count($semantics->fields) == 1 && $flatten && !$isSubContent) {
$field = $semantics->fields[0];
$function = $this->typeMap[$field->type];
$this->$function($group, $field);
@ -3064,7 +3066,7 @@ class H5PContentValidator {
else {
foreach ($group as $key => &$value) {
// If subContentId is set, keep value
if($key == 'subContentId' && $value == TRUE){
if($isSubContent && ($key == 'subContentId')){
continue;
}

View File

@ -182,7 +182,7 @@ H5P.ContentUpgradeProcess = (function (Version) {
break;
case 'group':
if (field.fields.length === 1) {
if (field.fields.length === 1 && field.isSubContent !== true) {
// Single field to process, wrapper will be skipped
self.processField(field.fields[0], params, function (err, upgradedParams) {
if (upgradedParams) {