File tree Expand file tree Collapse file tree 1 file changed +28
-4
lines changed Expand file tree Collapse file tree 1 file changed +28
-4
lines changed Original file line number Diff line number Diff line change @@ -569,11 +569,25 @@ protected function parseFilter($filterParams)
569
569
570
570
if (!isset ($ keyMatches [3 ]))
571
571
{
572
- $ comparator = '= ' ;
572
+ if (strtolower (trim ($ filterParamValue )) == 'null ' )
573
+ {
574
+ $ comparator = 'NULL ' ;
575
+ }
576
+ else
577
+ {
578
+ $ comparator = '= ' ;
579
+ }
573
580
}
574
581
else
575
582
{
576
- $ comparator = $ supportedPostfixes [$ keyMatches [3 ]];
583
+ if (strtolower (trim ($ filterParamValue )) == 'null ' )
584
+ {
585
+ $ comparator = 'NOT NULL ' ;
586
+ }
587
+ else
588
+ {
589
+ $ comparator = $ supportedPostfixes [$ keyMatches [3 ]];
590
+ }
577
591
}
578
592
579
593
$ column = $ keyMatches [2 ];
@@ -618,9 +632,19 @@ protected function parseFilter($filterParams)
618
632
{
619
633
$ value = $ values [0 ];
620
634
621
- if ($ comparator == 'LIKE ' || $ comparator == 'NOT LIKE ' ) $ value = preg_replace ('/(^\*|\*$)/ ' , '% ' , $ value );
635
+ if ($ comparator == 'LIKE ' || $ comparator == 'NOT LIKE ' )
636
+ {
637
+ $ value = preg_replace ('/(^\*|\*$)/ ' , '% ' , $ value );
638
+ }
622
639
623
- $ this ->query ->where ($ column , $ comparator , $ value );
640
+ if ($ comparator == 'NULL ' || $ comparator == 'NOT NULL ' )
641
+ {
642
+ $ this ->query ->whereNull ($ column , 'and ' , $ comparator == 'NOT NULL ' );
643
+ }
644
+ else
645
+ {
646
+ $ this ->query ->where ($ column , $ comparator , $ value );
647
+ }
624
648
}
625
649
}
626
650
}
You can’t perform that action at this time.
0 commit comments