Skip to content

Commit

Permalink
Merge branch 'master' into 192_dev
Browse files Browse the repository at this point in the history
  • Loading branch information
TMSWhite committed Jun 5, 2012
2 parents 6b093ad + 6a43810 commit 8828604
Show file tree
Hide file tree
Showing 2 changed files with 64 additions and 8 deletions.
22 changes: 22 additions & 0 deletions classes/expressions/ExpressionManager.php
Original file line number Diff line number Diff line change
Expand Up @@ -2554,6 +2554,17 @@ static function UnitTestEvaluator()
1~!0
0~(empty and 0)
0~(empty or 0)
<B>Empty_Var Vs. Zero</B>~"<B>Empty_Var Vs. Zero</B>"
0~empty == zero
1~empty != zero
0~empty > zero
0~empty >= zero
0~empty < zero
0~empty <= zero
1~!empty
1~!zero
0~(empty and zero)
0~(empty or zero)
<B>Empty_Var Vs. Constant</B>~"<B>Empty_Var Vs. Constant</B>"
0~empty == 3
1~empty != 3
Expand All @@ -2575,6 +2586,16 @@ static function UnitTestEvaluator()
0~!is_empty(empty) && (empty <= 0)
0~!is_empty(empty) && ((empty and 0))
0~!is_empty(empty) && ((empty or 0))
<B>Solution: Empty_Var Vs. Zero</B>~"<B>Solution: Empty_Var Vs. Zero</B>"
0~!is_empty(empty) && (empty == zero)
0~!is_empty(five) && (five == zero)
1~!is_empty(zero) && (zero == zero)
0~!is_empty(empty) && (empty > zero)
0~!is_empty(empty) && (empty >= zero)
0~!is_empty(empty) && (empty < zero)
0~!is_empty(empty) && (empty <= zero)
0~!is_empty(empty) && ((empty and zero))
0~!is_empty(empty) && ((empty or zero))
<B>Solution: Empty_Var Vs. Constant</B>~"<B>Solution: Empty_Var Vs. Constant</B>"
0~!is_empty(empty) && (empty < 3)
0~!is_empty(empty) && (empty <= 3)
Expand All @@ -2585,6 +2606,7 @@ static function UnitTestEvaluator()
1~(empty != 0)
1~!is_empty(empty) && (empty != 0)
1~is_empty(empty) || (empty != 0)
1~is_empty(empty) || (empty != zero)
0~is_empty(zero) || (zero != 0)
1~is_empty(five) || (five != 0)
<b>SETUP</b>~'<b>SETUP</b>'
Expand Down
50 changes: 42 additions & 8 deletions classes/expressions/LimeExpressionManager.php
Original file line number Diff line number Diff line change
Expand Up @@ -870,18 +870,52 @@ public static function ConvertConditionsToRelevance($surveyId=NULL, $qid=NULL)
{
// Conditions uses ' ' to mean not answered, but internally it is really stored as ''. Fix this
if ($value === '" "') {
if ($row['method'] == '==') {
if ($row['method'] == '==')
{
$relOrList[] = "is_empty(" . $fieldname . ")";
}
else if ($row['method'] == '!=') {
$relOrList[] = "!is_empty(" . $fieldname . ")";
}
else {
$relOrList[] = $fieldname . " " . $row['method'] . " " . $value;
else if ($row['method'] == '!=')
{
$relOrList[] = "!is_empty(" . $fieldname . ")";
}
else
{
$relOrList[] = $fieldname . " " . $row['method'] . " " . $value;
}
}
else {
$relOrList[] = $fieldname . " " . $row['method'] . " " . $value;
else
{
if ($value == '"0"' || !preg_match('/^".+"$/',$value))
{
switch ($row['method'])
{
case '==':
case '<':
case '<=':
case '>=':
$relOrList[] = '(!is_empty(' . $fieldname . ') && (' . $fieldname . " " . $row['method'] . " " . $value . '))';
break;
case '!=':
$relOrList[] = '(is_empty(' . $fieldname . ') || (' . $fieldname . " != " . $value . '))';
break;
default:
$relOrList[] = $fieldname . " " . $row['method'] . " " . $value;
break;
}
}
else
{
switch ($row['method'])
{
case '<':
case '<=':
$relOrList[] = '(!is_empty(' . $fieldname . ') && (' . $fieldname . " " . $row['method'] . " " . $value . '))';
break;
default:
$relOrList[] = $fieldname . " " . $row['method'] . " " . $value;
break;
}
}
}
}

Expand Down

0 comments on commit 8828604

Please sign in to comment.