1
0
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:
Andreas Fischer
2013-10-10 23:39:09 +02:00
622 changed files with 12016 additions and 7747 deletions

View File

@@ -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();

View File

@@ -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
*/

View File

@@ -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:

View File

@@ -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
*/

View File

@@ -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'),

View File

@@ -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));
}
}

View File

@@ -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;

View File

@@ -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];
}

View File

@@ -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;