summaryrefslogtreecommitdiff
path: root/lib/ParameterValidator.php
diff options
context:
space:
mode:
Diffstat (limited to 'lib/ParameterValidator.php')
-rw-r--r--lib/ParameterValidator.php8
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;