MemberSearchService
in package
uses
LocatorAwareTrait
Handles member search and discovery queries.
Covers SCA-name search with th/Þ character conversion, autocomplete result building, and email availability checks.
Table of Contents
Properties
Methods
- __construct() : mixed
- Initialize the search service.
- buildThornVariants() : array{q: string|null, nq: string|null, uq: string|null}
- Convert a search query to include th/Þ (thorn) character variants.
- isEmailTaken() : bool
- Check whether an email address is already in use.
- searchQuery() : SelectQuery
- Build a member search query with thorn-variant matching.
Properties
$Members
private
MembersTable
$Members
Methods
__construct()
Initialize the search service.
public
__construct() : mixed
buildThornVariants()
Convert a search query to include th/Þ (thorn) character variants.
public
buildThornVariants(string|null $query) : array{q: string|null, nq: string|null, uq: string|null}
Parameters
- $query : string|null
-
Original search string.
Return values
array{q: string|null, nq: string|null, uq: string|null}isEmailTaken()
Check whether an email address is already in use.
public
isEmailTaken(string|null $email) : bool
Parameters
- $email : string|null
-
Email address to check.
Return values
bool —True when the email is already taken.
searchQuery()
Build a member search query with thorn-variant matching.
public
searchQuery(string|null $q, string|null $nq, string|null $uq[, int $limit = 10 ][, array<string|int, string> $fields = ['id', 'sca_name'] ]) : SelectQuery
Parameters
- $q : string|null
-
Original search string.
- $nq : string|null
-
Thorn-replaced variant.
- $uq : string|null
-
Reverse thorn-replaced variant.
- $limit : int = 10
-
Maximum number of results.
- $fields : array<string|int, string> = ['id', 'sca_name']
-
Columns to select.