From 36119ebb85b5aba4bd6d5118df1de9e6718bf3ad Mon Sep 17 00:00:00 2001
From: alejandro-campos <alejandro.campos@artica.es>
Date: Wed, 20 Mar 2019 14:48:02 +0100
Subject: [PATCH 1/3] fix bug in event filter by group when not using secondary
 groups

Former-commit-id: fe9c88e8e2d7552fed7e5c7cd5a5694d47ee444f
---
 .../operation/events/events.build_query.php   | 34 +++++++++++++++----
 1 file changed, 27 insertions(+), 7 deletions(-)

diff --git a/pandora_console/operation/events/events.build_query.php b/pandora_console/operation/events/events.build_query.php
index 2c4d1fae07..63e4cfd2f7 100755
--- a/pandora_console/operation/events/events.build_query.php
+++ b/pandora_console/operation/events/events.build_query.php
@@ -83,22 +83,42 @@ if (($date_from === '') && ($date_to === '')) {
     }
 }
 
+$is_using_secondary_group = enterprise_hook('agents_is_using_secondary_groups');
+
 // Group selection.
 if ($id_group > 0 && in_array($id_group, array_keys($groups))) {
     if ($propagate) {
         $childrens_str = implode(',', $childrens_ids);
-        $sql_post .= " AND (id_grupo IN ($childrens_str) OR id_group IN ($childrens_str))";
+        $sql_post .= " AND (id_grupo IN ($childrens_str)";
+
+        if ($is_using_secondary_group)
+            $sql_post .= " OR id_group IN ($childrens_str)";
+
+        $sql_post .= ")";
     } else {
         // If a group is selected and it's in the groups allowed.
-        $sql_post .= " AND (id_grupo = $id_group OR id_group = $id_group)";
+        $sql_post .= " AND (id_grupo = $id_group";
+
+        if ($is_using_secondary_group)
+            $sql_post .= " OR id_group = $id_group";
+
+        $sql_post .= ")";
     }
 } else {
     if (!users_is_admin() && !users_can_manage_group_all('ER')) {
-        $sql_post .= sprintf(
-            ' AND (id_grupo IN (%s) OR id_group IN (%s)) ',
-            implode(',', array_keys($groups)),
-            implode(',', array_keys($groups))
-        );
+        if ($is_using_secondary_group) {
+            $sql_post .= sprintf(
+                ' AND (id_grupo IN (%s) OR id_group IN (%s)) ',
+                implode(',', array_keys($groups)),
+                implode(',', array_keys($groups))
+            );
+       }
+       else {
+            $sql_post .= sprintf(
+                ' AND (id_grupo IN (%s)) ',
+                implode(',', array_keys($groups))
+            );
+       }
     }
 }
 

From b5e1487736b56cb3239e370c8fe94f25c15cdc95 Mon Sep 17 00:00:00 2001
From: alejandro-campos <alejandro.campos@artica.es>
Date: Wed, 20 Mar 2019 15:26:42 +0100
Subject: [PATCH 2/3] add strict comparator

Former-commit-id: 0561976f26d6bc59f3076f48a5a4261dafaad28b
---
 pandora_console/operation/events/events.build_query.php | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pandora_console/operation/events/events.build_query.php b/pandora_console/operation/events/events.build_query.php
index 63e4cfd2f7..8402eac1c5 100755
--- a/pandora_console/operation/events/events.build_query.php
+++ b/pandora_console/operation/events/events.build_query.php
@@ -91,7 +91,7 @@ if ($id_group > 0 && in_array($id_group, array_keys($groups))) {
         $childrens_str = implode(',', $childrens_ids);
         $sql_post .= " AND (id_grupo IN ($childrens_str)";
 
-        if ($is_using_secondary_group)
+        if ($is_using_secondary_group === true)
             $sql_post .= " OR id_group IN ($childrens_str)";
 
         $sql_post .= ")";
@@ -99,14 +99,14 @@ if ($id_group > 0 && in_array($id_group, array_keys($groups))) {
         // If a group is selected and it's in the groups allowed.
         $sql_post .= " AND (id_grupo = $id_group";
 
-        if ($is_using_secondary_group)
+        if ($is_using_secondary_group === true)
             $sql_post .= " OR id_group = $id_group";
 
         $sql_post .= ")";
     }
 } else {
     if (!users_is_admin() && !users_can_manage_group_all('ER')) {
-        if ($is_using_secondary_group) {
+        if ($is_using_secondary_group === true) {
             $sql_post .= sprintf(
                 ' AND (id_grupo IN (%s) OR id_group IN (%s)) ',
                 implode(',', array_keys($groups)),

From c19ec2b041d406f08928cdf2955bd0b4f8fb992f Mon Sep 17 00:00:00 2001
From: alejandro-campos <alejandro.campos@artica.es>
Date: Fri, 22 Mar 2019 10:47:40 +0100
Subject: [PATCH 3/3] fix bug when filtering events by group

Former-commit-id: f5ee52f47cd615007f22ce54e67c1c345eed802b
---
 pandora_console/operation/events/events.build_query.php | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pandora_console/operation/events/events.build_query.php b/pandora_console/operation/events/events.build_query.php
index 8402eac1c5..2d335ff7e7 100755
--- a/pandora_console/operation/events/events.build_query.php
+++ b/pandora_console/operation/events/events.build_query.php
@@ -91,7 +91,7 @@ if ($id_group > 0 && in_array($id_group, array_keys($groups))) {
         $childrens_str = implode(',', $childrens_ids);
         $sql_post .= " AND (id_grupo IN ($childrens_str)";
 
-        if ($is_using_secondary_group === true)
+        if ($is_using_secondary_group === 1)
             $sql_post .= " OR id_group IN ($childrens_str)";
 
         $sql_post .= ")";
@@ -99,14 +99,14 @@ if ($id_group > 0 && in_array($id_group, array_keys($groups))) {
         // If a group is selected and it's in the groups allowed.
         $sql_post .= " AND (id_grupo = $id_group";
 
-        if ($is_using_secondary_group === true)
+        if ($is_using_secondary_group === 1)
             $sql_post .= " OR id_group = $id_group";
 
         $sql_post .= ")";
     }
 } else {
     if (!users_is_admin() && !users_can_manage_group_all('ER')) {
-        if ($is_using_secondary_group === true) {
+        if ($is_using_secondary_group === 1) {
             $sql_post .= sprintf(
                 ' AND (id_grupo IN (%s) OR id_group IN (%s)) ',
                 implode(',', array_keys($groups)),