diff --git a/group_sql.php b/group_sql.php index 641beff..08c8d76 100644 --- a/group_sql.php +++ b/group_sql.php @@ -42,8 +42,9 @@ class OC_GROUP_SQL extends \OC_Group_Backend implements \OCP\GroupInterface if(empty($this -> settings['sql_group_table'])) { return []; - } - $rows = $this -> helper -> runQuery('getGroups', array(), false, true); + } + $search = "%".$search."%"; + $rows = $this -> helper -> runQuery('getGroups', array('search' => $search), false, true, array('limit' => $limit, 'offset' => $offset)); if($rows === false) { return []; @@ -75,5 +76,20 @@ class OC_GROUP_SQL extends \OC_Group_Backend implements \OCP\GroupInterface } return $users; } + + public function countUsersInGroup($gid, $search = '') { + if(empty($this -> settings['sql_group_table'])) + { + return 0; + } + $search = "%".$search."%"; + $count = $this -> helper -> runQuery('countUsersInGroup', array('gid' => $gid, 'search' => $search)); + if($count === false) + { + return 0; + } else { + return intval(reset($count)); + } + } } ?> diff --git a/lib/helper.php b/lib/helper.php index 18177a3..0074f1d 100644 --- a/lib/helper.php +++ b/lib/helper.php @@ -182,12 +182,16 @@ class Helper { break; case 'getGroups': - $query = "SELECT distinct ".$this->settings['col_group_name']." FROM ".$this->settings['sql_group_table']; + $query = "SELECT distinct ".$this->settings['col_group_name']." FROM ".$this->settings['sql_group_table']." WHERE ".$this->settings['col_group_name']." LIKE :search"; break; case 'getGroupUsers': $query = "SELECT distinct ".$this->settings['col_group_username']." FROM ".$this->settings['sql_group_table']." WHERE ".$this->settings['col_group_name']." = :gid"; break; + + case 'countUsersInGroup': + $query = "SELECT count(".$this->settings['col_group_username'].") FROM ".$this->settings['sql_group_table']." WHERE ".$this->settings['col_group_name']." = :gid AND ".$this->settings['col_group_username']." LIKE :search"; + break; } if(isset($limits['limit']) && $limits['limit'] !== null) diff --git a/user_sql.php b/user_sql.php index cfb8404..4186b33 100644 --- a/user_sql.php +++ b/user_sql.php @@ -404,7 +404,7 @@ class OC_USER_SQL extends \OC_User_Backend implements \OCP\IUserBackend, \OCP\Us } else { - $search = "%".$this -> doUserDomainMapping("")."%"; + $search = "%".$this -> doUserDomainMapping("")."%"; } $rows = $this -> helper -> runQuery('getUsers', array('search' => $search), false, true, array('limit' => $limit, 'offset' => $offset));