e6c83a0d by Marty Penner

Changed UserSearch class to have the option to include searching on the users ta…

…ble in user_login and user_nicename. refs #1
1 parent 7abd9cd6
......@@ -36,7 +36,7 @@ class UserSearch implements ArrayAccess, Iterator, Countable {
protected $userclass = 'User';
public function __construct(Array $fields, $num_results = -1, $page = 1, $sortby = null, $sortorder = 'ASC', Array $field_match = null, $text_search = null, Array $in_groups = null) {
public function __construct(Array $fields, $num_results = -1, $page = 1, $sortby = null, $sortorder = 'ASC', Array $field_match = null, $text_search = null, Array $in_groups = null, $search_users_table = null) {
$this->userclass = __NAMESPACE__ . '\User';
global $wpdb;
......@@ -84,6 +84,13 @@ class UserSearch implements ArrayAccess, Iterator, Countable {
$uam_clause = " AND `uam`.`object_type` = 'user' AND `uam`.`group_id` IN (" . implode(',', $in_groups) . ") ";
}
// Users table
if (!is_null($search_users_table)) {
if (!empty($having_clause)) {
$having_clause .= "\n OR `user_id` IN (SELECT `ID` FROM `wp_users` WHERE (`user_login` LIKE '%{$search}%' OR `user_nicename` LIKE '%{$search}%'))";
}
}
mysql_query("SET SESSION group_concat_max_len = 40960", $wpdb->dbh);
$query = "
......@@ -111,6 +118,7 @@ class UserSearch implements ArrayAccess, Iterator, Countable {
{$order_sort}
{$limit_clause}
";
//die(var_dump($query));
/*
?>
<textarea style="width: 95%; height: 35em; font-size: 11px;" autofocus="autofocus">
......