403Webshell
Server IP : 104.26.4.103  /  Your IP : 216.73.216.4
Web Server : nginx/1.27.1
System : Linux in-5 5.15.0-143-generic #153-Ubuntu SMP Fri Jun 13 19:10:45 UTC 2025 x86_64
User : arabianexpress ( 1872)
PHP Version : 8.0.30
Disable Function : exec,passthru,shell_exec,system,proc_open,popen,parse_ini_file,show_source
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /storage/v9321/leapdubai/public_html/wp-content/plugins/kirki/app/Traits/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /storage/v9321/leapdubai/public_html/wp-content/plugins/kirki/app/Traits/SearchableUser.php
<?php

namespace Kirki\App\Traits;

defined('ABSPATH') || exit;

use Kirki\App\Constants\UserMetaKeys;
use Kirki\Framework\Database\Query\QueryBuilder;
use Kirki\Framework\Supports\Arr;

trait SearchableUser {
    /**
     * Search users
     * 
     * @param QueryBuilder $query
     * @param string $keyword
     * 
     * @return QueryBuilder
     */
    public function scope_search(QueryBuilder $query, $keyword) {
        if ($keyword === '') {
            return $query;
        }

        if (str_contains($keyword, '@')) {
            return $query->where_like('user_email', $keyword . '%');
		}
        
        if (is_numeric($keyword)) {
            return $query->where(function (QueryBuilder $query) use ($keyword) {
                $query->where_like('user_login', $keyword . '%')
                    ->or_where_like('ID', $keyword . '%');
            });
		} 
        
        if (preg_match('|^https?://|', $keyword) && !(is_multisite() && wp_is_large_network('users'))) {
            return $query->where_like('user_url', $keyword . '%');
		}
        
        return $query->where(function (QueryBuilder $query) use ($keyword) {
                $query->where_like('user_login', $keyword . '%')
                    ->or_where_like('user_url', $keyword . '%')
                    ->or_where_like('user_email', $keyword . '%')
                    ->or_where_like('user_nicename', $keyword . '%')
                    ->or_where_like('display_name', $keyword . '%');
        });
    }

    /**
     * Search users by role
     * 
     * @param QueryBuilder $query
     * @param string|array $role
     * 
     * @return QueryBuilder
     */
    public function scope_role(QueryBuilder $query, $role) {
        if (empty($role)) {
            return $query;
        }

        $roles = Arr::wrap($role);  

        return $query->where_has('meta', function (QueryBuilder $query) use ($roles) {
            $query->where('meta_key', '=', UserMetaKeys::CAPABILITIES);

            foreach ($roles as $role) {
                $query->where_like('meta_value', '%' . $role . '%');
            }
        });
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit