mirror of
https://github.com/phpbb/phpbb.git
synced 2025-08-11 03:04:09 +02:00
Merge remote-tracking branch 'phpbb/develop' into ticket/11621
* phpbb/develop: (542 commits) [ticket/11901] Pass empty string as relative_url for non-local magic URL. [ticket/11898] Correct adm_relative_path created by installer [ticket/11898] Correct admin S_LOGIN_ACTION [ticket/11892] Fix undefined variables: to_forum_id & to_topic_id [ticket/11890] Fix untranslated string when deleting posts through MCP. [ticket/11895] Fix undefined $forum_id [ticket/10383] Update the results without the overlay popup. [ticket/10383] Make the content transitions smoother. [ticket/10383] AJAXify poll voting [ticket/11888] Update default search backend in namespaces migration [ticket/11739] Rename “Remember Me” login keys module [ticket/11893] Remove unnecessary <fieldset> causing a large font size [ticket/11894] Fix typo in "Delete post" option [ticket/11888] Use \phpbb\search\fulltext_native as search backend config [ticket/11608] Mark failed test as incomplete for mysql search backend [ticket/11608] Update search backend class names to namespaces [ticket/11608] Move markIncomplete to search backends test [ticket/11608] Rename base search test class file [ticket/11608] Remove suffix test from base class [ticket/11608] Mark postgres search not found test as incomplete ...
This commit is contained in:
@@ -7,6 +7,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\search;
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
@@ -23,12 +25,12 @@ define('SEARCH_RESULT_IN_CACHE', 1);
|
||||
define('SEARCH_RESULT_INCOMPLETE', 2);
|
||||
|
||||
/**
|
||||
* phpbb_search_base
|
||||
* \phpbb\search\base
|
||||
* optional base class for search plugins providing simple caching based on ACM
|
||||
* and functions to retrieve ignore_words and synonyms
|
||||
* @package search
|
||||
*/
|
||||
class phpbb_search_base
|
||||
class base
|
||||
{
|
||||
var $ignore_words = array();
|
||||
var $match_synonym = array();
|
||||
|
@@ -7,6 +7,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\search;
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
@@ -20,7 +22,7 @@ if (!defined('IN_PHPBB'))
|
||||
* Fulltext search for MySQL
|
||||
* @package search
|
||||
*/
|
||||
class phpbb_search_fulltext_mysql extends phpbb_search_base
|
||||
class fulltext_mysql extends \phpbb\search\base
|
||||
{
|
||||
/**
|
||||
* Associative array holding index stats
|
||||
@@ -36,19 +38,19 @@ class phpbb_search_fulltext_mysql extends phpbb_search_base
|
||||
|
||||
/**
|
||||
* Config object
|
||||
* @var phpbb_config
|
||||
* @var \phpbb\config\config
|
||||
*/
|
||||
protected $config;
|
||||
|
||||
|
||||
/**
|
||||
* Database connection
|
||||
* @var phpbb_db_driver
|
||||
* @var \phpbb\db\driver\driver
|
||||
*/
|
||||
protected $db;
|
||||
|
||||
|
||||
/**
|
||||
* User object
|
||||
* @var phpbb_user
|
||||
* @var \phpbb\user
|
||||
*/
|
||||
protected $user;
|
||||
|
||||
@@ -74,7 +76,7 @@ class phpbb_search_fulltext_mysql extends phpbb_search_base
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
* Creates a new phpbb_search_fulltext_mysql, which is used as a search backend
|
||||
* Creates a new \phpbb\search\fulltext_mysql, which is used as a search backend
|
||||
*
|
||||
* @param string|bool $error Any error that occurs is passed on through this reference variable otherwise false
|
||||
*/
|
||||
|
@@ -7,6 +7,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\search;
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
@@ -20,7 +22,7 @@ if (!defined('IN_PHPBB'))
|
||||
* phpBB's own db driven fulltext search, version 2
|
||||
* @package search
|
||||
*/
|
||||
class phpbb_search_fulltext_native extends phpbb_search_base
|
||||
class fulltext_native extends \phpbb\search\base
|
||||
{
|
||||
/**
|
||||
* Associative array holding index stats
|
||||
@@ -80,19 +82,19 @@ class phpbb_search_fulltext_native extends phpbb_search_base
|
||||
|
||||
/**
|
||||
* Config object
|
||||
* @var phpbb_config
|
||||
* @var \phpbb\config\config
|
||||
*/
|
||||
protected $config;
|
||||
|
||||
/**
|
||||
* Database connection
|
||||
* @var phpbb_db_driver
|
||||
* @var \phpbb\db\driver\driver
|
||||
*/
|
||||
protected $db;
|
||||
|
||||
/**
|
||||
* User object
|
||||
* @var phpbb_user
|
||||
* @var \phpbb\user
|
||||
*/
|
||||
protected $user;
|
||||
|
||||
@@ -1556,7 +1558,7 @@ class phpbb_search_fulltext_native extends phpbb_search_base
|
||||
* @param string $encoding Text encoding
|
||||
* @return string Cleaned up text, only alphanumeric chars are left
|
||||
*
|
||||
* @todo normalizer::cleanup being able to be used?
|
||||
* @todo \normalizer::cleanup being able to be used?
|
||||
*/
|
||||
protected function cleanup($text, $allowed_chars = null, $encoding = 'utf-8')
|
||||
{
|
||||
@@ -1588,7 +1590,7 @@ class phpbb_search_fulltext_native extends phpbb_search_base
|
||||
* If we use it more widely, an instance of that class should be held in a
|
||||
* a global variable instead
|
||||
*/
|
||||
utf_normalizer::nfc($text);
|
||||
\utf_normalizer::nfc($text);
|
||||
|
||||
/**
|
||||
* The first thing we do is:
|
||||
|
@@ -7,6 +7,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\search;
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
@@ -20,7 +22,7 @@ if (!defined('IN_PHPBB'))
|
||||
* Fulltext search for PostgreSQL
|
||||
* @package search
|
||||
*/
|
||||
class phpbb_search_fulltext_postgres extends phpbb_search_base
|
||||
class fulltext_postgres extends \phpbb\search\base
|
||||
{
|
||||
/**
|
||||
* Associative array holding index stats
|
||||
@@ -61,19 +63,19 @@ class phpbb_search_fulltext_postgres extends phpbb_search_base
|
||||
|
||||
/**
|
||||
* Config object
|
||||
* @var phpbb_config
|
||||
* @var \phpbb\config\config
|
||||
*/
|
||||
protected $config;
|
||||
|
||||
/**
|
||||
* Database connection
|
||||
* @var phpbb_db_driver
|
||||
* @var \phpbb\db\driver\driver
|
||||
*/
|
||||
protected $db;
|
||||
|
||||
/**
|
||||
* User object
|
||||
* @var phpbb_user
|
||||
* @var \phpbb\user
|
||||
*/
|
||||
protected $user;
|
||||
|
||||
@@ -99,7 +101,7 @@ class phpbb_search_fulltext_postgres extends phpbb_search_base
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
* Creates a new phpbb_search_fulltext_postgres, which is used as a search backend
|
||||
* Creates a new \phpbb\search\fulltext_postgres, which is used as a search backend
|
||||
*
|
||||
* @param string|bool $error Any error that occurs is passed on through this reference variable otherwise false
|
||||
*/
|
||||
|
@@ -7,6 +7,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\search;
|
||||
|
||||
/**
|
||||
*/
|
||||
if (!defined('IN_PHPBB'))
|
||||
@@ -26,7 +28,7 @@ define('SPHINX_CONNECT_WAIT_TIME', 300);
|
||||
* Fulltext search based on the sphinx search deamon
|
||||
* @package search
|
||||
*/
|
||||
class phpbb_search_fulltext_sphinx
|
||||
class fulltext_sphinx
|
||||
{
|
||||
/**
|
||||
* Associative array holding index stats
|
||||
@@ -73,25 +75,25 @@ class phpbb_search_fulltext_sphinx
|
||||
|
||||
/**
|
||||
* Auth object
|
||||
* @var phpbb_auth
|
||||
* @var \phpbb\auth\auth
|
||||
*/
|
||||
protected $auth;
|
||||
|
||||
/**
|
||||
* Config object
|
||||
* @var phpbb_config
|
||||
* @var \phpbb\config\config
|
||||
*/
|
||||
protected $config;
|
||||
|
||||
/**
|
||||
* Database connection
|
||||
* @var phpbb_db_driver
|
||||
* @var \phpbb\db\driver\driver
|
||||
*/
|
||||
protected $db;
|
||||
|
||||
/**
|
||||
* Database Tools object
|
||||
* @var phpbb_db_tools
|
||||
* @var \phpbb\db\tools
|
||||
*/
|
||||
protected $db_tools;
|
||||
|
||||
@@ -103,7 +105,7 @@ class phpbb_search_fulltext_sphinx
|
||||
|
||||
/**
|
||||
* User object
|
||||
* @var phpbb_user
|
||||
* @var \phpbb\user
|
||||
*/
|
||||
protected $user;
|
||||
|
||||
@@ -122,7 +124,7 @@ class phpbb_search_fulltext_sphinx
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
* Creates a new phpbb_search_fulltext_postgres, which is used as a search backend
|
||||
* Creates a new \phpbb\search\fulltext_postgres, which is used as a search backend
|
||||
*
|
||||
* @param string|bool $error Any error that occurs is passed on through this reference variable otherwise false
|
||||
*/
|
||||
@@ -135,8 +137,8 @@ class phpbb_search_fulltext_sphinx
|
||||
$this->db = $db;
|
||||
$this->auth = $auth;
|
||||
|
||||
// Initialize phpbb_db_tools object
|
||||
$this->db_tools = new phpbb_db_tools($this->db);
|
||||
// Initialize \phpbb\db\tools object
|
||||
$this->db_tools = new \phpbb\db\tools($this->db);
|
||||
|
||||
if(!$this->config['fulltext_sphinx_id'])
|
||||
{
|
||||
@@ -151,7 +153,7 @@ class phpbb_search_fulltext_sphinx
|
||||
}
|
||||
|
||||
// Initialize sphinx client
|
||||
$this->sphinx = new SphinxClient();
|
||||
$this->sphinx = new \SphinxClient();
|
||||
|
||||
$this->sphinx->SetServer(($this->config['fulltext_sphinx_host'] ? $this->config['fulltext_sphinx_host'] : 'localhost'), ($this->config['fulltext_sphinx_port'] ? (int) $this->config['fulltext_sphinx_port'] : 9312));
|
||||
|
||||
@@ -250,7 +252,7 @@ class phpbb_search_fulltext_sphinx
|
||||
/* Now that we're sure everything was entered correctly,
|
||||
generate a config for the index. We use a config value
|
||||
fulltext_sphinx_id for this, as it should be unique. */
|
||||
$config_object = new phpbb_search_sphinx_config($this->config_file_data);
|
||||
$config_object = new \phpbb\search\sphinx\config($this->config_file_data);
|
||||
$config_data = array(
|
||||
'source source_phpbb_' . $this->id . '_main' => array(
|
||||
array('type', $this->dbtype . ' # mysql or pgsql'),
|
||||
|
@@ -7,6 +7,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\search\sphinx;
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
@@ -16,12 +18,12 @@ if (!defined('IN_PHPBB'))
|
||||
}
|
||||
|
||||
/**
|
||||
* phpbb_search_sphinx_config
|
||||
* \phpbb\search\sphinx\config
|
||||
* An object representing the sphinx configuration
|
||||
* Can read it from file and write it back out after modification
|
||||
* @package search
|
||||
*/
|
||||
class phpbb_search_sphinx_config
|
||||
class config
|
||||
{
|
||||
private $sections = array();
|
||||
|
||||
@@ -44,7 +46,7 @@ class phpbb_search_sphinx_config
|
||||
* Get a section object by its name
|
||||
*
|
||||
* @param string $name The name of the section that shall be returned
|
||||
* @return phpbb_search_sphinx_config_section The section object or null if none was found
|
||||
* @return \phpbb\search\sphinx\config_section The section object or null if none was found
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
@@ -53,7 +55,7 @@ class phpbb_search_sphinx_config
|
||||
for ($i = 0, $size = sizeof($this->sections); $i < $size; $i++)
|
||||
{
|
||||
// Make sure this is really a section object and not a comment
|
||||
if (($this->sections[$i] instanceof phpbb_search_sphinx_config_section) && $this->sections[$i]->get_name() == $name)
|
||||
if (($this->sections[$i] instanceof \phpbb\search\sphinx\config_section) && $this->sections[$i]->get_name() == $name)
|
||||
{
|
||||
return $this->sections[$i];
|
||||
}
|
||||
@@ -64,13 +66,13 @@ class phpbb_search_sphinx_config
|
||||
* Appends a new empty section to the end of the config
|
||||
*
|
||||
* @param string $name The name for the new section
|
||||
* @return phpbb_search_sphinx_config_section The newly created section object
|
||||
* @return \phpbb\search\sphinx\config_section The newly created section object
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function add_section($name)
|
||||
{
|
||||
$this->sections[] = new phpbb_search_sphinx_config_section($name, '');
|
||||
$this->sections[] = new \phpbb\search\sphinx\config_section($name, '');
|
||||
return $this->sections[sizeof($this->sections) - 1];
|
||||
}
|
||||
|
||||
@@ -109,7 +111,7 @@ class phpbb_search_sphinx_config
|
||||
// that way they're not deleted when reassembling the file from the sections
|
||||
if (!$line || $line[0] == '#')
|
||||
{
|
||||
$this->sections[] = new phpbb_search_sphinx_config_comment($config_file[$i]);
|
||||
$this->sections[] = new \phpbb\search\sphinx\config_comment($config_file[$i]);
|
||||
continue;
|
||||
}
|
||||
else
|
||||
@@ -143,7 +145,7 @@ class phpbb_search_sphinx_config
|
||||
|
||||
// And then we create the new section object
|
||||
$section_name = trim($section_name);
|
||||
$section = new phpbb_search_sphinx_config_section($section_name, $section_name_comment);
|
||||
$section = new \phpbb\search\sphinx\config_section($section_name, $section_name_comment);
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -158,10 +160,10 @@ class phpbb_search_sphinx_config
|
||||
// of this section so they're not deleted on reassembly
|
||||
if (!$line || $line[0] == '#')
|
||||
{
|
||||
$section->add_variable(new phpbb_search_sphinx_config_comment($config_file[$i]));
|
||||
$section->add_variable(new \phpbb\search\sphinx\config_comment($config_file[$i]));
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
// As long as we haven't yet actually found an opening bracket for this section
|
||||
// we treat everything as comments so it's not deleted either
|
||||
if (!$found_opening_bracket)
|
||||
@@ -174,13 +176,13 @@ class phpbb_search_sphinx_config
|
||||
}
|
||||
else
|
||||
{
|
||||
$section->add_variable(new phpbb_search_sphinx_config_comment($config_file[$i]));
|
||||
$section->add_variable(new \phpbb\search\sphinx\config_comment($config_file[$i]));
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// If we did not find a comment in this line or still add to the previous
|
||||
// If we did not find a comment in this line or still add to the previous
|
||||
// line's value ...
|
||||
if ($line || $in_value)
|
||||
{
|
||||
@@ -239,16 +241,16 @@ class phpbb_search_sphinx_config
|
||||
}
|
||||
}
|
||||
|
||||
// If a name and an equal sign were found then we have append a
|
||||
// If a name and an equal sign were found then we have append a
|
||||
// new variable object to the section
|
||||
if ($name && $found_assignment)
|
||||
{
|
||||
$section->add_variable(new phpbb_search_sphinx_config_variable(trim($name), trim($value), ($end_section) ? '' : $comment));
|
||||
$section->add_variable(new \phpbb\search\sphinx\config_variable(trim($name), trim($value), ($end_section) ? '' : $comment));
|
||||
continue;
|
||||
}
|
||||
|
||||
/* If we found a closing curly bracket this section has been completed
|
||||
and we can append it to the section list and continue with looking for
|
||||
and we can append it to the section list and continue with looking for
|
||||
the next section */
|
||||
if ($end_section)
|
||||
{
|
||||
@@ -262,7 +264,7 @@ class phpbb_search_sphinx_config
|
||||
// If we did not find anything meaningful up to here, then just treat it
|
||||
// as a comment
|
||||
$comment = ($skip_first) ? "\t" . substr(ltrim($config_file[$i]), 1) : $config_file[$i];
|
||||
$section->add_variable(new phpbb_search_sphinx_config_comment($comment));
|
||||
$section->add_variable(new \phpbb\search\sphinx\config_comment($comment));
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -7,6 +7,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\search\sphinx;
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
@@ -16,10 +18,10 @@ if (!defined('IN_PHPBB'))
|
||||
}
|
||||
|
||||
/**
|
||||
* phpbb_search_sphinx_config_comment
|
||||
* \phpbb\search\sphinx\config_comment
|
||||
* Represents a comment inside the sphinx configuration
|
||||
*/
|
||||
class phpbb_search_sphinx_config_comment
|
||||
class config_comment
|
||||
{
|
||||
private $exact_string;
|
||||
|
||||
|
@@ -7,6 +7,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\search\sphinx;
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
@@ -16,10 +18,10 @@ if (!defined('IN_PHPBB'))
|
||||
}
|
||||
|
||||
/**
|
||||
* phpbb_search_sphinx_config_section
|
||||
* \phpbb\search\sphinx\config_section
|
||||
* Represents a single section inside the sphinx configuration
|
||||
*/
|
||||
class phpbb_search_sphinx_config_section
|
||||
class config_section
|
||||
{
|
||||
private $name;
|
||||
private $comment;
|
||||
@@ -45,7 +47,7 @@ class phpbb_search_sphinx_config_section
|
||||
/**
|
||||
* Add a variable object to the list of variables in this section
|
||||
*
|
||||
* @param phpbb_search_sphinx_config_variable $variable The variable object
|
||||
* @param \phpbb\search\sphinx\config_variable $variable The variable object
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
@@ -82,7 +84,7 @@ class phpbb_search_sphinx_config_section
|
||||
* Get a variable object by its name
|
||||
*
|
||||
* @param string $name The name of the variable that shall be returned
|
||||
* @return phpbb_search_sphinx_config_section The first variable object from this section with the
|
||||
* @return \phpbb\search\sphinx\config_section The first variable object from this section with the
|
||||
* given name or null if none was found
|
||||
*
|
||||
* @access public
|
||||
@@ -92,7 +94,7 @@ class phpbb_search_sphinx_config_section
|
||||
for ($i = 0, $size = sizeof($this->variables); $i < $size; $i++)
|
||||
{
|
||||
// Make sure this is a variable object and not a comment
|
||||
if (($this->variables[$i] instanceof phpbb_search_sphinx_config_variable) && $this->variables[$i]->get_name() == $name)
|
||||
if (($this->variables[$i] instanceof \phpbb\search\sphinx\config_variable) && $this->variables[$i]->get_name() == $name)
|
||||
{
|
||||
return $this->variables[$i];
|
||||
}
|
||||
@@ -111,7 +113,7 @@ class phpbb_search_sphinx_config_section
|
||||
for ($i = 0, $size = sizeof($this->variables); $i < $size; $i++)
|
||||
{
|
||||
// Make sure this is a variable object and not a comment
|
||||
if (($this->variables[$i] instanceof phpbb_search_sphinx_config_variable) && $this->variables[$i]->get_name() == $name)
|
||||
if (($this->variables[$i] instanceof \phpbb\search\sphinx\config_variable) && $this->variables[$i]->get_name() == $name)
|
||||
{
|
||||
array_splice($this->variables, $i, 1);
|
||||
$i--;
|
||||
@@ -124,13 +126,13 @@ class phpbb_search_sphinx_config_section
|
||||
*
|
||||
* @param string $name The name for the new variable
|
||||
* @param string $value The value for the new variable
|
||||
* @return phpbb_search_sphinx_config_variable Variable object that was created
|
||||
* @return \phpbb\search\sphinx\config_variable Variable object that was created
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function create_variable($name, $value)
|
||||
{
|
||||
$this->variables[] = new phpbb_search_sphinx_config_variable($name, $value, '');
|
||||
$this->variables[] = new \phpbb\search\sphinx\config_variable($name, $value, '');
|
||||
return $this->variables[sizeof($this->variables) - 1];
|
||||
}
|
||||
|
||||
|
@@ -7,6 +7,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\search\sphinx;
|
||||
|
||||
/**
|
||||
* @ignore
|
||||
*/
|
||||
@@ -16,10 +18,10 @@ if (!defined('IN_PHPBB'))
|
||||
}
|
||||
|
||||
/**
|
||||
* phpbb_search_sphinx_config_variable
|
||||
* \phpbb\search\sphinx\config_variable
|
||||
* Represents a single variable inside the sphinx configuration
|
||||
*/
|
||||
class phpbb_search_sphinx_config_variable
|
||||
class config_variable
|
||||
{
|
||||
private $name;
|
||||
private $value;
|
||||
|
Reference in New Issue
Block a user