File tree Expand file tree Collapse file tree 2 files changed +4
-4
lines changed
scripts/ZoneMinder/lib/ZoneMinder Expand file tree Collapse file tree 2 files changed +4
-4
lines changed Original file line number Diff line number Diff line change @@ -322,14 +322,14 @@ sub Sql {
322322 if ( $term -> {op } ) {
323323 # Handle special tag values before generic operators to avoid
324324 # LEFT JOIN NULL comparison issues with EXISTS/NOT EXISTS
325- if ( $term -> {attr } eq ' Tags' and $term -> {val } eq ' 0' ) {
325+ if ( $term -> {attr } eq ' Tags' and defined ( $term -> { val }) and $term -> {val } eq ' 0' ) {
326326 # "No Tag": = means no tags (NOT EXISTS), != means has tags (EXISTS)
327327 if ($term -> {op } eq ' !=' or $term -> {op } eq ' IS NOT' ) {
328328 $self -> {Sql } .= ' EXISTS (SELECT NULL FROM `Events_Tags` AS ET WHERE ET.EventId = E.Id)' ;
329329 } else {
330330 $self -> {Sql } .= ' NOT EXISTS (SELECT NULL FROM `Events_Tags` AS ET WHERE ET.EventId = E.Id)' ;
331331 }
332- } elsif ( $term -> {attr } eq ' Tags' and $term -> {val } eq ' -1' ) {
332+ } elsif ( $term -> {attr } eq ' Tags' and defined ( $term -> { val }) and $term -> {val } eq ' -1' ) {
333333 # "Any Tag": = means has tags (EXISTS), != means no tags (NOT EXISTS)
334334 if ($term -> {op } eq ' !=' or $term -> {op } eq ' IS NOT' ) {
335335 $self -> {Sql } .= ' NOT EXISTS (SELECT NULL FROM `Events_Tags` AS ET WHERE ET.EventId = E.Id)' ;
Original file line number Diff line number Diff line change @@ -345,14 +345,14 @@ public function sql() {
345345 $ sql .= '( ' .implode (' OR ' , $ subterms ).') ' ;
346346 } elseif (($ this ->attr === 'Tags ' ) && ($ values [0 ] === "'0' " )) {
347347 // "No Tag": = means no tags (NOT EXISTS), != means has tags (EXISTS)
348- if ($ this ->op === '!= ' ) {
348+ if ($ this ->op === '!= ' || $ this -> op === ' IS NOT ' ) {
349349 $ sql .= 'EXISTS (SELECT NULL FROM Events_Tags AS ET WHERE ET.EventId = E.Id) ' ;
350350 } else {
351351 $ sql .= 'NOT EXISTS (SELECT NULL FROM Events_Tags AS ET WHERE ET.EventId = E.Id) ' ;
352352 }
353353 } elseif (($ this ->attr === 'Tags ' ) && ($ values [0 ] === "'-1' " )) {
354354 // "Any Tag": = means has tags (EXISTS), != means no tags (NOT EXISTS)
355- if ($ this ->op === '!= ' ) {
355+ if ($ this ->op === '!= ' || $ this -> op === ' IS NOT ' ) {
356356 $ sql .= 'NOT EXISTS (SELECT NULL FROM Events_Tags AS ET WHERE ET.EventId = E.Id) ' ;
357357 } else {
358358 $ sql .= 'EXISTS (SELECT NULL FROM Events_Tags AS ET WHERE ET.EventId = E.Id) ' ;
You can’t perform that action at this time.
0 commit comments