Search
class Search implements Listable
ViewModel for free text searches of content objects.
Traits
Methods
Sets the sort type (ascending or descending) for the primary order column of a result set.
Sets the sort type (ascending or descending) for the secondary order column of a result set.
URL-encode and escape a query string for use in a URL.
Check that a string is comprised solely of alphanumeric characters.
Check that a string is comprised solely of alphanumeric characters and underscores.
Check that a string is comprised solely of alphabetical characters.
Cast to string, check UTF-8 encoding and strip trailing whitespace and control characters.
Constructor.
Display the search form.
Search.
Return limit.
Return content count.
Return search results.
Return start.
Set the starting position in the set of available object.
Return the action for this page.
Set action.
Return search terms.
Return search terms for display in form.
Set search terms.
Return search terms XSS escaped for display.
Return search type.
Set search type.
Return extra parameters to be included in pagination control links.
Return onlineStatus
Return tag ID.
Set tag ID.
Details
in Listable at line 46
setOrder(string $field)
Sets the primary column to order query results by.
in Listable at line 56
setOrderType(string $orderType)
Sets the sort type (ascending or descending) for the primary order column of a result set.
in Listable at line 66
setSecondaryOrder(string $field)
Sets the secondary column to order query results by.
in Listable at line 76
setSecondaryOrderType(string $orderType)
Sets the sort type (ascending or descending) for the secondary order column of a result set.
in Listable at line 88
string
pageTitle()
Return title of this page.
in Listable at line 98
setPageTitle(string $pageTitle)
Set the title of this page.
in Listable at line 118
setTemplate(string $template)
Set the template used by this page.
in Listable at line 135
string
theme()
Return the theme used by this page.
in Listable at line 147
setTheme(string $theme)
Set (change) the theme.
You must ensure that the new theme directory contains the HTML template files that you need.
in Listable at line 164
array
metadata()
Return page-specific metadata overrides.
in Listable at line 174
setMetadata(array $metadata)
Set page-specific overrides of the site metadata.
in ValidateString at line 41
string
encodeEscapeUrl(string $url)
URL-encode and escape a query string for use in a URL.
Trims, checks for UTF-8 compliance, rawurlencodes and then escapes with htmlspecialchars(). If you wish to use the data on a landing page you must decode it with htmlspecialchars_decode() followed by rawurldecode() in that order. But really, if you are using any characters that need to be encoded in the first place you should probably just stop.
in ValidateString at line 59
bool
isAlnum(string $alnum)
Check that a string is comprised solely of alphanumeric characters.
Accented regional characters are rejected. This method is designed to be used to check database identifiers or object property names.
in ValidateString at line 77
bool
isAlnumUnderscore(string $alnumUnderscore)
Check that a string is comprised solely of alphanumeric characters and underscores.
Accented regional characters are rejected. This method is designed to be used to check database identifiers or object property names.
in ValidateString at line 95
bool
isAlpha(string $alpha)
Check that a string is comprised solely of alphabetical characters.
Tolerates vanilla ASCII only. Accented regional characters are rejected. This method is designed to be used to check database identifiers or object property names.
in ValidateString at line 113
bool
isUtf8(string $text)
Check if the character encoding of text is UTF-8.
All strings received from external sources must be passed through this function, particularly prior to storage in the database.
in ValidateString at line 131
string
trimString(mixed $text)
Cast to string, check UTF-8 encoding and strip trailing whitespace and control characters.
Removes trailing whitespace and control characters (ASCII <= 32 / UTF-8 points 0-32 inclusive), checks for UTF-8 character set and casts input to a string. Note that the data returned by this function still requires escaping at the point of use; it is not database or XSS safe.
As the input is cast to a string do NOT apply this function to non-string types (int, float, bool, object, resource, null, array, etc).
at line 65
__construct(object $model)
Constructor.
at line 85
displayForm()
Display the search form.
at line 92
search()
Search.
Search results are cached in the property $searchResults.
at line 114
int
limit()
Return limit.
at line 126
int
contentCount()
Return content count.
at line 136
array
searchResults()
Return search results.
at line 146
int
start()
Return start.
at line 156
setStart(int $start)
Set the starting position in the set of available object.
at line 168
string
action()
Return the action for this page.
The action is usually embedded in the form, to control handling on submission (next page load).
at line 178
setAction(string $action)
Set action.
at line 192
array
searchTerms()
Return search terms.
at line 202
string
searchTermsForForm()
Return search terms for display in form.
at line 212
setSearchTerms(string $searchTerms)
Set search terms.
at line 258
array
escapedSearchTerms()
Return search terms XSS escaped for display.
at line 268
string
searchType()
Return search type.
at line 278
setSearchType(string $searchType)
Set search type.
at line 292
array
extraParams()
Return extra parameters to be included in pagination control links.
at line 316
int
onlineStatus()
Return onlineStatus
at line 326
int
tag()
Return tag ID.
at line 336
setTag(int $tag)
Set tag ID.