X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=inc%2Fclasses%2Fmain%2Fcriteria%2Fclass_BaseCriteria.php;h=b0edb27dc270a17c2be4bb7cf46b110a04a9dc5f;hb=ccc1db45751c976264513b8c51884e39f8214b12;hp=b53ce6482845616efafdb17cc0fe32f9d7ff6580;hpb=6b2a7074aee52128919afc159f1df3ba8f1a5515;p=core.git diff --git a/inc/classes/main/criteria/class_BaseCriteria.php b/inc/classes/main/criteria/class_BaseCriteria.php index b53ce648..b0edb27d 100644 --- a/inc/classes/main/criteria/class_BaseCriteria.php +++ b/inc/classes/main/criteria/class_BaseCriteria.php @@ -58,6 +58,9 @@ class BaseCriteria extends BaseFrameworkSystem implements Criteria { * @return $isSet Whether key is set */ public function isKeySet ($criteriaType, $criteriaKey) { + // Make sure no 'my-' or 'my_' passes this point + assert((strpos($criteriaKey, 'my-') === FALSE) && (strpos($criteriaKey, 'my_') === FALSE)); + // Determine it $isSet = isset($this->criteria[$criteriaType][$criteriaKey]); @@ -144,17 +147,19 @@ class BaseCriteria extends BaseFrameworkSystem implements Criteria { * @return void */ public final function addCriteria ($criteriaKey, $criteriaValue, $criteriaType = 'default') { - // Debug message - if (strpos($criteriaKey, 'my-') !== false) $this->debugBackTrace('criteriaKey=' . $criteriaKey); - //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(strtoupper($criteriaType) . '-CRITERIA: criteriaKey=' . $criteriaKey . ',criteriaValue=' . $criteriaValue); + // Make sure no 'my-' or 'my_' passes this point + assert((strpos($criteriaKey, 'my-') === FALSE) && (strpos($criteriaKey, 'my_') === FALSE) && (!is_bool($criteriaValue))); // Convert dashes to underscore $criteriaKey = $this->convertDashesToUnderscores($criteriaKey); + // Debug message + /* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(strtoupper($criteriaType) . '(' . $this->__toString() . ')-CRITERIA[' . __LINE__ . ']: criteriaKey=' . $criteriaKey . ',criteriaValue=' . $criteriaValue); + // Is it already there? if ($this->isKeySet($criteriaType, $criteriaKey)) { // Append it - $this->criteria[$criteriaType][$criteriaKey] .= ',' . $criteriaValue; + $this->criteria[$criteriaType][$criteriaKey] .= ',' . (string) $criteriaValue; } else { // Add it $this->criteria[$criteriaType][$criteriaKey] = (string) $criteriaValue; @@ -170,9 +175,11 @@ class BaseCriteria extends BaseFrameworkSystem implements Criteria { * @return void */ public final function addChoiceCriteria ($criteriaKey, $criteriaValue) { + // Make sure no 'my-' or 'my_' passes this point + assert((strpos($criteriaKey, 'my-') === FALSE) && (strpos($criteriaKey, 'my_') === FALSE) && (!is_bool($criteriaValue))); + // Debug message - if (strpos($criteriaKey, 'my-') !== false) $this->debugBackTrace('criteriaKey=' . $criteriaKey); - //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput('CHOICE-CRITERIA: criteriaKey=' . $criteriaKey . ',criteriaValue=' . $criteriaValue); + //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(strtoupper($criteriaType) . '(' . $this->__toString() . ')-CRITERIA[' . __LINE__ . ']: criteriaKey=' . $criteriaKey . ',criteriaValue=' . $criteriaValue); // Add it $this->criteria['choice'][$this->convertDashesToUnderscores($criteriaKey)][] = (string) $criteriaValue; @@ -206,21 +213,24 @@ class BaseCriteria extends BaseFrameworkSystem implements Criteria { } /** - * Get criteria element or null if not found + * Get criteria element or FALSE if not found * * @param $criteriaKey The requested criteria key * @param $criteriaType Type of this criteria, can be one of 'default' (default), 'choice' or 'exclude' - * @return $value Whether the value of the critera or null + * @return $value Whether the value of the critera or FALSE */ public function getCriteriaElemnent ($criteriaKey, $criteriaType = 'default') { + // Make sure no 'my-' or 'my_' passes this point + assert((strpos($criteriaKey, 'my-') === FALSE) && (strpos($criteriaKey, 'my_') === FALSE)); + // Convert dashes to underscore $criteriaKey = $this->convertDashesToUnderscores($criteriaKey); // Debug message - //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput('CRITERIA: criteriaKey=' . $criteriaKey . ',criteria()=' . count($this->criteria[$criteriaType])); + //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput(strtoupper($criteriaType) . '-CRITERIA[' . __LINE__ . ']: criteriaKey=' . $criteriaKey . ',criteria()=' . count($this->criteria[$criteriaType])); // Default is not found - $value = NULL; + $value = FALSE; // Is the criteria there? if ($this->isKeySet($criteriaType, $criteriaKey)) { @@ -233,10 +243,10 @@ class BaseCriteria extends BaseFrameworkSystem implements Criteria { } /** - * Get criteria element or null if not found for 'choice' type + * Get criteria element or FALSE if not found for 'choice' type * * @param $criteriaKey The requested criteria key - * @return $value Whether the value of the critera or null + * @return $value Whether the value of the critera or FALSE */ public function getCriteriaChoiceElemnent ($criteriaKey) { // Call inner method @@ -244,10 +254,10 @@ class BaseCriteria extends BaseFrameworkSystem implements Criteria { } /** - * Get criteria element or null if not found for 'exclude' type + * Get criteria element or FALSE if not found for 'exclude' type * * @param $criteriaKey The requested criteria key - * @return $value Whether the value of the critera or null + * @return $value Whether the value of the critera or FALSE */ public function getCriteriaExcludeElemnent ($criteriaKey) { // Call inner method @@ -268,11 +278,17 @@ class BaseCriteria extends BaseFrameworkSystem implements Criteria { // Walk through all entries foreach ($entryArray as $key => $entry) { + // Make sure no 'my-' or 'my_' passes this point + assert((strpos($key, 'my-') === FALSE) && (strpos($key, 'my_') === FALSE)); + // Convert dashes to underscore $key = $this->convertDashesToUnderscores($key); // Then walk through all search criteria foreach ($this->criteria[$criteriaType] as $criteriaKey => $criteriaValue) { + // Make sure no 'my-' or 'my_' passes this point + assert((strpos($criteriaKey, 'my-') === FALSE) && (strpos($criteriaKey, 'my_') === FALSE) && (!is_bool($criteriaValue))); + // Convert dashes to underscore $criteriaKey = $this->convertDashesToUnderscores($criteriaKey); @@ -332,6 +348,9 @@ class BaseCriteria extends BaseFrameworkSystem implements Criteria { // Now walk through all criterias foreach ($this->criteria[$criteriaType] as $criteriaKey => $criteriaValue) { + // Make sure no 'my-' or 'my_' passes this point + assert((strpos($criteriaKey, 'my-') === FALSE) && (strpos($criteriaKey, 'my_') === FALSE) && (!is_bool($criteriaValue))); + // Convert dashes to underscore $criteriaKey = $this->convertDashesToUnderscores($criteriaKey);