Re-added "Remove empty params." to master.

This reverts commit 31ee0bd51a.
semantics-font
Frode Petterson 2015-04-22 10:44:16 +02:00
parent 31ee0bd51a
commit 9a37a99574
1 changed files with 18 additions and 4 deletions

View File

@ -2652,10 +2652,17 @@ class H5PContentValidator {
// Validate each element in list.
foreach ($list as $key => &$value) {
if (!is_int($key)) {
unset($list[$key]);
array_splice($list, $key, 1);
continue;
}
$this->$function($value, $field);
if ($value === NULL) {
array_splice($list, $key, 1);
}
}
if (count($list) === 0) {
$list = NULL;
}
}
@ -2765,6 +2772,9 @@ class H5PContentValidator {
if ($found) {
if ($function) {
$this->$function($value, $field);
if ($value === NULL) {
unset($group->$key);
}
}
else {
// We have a field type in semantics for which we don't have a
@ -2800,9 +2810,13 @@ class H5PContentValidator {
* Will recurse into validating the library's semantics too.
*/
public function validateLibrary(&$value, $semantics) {
if (!isset($value->library) || !in_array($value->library, $semantics->options)) {
if (!isset($value->library)) {
$value = NULL;
return;
}
if (!in_array($value->library, $semantics->options)) {
$this->h5pF->setErrorMessage($this->h5pF->t('Library used in content is not a valid library according to semantics'));
$value = new stdClass();
$value = NULL;
return;
}