mirror of
https://github.com/phpbb/phpbb.git
synced 2025-07-31 22:10:45 +02:00
[ticket/15540] Check method signatures, visibility, etc
PHPBB3-15540
This commit is contained in:
@@ -15,11 +15,14 @@ namespace phpbb\search\backend;
|
||||
|
||||
interface search_backend_interface
|
||||
{
|
||||
// TODO: comprobar los pasos pr referencia
|
||||
// TODO: eliminar acp_module de create index y delete index
|
||||
|
||||
/**
|
||||
* Returns the name of this search backend to be displayed to administrators
|
||||
*
|
||||
* @return string Name
|
||||
*/
|
||||
* Returns the name of this search backend to be displayed to administrators
|
||||
*
|
||||
* @return string Name
|
||||
*/
|
||||
public function get_name();
|
||||
|
||||
/**
|
||||
@@ -59,113 +62,119 @@ interface search_backend_interface
|
||||
*/
|
||||
public function get_word_length();
|
||||
|
||||
//public function init();
|
||||
|
||||
/**
|
||||
* Splits keywords entered by a user into an array of words stored in $this->split_words
|
||||
* Stores the tidied search query in $this->search_query
|
||||
*
|
||||
* @param string &$keywords Contains the keyword as entered by the user
|
||||
* @param string $terms is either 'all' or 'any'
|
||||
* @return bool false if no valid keywords were found and otherwise true
|
||||
*/
|
||||
* Splits keywords entered by a user into an array of words stored in $this->split_words
|
||||
* Stores the tidied search query in $this->search_query
|
||||
*
|
||||
* @param string &$keywords Contains the keyword as entered by the user
|
||||
* @param string $terms is either 'all' or 'any'
|
||||
* @return bool false if no valid keywords were found and otherwise true
|
||||
*/
|
||||
public function split_keywords(&$keywords, $terms);
|
||||
|
||||
/**
|
||||
* Performs a search on keywords depending on display specific params. You have to run split_keywords() first
|
||||
*
|
||||
* @param string $type contains either posts or topics depending on what should be searched for
|
||||
* @param string $fields contains either titleonly (topic titles should be searched), msgonly (only message bodies should be searched), firstpost (only subject and body of the first post should be searched) or all (all post bodies and subjects should be searched)
|
||||
* @param string $terms is either 'all' (use query as entered, words without prefix should default to "have to be in field") or 'any' (ignore search query parts and just return all posts that contain any of the specified words)
|
||||
* @param array $sort_by_sql contains SQL code for the ORDER BY part of a query
|
||||
* @param string $sort_key is the key of $sort_by_sql for the selected sorting
|
||||
* @param string $sort_dir is either a or d representing ASC and DESC
|
||||
* @param string $sort_days specifies the maximum amount of days a post may be old
|
||||
* @param array $ex_fid_ary specifies an array of forum ids which should not be searched
|
||||
* @param string $post_visibility specifies which types of posts the user can view in which forums
|
||||
* @param int $topic_id is set to 0 or a topic id, if it is not 0 then only posts in this topic should be searched
|
||||
* @param array $author_ary an array of author ids if the author should be ignored during the search the array is empty
|
||||
* @param string $author_name specifies the author match, when ANONYMOUS is also a search-match
|
||||
* @param array &$id_ary passed by reference, to be filled with ids for the page specified by $start and $per_page, should be ordered
|
||||
* @param int $start indicates the first index of the page
|
||||
* @param int $per_page number of ids each page is supposed to contain
|
||||
* @return boolean|int total number of results
|
||||
*/
|
||||
* Performs a search on keywords depending on display specific params. You have to run split_keywords() first
|
||||
*
|
||||
* @param string $type contains either posts or topics depending on what should be searched for
|
||||
* @param string $fields contains either titleonly (topic titles should be searched), msgonly (only message bodies should be searched), firstpost (only subject and body of the first post should be searched) or all (all post bodies and subjects should be searched)
|
||||
* @param string $terms is either 'all' (use query as entered, words without prefix should default to "have to be in field") or 'any' (ignore search query parts and just return all posts that contain any of the specified words)
|
||||
* @param array $sort_by_sql contains SQL code for the ORDER BY part of a query
|
||||
* @param string $sort_key is the key of $sort_by_sql for the selected sorting
|
||||
* @param string $sort_dir is either a or d representing ASC and DESC
|
||||
* @param string $sort_days specifies the maximum amount of days a post may be old
|
||||
* @param array $ex_fid_ary specifies an array of forum ids which should not be searched
|
||||
* @param string $post_visibility specifies which types of posts the user can view in which forums
|
||||
* @param int $topic_id is set to 0 or a topic id, if it is not 0 then only posts in this topic should be searched
|
||||
* @param array $author_ary an array of author ids if the author should be ignored during the search the array is empty
|
||||
* @param string $author_name specifies the author match, when ANONYMOUS is also a search-match
|
||||
* @param array &$id_ary passed by reference, to be filled with ids for the page specified by $start and $per_page, should be ordered
|
||||
* @param int $start indicates the first index of the page
|
||||
* @param int $per_page number of ids each page is supposed to contain
|
||||
* @return boolean|int total number of results
|
||||
*/
|
||||
public function keyword_search($type, $fields, $terms, $sort_by_sql, $sort_key, $sort_dir, $sort_days, $ex_fid_ary, $post_visibility, $topic_id, $author_ary, $author_name, &$id_ary, &$start, $per_page);
|
||||
|
||||
/**
|
||||
* Performs a search on an author's posts without caring about message contents. Depends on display specific params
|
||||
*
|
||||
* @param string $type contains either posts or topics depending on what should be searched for
|
||||
* @param boolean $firstpost_only if true, only topic starting posts will be considered
|
||||
* @param array $sort_by_sql contains SQL code for the ORDER BY part of a query
|
||||
* @param string $sort_key is the key of $sort_by_sql for the selected sorting
|
||||
* @param string $sort_dir is either a or d representing ASC and DESC
|
||||
* @param string $sort_days specifies the maximum amount of days a post may be old
|
||||
* @param array $ex_fid_ary specifies an array of forum ids which should not be searched
|
||||
* @param string $post_visibility specifies which types of posts the user can view in which forums
|
||||
* @param int $topic_id is set to 0 or a topic id, if it is not 0 then only posts in this topic should be searched
|
||||
* @param array $author_ary an array of author ids
|
||||
* @param string $author_name specifies the author match, when ANONYMOUS is also a search-match
|
||||
* @param array &$id_ary passed by reference, to be filled with ids for the page specified by $start and $per_page, should be ordered
|
||||
* @param int $start indicates the first index of the page
|
||||
* @param int $per_page number of ids each page is supposed to contain
|
||||
* @return boolean|int total number of results
|
||||
*/
|
||||
* Performs a search on an author's posts without caring about message contents. Depends on display specific params
|
||||
*
|
||||
* @param string $type contains either posts or topics depending on what should be searched for
|
||||
* @param boolean $firstpost_only if true, only topic starting posts will be considered
|
||||
* @param array $sort_by_sql contains SQL code for the ORDER BY part of a query
|
||||
* @param string $sort_key is the key of $sort_by_sql for the selected sorting
|
||||
* @param string $sort_dir is either a or d representing ASC and DESC
|
||||
* @param string $sort_days specifies the maximum amount of days a post may be old
|
||||
* @param array $ex_fid_ary specifies an array of forum ids which should not be searched
|
||||
* @param string $post_visibility specifies which types of posts the user can view in which forums
|
||||
* @param int $topic_id is set to 0 or a topic id, if it is not 0 then only posts in this topic should be searched
|
||||
* @param array $author_ary an array of author ids
|
||||
* @param string $author_name specifies the author match, when ANONYMOUS is also a search-match
|
||||
* @param array &$id_ary passed by reference, to be filled with ids for the page specified by $start and $per_page, should be ordered
|
||||
* @param int $start indicates the first index of the page
|
||||
* @param int $per_page number of ids each page is supposed to contain
|
||||
* @return boolean|int total number of results
|
||||
*/
|
||||
public function author_search($type, $firstpost_only, $sort_by_sql, $sort_key, $sort_dir, $sort_days, $ex_fid_ary, $post_visibility, $topic_id, $author_ary, $author_name, &$id_ary, &$start, $per_page);
|
||||
|
||||
/**
|
||||
* Updates wordlist and wordmatch tables when a message is posted or changed
|
||||
*
|
||||
* @param string $mode contains the post mode: edit, post, reply, quote ...
|
||||
* @param int $post_id contains the post id of the post to index
|
||||
* @param string $message contains the post text of the post
|
||||
* @param string $subject contains the subject of the post to index
|
||||
* @param int $poster_id contains the user id of the poster
|
||||
* @param int $forum_id contains the forum id of parent forum of the post
|
||||
*/
|
||||
* Returns if phrase search is supported or not
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function supports_phrase_search(): bool;
|
||||
|
||||
/**
|
||||
* Updates wordlist and wordmatch tables when a message is posted or changed
|
||||
* Destroys cached search results, that contained one of the new words in a post so the results won't be outdated
|
||||
*
|
||||
* @param string $mode contains the post mode: edit, post, reply, quote ...
|
||||
* @param int $post_id contains the post id of the post to index
|
||||
* @param string $message contains the post text of the post
|
||||
* @param string $subject contains the subject of the post to index
|
||||
* @param int $poster_id contains the user id of the poster
|
||||
* @param int $forum_id contains the forum id of parent forum of the post
|
||||
*/
|
||||
public function index($mode, $post_id, &$message, &$subject, $poster_id, $forum_id);
|
||||
|
||||
/**
|
||||
* Destroy cached results, that might be outdated after deleting a post
|
||||
*/
|
||||
* Destroy cached results, that might be outdated after deleting a post
|
||||
*/
|
||||
public function index_remove($post_ids, $author_ids, $forum_ids);
|
||||
|
||||
/**
|
||||
* Destroy old cache entries
|
||||
*/
|
||||
* Destroy old cache entries
|
||||
*/
|
||||
public function tidy();
|
||||
|
||||
/**
|
||||
* Create fulltext index
|
||||
*
|
||||
* @return string|bool error string is returned incase of errors otherwise false
|
||||
*/
|
||||
* Create fulltext index
|
||||
*
|
||||
* @return string|bool error string is returned incase of errors otherwise false
|
||||
*/
|
||||
public function create_index($acp_module, $u_action);
|
||||
|
||||
/**
|
||||
* Drop fulltext index
|
||||
*
|
||||
* @return string|bool error string is returned incase of errors otherwise false
|
||||
*/
|
||||
* Drop fulltext index
|
||||
*
|
||||
* @return string|bool error string is returned incase of errors otherwise false
|
||||
*/
|
||||
public function delete_index($acp_module, $u_action);
|
||||
|
||||
/**
|
||||
* Returns true if both FULLTEXT indexes exist
|
||||
*/
|
||||
* Returns true if both FULLTEXT indexes exist
|
||||
*/
|
||||
public function index_created();
|
||||
|
||||
/**
|
||||
* Returns an associative array containing information about the indexes
|
||||
*
|
||||
* @return array|false Language string of error false otherwise
|
||||
*/
|
||||
* Returns an associative array containing information about the indexes
|
||||
*
|
||||
* @return array|false Language string of error false otherwise
|
||||
*/
|
||||
public function index_stats();
|
||||
|
||||
/**
|
||||
* Display various options that can be configured for the backend from the acp
|
||||
*
|
||||
* @return associative array containing template and config variables
|
||||
*/
|
||||
* Display various options that can be configured for the backend from the acp
|
||||
*
|
||||
* @return associative array containing template and config variables
|
||||
*/
|
||||
public function acp();
|
||||
}
|
||||
|
Reference in New Issue
Block a user