diff options
Diffstat (limited to 'lib/ParameterValidator.php')
-rw-r--r-- | lib/ParameterValidator.php | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/ParameterValidator.php b/lib/ParameterValidator.php index 91fe7c9..f740888 100644 --- a/lib/ParameterValidator.php +++ b/lib/ParameterValidator.php @@ -195,13 +195,14 @@ class ParameterValidator { foreach($set as $id => $properties) { if(isset($data[$id]) && !empty($data[$id])) { $queriedContexts[$context] = true; - } elseif(isset($properties['required']) - && $properties['required'] === true) { + } elseif (isset($properties['type']) + && ($properties['type'] === 'checkbox' || $properties['type'] === 'list')) { + continue; + } elseif(isset($properties['required']) && $properties['required'] === true) { $queriedContexts[$context] = false; break; } } - } // Abort if one of the globally required parameters is not satisfied @@ -213,6 +214,7 @@ class ParameterValidator { switch(array_sum($queriedContexts)) { case 0: // Found no match, is there a context without parameters? + if(isset($data['context'])) return $data['context']; foreach($queriedContexts as $context => $queried) { if(is_null($queried)) { return $context; |