mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-28 06:08:52 +00:00
[feature/oauth] Merge branch 'develop' of git://github.com/phpbb/phpbb3 into feature/oauth
Conflicts: phpBB/composer.json phpBB/composer.lock phpBB/develop/create_schema_files.php phpBB/includes/ucp/ucp_register.php PHPBB3-11673
This commit is contained in:
commit
3a6b3d7c2b
239 changed files with 5288 additions and 5475 deletions
|
@ -121,6 +121,7 @@ if (sizeof($package->old_packages))
|
|||
|
||||
$package->run_command('cp -Rp ' . $package->get('dest_dir') . '/docs ' . $dest_filename_dir);
|
||||
$package->run_command('cp -Rp ' . $package->get('dest_dir') . '/install ' . $dest_filename_dir);
|
||||
$package->run_command('cp -Rp ' . $package->get('dest_dir') . '/vendor ' . $dest_filename_dir);
|
||||
|
||||
$package->run_command('mkdir ' . $dest_filename_dir . '/install/update');
|
||||
$package->run_command('mkdir ' . $dest_filename_dir . '/install/update/old');
|
||||
|
@ -256,6 +257,7 @@ $update_info = array(
|
|||
// Copy the install files to their respective locations
|
||||
$package->run_command('cp -Rp ' . $package->get('dest_dir') . '/docs ' . $package->get('patch_directory'));
|
||||
$package->run_command('cp -Rp ' . $package->get('dest_dir') . '/install ' . $package->get('patch_directory'));
|
||||
$package->run_command('cp -Rp ' . $package->get('dest_dir') . '/vendor ' . $package->get('patch_directory'));
|
||||
|
||||
// Remove some files
|
||||
chdir($package->get('patch_directory') . '/install');
|
||||
|
|
|
@ -1,12 +1,30 @@
|
|||
<IfModule mod_rewrite.c>
|
||||
RewriteEngine on
|
||||
|
||||
#
|
||||
# Uncomment the statement below if you want to make use of
|
||||
# HTTP authentication and it does not already work.
|
||||
# This could be required if you are for example using PHP via Apache CGI.
|
||||
#
|
||||
#<IfModule mod_rewrite.c>
|
||||
#RewriteEngine on
|
||||
#RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
|
||||
#</IfModule>
|
||||
|
||||
#
|
||||
# The following 3 lines will rewrite URLs passed through the front controller
|
||||
# to not require app.php in the actual URL. In other words, a controller is
|
||||
# by default accessed at /app.php/my/controller, but can also be accessed at
|
||||
# /my/controller
|
||||
#
|
||||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteCond %{REQUEST_FILENAME} !-d
|
||||
RewriteRule ^(.*)$ app.php [QSA,L]
|
||||
|
||||
#
|
||||
# If symbolic links are not already being followed,
|
||||
# uncomment the line below.
|
||||
# http://anothersysadmin.wordpress.com/2008/06/10/mod_rewrite-forbidden-403-with-apache-228/
|
||||
#
|
||||
#Options +FollowSymLinks
|
||||
</IfModule>
|
||||
|
||||
<Files "config.php">
|
||||
Order Allow,Deny
|
||||
|
|
|
@ -50,7 +50,7 @@ $module_id = request_var('i', '');
|
|||
$mode = request_var('mode', '');
|
||||
|
||||
// Set custom style for admin area
|
||||
$phpbb_style->set_custom_style('admin', $phpbb_admin_path . 'style', array(), '');
|
||||
$template->set_custom_style('adm', $phpbb_admin_path . 'style');
|
||||
$template->assign_var('T_ASSETS_PATH', $phpbb_root_path . 'assets');
|
||||
$template->assign_var('T_TEMPLATE_PATH', $phpbb_admin_path . 'style');
|
||||
|
||||
|
|
|
@ -127,8 +127,10 @@ phpbb.addAjaxCallback('activate_deactivate', function(res) {
|
|||
* The removes the parent row of the link or form that triggered the callback,
|
||||
* and is good for stuff like the removal of forums.
|
||||
*/
|
||||
phpbb.addAjaxCallback('row_delete', function() {
|
||||
phpbb.addAjaxCallback('row_delete', function(res) {
|
||||
if (res.SUCCESS !== false) {
|
||||
$(this).parents('tr').remove();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
|
|
@ -109,27 +109,14 @@
|
|||
<!-- ENDIF -->
|
||||
</fieldset>
|
||||
|
||||
<!-- IF not S_UP_TO_DATE -->
|
||||
|
||||
<form id="install_dbupdate" method="post" action="{U_DB_UPDATE_ACTION}">
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<p>{L_UPDATE_DATABASE_EXPLAIN}</p>
|
||||
<input class="button1" type="submit" name="db_update" value="{L_UPDATE_DATABASE}" />
|
||||
</fieldset>
|
||||
|
||||
</form>
|
||||
|
||||
<!-- ELSE -->
|
||||
<form id="install_update" method="post" action="{U_ACTION}">
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<p>{L_CHECK_FILES_UP_TO_DATE}</p>
|
||||
<p>{L_CHECK_FILES_EXPLAIN}</p>
|
||||
<input class="button1" type="submit" name="submit" value="{L_CHECK_FILES}" />
|
||||
</fieldset>
|
||||
|
||||
</form>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- ELSEIF S_DB_UPDATE -->
|
||||
|
||||
|
@ -155,18 +142,10 @@
|
|||
|
||||
<!-- ELSE -->
|
||||
|
||||
<h1>{L_UPDATE_DB_SUCCESS}</h1>
|
||||
|
||||
<br /><br />
|
||||
|
||||
<form id="install_update" method="post" action="{U_ACTION}">
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<p>{L_CHECK_FILES_EXPLAIN}</p>
|
||||
<input class="button1" type="submit" name="submit" value="{L_CHECK_FILES}" />
|
||||
</fieldset>
|
||||
|
||||
</form>
|
||||
<div class="successbox">
|
||||
<h3>{L_UPDATE_SUCCESS}</h3>
|
||||
<p>{L_EVERYTHING_UP_TO_DATE}</p>
|
||||
</div>
|
||||
|
||||
<!-- ENDIF -->
|
||||
|
||||
|
@ -174,10 +153,18 @@
|
|||
|
||||
<!-- IF S_ALL_UP_TO_DATE -->
|
||||
|
||||
<div class="successbox">
|
||||
<h3>{L_UPDATE_SUCCESS}</h3>
|
||||
<h1>{L_UPDATE_FILE_SUCCESS}</h1>
|
||||
<p>{L_ALL_FILES_UP_TO_DATE}</p>
|
||||
</div>
|
||||
|
||||
<p>{L_UPDATE_DATABASE_EXPLAIN}</p>
|
||||
|
||||
<form id="install_dbupdate" method="post" action="{U_DB_UPDATE_ACTION}">
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<input class="button1" type="submit" name="db_update" value="{L_UPDATE_DATABASE}" />
|
||||
</fieldset>
|
||||
|
||||
</form>
|
||||
|
||||
<!-- ELSE -->
|
||||
<h1>{L_COLLECTED_INFORMATION}</h1>
|
||||
|
|
|
@ -22,7 +22,7 @@ $auth->acl($user->data);
|
|||
$user->setup();
|
||||
|
||||
// Set custom template for admin area
|
||||
$phpbb_style->set_custom_style('admin', $phpbb_admin_path . 'style', array(), '');
|
||||
$template->set_custom_style('adm', $phpbb_admin_path . 'style');
|
||||
|
||||
$template->set_filenames(array(
|
||||
'body' => 'colour_swatch.html')
|
||||
|
|
|
@ -24,7 +24,6 @@ $user->session_begin();
|
|||
$auth->acl($user->data);
|
||||
$user->setup('app');
|
||||
|
||||
$symfony_request = phpbb_create_symfony_request($request);
|
||||
$http_kernel = $phpbb_container->get('http_kernel');
|
||||
$response = $http_kernel->handle($symfony_request);
|
||||
$response->send();
|
||||
|
|
|
@ -109,6 +109,9 @@ $db = $phpbb_container->get('dbal.conn');
|
|||
// make sure request_var uses this request instance
|
||||
request_var('', 0, false, false, $request); // "dependency injection" for a function
|
||||
|
||||
// Create a Symfony Request object from our phpbb_request object
|
||||
$symfony_request = phpbb_create_symfony_request($request);
|
||||
|
||||
// Grab global variables, re-cache if necessary
|
||||
$config = $phpbb_container->get('config');
|
||||
set_config(null, null, null, $config);
|
||||
|
@ -121,7 +124,6 @@ $phpbb_extension_manager = $phpbb_container->get('ext.manager');
|
|||
$phpbb_subscriber_loader = $phpbb_container->get('event.subscriber_loader');
|
||||
|
||||
$template = $phpbb_container->get('template');
|
||||
$phpbb_style = $phpbb_container->get('style');
|
||||
|
||||
// Add own hook handler
|
||||
require($phpbb_root_path . 'includes/hooks/index.' . $phpEx);
|
||||
|
|
|
@ -2,12 +2,12 @@
|
|||
"minimum-stability": "beta",
|
||||
"require": {
|
||||
"lusitanian/oauth": "0.2.*",
|
||||
"symfony/config": "2.1.*",
|
||||
"symfony/dependency-injection": "2.1.*",
|
||||
"symfony/event-dispatcher": "2.1.*",
|
||||
"symfony/http-kernel": "2.1.*",
|
||||
"symfony/routing": "2.1.*",
|
||||
"symfony/yaml": "2.1.*",
|
||||
"symfony/config": "2.3.*",
|
||||
"symfony/dependency-injection": "2.3.*",
|
||||
"symfony/event-dispatcher": "2.3.*",
|
||||
"symfony/http-kernel": "2.3.*",
|
||||
"symfony/routing": "2.3.*",
|
||||
"symfony/yaml": "2.3.*",
|
||||
"twig/twig": "1.13.*"
|
||||
},
|
||||
"require-dev": {
|
||||
|
|
480
phpBB/composer.lock
generated
480
phpBB/composer.lock
generated
|
@ -3,7 +3,7 @@
|
|||
"This file locks the dependencies of your project to a known state",
|
||||
"Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file"
|
||||
],
|
||||
"hash": "1be626fe7a2e4d450a6e8d67b9a31fb4",
|
||||
"hash": "a14960de85feb64fdb19eabd165cc09b",
|
||||
"packages": [
|
||||
{
|
||||
"name": "lusitanian/oauth",
|
||||
|
@ -69,29 +69,74 @@
|
|||
"time": "2013-08-29 21:40:04"
|
||||
},
|
||||
{
|
||||
"name": "symfony/config",
|
||||
"version": "v2.1.11",
|
||||
"target-dir": "Symfony/Component/Config",
|
||||
"name": "psr/log",
|
||||
"version": "1.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Config.git",
|
||||
"reference": "v2.1.11"
|
||||
"url": "https://github.com/php-fig/log.git",
|
||||
"reference": "fe0936ee26643249e916849d48e3a51d5f5e278b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Config/zipball/v2.1.11",
|
||||
"reference": "v2.1.11",
|
||||
"url": "https://api.github.com/repos/php-fig/log/zipball/fe0936ee26643249e916849d48e3a51d5f5e278b",
|
||||
"reference": "fe0936ee26643249e916849d48e3a51d5f5e278b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.3"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\Config": ""
|
||||
"Psr\\Log\\": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "PHP-FIG",
|
||||
"homepage": "http://www.php-fig.org/"
|
||||
}
|
||||
],
|
||||
"description": "Common interface for logging libraries",
|
||||
"keywords": [
|
||||
"log",
|
||||
"psr",
|
||||
"psr-3"
|
||||
],
|
||||
"time": "2012-12-21 11:40:51"
|
||||
},
|
||||
{
|
||||
"name": "symfony/config",
|
||||
"version": "v2.3.4",
|
||||
"target-dir": "Symfony/Component/Config",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Config.git",
|
||||
"reference": "65a927c15ca5a911ba2fa277a5457fa8129505b0"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Config/zipball/65a927c15ca5a911ba2fa277a5457fa8129505b0",
|
||||
"reference": "65a927c15ca5a911ba2fa277a5457fa8129505b0",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.3",
|
||||
"symfony/filesystem": "~2.3"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.3-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\Config\\": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
|
@ -107,40 +152,103 @@
|
|||
],
|
||||
"description": "Symfony Config Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2013-05-09 15:22:40"
|
||||
"time": "2013-08-06 05:49:23"
|
||||
},
|
||||
{
|
||||
"name": "symfony/dependency-injection",
|
||||
"version": "v2.1.11",
|
||||
"target-dir": "Symfony/Component/DependencyInjection",
|
||||
"name": "symfony/debug",
|
||||
"version": "v2.3.4",
|
||||
"target-dir": "Symfony/Component/Debug",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/DependencyInjection.git",
|
||||
"reference": "v2.1.11"
|
||||
"url": "https://github.com/symfony/Debug.git",
|
||||
"reference": "729f6d19cfc401c4942e43fcc1059103bd6df130"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/v2.1.11",
|
||||
"reference": "v2.1.11",
|
||||
"url": "https://api.github.com/repos/symfony/Debug/zipball/729f6d19cfc401c4942e43fcc1059103bd6df130",
|
||||
"reference": "729f6d19cfc401c4942e43fcc1059103bd6df130",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.3"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/config": "2.1.*",
|
||||
"symfony/yaml": "2.1.*"
|
||||
"symfony/http-foundation": "~2.1",
|
||||
"symfony/http-kernel": "~2.1"
|
||||
},
|
||||
"suggest": {
|
||||
"symfony/config": "2.1.*",
|
||||
"symfony/yaml": "2.1.*"
|
||||
"symfony/class-loader": "",
|
||||
"symfony/http-foundation": "",
|
||||
"symfony/http-kernel": ""
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\DependencyInjection": ""
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.3-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\Debug\\": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony Debug Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2013-08-08 14:16:10"
|
||||
},
|
||||
{
|
||||
"name": "symfony/dependency-injection",
|
||||
"version": "v2.3.4",
|
||||
"target-dir": "Symfony/Component/DependencyInjection",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/DependencyInjection.git",
|
||||
"reference": "3678aa969e5bfeb8515a1f3047c63e8104723f5c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/3678aa969e5bfeb8515a1f3047c63e8104723f5c",
|
||||
"reference": "3678aa969e5bfeb8515a1f3047c63e8104723f5c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.3"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/config": "~2.2",
|
||||
"symfony/yaml": "~2.0"
|
||||
},
|
||||
"suggest": {
|
||||
"symfony/config": "",
|
||||
"symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
|
||||
"symfony/yaml": ""
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.3-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\DependencyInjection\\": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
|
@ -156,39 +264,45 @@
|
|||
],
|
||||
"description": "Symfony DependencyInjection Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2013-05-03 05:08:13"
|
||||
"time": "2013-07-25 17:13:25"
|
||||
},
|
||||
{
|
||||
"name": "symfony/event-dispatcher",
|
||||
"version": "v2.1.11",
|
||||
"version": "v2.3.4",
|
||||
"target-dir": "Symfony/Component/EventDispatcher",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/EventDispatcher.git",
|
||||
"reference": "v2.1.11"
|
||||
"reference": "41c9826457c65fa3cf746f214985b7ca9cba42f8"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/v2.1.11",
|
||||
"reference": "v2.1.11",
|
||||
"url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/41c9826457c65fa3cf746f214985b7ca9cba42f8",
|
||||
"reference": "41c9826457c65fa3cf746f214985b7ca9cba42f8",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.3"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/dependency-injection": "2.1.*"
|
||||
"symfony/dependency-injection": "~2.0"
|
||||
},
|
||||
"suggest": {
|
||||
"symfony/dependency-injection": "2.1.*",
|
||||
"symfony/http-kernel": "2.1.*"
|
||||
"symfony/dependency-injection": "",
|
||||
"symfony/http-kernel": ""
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\EventDispatcher": ""
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.3-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\EventDispatcher\\": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
|
@ -204,31 +318,35 @@
|
|||
],
|
||||
"description": "Symfony EventDispatcher Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2013-02-11 11:26:14"
|
||||
"time": "2013-07-21 12:12:18"
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-foundation",
|
||||
"version": "v2.1.12",
|
||||
"target-dir": "Symfony/Component/HttpFoundation",
|
||||
"name": "symfony/filesystem",
|
||||
"version": "v2.3.4",
|
||||
"target-dir": "Symfony/Component/Filesystem",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/HttpFoundation.git",
|
||||
"reference": "79fd1ab0b85e782d342e83799b39b729fd1a30ee"
|
||||
"url": "https://github.com/symfony/Filesystem.git",
|
||||
"reference": "87acbbef6d35ba649f96f09cc572c45119b360c3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/79fd1ab0b85e782d342e83799b39b729fd1a30ee",
|
||||
"reference": "79fd1ab0b85e782d342e83799b39b729fd1a30ee",
|
||||
"url": "https://api.github.com/repos/symfony/Filesystem/zipball/87acbbef6d35ba649f96f09cc572c45119b360c3",
|
||||
"reference": "87acbbef6d35ba649f96f09cc572c45119b360c3",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.3"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.3-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\HttpFoundation": "",
|
||||
"SessionHandlerInterface": "Symfony/Component/HttpFoundation/Resources/stubs"
|
||||
"Symfony\\Component\\Filesystem\\": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
|
@ -245,54 +363,114 @@
|
|||
"homepage": "http://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony Filesystem Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2013-07-21 12:12:18"
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-foundation",
|
||||
"version": "v2.3.4",
|
||||
"target-dir": "Symfony/Component/HttpFoundation",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/HttpFoundation.git",
|
||||
"reference": "fdf130fe65457aedbc4639a22f4ef9d3be5c002c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/fdf130fe65457aedbc4639a22f4ef9d3be5c002c",
|
||||
"reference": "fdf130fe65457aedbc4639a22f4ef9d3be5c002c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.3"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.3-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\HttpFoundation\\": ""
|
||||
},
|
||||
"classmap": [
|
||||
"Symfony/Component/HttpFoundation/Resources/stubs"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Fabien Potencier",
|
||||
"email": "fabien@symfony.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "http://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Symfony HttpFoundation Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2013-08-07 13:58:42"
|
||||
"time": "2013-08-26 05:49:51"
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-kernel",
|
||||
"version": "v2.1.11",
|
||||
"version": "v2.3.4",
|
||||
"target-dir": "Symfony/Component/HttpKernel",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/HttpKernel.git",
|
||||
"reference": "v2.1.11"
|
||||
"reference": "9d35da40f07bbe7a4f8dfbc41555d2b69de674bf"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/HttpKernel/zipball/v2.1.11",
|
||||
"reference": "v2.1.11",
|
||||
"url": "https://api.github.com/repos/symfony/HttpKernel/zipball/9d35da40f07bbe7a4f8dfbc41555d2b69de674bf",
|
||||
"reference": "9d35da40f07bbe7a4f8dfbc41555d2b69de674bf",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.3",
|
||||
"symfony/event-dispatcher": "2.1.*",
|
||||
"symfony/http-foundation": "2.1.*"
|
||||
"psr/log": "~1.0",
|
||||
"symfony/debug": "~2.3",
|
||||
"symfony/event-dispatcher": "~2.1",
|
||||
"symfony/http-foundation": "~2.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/browser-kit": "2.1.*",
|
||||
"symfony/class-loader": "2.1.*",
|
||||
"symfony/config": "2.1.*",
|
||||
"symfony/console": "2.1.*",
|
||||
"symfony/dependency-injection": "2.1.*",
|
||||
"symfony/finder": "2.1.*",
|
||||
"symfony/process": "2.1.*",
|
||||
"symfony/routing": "2.1.*"
|
||||
"symfony/browser-kit": "~2.2",
|
||||
"symfony/class-loader": "~2.1",
|
||||
"symfony/config": "~2.0",
|
||||
"symfony/console": "~2.2",
|
||||
"symfony/dependency-injection": "~2.0",
|
||||
"symfony/finder": "~2.0",
|
||||
"symfony/process": "~2.0",
|
||||
"symfony/routing": "~2.2",
|
||||
"symfony/stopwatch": "~2.2",
|
||||
"symfony/templating": "~2.2"
|
||||
},
|
||||
"suggest": {
|
||||
"symfony/browser-kit": "2.1.*",
|
||||
"symfony/class-loader": "2.1.*",
|
||||
"symfony/config": "2.1.*",
|
||||
"symfony/console": "2.1.*",
|
||||
"symfony/dependency-injection": "2.1.*",
|
||||
"symfony/finder": "2.1.*"
|
||||
"symfony/browser-kit": "",
|
||||
"symfony/class-loader": "",
|
||||
"symfony/config": "",
|
||||
"symfony/console": "",
|
||||
"symfony/dependency-injection": "",
|
||||
"symfony/finder": ""
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\HttpKernel": ""
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.3-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\HttpKernel\\": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
|
@ -308,43 +486,49 @@
|
|||
],
|
||||
"description": "Symfony HttpKernel Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2013-06-02 12:29:05"
|
||||
"time": "2013-08-27 08:58:24"
|
||||
},
|
||||
{
|
||||
"name": "symfony/routing",
|
||||
"version": "v2.1.11",
|
||||
"version": "v2.3.4",
|
||||
"target-dir": "Symfony/Component/Routing",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Routing.git",
|
||||
"reference": "v2.1.11"
|
||||
"reference": "69af3f07dbf3ae93dd513dbc373f561cb2e7f143"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Routing/zipball/v2.1.11",
|
||||
"reference": "v2.1.11",
|
||||
"url": "https://api.github.com/repos/symfony/Routing/zipball/69af3f07dbf3ae93dd513dbc373f561cb2e7f143",
|
||||
"reference": "69af3f07dbf3ae93dd513dbc373f561cb2e7f143",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.3"
|
||||
},
|
||||
"require-dev": {
|
||||
"doctrine/common": ">=2.2,<3.0",
|
||||
"symfony/config": "2.1.*",
|
||||
"symfony/http-kernel": "2.1.*",
|
||||
"symfony/yaml": "2.1.*"
|
||||
"doctrine/common": "~2.2",
|
||||
"psr/log": "~1.0",
|
||||
"symfony/config": "~2.2",
|
||||
"symfony/yaml": "~2.0"
|
||||
},
|
||||
"suggest": {
|
||||
"doctrine/common": "~2.2",
|
||||
"symfony/config": "2.1.*",
|
||||
"symfony/yaml": "2.1.*"
|
||||
"doctrine/common": "",
|
||||
"symfony/config": "",
|
||||
"symfony/yaml": ""
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\Routing": ""
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.3-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\Routing\\": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
|
@ -360,32 +544,38 @@
|
|||
],
|
||||
"description": "Symfony Routing Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2013-05-06 10:48:41"
|
||||
"time": "2013-08-23 15:14:07"
|
||||
},
|
||||
{
|
||||
"name": "symfony/yaml",
|
||||
"version": "v2.1.11",
|
||||
"version": "v2.3.4",
|
||||
"target-dir": "Symfony/Component/Yaml",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Yaml.git",
|
||||
"reference": "v2.1.11"
|
||||
"reference": "5a279f1b5f5e1045a6c432354d9ea727ff3a9847"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Yaml/zipball/v2.1.11",
|
||||
"reference": "v2.1.11",
|
||||
"url": "https://api.github.com/repos/symfony/Yaml/zipball/5a279f1b5f5e1045a6c432354d9ea727ff3a9847",
|
||||
"reference": "5a279f1b5f5e1045a6c432354d9ea727ff3a9847",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3.3"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\Yaml": ""
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.3-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Symfony\\Component\\Yaml\\": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
|
@ -401,20 +591,20 @@
|
|||
],
|
||||
"description": "Symfony Yaml Component",
|
||||
"homepage": "http://symfony.com",
|
||||
"time": "2013-05-10 00:09:46"
|
||||
"time": "2013-08-24 15:26:22"
|
||||
},
|
||||
{
|
||||
"name": "twig/twig",
|
||||
"version": "v1.13.1",
|
||||
"version": "v1.13.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/fabpot/Twig.git",
|
||||
"reference": "v1.13.1"
|
||||
"reference": "6d6a1009427d1f398c9d40904147bf9f723d5755"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/fabpot/Twig/zipball/v1.13.1",
|
||||
"reference": "v1.13.1",
|
||||
"url": "https://api.github.com/repos/fabpot/Twig/zipball/6d6a1009427d1f398c9d40904147bf9f723d5755",
|
||||
"reference": "6d6a1009427d1f398c9d40904147bf9f723d5755",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -431,8 +621,9 @@
|
|||
"Twig_": "lib/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"BSD-3"
|
||||
"BSD-3-Clause"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
|
@ -449,7 +640,7 @@
|
|||
"keywords": [
|
||||
"templating"
|
||||
],
|
||||
"time": "2013-06-06 06:06:01"
|
||||
"time": "2013-08-03 15:35:31"
|
||||
}
|
||||
],
|
||||
"packages-dev": [
|
||||
|
@ -859,16 +1050,16 @@
|
|||
},
|
||||
{
|
||||
"name": "phpunit/php-timer",
|
||||
"version": "1.0.4",
|
||||
"version": "1.0.5",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "git://github.com/sebastianbergmann/php-timer.git",
|
||||
"reference": "1.0.4"
|
||||
"url": "https://github.com/sebastianbergmann/php-timer.git",
|
||||
"reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://github.com/sebastianbergmann/php-timer/zipball/1.0.4",
|
||||
"reference": "1.0.4",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/19689d4354b295ee3d8c54b4f42c3efb69cbc17c",
|
||||
"reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -895,24 +1086,24 @@
|
|||
}
|
||||
],
|
||||
"description": "Utility class for timing",
|
||||
"homepage": "http://www.phpunit.de/",
|
||||
"homepage": "https://github.com/sebastianbergmann/php-timer/",
|
||||
"keywords": [
|
||||
"timer"
|
||||
],
|
||||
"time": "2012-10-11 04:45:58"
|
||||
"time": "2013-08-02 07:42:54"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-token-stream",
|
||||
"version": "1.1.5",
|
||||
"version": "1.2.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "git://github.com/sebastianbergmann/php-token-stream.git",
|
||||
"reference": "1.1.5"
|
||||
"url": "https://github.com/sebastianbergmann/php-token-stream.git",
|
||||
"reference": "31babf400e5b5868573bf49a000a3519d3978233"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://github.com/sebastianbergmann/php-token-stream/zipball/1.1.5",
|
||||
"reference": "1.1.5",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/31babf400e5b5868573bf49a000a3519d3978233",
|
||||
"reference": "31babf400e5b5868573bf49a000a3519d3978233",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -920,6 +1111,11 @@
|
|||
"php": ">=5.3.3"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "1.2-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"classmap": [
|
||||
"PHP/"
|
||||
|
@ -940,24 +1136,24 @@
|
|||
}
|
||||
],
|
||||
"description": "Wrapper around PHP's tokenizer extension.",
|
||||
"homepage": "http://www.phpunit.de/",
|
||||
"homepage": "https://github.com/sebastianbergmann/php-token-stream/",
|
||||
"keywords": [
|
||||
"tokenizer"
|
||||
],
|
||||
"time": "2012-10-11 04:47:14"
|
||||
"time": "2013-08-04 05:57:48"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/phpunit",
|
||||
"version": "3.7.22",
|
||||
"version": "3.7.24",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/phpunit.git",
|
||||
"reference": "3.7.22"
|
||||
"reference": "af7b77ccb5c64458bdfca95665d29558d1df7d08"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/3.7.22",
|
||||
"reference": "3.7.22",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/af7b77ccb5c64458bdfca95665d29558d1df7d08",
|
||||
"reference": "af7b77ccb5c64458bdfca95665d29558d1df7d08",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -969,7 +1165,7 @@
|
|||
"phpunit/php-code-coverage": "~1.2.1",
|
||||
"phpunit/php-file-iterator": ">=1.3.1",
|
||||
"phpunit/php-text-template": ">=1.1.1",
|
||||
"phpunit/php-timer": "~1.0.2",
|
||||
"phpunit/php-timer": ">=1.0.4",
|
||||
"phpunit/phpunit-mock-objects": "~1.2.0",
|
||||
"symfony/yaml": "~2.0"
|
||||
},
|
||||
|
@ -1018,7 +1214,7 @@
|
|||
"testing",
|
||||
"xunit"
|
||||
],
|
||||
"time": "2013-07-06 06:29:15"
|
||||
"time": "2013-08-09 06:58:24"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/phpunit-mock-objects",
|
||||
|
@ -1071,17 +1267,17 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/browser-kit",
|
||||
"version": "v2.1.11",
|
||||
"version": "v2.1.12",
|
||||
"target-dir": "Symfony/Component/BrowserKit",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/BrowserKit.git",
|
||||
"reference": "v2.1.11"
|
||||
"reference": "0bb8f07107a2911db0fe49c39f96b5018e5ab678"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/BrowserKit/zipball/v2.1.11",
|
||||
"reference": "v2.1.11",
|
||||
"url": "https://api.github.com/repos/symfony/BrowserKit/zipball/0bb8f07107a2911db0fe49c39f96b5018e5ab678",
|
||||
"reference": "0bb8f07107a2911db0fe49c39f96b5018e5ab678",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -1121,17 +1317,17 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/css-selector",
|
||||
"version": "v2.1.11",
|
||||
"version": "v2.1.12",
|
||||
"target-dir": "Symfony/Component/CssSelector",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/CssSelector.git",
|
||||
"reference": "v2.1.11"
|
||||
"reference": "bf7bb82a099dfb26b018daf70ad1985fea4d2997"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/CssSelector/zipball/v2.1.11",
|
||||
"reference": "v2.1.11",
|
||||
"url": "https://api.github.com/repos/symfony/CssSelector/zipball/bf7bb82a099dfb26b018daf70ad1985fea4d2997",
|
||||
"reference": "bf7bb82a099dfb26b018daf70ad1985fea4d2997",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -1163,17 +1359,17 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/dom-crawler",
|
||||
"version": "v2.1.11",
|
||||
"version": "v2.1.12",
|
||||
"target-dir": "Symfony/Component/DomCrawler",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/DomCrawler.git",
|
||||
"reference": "v2.1.11"
|
||||
"reference": "bedfd7eb44e3b1224d1e18335d2e36bbbed26cbe"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/DomCrawler/zipball/v2.1.11",
|
||||
"reference": "v2.1.11",
|
||||
"url": "https://api.github.com/repos/symfony/DomCrawler/zipball/bedfd7eb44e3b1224d1e18335d2e36bbbed26cbe",
|
||||
"reference": "bedfd7eb44e3b1224d1e18335d2e36bbbed26cbe",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -1211,17 +1407,17 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/finder",
|
||||
"version": "v2.1.11",
|
||||
"version": "v2.1.12",
|
||||
"target-dir": "Symfony/Component/Finder",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Finder.git",
|
||||
"reference": "v2.1.11"
|
||||
"reference": "0dbc61194b58bc513e003789853ddfe0aea8cf33"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Finder/zipball/v2.1.11",
|
||||
"reference": "v2.1.11",
|
||||
"url": "https://api.github.com/repos/symfony/Finder/zipball/0dbc61194b58bc513e003789853ddfe0aea8cf33",
|
||||
"reference": "0dbc61194b58bc513e003789853ddfe0aea8cf33",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -1253,17 +1449,17 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/process",
|
||||
"version": "v2.1.11",
|
||||
"version": "v2.1.12",
|
||||
"target-dir": "Symfony/Component/Process",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/Process.git",
|
||||
"reference": "v2.1.11"
|
||||
"reference": "be3cac4d0575bc547a0f2e85ceb4f19a5a8b3025"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/Process/zipball/v2.1.11",
|
||||
"reference": "v2.1.11",
|
||||
"url": "https://api.github.com/repos/symfony/Process/zipball/be3cac4d0575bc547a0f2e85ceb4f19a5a8b3025",
|
||||
"reference": "be3cac4d0575bc547a0f2e85ceb4f19a5a8b3025",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
|
@ -8,6 +8,12 @@ imports:
|
|||
- { resource: auth_providers.yml }
|
||||
|
||||
services:
|
||||
acl.permissions:
|
||||
class: phpbb_permissions
|
||||
arguments:
|
||||
- @dispatcher
|
||||
- @user
|
||||
|
||||
auth:
|
||||
class: phpbb_auth
|
||||
|
||||
|
@ -84,6 +90,7 @@ services:
|
|||
arguments:
|
||||
- @template
|
||||
- @user
|
||||
- @request
|
||||
- %core.root_path%
|
||||
- %core.php_ext%
|
||||
|
||||
|
@ -92,7 +99,7 @@ services:
|
|||
arguments:
|
||||
- @user
|
||||
- @service_container
|
||||
- @style
|
||||
- @template
|
||||
|
||||
cron.task_collection:
|
||||
class: phpbb_di_service_collection
|
||||
|
@ -239,33 +246,12 @@ services:
|
|||
- %tables.notifications%
|
||||
- %tables.user_notifications%
|
||||
|
||||
php_ini:
|
||||
class: phpbb_php_ini
|
||||
|
||||
request:
|
||||
class: phpbb_request
|
||||
|
||||
style:
|
||||
class: phpbb_style
|
||||
arguments:
|
||||
- %core.root_path%
|
||||
- %core.php_ext%
|
||||
- @config
|
||||
- @user
|
||||
- @style.resource_locator
|
||||
- @style.path_provider_ext
|
||||
- @template
|
||||
|
||||
style.resource_locator:
|
||||
class: phpbb_style_resource_locator
|
||||
|
||||
style.path_provider_ext:
|
||||
class: phpbb_style_extension_path_provider
|
||||
arguments:
|
||||
- @ext.manager
|
||||
- @style.path_provider
|
||||
- %core.root_path%
|
||||
|
||||
style.path_provider:
|
||||
class: phpbb_style_path_provider
|
||||
|
||||
template:
|
||||
class: phpbb_template_twig
|
||||
arguments:
|
||||
|
|
0
phpBB/develop/blank.gif
Normal file
0
phpBB/develop/blank.gif
Normal file
0
phpBB/develop/blank.jpg
Normal file
0
phpBB/develop/blank.jpg
Normal file
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -183,6 +183,8 @@
|
|||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11662">PHPBB3-11662</a>] - "occured" should be "occurred"</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11670">PHPBB3-11670</a>] - Replace trademark ™ with ® on "Welcome to phpBB" install page</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11674">PHPBB3-11674</a>] - Do not include vendor folder if there are no dependencies.</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11524">PHPBB3-11524</a>] - MySQL Upgrader throws warnings on PHP 5.4</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11720">PHPBB3-11720</a>] - Reporting posts leads to white page error</li>
|
||||
</ul>
|
||||
<h4>Improvement</h4>
|
||||
<ul>
|
||||
|
@ -206,6 +208,7 @@
|
|||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11294">PHPBB3-11294</a>] - Update extension list in running tests doc</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11368">PHPBB3-11368</a>] - Latest pm reports row count</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11583">PHPBB3-11583</a>] - InnoDB supports FULLTEXT index since MySQL 5.6.4.</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11740">PHPBB3-11740</a>] - Update link in FAQ to Ideas Centre</li>
|
||||
</ul>
|
||||
<h4>Sub-task</h4>
|
||||
<ul>
|
||||
|
@ -231,6 +234,8 @@
|
|||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11529">PHPBB3-11529</a>] - Rename RUNNING_TESTS file to .md file to render it on GitHub</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11576">PHPBB3-11576</a>] - Make phpBB Test Suite MySQL behave at least as strict as phpBB MySQL driver</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11671">PHPBB3-11671</a>] - Add phing/phing to composer.json</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11752">PHPBB3-11752</a>] - Update phpBB.com URLs to https in email templates</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11753">PHPBB3-11753</a>] - Upgrade mysql_upgrader.php schema data.</li>
|
||||
</ul>
|
||||
|
||||
<a name="v3010"></a><h3>1.ii. Changes since 3.0.10</h3>
|
||||
|
|
|
@ -832,7 +832,7 @@ $sql = 'SELECT *
|
|||
$sql_ary = array(
|
||||
'somedata' => $my_string,
|
||||
'otherdata' => $an_int,
|
||||
'moredata' => $another_int
|
||||
'moredata' => $another_int,
|
||||
);
|
||||
|
||||
$db->sql_query('INSERT INTO ' . SOME_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_ary));
|
||||
|
@ -844,7 +844,7 @@ $db->sql_query('INSERT INTO ' . SOME_TABLE . ' ' . $db->sql_build_array('I
|
|||
$sql_ary = array(
|
||||
'somedata' => $my_string,
|
||||
'otherdata' => $an_int,
|
||||
'moredata' => $another_int
|
||||
'moredata' => $another_int,
|
||||
);
|
||||
|
||||
$sql = 'UPDATE ' . SOME_TABLE . '
|
||||
|
@ -937,20 +937,20 @@ $sql_array = array(
|
|||
|
||||
'FROM' => array(
|
||||
FORUMS_WATCH_TABLE => 'fw',
|
||||
FORUMS_TABLE => 'f'
|
||||
FORUMS_TABLE => 'f',
|
||||
),
|
||||
|
||||
'LEFT_JOIN' => array(
|
||||
array(
|
||||
'FROM' => array(FORUMS_TRACK_TABLE => 'ft'),
|
||||
'ON' => 'ft.user_id = ' . $user->data['user_id'] . ' AND ft.forum_id = f.forum_id'
|
||||
)
|
||||
'ON' => 'ft.user_id = ' . $user->data['user_id'] . ' AND ft.forum_id = f.forum_id',
|
||||
),
|
||||
),
|
||||
|
||||
'WHERE' => 'fw.user_id = ' . $user->data['user_id'] . '
|
||||
AND f.forum_id = fw.forum_id',
|
||||
|
||||
'ORDER_BY' => 'left_id'
|
||||
'ORDER_BY' => 'left_id',
|
||||
);
|
||||
|
||||
$sql = $db->sql_build_query('SELECT', $sql_array);
|
||||
|
@ -964,13 +964,13 @@ $sql_array = array(
|
|||
|
||||
'FROM' => array(
|
||||
FORUMS_WATCH_TABLE => 'fw',
|
||||
FORUMS_TABLE => 'f'
|
||||
FORUMS_TABLE => 'f',
|
||||
),
|
||||
|
||||
'WHERE' => 'fw.user_id = ' . $user->data['user_id'] . '
|
||||
AND f.forum_id = fw.forum_id',
|
||||
|
||||
'ORDER_BY' => 'left_id'
|
||||
'ORDER_BY' => 'left_id',
|
||||
);
|
||||
|
||||
if ($config['load_db_lastread'])
|
||||
|
@ -978,8 +978,8 @@ if ($config['load_db_lastread'])
|
|||
$sql_array['LEFT_JOIN'] = array(
|
||||
array(
|
||||
'FROM' => array(FORUMS_TRACK_TABLE => 'ft'),
|
||||
'ON' => 'ft.user_id = ' . $user->data['user_id'] . ' AND ft.forum_id = f.forum_id'
|
||||
)
|
||||
'ON' => 'ft.user_id = ' . $user->data['user_id'] . ' AND ft.forum_id = f.forum_id',
|
||||
),
|
||||
);
|
||||
|
||||
$sql_array['SELECT'] .= ', ft.mark_time ';
|
||||
|
|
|
@ -52,6 +52,36 @@ index_body_stat_blocks_before
|
|||
+ styles/subsilver2/template/index_body.html
|
||||
* Purpose: Add new statistic blocks above the Who Is Online and Board Statistics blocks
|
||||
|
||||
memberlist_body_username_append
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/memberlist_body.html
|
||||
+ styles/subsilver2/template/memberlist_body.html
|
||||
* Purpose: Add information after every username in the memberlist. Works in
|
||||
all display modes (leader, group and normal memberlist).
|
||||
|
||||
memberlist_body_username_prepend
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/memberlist_body.html
|
||||
+ styles/subsilver2/template/memberlist_body.html
|
||||
* Purpose: Add information before every username in the memberlist. Works in
|
||||
all display modes (leader, group and normal memberlist).
|
||||
|
||||
memberlist_view_user_statistics_after
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/memberlist_view.html
|
||||
+ styles/subsilver2/template/memberlist_view.html
|
||||
* Purpose: Add entries after the user statistics part of any user profile
|
||||
|
||||
memberlist_view_user_statistics_before
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/memberlist_view.html
|
||||
+ styles/subsilver2/template/memberlist_view.html
|
||||
* Purpose: Add entries before the user statistics part of any user profile
|
||||
|
||||
overall_footer_after
|
||||
===
|
||||
* Locations:
|
||||
|
@ -114,6 +144,36 @@ simple_footer_after
|
|||
* Location: styles/prosilver/template/simple_footer.html
|
||||
* Purpose: Add content directly prior to the `</body>` tag of the simple footer
|
||||
|
||||
topiclist_row_prepend
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/search_results.html
|
||||
+ styles/prosilver/template/viewforum_body.html
|
||||
+ styles/subsilver2/template/search_results.html
|
||||
+ styles/subsilver2/template/viewforum_body.html
|
||||
* Purpose: Add content into topic rows (inside the elements containing topic titles)
|
||||
|
||||
topiclist_row_append
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/search_results.html
|
||||
+ styles/prosilver/template/viewforum_body.html
|
||||
+ styles/subsilver2/template/search_results.html
|
||||
+ styles/subsilver2/template/viewforum_body.html
|
||||
* Purpose: Add content into topic rows (inside the elements containing topic titles)
|
||||
|
||||
ucp_pm_viewmessage_custom_fields_after
|
||||
===
|
||||
* Location: styles/prosilver/template/ucp_pm_viewmessage.html
|
||||
* Purpose: Add data after the custom fields on the user profile when viewing
|
||||
a private message
|
||||
|
||||
ucp_pm_viewmessage_custom_fields_before
|
||||
===
|
||||
* Location: styles/prosilver/template/ucp_pm_viewmessage.html
|
||||
* Purpose: Add data before the custom fields on the user profile when viewing
|
||||
a private message
|
||||
|
||||
ucp_pm_viewmessage_print_head_append
|
||||
===
|
||||
* Location: styles/prosilver/template/ucp_pm_viewmessage_print.html
|
||||
|
@ -133,6 +193,38 @@ viewtopic_body_footer_before
|
|||
and quick reply, directly before the jumpbox in Prosilver, breadcrumbs in
|
||||
Subsilver2.
|
||||
|
||||
viewtopic_body_post_buttons_after
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/viewtopic_body.html
|
||||
+ styles/subsilver2/template/viewtopic_body.html
|
||||
* Purpose: Add post button to posts (next to edit, quote etc), at the end of
|
||||
the list.
|
||||
|
||||
viewtopic_body_post_buttons_before
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/viewtopic_body.html
|
||||
+ styles/subsilver2/template/viewtopic_body.html
|
||||
* Purpose: Add post button to posts (next to edit, quote etc), at the start of
|
||||
the list.
|
||||
|
||||
viewtopic_body_postrow_custom_fields_after
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/viewtopic_body.html
|
||||
+ styles/subsilver2/template/viewtopic_body.html
|
||||
* Purpose: Add data after the custom fields on the user profile when viewing
|
||||
a post
|
||||
|
||||
viewtopic_body_postrow_custom_fields_before
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/viewtopic_body.html
|
||||
+ styles/subsilver2/template/viewtopic_body.html
|
||||
* Purpose: Add data before the custom fields on the user profile when viewing
|
||||
a post
|
||||
|
||||
viewtopic_topic_title_prepend
|
||||
===
|
||||
* Locations:
|
||||
|
|
|
@ -41,7 +41,7 @@ if (isset($_GET['avatar']))
|
|||
exit;
|
||||
}
|
||||
|
||||
require($phpbb_root_path . 'includes/class_loader.' . $phpEx);
|
||||
require($phpbb_root_path . 'phpbb/class_loader.' . $phpEx);
|
||||
|
||||
require($phpbb_root_path . 'includes/constants.' . $phpEx);
|
||||
require($phpbb_root_path . 'includes/functions.' . $phpEx);
|
||||
|
@ -50,7 +50,7 @@ if (isset($_GET['avatar']))
|
|||
require($phpbb_root_path . 'includes/utf/utf_tools.' . $phpEx);
|
||||
|
||||
// Setup class loader first
|
||||
$phpbb_class_loader = new phpbb_class_loader('phpbb_', "{$phpbb_root_path}includes/", $phpEx);
|
||||
$phpbb_class_loader = new phpbb_class_loader('phpbb_', "{$phpbb_root_path}phpbb/", $phpEx);
|
||||
$phpbb_class_loader->register();
|
||||
$phpbb_class_loader_ext = new phpbb_class_loader('phpbb_ext_', "{$phpbb_root_path}ext/", $phpEx);
|
||||
$phpbb_class_loader_ext->register();
|
||||
|
|
|
@ -379,6 +379,7 @@ class acp_modules
|
|||
$json_response->send(array(
|
||||
'MESSAGE_TITLE' => $user->lang('ERROR'),
|
||||
'MESSAGE_TEXT' => implode('<br />', $errors),
|
||||
'SUCCESS' => false,
|
||||
));
|
||||
}
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@ class acp_permission_roles
|
|||
|
||||
function main($id, $mode)
|
||||
{
|
||||
global $db, $user, $auth, $template, $cache;
|
||||
global $db, $user, $auth, $template, $cache, $phpbb_container;
|
||||
global $config, $phpbb_root_path, $phpbb_admin_path, $phpEx;
|
||||
|
||||
include_once($phpbb_root_path . 'includes/functions_user.' . $phpEx);
|
||||
|
@ -306,6 +306,8 @@ class acp_permission_roles
|
|||
trigger_error($user->lang['NO_ROLE_SELECTED'] . adm_back_link($this->u_action), E_USER_WARNING);
|
||||
}
|
||||
|
||||
$phpbb_permissions = $phpbb_container->get('acl.permissions');
|
||||
|
||||
$template->assign_vars(array(
|
||||
'S_EDIT' => true,
|
||||
|
||||
|
@ -314,9 +316,8 @@ class acp_permission_roles
|
|||
|
||||
'ROLE_NAME' => $role_row['role_name'],
|
||||
'ROLE_DESCRIPTION' => $role_row['role_description'],
|
||||
'L_ACL_TYPE' => $user->lang['ACL_TYPE_' . strtoupper($permission_type)],
|
||||
)
|
||||
);
|
||||
'L_ACL_TYPE' => $phpbb_permissions->get_type_lang($permission_type),
|
||||
));
|
||||
|
||||
// We need to fill the auth options array with ACL_NO options ;)
|
||||
$sql = 'SELECT auth_option_id, auth_option
|
||||
|
@ -456,7 +457,9 @@ class acp_permission_roles
|
|||
*/
|
||||
function display_auth_options($auth_options)
|
||||
{
|
||||
global $template, $user;
|
||||
global $template, $user, $phpbb_container;
|
||||
|
||||
$phpbb_permissions = $phpbb_container->get('acl.permissions');
|
||||
|
||||
$content_array = $categories = array();
|
||||
$key_sort_array = array(0);
|
||||
|
@ -473,7 +476,7 @@ class acp_permission_roles
|
|||
foreach ($content_array as $cat => $cat_array)
|
||||
{
|
||||
$template->assign_block_vars('auth', array(
|
||||
'CAT_NAME' => $user->lang['permission_cat'][$cat],
|
||||
'CAT_NAME' => $phpbb_permissions->get_category_lang($cat),
|
||||
|
||||
'S_YES' => ($cat_array['S_YES'] && !$cat_array['S_NEVER'] && !$cat_array['S_NO']) ? true : false,
|
||||
'S_NEVER' => ($cat_array['S_NEVER'] && !$cat_array['S_YES'] && !$cat_array['S_NO']) ? true : false,
|
||||
|
@ -488,8 +491,8 @@ class acp_permission_roles
|
|||
'S_NO' => ($allowed == ACL_NO) ? true : false,
|
||||
|
||||
'FIELD_NAME' => $permission,
|
||||
'PERMISSION' => $user->lang['acl_' . $permission]['lang'])
|
||||
);
|
||||
'PERMISSION' => $phpbb_permissions->get_permission_lang($permission),
|
||||
));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -22,15 +22,18 @@ class acp_permissions
|
|||
{
|
||||
var $u_action;
|
||||
var $permission_dropdown;
|
||||
protected $permissions;
|
||||
|
||||
function main($id, $mode)
|
||||
{
|
||||
global $db, $user, $auth, $template, $cache;
|
||||
global $db, $user, $auth, $template, $cache, $phpbb_container;
|
||||
global $config, $phpbb_root_path, $phpbb_admin_path, $phpEx;
|
||||
|
||||
include_once($phpbb_root_path . 'includes/functions_user.' . $phpEx);
|
||||
include_once($phpbb_root_path . 'includes/acp/auth.' . $phpEx);
|
||||
|
||||
$this->permissions = $phpbb_container->get('acl.permissions');
|
||||
|
||||
$auth_admin = new auth_admin();
|
||||
|
||||
$user->add_lang('acp/permissions');
|
||||
|
@ -49,7 +52,7 @@ class acp_permissions
|
|||
|
||||
if ($user_id && isset($auth_admin->acl_options['id'][$permission]) && $auth->acl_get('a_viewauth'))
|
||||
{
|
||||
$this->page_title = sprintf($user->lang['TRACE_PERMISSION'], $user->lang['acl_' . $permission]['lang']);
|
||||
$this->page_title = sprintf($user->lang['TRACE_PERMISSION'], $this->permissions->get_permission_lang($permission));
|
||||
$this->permission_trace($user_id, $forum_id, $permission);
|
||||
return;
|
||||
}
|
||||
|
@ -512,7 +515,7 @@ class acp_permissions
|
|||
|
||||
$template->assign_vars(array(
|
||||
'S_PERMISSION_DROPDOWN' => (sizeof($this->permission_dropdown) > 1) ? $this->build_permission_dropdown($this->permission_dropdown, $permission_type, $permission_scope) : false,
|
||||
'L_PERMISSION_TYPE' => $user->lang['ACL_TYPE_' . strtoupper($permission_type)],
|
||||
'L_PERMISSION_TYPE' => $this->permissions->get_type_lang($permission_type),
|
||||
|
||||
'U_ACTION' => $this->u_action,
|
||||
'S_HIDDEN_FIELDS' => $s_hidden_fields)
|
||||
|
@ -587,7 +590,7 @@ class acp_permissions
|
|||
*/
|
||||
function build_permission_dropdown($options, $default_option, $permission_scope)
|
||||
{
|
||||
global $user, $auth;
|
||||
global $auth;
|
||||
|
||||
$s_dropdown_options = '';
|
||||
foreach ($options as $setting)
|
||||
|
@ -598,7 +601,7 @@ class acp_permissions
|
|||
}
|
||||
|
||||
$selected = ($setting == $default_option) ? ' selected="selected"' : '';
|
||||
$l_setting = (isset($user->lang['permission_type'][$permission_scope][$setting])) ? $user->lang['permission_type'][$permission_scope][$setting] : $user->lang['permission_type'][$setting];
|
||||
$l_setting = $this->permissions->get_type_lang($setting, $permission_scope);
|
||||
$s_dropdown_options .= '<option value="' . $setting . '"' . $selected . '>' . $l_setting . '</option>';
|
||||
}
|
||||
|
||||
|
@ -979,7 +982,7 @@ class acp_permissions
|
|||
$back = request_var('back', 0);
|
||||
|
||||
$template->assign_vars(array(
|
||||
'PERMISSION' => $user->lang['acl_' . $permission]['lang'],
|
||||
'PERMISSION' => $this->permissions->get_permission_lang($permission),
|
||||
'PERMISSION_USERNAME' => $userdata['username'],
|
||||
'FORUM_NAME' => $forum_name,
|
||||
|
||||
|
|
|
@ -261,7 +261,8 @@ class auth_admin extends phpbb_auth
|
|||
*/
|
||||
function display_mask($mode, $permission_type, &$hold_ary, $user_mode = 'user', $local = false, $group_display = true)
|
||||
{
|
||||
global $template, $user, $db, $phpbb_root_path, $phpEx;
|
||||
global $template, $user, $db, $phpbb_root_path, $phpEx, $phpbb_container;
|
||||
$phpbb_permissions = $phpbb_container->get('acl.permissions');
|
||||
|
||||
// Define names for template loops, might be able to be set
|
||||
$tpl_pmask = 'p_mask';
|
||||
|
@ -269,7 +270,7 @@ class auth_admin extends phpbb_auth
|
|||
$tpl_category = 'category';
|
||||
$tpl_mask = 'mask';
|
||||
|
||||
$l_acl_type = (isset($user->lang['ACL_TYPE_' . (($local) ? 'LOCAL' : 'GLOBAL') . '_' . strtoupper($permission_type)])) ? $user->lang['ACL_TYPE_' . (($local) ? 'LOCAL' : 'GLOBAL') . '_' . strtoupper($permission_type)] : 'ACL_TYPE_' . (($local) ? 'LOCAL' : 'GLOBAL') . '_' . strtoupper($permission_type);
|
||||
$l_acl_type = $phpbb_permissions->get_type_lang($permission_type, (($local) ? 'local' : 'global'));
|
||||
|
||||
// Allow trace for viewing permissions and in user mode
|
||||
$show_trace = ($mode == 'view' && $user_mode == 'user') ? true : false;
|
||||
|
@ -1100,7 +1101,9 @@ class auth_admin extends phpbb_auth
|
|||
*/
|
||||
function assign_cat_array(&$category_array, $tpl_cat, $tpl_mask, $ug_id, $forum_id, $show_trace = false, $s_view)
|
||||
{
|
||||
global $template, $user, $phpbb_admin_path, $phpEx;
|
||||
global $template, $user, $phpbb_admin_path, $phpEx, $phpbb_container;
|
||||
|
||||
$phpbb_permissions = $phpbb_container->get('acl.permissions');
|
||||
|
||||
@reset($category_array);
|
||||
while (list($cat, $cat_array) = each($category_array))
|
||||
|
@ -1110,8 +1113,8 @@ class auth_admin extends phpbb_auth
|
|||
'S_NEVER' => ($cat_array['S_NEVER'] && !$cat_array['S_YES'] && !$cat_array['S_NO']) ? true : false,
|
||||
'S_NO' => ($cat_array['S_NO'] && !$cat_array['S_NEVER'] && !$cat_array['S_YES']) ? true : false,
|
||||
|
||||
'CAT_NAME' => $user->lang['permission_cat'][$cat])
|
||||
);
|
||||
'CAT_NAME' => $phpbb_permissions->get_category_lang($cat),
|
||||
));
|
||||
|
||||
/* Sort permissions by name (more naturaly and user friendly than sorting by a primary key)
|
||||
* Commented out due to it's memory consumption and time needed
|
||||
|
@ -1145,8 +1148,8 @@ class auth_admin extends phpbb_auth
|
|||
'U_TRACE' => ($show_trace) ? append_sid("{$phpbb_admin_path}index.$phpEx", "i=permissions&mode=trace&u=$ug_id&f=$forum_id&auth=$permission") : '',
|
||||
'UA_TRACE' => ($show_trace) ? append_sid("{$phpbb_admin_path}index.$phpEx", "i=permissions&mode=trace&u=$ug_id&f=$forum_id&auth=$permission", false) : '',
|
||||
|
||||
'PERMISSION' => $user->lang['acl_' . $permission]['lang'])
|
||||
);
|
||||
'PERMISSION' => $phpbb_permissions->get_permission_lang($permission),
|
||||
));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -1163,8 +1166,8 @@ class auth_admin extends phpbb_auth
|
|||
'U_TRACE' => ($show_trace) ? append_sid("{$phpbb_admin_path}index.$phpEx", "i=permissions&mode=trace&u=$ug_id&f=$forum_id&auth=$permission") : '',
|
||||
'UA_TRACE' => ($show_trace) ? append_sid("{$phpbb_admin_path}index.$phpEx", "i=permissions&mode=trace&u=$ug_id&f=$forum_id&auth=$permission", false) : '',
|
||||
|
||||
'PERMISSION' => $user->lang['acl_' . $permission]['lang'])
|
||||
);
|
||||
'PERMISSION' => $phpbb_permissions->get_permission_lang($permission),
|
||||
));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1176,7 +1179,9 @@ class auth_admin extends phpbb_auth
|
|||
*/
|
||||
function build_permission_array(&$permission_row, &$content_array, &$categories, $key_sort_array)
|
||||
{
|
||||
global $user;
|
||||
global $user, $phpbb_container;
|
||||
|
||||
$phpbb_permissions = $phpbb_container->get('acl.permissions');
|
||||
|
||||
foreach ($key_sort_array as $forum_id)
|
||||
{
|
||||
|
@ -1191,20 +1196,12 @@ class auth_admin extends phpbb_auth
|
|||
@reset($permissions);
|
||||
while (list($permission, $auth_setting) = each($permissions))
|
||||
{
|
||||
if (!isset($user->lang['acl_' . $permission]))
|
||||
{
|
||||
$user->lang['acl_' . $permission] = array(
|
||||
'cat' => 'misc',
|
||||
'lang' => '{ acl_' . $permission . ' }'
|
||||
);
|
||||
}
|
||||
|
||||
$cat = $user->lang['acl_' . $permission]['cat'];
|
||||
$cat = $phpbb_permissions->get_permission_category($permission);
|
||||
|
||||
// Build our categories array
|
||||
if (!isset($categories[$cat]))
|
||||
{
|
||||
$categories[$cat] = $user->lang['permission_cat'][$cat];
|
||||
$categories[$cat] = $phpbb_permissions->get_category_lang($cat);
|
||||
}
|
||||
|
||||
// Build our content array
|
||||
|
|
|
@ -132,11 +132,8 @@ class bbcode
|
|||
{
|
||||
$this->template_bitfield = new bitfield($user->style['bbcode_bitfield']);
|
||||
|
||||
$style_resource_locator = new phpbb_style_resource_locator();
|
||||
$style_path_provider = new phpbb_style_extension_path_provider($phpbb_extension_manager, new phpbb_style_path_provider(), $phpbb_root_path);
|
||||
$template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $user, new phpbb_template_context(), $phpbb_extension_manager);
|
||||
$style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $style_resource_locator, $style_path_provider, $template);
|
||||
$style->set_style();
|
||||
$template->set_style();
|
||||
$template->set_filenames(array('bbcode.html' => 'bbcode.html'));
|
||||
$this->template_filename = $template->get_source_file_for_handle('bbcode.html');
|
||||
}
|
||||
|
|
|
@ -50,7 +50,8 @@ class phpbb_captcha_factory
|
|||
{
|
||||
include($phpbb_root_path . "includes/captcha/plugins/{$name}_plugin." . $phpEx);
|
||||
}
|
||||
call_user_func(array($name, 'garbage_collect'), 0);
|
||||
$captcha = self::get_instance($name);
|
||||
$captcha->garbage_collect(0);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -2413,6 +2413,7 @@ function append_sid($url, $params = false, $is_amp = true, $session_id = false)
|
|||
{
|
||||
global $_SID, $_EXTRA_URL, $phpbb_hook;
|
||||
global $phpbb_dispatcher;
|
||||
global $symfony_request, $phpbb_root_path;
|
||||
|
||||
if ($params === '' || (is_array($params) && empty($params)))
|
||||
{
|
||||
|
@ -2420,6 +2421,12 @@ function append_sid($url, $params = false, $is_amp = true, $session_id = false)
|
|||
$params = false;
|
||||
}
|
||||
|
||||
$corrected_path = $symfony_request !== null ? phpbb_get_web_root_path($symfony_request, $phpbb_root_path) : '';
|
||||
if ($corrected_path)
|
||||
{
|
||||
$url = substr($corrected_path . $url, strlen($phpbb_root_path));
|
||||
}
|
||||
|
||||
$append_sid_overwrite = false;
|
||||
|
||||
/**
|
||||
|
@ -5074,7 +5081,7 @@ function phpbb_build_hidden_fields_for_query_params($request, $exclude = null)
|
|||
function page_header($page_title = '', $display_online_list = true, $item_id = 0, $item = 'forum')
|
||||
{
|
||||
global $db, $config, $template, $SID, $_SID, $_EXTRA_URL, $user, $auth, $phpEx, $phpbb_root_path;
|
||||
global $phpbb_dispatcher, $request, $phpbb_container;
|
||||
global $phpbb_dispatcher, $request, $phpbb_container, $symfony_request;
|
||||
|
||||
if (defined('HEADER_INC'))
|
||||
{
|
||||
|
@ -5231,7 +5238,11 @@ function page_header($page_title = '', $display_online_list = true, $item_id = 0
|
|||
|
||||
// Determine board url - we may need it later
|
||||
$board_url = generate_board_url() . '/';
|
||||
$web_path = (defined('PHPBB_USE_BOARD_URL_PATH') && PHPBB_USE_BOARD_URL_PATH) ? $board_url : $phpbb_root_path;
|
||||
// This path is sent with the base template paths in the assign_vars()
|
||||
// call below. We need to correct it in case we are accessing from a
|
||||
// controller because the web paths will be incorrect otherwise.
|
||||
$corrected_path = $symfony_request !== null ? phpbb_get_web_root_path($symfony_request, $phpbb_root_path) : '';
|
||||
$web_path = (defined('PHPBB_USE_BOARD_URL_PATH') && PHPBB_USE_BOARD_URL_PATH) ? $board_url : $corrected_path;
|
||||
|
||||
// Send a proper content-language to the output
|
||||
$user_lang = $user->lang['USER_LANG'];
|
||||
|
@ -5413,8 +5424,6 @@ function page_header($page_title = '', $display_online_list = true, $item_id = 0
|
|||
'T_UPLOAD' => $config['upload_path'],
|
||||
|
||||
'SITE_LOGO_IMG' => $user->img('site_logo'),
|
||||
|
||||
'A_COOKIE_SETTINGS' => addslashes('; path=' . $config['cookie_path'] . ((!$config['cookie_domain'] || $config['cookie_domain'] == 'localhost' || $config['cookie_domain'] == '127.0.0.1') ? '' : '; domain=' . $config['cookie_domain']) . ((!$config['cookie_secure']) ? '' : '; secure')),
|
||||
));
|
||||
|
||||
// application/xhtml+xml not used because of IE
|
||||
|
@ -5707,6 +5716,16 @@ function phpbb_convert_30_dbms_to_31($dbms)
|
|||
*/
|
||||
function phpbb_create_symfony_request(phpbb_request $request)
|
||||
{
|
||||
// If we have already gotten it, don't go back through all the trouble of
|
||||
// creating it again; instead, just return it. This allows multiple calls
|
||||
// of this method so we don't have to globalize $symfony_request in other
|
||||
// functions.
|
||||
static $symfony_request;
|
||||
if (null !== $symfony_request)
|
||||
{
|
||||
return $symfony_request;
|
||||
}
|
||||
|
||||
// This function is meant to sanitize the global input arrays
|
||||
$sanitizer = function(&$value, $key) {
|
||||
$type_cast_helper = new phpbb_request_type_cast_helper();
|
||||
|
@ -5726,21 +5745,39 @@ function phpbb_create_symfony_request(phpbb_request $request)
|
|||
array_walk_recursive($get_parameters, $sanitizer);
|
||||
array_walk_recursive($post_parameters, $sanitizer);
|
||||
|
||||
// Until we fix the issue with relative paths, we have to fake path info
|
||||
// to allow urls like app.php?controller=foo/bar
|
||||
$controller = $request->variable('controller', '');
|
||||
$path_info = '/' . $controller;
|
||||
$request_uri = $server_parameters['REQUEST_URI'];
|
||||
$symfony_request = new Request($get_parameters, $post_parameters, array(), $cookie_parameters, $files_parameters, $server_parameters);
|
||||
return $symfony_request;
|
||||
}
|
||||
|
||||
// Remove the query string from REQUEST_URI
|
||||
if ($pos = strpos($request_uri, '?'))
|
||||
/**
|
||||
* Get a relative root path from the current URL
|
||||
*
|
||||
* @param Request $symfony_request Symfony Request object
|
||||
*/
|
||||
function phpbb_get_web_root_path(Request $symfony_request, $phpbb_root_path = '')
|
||||
{
|
||||
static $path;
|
||||
if (null !== $path)
|
||||
{
|
||||
$request_uri = substr($request_uri, 0, $pos);
|
||||
return $path;
|
||||
}
|
||||
|
||||
// Add the path info (i.e. controller route) to the REQUEST_URI
|
||||
$server_parameters['REQUEST_URI'] = $request_uri . $path_info;
|
||||
$server_parameters['SCRIPT_NAME'] = '';
|
||||
$path_info = $symfony_request->getPathInfo();
|
||||
if ($path_info === '/')
|
||||
{
|
||||
$path = $phpbb_root_path;
|
||||
return $path;
|
||||
}
|
||||
|
||||
return new Request($get_parameters, $post_parameters, array(), $cookie_parameters, $files_parameters, $server_parameters);
|
||||
$corrections = substr_count($path_info, '/');
|
||||
|
||||
// When URL Rewriting is enabled, app.php is optional. We have to
|
||||
// correct for it not being there
|
||||
if (strpos($symfony_request->getRequestUri(), $symfony_request->getScriptName()) === false)
|
||||
{
|
||||
$corrections -= 1;
|
||||
}
|
||||
|
||||
$path = $phpbb_root_path . str_repeat('../', $corrections);
|
||||
return $path;
|
||||
}
|
||||
|
|
|
@ -118,7 +118,10 @@ function phpbb_create_container(array $extensions, $phpbb_root_path, $php_ext)
|
|||
*/
|
||||
function phpbb_create_install_container($phpbb_root_path, $php_ext)
|
||||
{
|
||||
$core = new phpbb_di_extension_core($phpbb_root_path);
|
||||
$other_config_path = $phpbb_root_path . 'install/update/new/config/';
|
||||
$config_path = file_exists($other_config_path . 'services.yml') ? $other_config_path : $phpbb_root_path . 'config/';
|
||||
|
||||
$core = new phpbb_di_extension_core($config_path);
|
||||
$container = phpbb_create_container(array($core), $phpbb_root_path, $php_ext);
|
||||
|
||||
$container->setParameter('core.root_path', $phpbb_root_path);
|
||||
|
@ -135,6 +138,32 @@ function phpbb_create_install_container($phpbb_root_path, $php_ext)
|
|||
return $container;
|
||||
}
|
||||
|
||||
/**
|
||||
* Create updater container
|
||||
*
|
||||
* @param string $phpbb_root_path Root path
|
||||
* @param string $php_ext PHP Extension
|
||||
* @param array $config_path Path to config directory
|
||||
* @return ContainerBuilder object (compiled)
|
||||
*/
|
||||
function phpbb_create_update_container($phpbb_root_path, $php_ext, $config_path)
|
||||
{
|
||||
$config_file = $phpbb_root_path . 'config.' . $php_ext;
|
||||
return phpbb_create_compiled_container(
|
||||
$config_file,
|
||||
array(
|
||||
new phpbb_di_extension_config($config_file),
|
||||
new phpbb_di_extension_core($config_path),
|
||||
),
|
||||
array(
|
||||
new phpbb_di_pass_collection_pass(),
|
||||
new phpbb_di_pass_kernel_pass(),
|
||||
),
|
||||
$phpbb_root_path,
|
||||
$php_ext
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a compiled ContainerBuilder object
|
||||
*
|
||||
|
@ -146,11 +175,6 @@ function phpbb_create_install_container($phpbb_root_path, $php_ext)
|
|||
*/
|
||||
function phpbb_create_compiled_container($config_file, array $extensions, array $passes, $phpbb_root_path, $php_ext)
|
||||
{
|
||||
$installed_exts = phpbb_bootstrap_enabled_exts($config_file, $phpbb_root_path);
|
||||
|
||||
// Now pass the enabled extension paths into the ext compiler extension
|
||||
$extensions[] = new phpbb_di_extension_ext($installed_exts);
|
||||
|
||||
// Create the final container to be compiled and cached
|
||||
$container = phpbb_create_container($extensions, $phpbb_root_path, $php_ext);
|
||||
|
||||
|
@ -231,11 +255,14 @@ function phpbb_create_dumped_container_unless_debug($config_file, array $extensi
|
|||
function phpbb_create_default_container($phpbb_root_path, $php_ext)
|
||||
{
|
||||
$config_file = $phpbb_root_path . 'config.' . $php_ext;
|
||||
$installed_exts = phpbb_bootstrap_enabled_exts($config_file, $phpbb_root_path);
|
||||
|
||||
return phpbb_create_dumped_container_unless_debug(
|
||||
$config_file,
|
||||
array(
|
||||
new phpbb_di_extension_config($config_file),
|
||||
new phpbb_di_extension_core($phpbb_root_path),
|
||||
new phpbb_di_extension_core($phpbb_root_path . 'config'),
|
||||
new phpbb_di_extension_ext($installed_exts),
|
||||
),
|
||||
array(
|
||||
new phpbb_di_pass_collection_pass(),
|
||||
|
|
|
@ -413,7 +413,7 @@ function generate_text_for_display($text, $uid, $bitfield, $flags, $censor_text
|
|||
static $bbcode;
|
||||
global $phpbb_dispatcher;
|
||||
|
||||
if (!$text)
|
||||
if ($text === '')
|
||||
{
|
||||
return '';
|
||||
}
|
||||
|
@ -505,7 +505,7 @@ function generate_text_for_storage(&$text, &$uid, &$bitfield, &$flags, $allow_bb
|
|||
$uid = $bitfield = '';
|
||||
$flags = (($allow_bbcode) ? OPTION_FLAG_BBCODE : 0) + (($allow_smilies) ? OPTION_FLAG_SMILIES : 0) + (($allow_urls) ? OPTION_FLAG_LINKS : 0);
|
||||
|
||||
if (!$text)
|
||||
if ($text === '')
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -21,7 +21,7 @@ if (!defined('IN_PHPBB'))
|
|||
*/
|
||||
class messenger
|
||||
{
|
||||
var $vars, $msg, $extra_headers, $replyto, $from, $subject;
|
||||
var $msg, $extra_headers, $replyto, $from, $subject;
|
||||
var $addresses = array();
|
||||
|
||||
var $mail_priority = MAIL_NORMAL_PRIORITY;
|
||||
|
@ -53,7 +53,7 @@ class messenger
|
|||
function reset()
|
||||
{
|
||||
$this->addresses = $this->extra_headers = array();
|
||||
$this->vars = $this->msg = $this->replyto = $this->from = '';
|
||||
$this->msg = $this->replyto = $this->from = '';
|
||||
$this->mail_priority = MAIL_NORMAL_PRIORITY;
|
||||
}
|
||||
|
||||
|
@ -258,8 +258,6 @@ class messenger
|
|||
'body' => $template_file . '.txt',
|
||||
));
|
||||
|
||||
$this->vars = $this->template->get_template_vars();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -288,26 +286,11 @@ class messenger
|
|||
global $config, $user;
|
||||
|
||||
// We add some standard variables we always use, no need to specify them always
|
||||
if (!isset($this->vars['U_BOARD']))
|
||||
{
|
||||
$this->assign_vars(array(
|
||||
'U_BOARD' => generate_board_url(),
|
||||
));
|
||||
}
|
||||
|
||||
if (!isset($this->vars['EMAIL_SIG']))
|
||||
{
|
||||
$this->assign_vars(array(
|
||||
'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . htmlspecialchars_decode($config['board_email_sig'])),
|
||||
));
|
||||
}
|
||||
|
||||
if (!isset($this->vars['SITENAME']))
|
||||
{
|
||||
$this->assign_vars(array(
|
||||
'SITENAME' => htmlspecialchars_decode($config['sitename']),
|
||||
));
|
||||
}
|
||||
|
||||
// Parse message through template
|
||||
$this->msg = trim($this->template->assign_display('body'));
|
||||
|
@ -660,7 +643,7 @@ class messenger
|
|||
{
|
||||
$this->setup_template();
|
||||
|
||||
$this->template->set_style_names(array($path_name), $paths);
|
||||
$this->template->set_custom_style($path_name, $paths);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -455,7 +455,7 @@ class p_master
|
|||
*/
|
||||
function load_active($mode = false, $module_url = false, $execute_module = true)
|
||||
{
|
||||
global $phpbb_root_path, $phpbb_admin_path, $phpEx, $user, $phpbb_style;
|
||||
global $phpbb_root_path, $phpbb_admin_path, $phpEx, $user, $template;
|
||||
|
||||
$module_path = $this->include_path . $this->p_class;
|
||||
$icat = request_var('icat', '');
|
||||
|
@ -508,7 +508,7 @@ class p_master
|
|||
|
||||
if (is_dir($module_style_dir))
|
||||
{
|
||||
$phpbb_style->set_custom_style('admin', array($module_style_dir, $phpbb_admin_path . 'style'), array(), '');
|
||||
$template->set_custom_style('adm', array($module_style_dir, $phpbb_admin_path . 'style'));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -537,7 +537,7 @@ class p_master
|
|||
|
||||
if (is_dir($phpbb_root_path . $module_style_dir))
|
||||
{
|
||||
$phpbb_style->set_style(array($module_style_dir, 'styles'));
|
||||
$template->set_style(array($module_style_dir, 'styles'));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1095,25 +1095,20 @@ function topic_review($topic_id, $forum_id, $mode = 'topic_review', $cur_post_id
|
|||
|
||||
$poster_id = $row['user_id'];
|
||||
$post_subject = $row['post_subject'];
|
||||
$message = censor_text($row['post_text']);
|
||||
|
||||
$decoded_message = false;
|
||||
|
||||
if ($show_quote_button && $auth->acl_get('f_reply', $forum_id))
|
||||
{
|
||||
$decoded_message = $message;
|
||||
$decoded_message = censor_text($row['post_text']);
|
||||
decode_message($decoded_message, $row['bbcode_uid']);
|
||||
|
||||
$decoded_message = bbcode_nl2br($decoded_message);
|
||||
}
|
||||
|
||||
if ($row['bbcode_bitfield'])
|
||||
{
|
||||
$bbcode->bbcode_second_pass($message, $row['bbcode_uid'], $row['bbcode_bitfield']);
|
||||
}
|
||||
|
||||
$message = bbcode_nl2br($message);
|
||||
$message = smiley_text($message, !$row['enable_smilies']);
|
||||
$parse_flags = ($row['bbcode_bitfield'] ? OPTION_FLAG_BBCODE : 0);
|
||||
$parse_flags |= ($row['enable_smilies'] ? OPTION_FLAG_SMILIES : 0);
|
||||
$message = generate_text_for_display($row['post_text'], $row['bbcode_uid'], $row['bbcode_bitfield'], $parse_flags, true);
|
||||
|
||||
if (!empty($attachments[$row['post_id']]))
|
||||
{
|
||||
|
@ -1995,6 +1990,10 @@ function submit_post($mode, $subject, $username, $topic_type, &$poll, &$data, $u
|
|||
}
|
||||
}
|
||||
|
||||
$first_post_has_topic_info = ($post_mode == 'edit_first_post' &&
|
||||
(($post_visibility == ITEM_DELETED && $data['topic_posts_softdeleted'] == 1) ||
|
||||
($post_visibility == ITEM_UNAPPROVED && $data['topic_posts_unapproved'] == 1) ||
|
||||
($post_visibility == ITEM_APPROVED && $data['topic_posts_approved'] == 1)));
|
||||
// Fix the post's and topic's visibility and first/last post information, when the post is edited
|
||||
if (($post_mode != 'post' && $post_mode != 'reply') && $data['post_visibility'] != $post_visibility)
|
||||
{
|
||||
|
@ -2007,7 +2006,7 @@ function submit_post($mode, $subject, $username, $topic_type, &$poll, &$data, $u
|
|||
$phpbb_content_visibility = $phpbb_container->get('content.visibility');
|
||||
$phpbb_content_visibility->set_post_visibility($post_visibility, $data['post_id'], $data['topic_id'], $data['forum_id'], $user->data['user_id'], time(), '', $is_starter, $is_latest);
|
||||
}
|
||||
else if ($post_mode == 'edit_last_post' || $post_mode == 'edit_topic' || ($post_mode == 'edit_first_post' && !$data['topic_replies']))
|
||||
else if ($post_mode == 'edit_last_post' || $post_mode == 'edit_topic' || $first_post_has_topic_info)
|
||||
{
|
||||
if ($post_visibility == ITEM_APPROVED || $data['topic_visibility'] == $post_visibility)
|
||||
{
|
||||
|
@ -2167,6 +2166,11 @@ function submit_post($mode, $subject, $username, $topic_type, &$poll, &$data, $u
|
|||
update_forum_tracking_info($data['forum_id'], $forum_last_post_time, $f_mark_time, false);
|
||||
}
|
||||
|
||||
// If a username was supplied or the poster is a guest, we will use the supplied username.
|
||||
// Doing it this way we can use "...post by guest-username..." in notifications when
|
||||
// "guest-username" is supplied or ommit the username if it is not.
|
||||
$username = ($username !== '' || !$user->data['is_registered']) ? $username : $user->data['username'];
|
||||
|
||||
// Send Notifications
|
||||
$notification_data = array_merge($data, array(
|
||||
'topic_title' => (isset($data['topic_title'])) ? $data['topic_title'] : $subject,
|
||||
|
|
|
@ -2019,13 +2019,10 @@ function message_history($msg_id, $user_id, $message_row, $folder, $in_post_mode
|
|||
$decoded_message = bbcode_nl2br($decoded_message);
|
||||
}
|
||||
|
||||
if ($row['bbcode_bitfield'])
|
||||
{
|
||||
$bbcode->bbcode_second_pass($message, $row['bbcode_uid'], $row['bbcode_bitfield']);
|
||||
}
|
||||
$parse_flags = ($row['bbcode_bitfield'] ? OPTION_FLAG_BBCODE : 0);
|
||||
$parse_flags |= ($row['enable_smilies'] ? OPTION_FLAG_SMILIES : 0);
|
||||
|
||||
$message = bbcode_nl2br($message);
|
||||
$message = smiley_text($message, !$row['enable_smilies']);
|
||||
$message = generate_text_for_display($message, $row['bbcode_uid'], $row['bbcode_bitfield'], $parse_flags, false);
|
||||
|
||||
$subject = censor_text($subject);
|
||||
|
||||
|
|
|
@ -115,17 +115,9 @@ class mcp_pm_reports
|
|||
}
|
||||
|
||||
// Process message, leave it uncensored
|
||||
$message = $pm_info['message_text'];
|
||||
$parse_flags = ($pm_info['bbcode_bitfield'] ? OPTION_FLAG_BBCODE : 0) | OPTION_FLAG_SMILIES;
|
||||
$message = generate_text_for_display($pm_info['message_text'], $pm_info['bbcode_uid'], $pm_info['bbcode_bitfield'], $parse_flags, false);
|
||||
|
||||
if ($pm_info['bbcode_bitfield'])
|
||||
{
|
||||
include_once($phpbb_root_path . 'includes/bbcode.' . $phpEx);
|
||||
$bbcode = new bbcode($pm_info['bbcode_bitfield']);
|
||||
$bbcode->bbcode_second_pass($message, $pm_info['bbcode_uid'], $pm_info['bbcode_bitfield']);
|
||||
}
|
||||
|
||||
$message = bbcode_nl2br($message);
|
||||
$message = smiley_text($message);
|
||||
$report['report_text'] = make_clickable(bbcode_nl2br($report['report_text']));
|
||||
|
||||
if ($pm_info['message_attachment'] && $auth->acl_get('u_pm_download'))
|
||||
|
|
|
@ -125,17 +125,8 @@ function mcp_post_details($id, $mode, $action)
|
|||
$post_unread = (isset($topic_tracking_info[$post_info['topic_id']]) && $post_info['post_time'] > $topic_tracking_info[$post_info['topic_id']]) ? true : false;
|
||||
|
||||
// Process message, leave it uncensored
|
||||
$message = $post_info['post_text'];
|
||||
|
||||
if ($post_info['bbcode_bitfield'])
|
||||
{
|
||||
include_once($phpbb_root_path . 'includes/bbcode.' . $phpEx);
|
||||
$bbcode = new bbcode($post_info['bbcode_bitfield']);
|
||||
$bbcode->bbcode_second_pass($message, $post_info['bbcode_uid'], $post_info['bbcode_bitfield']);
|
||||
}
|
||||
|
||||
$message = bbcode_nl2br($message);
|
||||
$message = smiley_text($message);
|
||||
$parse_flags = ($post_info['bbcode_bitfield'] ? OPTION_FLAG_BBCODE : 0) | OPTION_FLAG_SMILIES;
|
||||
$message = generate_text_for_display($post_info['post_text'], $post_info['bbcode_uid'], $post_info['bbcode_bitfield'], $parse_flags, false);
|
||||
|
||||
if ($post_info['post_attachment'] && $auth->acl_get('u_download') && $auth->acl_get('f_download', $post_info['forum_id']))
|
||||
{
|
||||
|
|
|
@ -206,17 +206,8 @@ class mcp_queue
|
|||
$post_unread = (isset($topic_tracking_info[$post_info['topic_id']]) && $post_info['post_time'] > $topic_tracking_info[$post_info['topic_id']]) ? true : false;
|
||||
|
||||
// Process message, leave it uncensored
|
||||
$message = $post_info['post_text'];
|
||||
|
||||
if ($post_info['bbcode_bitfield'])
|
||||
{
|
||||
include_once($phpbb_root_path . 'includes/bbcode.' . $phpEx);
|
||||
$bbcode = new bbcode($post_info['bbcode_bitfield']);
|
||||
$bbcode->bbcode_second_pass($message, $post_info['bbcode_uid'], $post_info['bbcode_bitfield']);
|
||||
}
|
||||
|
||||
$message = bbcode_nl2br($message);
|
||||
$message = smiley_text($message);
|
||||
$parse_flags = ($post_info['bbcode_bitfield'] ? OPTION_FLAG_BBCODE : 0) | OPTION_FLAG_SMILIES;
|
||||
$message = generate_text_for_display($post_info['post_text'], $post_info['bbcode_uid'], $post_info['bbcode_bitfield'], $parse_flags, false);
|
||||
|
||||
if ($post_info['post_attachment'] && $auth->acl_get('u_download') && $auth->acl_get('f_download', $post_info['forum_id']))
|
||||
{
|
||||
|
|
|
@ -187,7 +187,7 @@ class mcp_reports
|
|||
'S_CLOSE_ACTION' => append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=reports&mode=report_details&f=' . $post_info['forum_id'] . '&p=' . $post_id),
|
||||
'S_CAN_VIEWIP' => $auth->acl_get('m_info', $post_info['forum_id']),
|
||||
'S_POST_REPORTED' => $post_info['post_reported'],
|
||||
'S_POST_UNAPPROVED' => ($post_info['post_visibility'] == POST_UNAPPROVED),
|
||||
'S_POST_UNAPPROVED' => ($post_info['post_visibility'] == ITEM_UNAPPROVED),
|
||||
'S_POST_LOCKED' => $post_info['post_edit_locked'],
|
||||
'S_USER_NOTES' => true,
|
||||
|
||||
|
|
|
@ -207,13 +207,8 @@ function mcp_topic_view($id, $mode, $action)
|
|||
$message = $row['post_text'];
|
||||
$post_subject = ($row['post_subject'] != '') ? $row['post_subject'] : $topic_info['topic_title'];
|
||||
|
||||
if ($row['bbcode_bitfield'])
|
||||
{
|
||||
$bbcode->bbcode_second_pass($message, $row['bbcode_uid'], $row['bbcode_bitfield']);
|
||||
}
|
||||
|
||||
$message = bbcode_nl2br($message);
|
||||
$message = smiley_text($message);
|
||||
$parse_flags = ($row['bbcode_bitfield'] ? OPTION_FLAG_BBCODE : 0) | OPTION_FLAG_SMILIES;
|
||||
$message = generate_text_for_display($message, $row['bbcode_uid'], $row['bbcode_bitfield'], $parse_flags, false);
|
||||
|
||||
if (!empty($attachments[$row['post_id']]))
|
||||
{
|
||||
|
@ -674,10 +669,10 @@ function merge_posts($topic_id, $to_topic_id)
|
|||
}
|
||||
|
||||
// If the topic no longer exist, we will update the topic watch table.
|
||||
phpbb_update_rows_avoiding_duplicates_notify_status($db, TOPICS_WATCH_TABLE, 'topic_id', $topic_ids, $to_topic_id);
|
||||
phpbb_update_rows_avoiding_duplicates_notify_status($db, TOPICS_WATCH_TABLE, 'topic_id', array($topic_id), $to_topic_id);
|
||||
|
||||
// If the topic no longer exist, we will update the bookmarks table.
|
||||
phpbb_update_rows_avoiding_duplicates($db, BOOKMARKS_TABLE, 'topic_id', $topic_id, $to_topic_id);
|
||||
phpbb_update_rows_avoiding_duplicates($db, BOOKMARKS_TABLE, 'topic_id', array($topic_id), $to_topic_id);
|
||||
}
|
||||
|
||||
// Link to the new topic
|
||||
|
|
|
@ -289,19 +289,8 @@ class mcp_warn
|
|||
|
||||
// We want to make the message available here as a reminder
|
||||
// Parse the message and subject
|
||||
$message = censor_text($user_row['post_text']);
|
||||
|
||||
// Second parse bbcode here
|
||||
if ($user_row['bbcode_bitfield'])
|
||||
{
|
||||
include_once($phpbb_root_path . 'includes/bbcode.' . $phpEx);
|
||||
|
||||
$bbcode = new bbcode($user_row['bbcode_bitfield']);
|
||||
$bbcode->bbcode_second_pass($message, $user_row['bbcode_uid'], $user_row['bbcode_bitfield']);
|
||||
}
|
||||
|
||||
$message = bbcode_nl2br($message);
|
||||
$message = smiley_text($message);
|
||||
$parse_flags = OPTION_FLAG_SMILIES | ($row['bbcode_bitfield'] ? OPTION_FLAG_BBCODE : 0);
|
||||
$message = generate_text_for_display($user_row['post_text'], $user_row['bbcode_uid'], $user_row['bbcode_bitfield'], $parse_flags, true);
|
||||
|
||||
// Generate the appropriate user information for the user we are looking at
|
||||
if (!function_exists('phpbb_get_user_avatar'))
|
||||
|
|
|
@ -76,17 +76,8 @@ function view_message($id, $mode, $folder_id, $msg_id, $folder, $message_row)
|
|||
$user_info = get_user_information($author_id, $message_row);
|
||||
|
||||
// Parse the message and subject
|
||||
$message = censor_text($message_row['message_text']);
|
||||
|
||||
// Second parse bbcode here
|
||||
if ($message_row['bbcode_bitfield'])
|
||||
{
|
||||
$bbcode->bbcode_second_pass($message, $message_row['bbcode_uid'], $message_row['bbcode_bitfield']);
|
||||
}
|
||||
|
||||
// Always process smilies after parsing bbcodes
|
||||
$message = bbcode_nl2br($message);
|
||||
$message = smiley_text($message);
|
||||
$parse_flags = ($message_row['bbcode_bitfield'] ? OPTION_FLAG_BBCODE : 0) | OPTION_FLAG_SMILIES;
|
||||
$message = generate_text_for_display($message_row['message_text'], $message_row['bbcode_uid'], $message_row['bbcode_bitfield'], $parse_flags, true);
|
||||
|
||||
// Replace naughty words such as farty pants
|
||||
$message_row['message_subject'] = censor_text($message_row['message_subject']);
|
||||
|
@ -160,21 +151,8 @@ function view_message($id, $mode, $folder_id, $msg_id, $folder, $message_row)
|
|||
// End signature parsing, only if needed
|
||||
if ($signature)
|
||||
{
|
||||
$signature = censor_text($signature);
|
||||
|
||||
if ($user_info['user_sig_bbcode_bitfield'])
|
||||
{
|
||||
if ($bbcode === false)
|
||||
{
|
||||
include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
|
||||
$bbcode = new bbcode($user_info['user_sig_bbcode_bitfield']);
|
||||
}
|
||||
|
||||
$bbcode->bbcode_second_pass($signature, $user_info['user_sig_bbcode_uid'], $user_info['user_sig_bbcode_bitfield']);
|
||||
}
|
||||
|
||||
$signature = bbcode_nl2br($signature);
|
||||
$signature = smiley_text($signature);
|
||||
$parse_flags = ($user_info['user_sig_bbcode_bitfield'] ? OPTION_FLAG_BBCODE : 0) | OPTION_FLAG_SMILIES;
|
||||
$signature = generate_text_for_display($signature, $user_info['user_sig_bbcode_uid'], $user_info['user_sig_bbcode_bitfield'], $parse_flags, true);
|
||||
}
|
||||
|
||||
$url = append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=pm');
|
||||
|
|
|
@ -267,7 +267,7 @@ class ucp_prefs
|
|||
$limit_topic_days = array(0 => $user->lang['ALL_TOPICS'], 1 => $user->lang['1_DAY'], 7 => $user->lang['7_DAYS'], 14 => $user->lang['2_WEEKS'], 30 => $user->lang['1_MONTH'], 90 => $user->lang['3_MONTHS'], 180 => $user->lang['6_MONTHS'], 365 => $user->lang['1_YEAR']);
|
||||
|
||||
$sort_by_topic_text = array('a' => $user->lang['AUTHOR'], 't' => $user->lang['POST_TIME'], 'r' => $user->lang['REPLIES'], 's' => $user->lang['SUBJECT'], 'v' => $user->lang['VIEWS']);
|
||||
$sort_by_topic_sql = array('a' => 't.topic_first_poster_name', 't' => 't.topic_last_post_time', 'r' => 't.topic_replies', 's' => 't.topic_title', 'v' => 't.topic_views');
|
||||
$sort_by_topic_sql = array('a' => 't.topic_first_poster_name', 't' => 't.topic_last_post_time', 'r' => 't.topic_posts_approved', 's' => 't.topic_title', 'v' => 't.topic_views');
|
||||
|
||||
// Post ordering options
|
||||
$limit_post_days = array(0 => $user->lang['ALL_POSTS'], 1 => $user->lang['1_DAY'], 7 => $user->lang['7_DAYS'], 14 => $user->lang['2_WEEKS'], 30 => $user->lang['1_MONTH'], 90 => $user->lang['3_MONTHS'], 180 => $user->lang['6_MONTHS'], 365 => $user->lang['1_YEAR']);
|
||||
|
|
|
@ -546,6 +546,9 @@ class ucp_profile
|
|||
// Build custom bbcodes array
|
||||
display_custom_bbcodes();
|
||||
|
||||
// Generate smiley listing
|
||||
generate_smilies('inline', 0);
|
||||
|
||||
break;
|
||||
|
||||
case 'avatar':
|
||||
|
|
|
@ -38,7 +38,7 @@ class ucp_register
|
|||
include($phpbb_root_path . 'includes/functions_profile_fields.' . $phpEx);
|
||||
|
||||
$coppa = $request->is_set('coppa') ? (int) $request->variable('coppa', false) : false;
|
||||
$agreed = (int) $request->variable('agreed', false);
|
||||
$agreed = $request->variable('agreed', false);
|
||||
$submit = $request->is_set_post('submit');
|
||||
$change_lang = request_var('change_lang', '');
|
||||
$user_lang = request_var('lang', $user->lang_name);
|
||||
|
@ -63,7 +63,7 @@ class ucp_register
|
|||
$submit = false;
|
||||
|
||||
// Setting back agreed to let the user view the agreement in his/her language
|
||||
$agreed = ($request->variable('change_lang', false)) ? 0 : $agreed;
|
||||
$agreed = false;
|
||||
}
|
||||
|
||||
$user->lang_name = $user_lang = $use_lang;
|
||||
|
@ -107,7 +107,7 @@ class ucp_register
|
|||
$add_coppa = ($coppa !== false) ? '&coppa=' . $coppa : '';
|
||||
|
||||
$s_hidden_fields = array_merge($s_hidden_fields, array(
|
||||
'change_lang' => $change_lang,
|
||||
'change_lang' => '',
|
||||
));
|
||||
|
||||
// If we change the language, we want to pass on some more possible parameter.
|
||||
|
|
|
@ -101,6 +101,8 @@ class ucp_remind
|
|||
|
||||
$messenger->set_addresses($user_row);
|
||||
|
||||
$messenger->anti_abuse_headers($config, $user);
|
||||
|
||||
$messenger->assign_vars(array(
|
||||
'USERNAME' => htmlspecialchars_decode($user_row['username']),
|
||||
'PASSWORD' => htmlspecialchars_decode($user_password),
|
||||
|
|
|
@ -21,26 +21,6 @@ define('IN_INSTALL', true);
|
|||
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './../';
|
||||
$phpEx = substr(strrchr(__FILE__, '.'), 1);
|
||||
|
||||
if (!function_exists('phpbb_require_updated'))
|
||||
{
|
||||
function phpbb_require_updated($path, $optional = false)
|
||||
{
|
||||
global $phpbb_root_path;
|
||||
|
||||
$new_path = $phpbb_root_path . 'install/update/new/' . $path;
|
||||
$old_path = $phpbb_root_path . $path;
|
||||
|
||||
if (file_exists($new_path))
|
||||
{
|
||||
require($new_path);
|
||||
}
|
||||
else if (!$optional || file_exists($old_path))
|
||||
{
|
||||
require($old_path);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function phpbb_end_update($cache, $config)
|
||||
{
|
||||
$cache->purge();
|
||||
|
@ -69,7 +49,7 @@ function phpbb_end_update($cache, $config)
|
|||
exit_handler();
|
||||
}
|
||||
|
||||
phpbb_require_updated('includes/startup.' . $phpEx);
|
||||
require($phpbb_root_path . 'includes/startup.' . $phpEx);
|
||||
|
||||
include($phpbb_root_path . 'config.' . $phpEx);
|
||||
if (!defined('PHPBB_INSTALLED') || empty($dbms) || empty($acm_type))
|
||||
|
@ -88,7 +68,9 @@ require($phpbb_root_path . 'includes/functions.' . $phpEx);
|
|||
require($phpbb_root_path . 'includes/functions_content.' . $phpEx);
|
||||
require($phpbb_root_path . 'includes/functions_container.' . $phpEx);
|
||||
|
||||
require($phpbb_root_path . 'config.' . $phpEx);
|
||||
require($phpbb_root_path . 'includes/constants.' . $phpEx);
|
||||
include($phpbb_root_path . 'includes/utf/utf_normalizer.' . $phpEx);
|
||||
require($phpbb_root_path . 'includes/utf/utf_tools.' . $phpEx);
|
||||
|
||||
// Set PHP error handler to ours
|
||||
|
@ -101,11 +83,10 @@ $phpbb_class_loader->register();
|
|||
// Set up container (must be done here because extensions table may not exist)
|
||||
$container_extensions = array(
|
||||
new phpbb_di_extension_config($phpbb_root_path . 'config.' . $phpEx),
|
||||
new phpbb_di_extension_core($phpbb_root_path),
|
||||
new phpbb_di_extension_core($phpbb_root_path . 'config/'),
|
||||
);
|
||||
$container_passes = array(
|
||||
new phpbb_di_pass_collection_pass(),
|
||||
//new phpbb_di_pass_kernel_pass(),
|
||||
);
|
||||
$phpbb_container = phpbb_create_container($container_extensions, $phpbb_root_path, $phpEx);
|
||||
|
||||
|
@ -263,8 +244,8 @@ while (!$migrator->finished())
|
|||
// Are we approaching the time limit? If so we want to pause the update and continue after refreshing
|
||||
if ((time() - $update_start_time) >= $safe_time_limit)
|
||||
{
|
||||
echo $user->lang['DATABASE_UPDATE_NOT_COMPLETED'] . '<br />';
|
||||
echo '<a href="' . append_sid($phpbb_root_path . 'install/database_update.' . $phpEx, 'type=' . $request->variable('type', 0) . '&language=' . $user->lang['USER_LANG']) . '">' . $user->lang['DATABASE_UPDATE_CONTINUE'] . '</a>';
|
||||
echo '<br />' . $user->lang['DATABASE_UPDATE_NOT_COMPLETED'] . '<br /><br />';
|
||||
echo '<a href="' . append_sid($phpbb_root_path . 'install/database_update.' . $phpEx, 'type=' . $request->variable('type', 0) . '&language=' . $request->variable('language', 'en')) . '" class="button1">' . $user->lang['DATABASE_UPDATE_CONTINUE'] . '</a>';
|
||||
|
||||
phpbb_end_update($cache, $config);
|
||||
}
|
||||
|
@ -280,7 +261,7 @@ echo $user->lang['DATABASE_UPDATE_COMPLETE'] . '<br />';
|
|||
if ($request->variable('type', 0))
|
||||
{
|
||||
echo $user->lang['INLINE_UPDATE_SUCCESSFUL'] . '<br /><br />';
|
||||
echo '<a href="' . append_sid($phpbb_root_path . 'install/index.' . $phpEx, 'mode=update&sub=file_check&language=' . $user->lang['USER_LANG']) . '" class="button1">' . $user->lang['CONTINUE_UPDATE_NOW'] . '</a>';
|
||||
echo '<a href="' . append_sid($phpbb_root_path . 'install/index.' . $phpEx, 'mode=update&sub=update_db&language=' . $request->variable('language', 'en')) . '" class="button1">' . $user->lang['CONTINUE_UPDATE_NOW'] . '</a>';
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -28,7 +28,7 @@ if (version_compare(PHP_VERSION, '5.3.3') < 0)
|
|||
|
||||
function phpbb_require_updated($path, $optional = false)
|
||||
{
|
||||
global $phpbb_root_path;
|
||||
global $phpbb_root_path, $table_prefix;
|
||||
|
||||
$new_path = $phpbb_root_path . 'install/update/new/' . $path;
|
||||
$old_path = $phpbb_root_path . $path;
|
||||
|
@ -43,6 +43,23 @@ function phpbb_require_updated($path, $optional = false)
|
|||
}
|
||||
}
|
||||
|
||||
function phpbb_include_updated($path, $optional = false)
|
||||
{
|
||||
global $phpbb_root_path;
|
||||
|
||||
$new_path = $phpbb_root_path . 'install/update/new/' . $path;
|
||||
$old_path = $phpbb_root_path . $path;
|
||||
|
||||
if (file_exists($new_path))
|
||||
{
|
||||
include($new_path);
|
||||
}
|
||||
else if (!$optional || file_exists($old_path))
|
||||
{
|
||||
include($old_path);
|
||||
}
|
||||
}
|
||||
|
||||
phpbb_require_updated('includes/startup.' . $phpEx);
|
||||
|
||||
// Try to override some limits - maybe it helps some...
|
||||
|
@ -78,18 +95,21 @@ $phpbb_adm_relative_path = (isset($phpbb_adm_relative_path)) ? $phpbb_adm_relati
|
|||
$phpbb_admin_path = (defined('PHPBB_ADMIN_PATH')) ? PHPBB_ADMIN_PATH : $phpbb_root_path . $phpbb_adm_relative_path;
|
||||
|
||||
// Include essential scripts
|
||||
require($phpbb_root_path . 'phpbb/class_loader.' . $phpEx);
|
||||
phpbb_require_updated('phpbb/class_loader.' . $phpEx);
|
||||
|
||||
require($phpbb_root_path . 'includes/functions.' . $phpEx);
|
||||
require($phpbb_root_path . 'includes/functions_container.' . $phpEx);
|
||||
phpbb_require_updated('includes/functions.' . $phpEx);
|
||||
phpbb_require_updated('includes/functions_container.' . $phpEx);
|
||||
|
||||
phpbb_require_updated('includes/functions_content.' . $phpEx, true);
|
||||
|
||||
include($phpbb_root_path . 'includes/functions_admin.' . $phpEx);
|
||||
include($phpbb_root_path . 'includes/utf/utf_tools.' . $phpEx);
|
||||
require($phpbb_root_path . 'includes/functions_install.' . $phpEx);
|
||||
phpbb_include_updated('includes/functions_admin.' . $phpEx);
|
||||
phpbb_include_updated('includes/utf/utf_normalizer.' . $phpEx);
|
||||
phpbb_include_updated('includes/utf/utf_tools.' . $phpEx);
|
||||
phpbb_require_updated('includes/functions_install.' . $phpEx);
|
||||
|
||||
// Setup class loader first
|
||||
$phpbb_class_loader_new = new phpbb_class_loader('phpbb_', "{$phpbb_root_path}install/update/new/phpbb/", $phpEx);
|
||||
$phpbb_class_loader_new->register();
|
||||
$phpbb_class_loader = new phpbb_class_loader('phpbb_', "{$phpbb_root_path}phpbb/", $phpEx);
|
||||
$phpbb_class_loader->register();
|
||||
$phpbb_class_loader_ext = new phpbb_class_loader('phpbb_ext_', "{$phpbb_root_path}ext/", $phpEx);
|
||||
|
@ -108,7 +128,7 @@ $request = $phpbb_container->get('request');
|
|||
request_var('', 0, false, false, $request); // "dependency injection" for a function
|
||||
|
||||
// Try and load an appropriate language if required
|
||||
$language = basename(request_var('language', ''));
|
||||
$language = basename($request->variable('language', ''));
|
||||
|
||||
if ($request->header('Accept-Language') && !$language)
|
||||
{
|
||||
|
@ -167,11 +187,23 @@ if (!file_exists($phpbb_root_path . 'language/' . $language) || !is_dir($phpbb_r
|
|||
}
|
||||
|
||||
// And finally, load the relevant language files
|
||||
include($phpbb_root_path . 'language/' . $language . '/common.' . $phpEx);
|
||||
include($phpbb_root_path . 'language/' . $language . '/acp/common.' . $phpEx);
|
||||
include($phpbb_root_path . 'language/' . $language . '/acp/board.' . $phpEx);
|
||||
include($phpbb_root_path . 'language/' . $language . '/install.' . $phpEx);
|
||||
include($phpbb_root_path . 'language/' . $language . '/posting.' . $phpEx);
|
||||
$load_lang_files = array('common', 'acp/common', 'acp/board', 'install', 'posting');
|
||||
$new_path = $phpbb_root_path . 'install/update/new/language/' . $language . '/';
|
||||
$old_path = $phpbb_root_path . 'language/' . $language . '/';
|
||||
|
||||
// NOTE: we can not use "phpbb_include_updated" as the files uses vars which would be required
|
||||
// to be global while loading.
|
||||
foreach ($load_lang_files as $lang_file)
|
||||
{
|
||||
if (file_exists($new_path . $lang_file . '.' . $phpEx))
|
||||
{
|
||||
include($new_path . $lang_file . '.' . $phpEx);
|
||||
}
|
||||
else
|
||||
{
|
||||
include($old_path . $lang_file . '.' . $phpEx);
|
||||
}
|
||||
}
|
||||
|
||||
// usually we would need every single constant here - and it would be consistent. For 3.0.x, use a dirty hack... :(
|
||||
|
||||
|
@ -181,8 +213,8 @@ define('CHMOD_READ', 4);
|
|||
define('CHMOD_WRITE', 2);
|
||||
define('CHMOD_EXECUTE', 1);
|
||||
|
||||
$mode = request_var('mode', 'overview');
|
||||
$sub = request_var('sub', '');
|
||||
$mode = $request->variable('mode', 'overview');
|
||||
$sub = $request->variable('sub', '');
|
||||
|
||||
// Set PHP error handler to ours
|
||||
set_error_handler(defined('PHPBB_MSG_HANDLER') ? PHPBB_MSG_HANDLER : 'msg_handler');
|
||||
|
@ -212,12 +244,11 @@ $config = new phpbb_config(array(
|
|||
'load_tplcompile' => '1'
|
||||
));
|
||||
|
||||
$phpbb_style_resource_locator = new phpbb_style_resource_locator();
|
||||
$phpbb_style_path_provider = new phpbb_style_path_provider();
|
||||
$template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $user, new phpbb_template_context());
|
||||
$phpbb_style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $phpbb_style_resource_locator, $phpbb_style_path_provider, $template);
|
||||
$phpbb_style->set_ext_dir_prefix('adm/');
|
||||
$phpbb_style->set_custom_style('admin', $phpbb_admin_path . 'style', array(), '');
|
||||
$paths = array($phpbb_root_path . 'install/update/new/adm/style', $phpbb_admin_path . 'style');
|
||||
$paths = array_filter($paths, 'is_dir');
|
||||
$template->set_custom_style('adm', $paths);
|
||||
|
||||
$template->assign_var('T_ASSETS_PATH', '../assets');
|
||||
$template->assign_var('T_TEMPLATE_PATH', $phpbb_admin_path . 'style');
|
||||
|
||||
|
|
|
@ -39,7 +39,7 @@ if (!empty($setmodules))
|
|||
'module_filename' => substr(basename(__FILE__), 0, -strlen($phpEx)-1),
|
||||
'module_order' => 30,
|
||||
'module_subs' => '',
|
||||
'module_stages' => array('INTRO', 'VERSION_CHECK', 'UPDATE_DB', 'FILE_CHECK', 'UPDATE_FILES'),
|
||||
'module_stages' => array('INTRO', 'VERSION_CHECK', 'FILE_CHECK', 'UPDATE_FILES', 'UPDATE_DB'),
|
||||
'module_reqs' => ''
|
||||
);
|
||||
}
|
||||
|
@ -57,7 +57,6 @@ class install_update extends module
|
|||
var $new_location;
|
||||
var $latest_version;
|
||||
var $current_version;
|
||||
var $unequal_version;
|
||||
|
||||
var $update_to_version;
|
||||
|
||||
|
@ -71,18 +70,22 @@ class install_update extends module
|
|||
|
||||
function main($mode, $sub)
|
||||
{
|
||||
global $phpbb_style, $template, $phpEx, $phpbb_root_path, $user, $db, $config, $cache, $auth, $language;
|
||||
global $template, $phpEx, $phpbb_root_path, $user, $db, $config, $cache, $auth, $language;
|
||||
global $request, $phpbb_admin_path, $phpbb_adm_relative_path, $phpbb_container;
|
||||
|
||||
// We must enable super globals, otherwise creating a new instance of the request class,
|
||||
// using the new container with a dbal connection will fail with the following PHP Notice:
|
||||
// Object of class phpbb_request_deactivated_super_global could not be converted to int
|
||||
$request->enable_super_globals();
|
||||
|
||||
// Create a normal container now
|
||||
$phpbb_container = phpbb_create_default_container($phpbb_root_path, $phpEx);
|
||||
$phpbb_container = phpbb_create_update_container($phpbb_root_path, $phpEx, $phpbb_root_path . 'install/update/new/config');
|
||||
|
||||
// Writes into global $cache
|
||||
$cache = $phpbb_container->get('cache');
|
||||
|
||||
$this->tpl_name = 'install_update';
|
||||
$this->page_title = 'UPDATE_INSTALLATION';
|
||||
$this->unequal_version = false;
|
||||
|
||||
$this->old_location = $phpbb_root_path . 'install/update/old/';
|
||||
$this->new_location = $phpbb_root_path . 'install/update/new/';
|
||||
|
@ -125,7 +128,7 @@ class install_update extends module
|
|||
$config['default_lang'] = $language;
|
||||
$user->data['user_lang'] = $language;
|
||||
|
||||
$user->setup(array('common', 'acp/common', 'acp/board', 'install', 'posting'));
|
||||
$user->add_lang(array('common', 'acp/common', 'acp/board', 'install', 'posting'));
|
||||
|
||||
// Reset the default_lang
|
||||
$config['default_lang'] = $config_default_lang;
|
||||
|
@ -138,7 +141,9 @@ class install_update extends module
|
|||
}
|
||||
|
||||
// Set custom template again. ;)
|
||||
$phpbb_style->set_custom_style('admin', $phpbb_admin_path . 'style', array(), '');
|
||||
$paths = array($phpbb_root_path . 'install/update/new/adm/style', $phpbb_admin_path . 'style');
|
||||
$paths = array_filter($paths, 'is_dir');
|
||||
$template->set_custom_style('adm', $paths);
|
||||
|
||||
$template->assign_vars(array(
|
||||
'S_USER_LANG' => $user->lang['USER_LANG'],
|
||||
|
@ -192,8 +197,6 @@ class install_update extends module
|
|||
// Check if the update files are actually meant to update from the current version
|
||||
if ($this->current_version != $this->update_info['version']['from'])
|
||||
{
|
||||
$this->unequal_version = true;
|
||||
|
||||
$template->assign_vars(array(
|
||||
'S_ERROR' => true,
|
||||
'ERROR_MSG' => sprintf($user->lang['INCOMPATIBLE_UPDATE_FILES'], $this->current_version, $this->update_info['version']['from'], $this->update_info['version']['to']),
|
||||
|
@ -201,10 +204,8 @@ class install_update extends module
|
|||
}
|
||||
|
||||
// Check if the update files stored are for the latest version...
|
||||
if ($this->latest_version != $this->update_info['version']['to'])
|
||||
if (version_compare(strtolower($this->latest_version), strtolower($this->update_info['version']['to']), '>'))
|
||||
{
|
||||
$this->unequal_version = true;
|
||||
|
||||
$template->assign_vars(array(
|
||||
'S_WARNING' => true,
|
||||
'WARNING_MSG' => sprintf($user->lang['OLD_UPDATE_FILES'], $this->update_info['version']['from'], $this->update_info['version']['to'], $this->latest_version))
|
||||
|
@ -222,14 +223,15 @@ class install_update extends module
|
|||
|
||||
if ($this->test_update === false)
|
||||
{
|
||||
// Got the updater template itself updated? If so, we are able to directly use it - but only if all three files are present
|
||||
if (in_array($phpbb_adm_relative_path . 'style/install_update.html', $this->update_info['files']))
|
||||
{
|
||||
$this->tpl_name = '../../install/update/new/adm/style/install_update';
|
||||
}
|
||||
|
||||
// What about the language file? Got it updated?
|
||||
if (in_array('language/en/install.' . $phpEx, $this->update_info['files']))
|
||||
if (in_array('language/' . $language . '/install.' . $phpEx, $this->update_info['files']))
|
||||
{
|
||||
$lang = array();
|
||||
include($this->new_location . 'language/' . $language . '/install.' . $phpEx);
|
||||
// this is the user's language.. just merge it
|
||||
$user->lang = array_merge($user->lang, $lang);
|
||||
}
|
||||
if ($language != 'en' && in_array('language/en/install.' . $phpEx, $this->update_info['files']))
|
||||
{
|
||||
$lang = array();
|
||||
include($this->new_location . 'language/en/install.' . $phpEx);
|
||||
|
@ -273,18 +275,17 @@ class install_update extends module
|
|||
$this->page_title = 'STAGE_VERSION_CHECK';
|
||||
|
||||
$template->assign_vars(array(
|
||||
'S_UP_TO_DATE' => $up_to_date,
|
||||
'S_VERSION_CHECK' => true,
|
||||
|
||||
'U_ACTION' => append_sid($this->p_master->module_url, "language=$language&mode=$mode&sub=file_check"),
|
||||
'U_DB_UPDATE_ACTION' => append_sid($this->p_master->module_url, "language=$language&mode=$mode&sub=update_db"),
|
||||
|
||||
'S_UP_TO_DATE' => $up_to_date,
|
||||
'LATEST_VERSION' => $this->latest_version,
|
||||
'CURRENT_VERSION' => $this->current_version)
|
||||
);
|
||||
'CURRENT_VERSION' => $this->current_version,
|
||||
));
|
||||
|
||||
// Print out version the update package updates to
|
||||
if ($this->unequal_version)
|
||||
if ($this->latest_version != $this->update_info['version']['to'])
|
||||
{
|
||||
$template->assign_var('PACKAGE_VERSION', $this->update_info['version']['to']);
|
||||
}
|
||||
|
@ -302,30 +303,6 @@ class install_update extends module
|
|||
break;
|
||||
|
||||
case 'update_db':
|
||||
|
||||
// Make sure the database update is valid for the latest version
|
||||
$valid = false;
|
||||
$updates_to_version = '';
|
||||
|
||||
if (file_exists($phpbb_root_path . 'install/database_update.' . $phpEx))
|
||||
{
|
||||
include_once($phpbb_root_path . 'install/database_update.' . $phpEx);
|
||||
|
||||
if ($updates_to_version === $this->update_info['version']['to'])
|
||||
{
|
||||
$valid = true;
|
||||
}
|
||||
}
|
||||
|
||||
// Should not happen at all
|
||||
if (!$valid)
|
||||
{
|
||||
trigger_error($user->lang['DATABASE_UPDATE_INFO_OLD'], E_USER_ERROR);
|
||||
}
|
||||
|
||||
// Just a precaution
|
||||
$cache->purge();
|
||||
|
||||
// Redirect the user to the database update script with some explanations...
|
||||
$template->assign_vars(array(
|
||||
'S_DB_UPDATE' => true,
|
||||
|
@ -333,8 +310,14 @@ class install_update extends module
|
|||
'U_DB_UPDATE' => append_sid($phpbb_root_path . 'install/database_update.' . $phpEx, 'type=1&language=' . $user->data['user_lang']),
|
||||
'U_DB_UPDATE_ACTION' => append_sid($this->p_master->module_url, "language=$language&mode=$mode&sub=update_db"),
|
||||
'U_ACTION' => append_sid($this->p_master->module_url, "language=$language&mode=$mode&sub=file_check"),
|
||||
'L_EVERYTHING_UP_TO_DATE' => $user->lang('EVERYTHING_UP_TO_DATE', append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=login'), append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=login&redirect=' . $phpbb_adm_relative_path . 'index.php%3Fi=send_statistics%26mode=send_statistics')),
|
||||
));
|
||||
|
||||
// Do not display incompatible package note after successful update
|
||||
if ($config['version'] == $this->update_info['version']['to'])
|
||||
{
|
||||
$template->assign_var('S_ERROR', false);
|
||||
}
|
||||
break;
|
||||
|
||||
case 'file_check':
|
||||
|
@ -500,17 +483,30 @@ class install_update extends module
|
|||
$template->assign_vars(array(
|
||||
'S_FILE_CHECK' => true,
|
||||
'S_ALL_UP_TO_DATE' => $all_up_to_date,
|
||||
'L_ALL_FILES_UP_TO_DATE' => $user->lang('ALL_FILES_UP_TO_DATE', append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=login'), append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=login&redirect=' . $phpbb_adm_relative_path . 'index.php%3Fi=send_statistics%26mode=send_statistics')),
|
||||
'S_VERSION_UP_TO_DATE' => $up_to_date,
|
||||
'S_UP_TO_DATE' => $up_to_date,
|
||||
'U_ACTION' => append_sid($this->p_master->module_url, "language=$language&mode=$mode&sub=file_check"),
|
||||
'U_UPDATE_ACTION' => append_sid($this->p_master->module_url, "language=$language&mode=$mode&sub=update_files"),
|
||||
'U_DB_UPDATE_ACTION' => append_sid($this->p_master->module_url, "language=$language&mode=$mode&sub=update_db"),
|
||||
));
|
||||
|
||||
// Since some people try to update to RC releases, but phpBB.com tells them the last version is the version they currently run
|
||||
// we are faced with the updater thinking the database schema is up-to-date; which it is, but should be updated none-the-less
|
||||
// We now try to cope with this by triggering the update process
|
||||
if (version_compare(str_replace('rc', 'RC', strtolower($this->current_version)), str_replace('rc', 'RC', strtolower($this->update_info['version']['to'])), '<'))
|
||||
{
|
||||
$template->assign_vars(array(
|
||||
'S_UP_TO_DATE' => false,
|
||||
));
|
||||
}
|
||||
|
||||
if ($all_up_to_date)
|
||||
{
|
||||
global $phpbb_container;
|
||||
$phpbb_log = $phpbb_container->get('log');
|
||||
|
||||
// Add database update to log
|
||||
add_log('admin', 'LOG_UPDATE_PHPBB', $this->current_version, $this->update_to_version);
|
||||
$phpbb_log->add('admin', $user->data['user_id'], $user->ip, 'LOG_UPDATE_PHPBB', time(), array($this->current_version, $this->update_to_version));
|
||||
|
||||
$db->sql_return_on_error(true);
|
||||
$db->sql_query('DELETE FROM ' . CONFIG_TABLE . " WHERE config_name = 'version_update_from'");
|
||||
|
@ -1089,12 +1085,6 @@ class install_update extends module
|
|||
|
||||
$this->tpl_name = 'install_update_diff';
|
||||
|
||||
// Got the diff template itself updated? If so, we are able to directly use it
|
||||
if (in_array($phpbb_adm_relative_path . 'style/install_update_diff.html', $this->update_info['files']))
|
||||
{
|
||||
$this->tpl_name = '../../install/update/new/adm/style/install_update_diff';
|
||||
}
|
||||
|
||||
$this->page_title = 'VIEWING_FILE_DIFF';
|
||||
|
||||
$status = request_var('status', '');
|
||||
|
|
|
@ -170,7 +170,7 @@ INSERT INTO phpbb_config (config_name, config_value) VALUES ('limit_search_load'
|
|||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_anon_lastread', '0');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_birthdays', '1');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_cpf_memberlist', '0');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_cpf_profile', '0');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_cpf_pm', '0');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_cpf_viewprofile', '1');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_cpf_viewtopic', '0');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('load_db_lastread', '1');
|
||||
|
|
|
@ -33,209 +33,175 @@ if (empty($lang) || !is_array($lang))
|
|||
// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine
|
||||
|
||||
/**
|
||||
* MODDERS PLEASE NOTE
|
||||
* EXTENSION-DEVELOPERS PLEASE NOTE
|
||||
*
|
||||
* You are able to put your permission sets into a separate file too by
|
||||
* prefixing the new file with permissions_ and putting it into the acp
|
||||
* language folder.
|
||||
*
|
||||
* An example of how the file could look like:
|
||||
*
|
||||
* <code>
|
||||
*
|
||||
* if (empty($lang) || !is_array($lang))
|
||||
* {
|
||||
* $lang = array();
|
||||
* }
|
||||
*
|
||||
* // Adding new category
|
||||
* $lang['permission_cat']['bugs'] = 'Bugs';
|
||||
*
|
||||
* // Adding new permission set
|
||||
* $lang['permission_type']['bug_'] = 'Bug Permissions';
|
||||
*
|
||||
* // Adding the permissions
|
||||
* $lang = array_merge($lang, array(
|
||||
* 'acl_bug_view' => array('lang' => 'Can view bug reports', 'cat' => 'bugs'),
|
||||
* 'acl_bug_post' => array('lang' => 'Can post bugs', 'cat' => 'post'), // Using a phpBB category here
|
||||
* ));
|
||||
*
|
||||
* </code>
|
||||
* You are able to put your permission sets into your extension.
|
||||
* The permissions logic should be added via the 'core.permissions' event.
|
||||
* You can easily add new permission categories, types and permissions, by
|
||||
* simply merging them into the respective arrays.
|
||||
* The respective language strings should be added into a language file, that
|
||||
* start with 'permissions_', so they are automatically loaded within the ACP.
|
||||
*/
|
||||
|
||||
// Define categories and permission types
|
||||
$lang = array_merge($lang, array(
|
||||
'permission_cat' => array(
|
||||
'actions' => 'Actions',
|
||||
'content' => 'Content',
|
||||
'forums' => 'Forums',
|
||||
'misc' => 'Misc',
|
||||
'permissions' => 'Permissions',
|
||||
'pm' => 'Private messages',
|
||||
'polls' => 'Polls',
|
||||
'post' => 'Post',
|
||||
'post_actions' => 'Post actions',
|
||||
'posting' => 'Posting',
|
||||
'profile' => 'Profile',
|
||||
'settings' => 'Settings',
|
||||
'topic_actions' => 'Topic actions',
|
||||
'user_group' => 'Users & Groups',
|
||||
),
|
||||
|
||||
// With defining 'global' here we are able to specify what is printed out if the permission is within the global scope.
|
||||
'permission_type' => array(
|
||||
'u_' => 'User permissions',
|
||||
'a_' => 'Admin permissions',
|
||||
'm_' => 'Moderator permissions',
|
||||
'f_' => 'Forum permissions',
|
||||
'global' => array(
|
||||
'm_' => 'Global moderator permissions',
|
||||
),
|
||||
),
|
||||
'ACL_CAT_ACTIONS' => 'Actions',
|
||||
'ACL_CAT_CONTENT' => 'Content',
|
||||
'ACL_CAT_FORUMS' => 'Forums',
|
||||
'ACL_CAT_MISC' => 'Misc',
|
||||
'ACL_CAT_PERMISSIONS' => 'Permissions',
|
||||
'ACL_CAT_PM' => 'Private messages',
|
||||
'ACL_CAT_POLLS' => 'Polls',
|
||||
'ACL_CAT_POST' => 'Post',
|
||||
'ACL_CAT_POST_ACTIONS' => 'Post actions',
|
||||
'ACL_CAT_POSTING' => 'Posting',
|
||||
'ACL_CAT_PROFILE' => 'Profile',
|
||||
'ACL_CAT_SETTINGS' => 'Settings',
|
||||
'ACL_CAT_TOPIC_ACTIONS' => 'Topic actions',
|
||||
'ACL_CAT_USER_GROUP' => 'Users & Groups',
|
||||
));
|
||||
|
||||
// User Permissions
|
||||
$lang = array_merge($lang, array(
|
||||
'acl_u_viewprofile' => array('lang' => 'Can view profiles, memberlist and online list', 'cat' => 'profile'),
|
||||
'acl_u_chgname' => array('lang' => 'Can change username', 'cat' => 'profile'),
|
||||
'acl_u_chgpasswd' => array('lang' => 'Can change password', 'cat' => 'profile'),
|
||||
'acl_u_chgemail' => array('lang' => 'Can change email address', 'cat' => 'profile'),
|
||||
'acl_u_chgavatar' => array('lang' => 'Can change avatar', 'cat' => 'profile'),
|
||||
'acl_u_chggrp' => array('lang' => 'Can change default usergroup', 'cat' => 'profile'),
|
||||
'acl_u_chgprofileinfo' => array('lang' => 'Can change profile field information', 'cat' => 'profile'),
|
||||
'ACL_U_VIEWPROFILE' => 'Can view profiles, memberlist and online list',
|
||||
'ACL_U_CHGNAME' => 'Can change username',
|
||||
'ACL_U_CHGPASSWD' => 'Can change password',
|
||||
'ACL_U_CHGEMAIL' => 'Can change email address',
|
||||
'ACL_U_CHGAVATAR' => 'Can change avatar',
|
||||
'ACL_U_CHGGRP' => 'Can change default usergroup',
|
||||
'ACL_U_CHGPROFILEINFO' => 'Can change profile field information',
|
||||
|
||||
'acl_u_attach' => array('lang' => 'Can attach files', 'cat' => 'post'),
|
||||
'acl_u_download' => array('lang' => 'Can download files', 'cat' => 'post'),
|
||||
'acl_u_savedrafts' => array('lang' => 'Can save drafts', 'cat' => 'post'),
|
||||
'acl_u_chgcensors' => array('lang' => 'Can disable word censors', 'cat' => 'post'),
|
||||
'acl_u_sig' => array('lang' => 'Can use signature', 'cat' => 'post'),
|
||||
'ACL_U_ATTACH' => 'Can attach files',
|
||||
'ACL_U_DOWNLOAD' => 'Can download files',
|
||||
'ACL_U_SAVEDRAFTS' => 'Can save drafts',
|
||||
'ACL_U_CHGCENSORS' => 'Can disable word censors',
|
||||
'ACL_U_SIG' => 'Can use signature',
|
||||
|
||||
'acl_u_sendpm' => array('lang' => 'Can send private messages', 'cat' => 'pm'),
|
||||
'acl_u_masspm' => array('lang' => 'Can send messages to multiple users', 'cat' => 'pm'),
|
||||
'acl_u_masspm_group'=> array('lang' => 'Can send messages to groups', 'cat' => 'pm'),
|
||||
'acl_u_readpm' => array('lang' => 'Can read private messages', 'cat' => 'pm'),
|
||||
'acl_u_pm_edit' => array('lang' => 'Can edit own private messages', 'cat' => 'pm'),
|
||||
'acl_u_pm_delete' => array('lang' => 'Can remove private messages from own folder', 'cat' => 'pm'),
|
||||
'acl_u_pm_forward' => array('lang' => 'Can forward private messages', 'cat' => 'pm'),
|
||||
'acl_u_pm_emailpm' => array('lang' => 'Can email private messages', 'cat' => 'pm'),
|
||||
'acl_u_pm_printpm' => array('lang' => 'Can print private messages', 'cat' => 'pm'),
|
||||
'acl_u_pm_attach' => array('lang' => 'Can attach files in private messages', 'cat' => 'pm'),
|
||||
'acl_u_pm_download' => array('lang' => 'Can download files in private messages', 'cat' => 'pm'),
|
||||
'acl_u_pm_bbcode' => array('lang' => 'Can use BBCode in private messages', 'cat' => 'pm'),
|
||||
'acl_u_pm_smilies' => array('lang' => 'Can use smilies in private messages', 'cat' => 'pm'),
|
||||
'acl_u_pm_img' => array('lang' => 'Can use [img] BBCode tag in private messages', 'cat' => 'pm'),
|
||||
'acl_u_pm_flash' => array('lang' => 'Can use [flash] BBCode tag in private messages', 'cat' => 'pm'),
|
||||
'ACL_U_SENDPM' => 'Can send private messages',
|
||||
'ACL_U_MASSPM' => 'Can send messages to multiple users',
|
||||
'ACL_U_MASSPM_GROUP'=> 'Can send messages to groups',
|
||||
'ACL_U_READPM' => 'Can read private messages',
|
||||
'ACL_U_PM_EDIT' => 'Can edit own private messages',
|
||||
'ACL_U_PM_DELETE' => 'Can remove private messages from own folder',
|
||||
'ACL_U_PM_FORWARD' => 'Can forward private messages',
|
||||
'ACL_U_PM_EMAILPM' => 'Can email private messages',
|
||||
'ACL_U_PM_PRINTPM' => 'Can print private messages',
|
||||
'ACL_U_PM_ATTACH' => 'Can attach files in private messages',
|
||||
'ACL_U_PM_DOWNLOAD' => 'Can download files in private messages',
|
||||
'ACL_U_PM_BBCODE' => 'Can use BBCode in private messages',
|
||||
'ACL_U_PM_SMILIES' => 'Can use smilies in private messages',
|
||||
'ACL_U_PM_IMG' => 'Can use [img] BBCode tag in private messages',
|
||||
'ACL_U_PM_FLASH' => 'Can use [flash] BBCode tag in private messages',
|
||||
|
||||
'acl_u_sendemail' => array('lang' => 'Can send emails', 'cat' => 'misc'),
|
||||
'acl_u_sendim' => array('lang' => 'Can send instant messages', 'cat' => 'misc'),
|
||||
'acl_u_ignoreflood' => array('lang' => 'Can ignore flood limit', 'cat' => 'misc'),
|
||||
'acl_u_hideonline' => array('lang' => 'Can hide online status', 'cat' => 'misc'),
|
||||
'acl_u_viewonline' => array('lang' => 'Can view hidden online users', 'cat' => 'misc'),
|
||||
'acl_u_search' => array('lang' => 'Can search board', 'cat' => 'misc'),
|
||||
'ACL_U_SENDEMAIL' => 'Can send emails',
|
||||
'ACL_U_SENDIM' => 'Can send instant messages',
|
||||
'ACL_U_IGNOREFLOOD' => 'Can ignore flood limit',
|
||||
'ACL_U_HIDEONLINE' => 'Can hide online status',
|
||||
'ACL_U_VIEWONLINE' => 'Can view hidden online users',
|
||||
'ACL_U_SEARCH' => 'Can search board',
|
||||
));
|
||||
|
||||
// Forum Permissions
|
||||
$lang = array_merge($lang, array(
|
||||
'acl_f_list' => array('lang' => 'Can see forum', 'cat' => 'actions'),
|
||||
'acl_f_read' => array('lang' => 'Can read forum', 'cat' => 'actions'),
|
||||
'acl_f_search' => array('lang' => 'Can search the forum', 'cat' => 'actions'),
|
||||
'acl_f_subscribe' => array('lang' => 'Can subscribe forum', 'cat' => 'actions'),
|
||||
'acl_f_print' => array('lang' => 'Can print topics', 'cat' => 'actions'),
|
||||
'acl_f_email' => array('lang' => 'Can email topics', 'cat' => 'actions'),
|
||||
'acl_f_bump' => array('lang' => 'Can bump topics', 'cat' => 'actions'),
|
||||
'acl_f_user_lock' => array('lang' => 'Can lock own topics', 'cat' => 'actions'),
|
||||
'acl_f_download' => array('lang' => 'Can download files', 'cat' => 'actions'),
|
||||
'acl_f_report' => array('lang' => 'Can report posts', 'cat' => 'actions'),
|
||||
'ACL_F_LIST' => 'Can see forum',
|
||||
'ACL_F_READ' => 'Can read forum',
|
||||
'ACL_F_SEARCH' => 'Can search the forum',
|
||||
'ACL_F_SUBSCRIBE' => 'Can subscribe forum',
|
||||
'ACL_F_PRINT' => 'Can print topics',
|
||||
'ACL_F_EMAIL' => 'Can email topics',
|
||||
'ACL_F_BUMP' => 'Can bump topics',
|
||||
'ACL_F_USER_LOCK' => 'Can lock own topics',
|
||||
'ACL_F_DOWNLOAD' => 'Can download files',
|
||||
'ACL_F_REPORT' => 'Can report posts',
|
||||
|
||||
'acl_f_post' => array('lang' => 'Can start new topics', 'cat' => 'post'),
|
||||
'acl_f_sticky' => array('lang' => 'Can post stickies', 'cat' => 'post'),
|
||||
'acl_f_announce' => array('lang' => 'Can post announcements', 'cat' => 'post'),
|
||||
'acl_f_reply' => array('lang' => 'Can reply to topics', 'cat' => 'post'),
|
||||
'acl_f_edit' => array('lang' => 'Can edit own posts', 'cat' => 'post'),
|
||||
'acl_f_delete' => array('lang' => 'Can permanently delete own posts', 'cat' => 'post'),
|
||||
'acl_f_softdelete' => array('lang' => 'Can soft delete own posts<br /><em>Moderators, who have the approve posts permission, can restore soft deleted posts.</em>', 'cat' => 'post'),
|
||||
'acl_f_ignoreflood' => array('lang' => 'Can ignore flood limit', 'cat' => 'post'),
|
||||
'acl_f_postcount' => array('lang' => 'Increment post counter<br /><em>Please note that this setting only affects new posts.</em>', 'cat' => 'post'),
|
||||
'acl_f_noapprove' => array('lang' => 'Can post without approval', 'cat' => 'post'),
|
||||
'ACL_F_POST' => 'Can start new topics',
|
||||
'ACL_F_STICKY' => 'Can post stickies',
|
||||
'ACL_F_ANNOUNCE' => 'Can post announcements',
|
||||
'ACL_F_REPLY' => 'Can reply to topics',
|
||||
'ACL_F_EDIT' => 'Can edit own posts',
|
||||
'ACL_F_DELETE' => 'Can permanently delete own posts',
|
||||
'ACL_F_SOFTDELETE' => 'Can soft delete own posts<br /><em>Moderators, who have the approve posts permission, can restore soft deleted posts.</em>',
|
||||
'ACL_F_IGNOREFLOOD' => 'Can ignore flood limit',
|
||||
'ACL_F_POSTCOUNT' => 'Increment post counter<br /><em>Please note that this setting only affects new posts.</em>',
|
||||
'ACL_F_NOAPPROVE' => 'Can post without approval',
|
||||
|
||||
'acl_f_attach' => array('lang' => 'Can attach files', 'cat' => 'content'),
|
||||
'acl_f_icons' => array('lang' => 'Can use topic/post icons', 'cat' => 'content'),
|
||||
'acl_f_bbcode' => array('lang' => 'Can use BBCode', 'cat' => 'content'),
|
||||
'acl_f_flash' => array('lang' => 'Can use [flash] BBCode tag', 'cat' => 'content'),
|
||||
'acl_f_img' => array('lang' => 'Can use [img] BBCode tag', 'cat' => 'content'),
|
||||
'acl_f_sigs' => array('lang' => 'Can use signatures', 'cat' => 'content'),
|
||||
'acl_f_smilies' => array('lang' => 'Can use smilies', 'cat' => 'content'),
|
||||
'ACL_F_ATTACH' => 'Can attach files',
|
||||
'ACL_F_ICONS' => 'Can use topic/post icons',
|
||||
'ACL_F_BBCODE' => 'Can use BBCode',
|
||||
'ACL_F_FLASH' => 'Can use [flash] BBCode tag',
|
||||
'ACL_F_IMG' => 'Can use [img] BBCode tag',
|
||||
'ACL_F_SIGS' => 'Can use signatures',
|
||||
'ACL_F_SMILIES' => 'Can use smilies',
|
||||
|
||||
'acl_f_poll' => array('lang' => 'Can create polls', 'cat' => 'polls'),
|
||||
'acl_f_vote' => array('lang' => 'Can vote in polls', 'cat' => 'polls'),
|
||||
'acl_f_votechg' => array('lang' => 'Can change existing vote', 'cat' => 'polls'),
|
||||
'ACL_F_POLL' => 'Can create polls',
|
||||
'ACL_F_VOTE' => 'Can vote in polls',
|
||||
'ACL_F_VOTECHG' => 'Can change existing vote',
|
||||
));
|
||||
|
||||
// Moderator Permissions
|
||||
$lang = array_merge($lang, array(
|
||||
'acl_m_edit' => array('lang' => 'Can edit posts', 'cat' => 'post_actions'),
|
||||
'acl_m_delete' => array('lang' => 'Can permanently delete posts', 'cat' => 'post_actions'),
|
||||
'acl_m_softdelete' => array('lang' => 'Can soft delete posts<br /><em>Moderators, who have the approve posts permission, can restore soft deleted posts.</em>', 'cat' => 'post_actions'),
|
||||
'acl_m_approve' => array('lang' => 'Can approve and restore posts', 'cat' => 'post_actions'),
|
||||
'acl_m_report' => array('lang' => 'Can close and delete reports', 'cat' => 'post_actions'),
|
||||
'acl_m_chgposter' => array('lang' => 'Can change post author', 'cat' => 'post_actions'),
|
||||
'ACL_M_EDIT' => 'Can edit posts',
|
||||
'ACL_M_DELETE' => 'Can permanently delete posts',
|
||||
'ACL_M_SOFTDELETE' => 'Can soft delete posts<br /><em>Moderators, who have the approve posts permission, can restore soft deleted posts.</em>',
|
||||
'ACL_M_APPROVE' => 'Can approve posts',
|
||||
'ACL_M_REPORT' => 'Can close and delete reports',
|
||||
'ACL_M_CHGPOSTER' => 'Can change post author',
|
||||
|
||||
'acl_m_move' => array('lang' => 'Can move topics', 'cat' => 'topic_actions'),
|
||||
'acl_m_lock' => array('lang' => 'Can lock topics', 'cat' => 'topic_actions'),
|
||||
'acl_m_split' => array('lang' => 'Can split topics', 'cat' => 'topic_actions'),
|
||||
'acl_m_merge' => array('lang' => 'Can merge topics', 'cat' => 'topic_actions'),
|
||||
'ACL_M_MOVE' => 'Can move topics',
|
||||
'ACL_M_LOCK' => 'Can lock topics',
|
||||
'ACL_M_SPLIT' => 'Can split topics',
|
||||
'ACL_M_MERGE' => 'Can merge topics',
|
||||
|
||||
'acl_m_info' => array('lang' => 'Can view post details', 'cat' => 'misc'),
|
||||
'acl_m_warn' => array('lang' => 'Can issue warnings<br /><em>This setting is only assigned globally. It is not forum based.</em>', 'cat' => 'misc'), // This moderator setting is only global (and not local)
|
||||
'acl_m_ban' => array('lang' => 'Can manage bans<br /><em>This setting is only assigned globally. It is not forum based.</em>', 'cat' => 'misc'), // This moderator setting is only global (and not local)
|
||||
'ACL_M_INFO' => 'Can view post details',
|
||||
'ACL_M_WARN' => 'Can issue warnings<br /><em>This setting is only assigned globally. It is not forum based.</em>', // This moderator setting is only global (and not local)
|
||||
'ACL_M_BAN' => 'Can manage bans<br /><em>This setting is only assigned globally. It is not forum based.</em>', // This moderator setting is only global (and not local)
|
||||
));
|
||||
|
||||
// Admin Permissions
|
||||
$lang = array_merge($lang, array(
|
||||
'acl_a_board' => array('lang' => 'Can alter board settings/check for updates', 'cat' => 'settings'),
|
||||
'acl_a_server' => array('lang' => 'Can alter server/communication settings', 'cat' => 'settings'),
|
||||
'acl_a_jabber' => array('lang' => 'Can alter Jabber settings', 'cat' => 'settings'),
|
||||
'acl_a_phpinfo' => array('lang' => 'Can view php settings', 'cat' => 'settings'),
|
||||
'ACL_A_BOARD' => 'Can alter board settings/check for updates',
|
||||
'ACL_A_SERVER' => 'Can alter server/communication settings',
|
||||
'ACL_A_JABBER' => 'Can alter Jabber settings',
|
||||
'ACL_A_PHPINFO' => 'Can view php settings',
|
||||
|
||||
'acl_a_forum' => array('lang' => 'Can manage forums', 'cat' => 'forums'),
|
||||
'acl_a_forumadd' => array('lang' => 'Can add new forums', 'cat' => 'forums'),
|
||||
'acl_a_forumdel' => array('lang' => 'Can delete forums', 'cat' => 'forums'),
|
||||
'acl_a_prune' => array('lang' => 'Can prune forums', 'cat' => 'forums'),
|
||||
'ACL_A_FORUM' => 'Can manage forums',
|
||||
'ACL_A_FORUMADD' => 'Can add new forums',
|
||||
'ACL_A_FORUMDEL' => 'Can delete forums',
|
||||
'ACL_A_PRUNE' => 'Can prune forums',
|
||||
|
||||
'acl_a_icons' => array('lang' => 'Can alter topic/post icons and smilies', 'cat' => 'posting'),
|
||||
'acl_a_words' => array('lang' => 'Can alter word censors', 'cat' => 'posting'),
|
||||
'acl_a_bbcode' => array('lang' => 'Can define BBCode tags', 'cat' => 'posting'),
|
||||
'acl_a_attach' => array('lang' => 'Can alter attachment related settings', 'cat' => 'posting'),
|
||||
'ACL_A_ICONS' => 'Can alter topic/post icons and smilies',
|
||||
'ACL_A_WORDS' => 'Can alter word censors',
|
||||
'ACL_A_BBCODE' => 'Can define BBCode tags',
|
||||
'ACL_A_ATTACH' => 'Can alter attachment related settings',
|
||||
|
||||
'acl_a_user' => array('lang' => 'Can manage users<br /><em>This also includes seeing the users browser agent within the viewonline list.</em>', 'cat' => 'user_group'),
|
||||
'acl_a_userdel' => array('lang' => 'Can delete/prune users', 'cat' => 'user_group'),
|
||||
'acl_a_group' => array('lang' => 'Can manage groups', 'cat' => 'user_group'),
|
||||
'acl_a_groupadd' => array('lang' => 'Can add new groups', 'cat' => 'user_group'),
|
||||
'acl_a_groupdel' => array('lang' => 'Can delete groups', 'cat' => 'user_group'),
|
||||
'acl_a_ranks' => array('lang' => 'Can manage ranks', 'cat' => 'user_group'),
|
||||
'acl_a_profile' => array('lang' => 'Can manage custom profile fields', 'cat' => 'user_group'),
|
||||
'acl_a_names' => array('lang' => 'Can manage disallowed names', 'cat' => 'user_group'),
|
||||
'acl_a_ban' => array('lang' => 'Can manage bans', 'cat' => 'user_group'),
|
||||
'ACL_A_USER' => 'Can manage users<br /><em>This also includes seeing the users browser agent within the viewonline list.</em>',
|
||||
'ACL_A_USERDEL' => 'Can delete/prune users',
|
||||
'ACL_A_GROUP' => 'Can manage groups',
|
||||
'ACL_A_GROUPADD' => 'Can add new groups',
|
||||
'ACL_A_GROUPDEL' => 'Can delete groups',
|
||||
'ACL_A_RANKS' => 'Can manage ranks',
|
||||
'ACL_A_PROFILE' => 'Can manage custom profile fields',
|
||||
'ACL_A_NAMES' => 'Can manage disallowed names',
|
||||
'ACL_A_BAN' => 'Can manage bans',
|
||||
|
||||
'acl_a_viewauth' => array('lang' => 'Can view permission masks', 'cat' => 'permissions'),
|
||||
'acl_a_authgroups' => array('lang' => 'Can alter permissions for individual groups', 'cat' => 'permissions'),
|
||||
'acl_a_authusers' => array('lang' => 'Can alter permissions for individual users', 'cat' => 'permissions'),
|
||||
'acl_a_fauth' => array('lang' => 'Can alter forum permission class', 'cat' => 'permissions'),
|
||||
'acl_a_mauth' => array('lang' => 'Can alter moderator permission class', 'cat' => 'permissions'),
|
||||
'acl_a_aauth' => array('lang' => 'Can alter admin permission class', 'cat' => 'permissions'),
|
||||
'acl_a_uauth' => array('lang' => 'Can alter user permission class', 'cat' => 'permissions'),
|
||||
'acl_a_roles' => array('lang' => 'Can manage roles', 'cat' => 'permissions'),
|
||||
'acl_a_switchperm' => array('lang' => 'Can use others permissions', 'cat' => 'permissions'),
|
||||
'ACL_A_VIEWAUTH' => 'Can view permission masks',
|
||||
'ACL_A_AUTHGROUPS' => 'Can alter permissions for individual groups',
|
||||
'ACL_A_AUTHUSERS' => 'Can alter permissions for individual users',
|
||||
'ACL_A_FAUTH' => 'Can alter forum permission class',
|
||||
'ACL_A_MAUTH' => 'Can alter moderator permission class',
|
||||
'ACL_A_AAUTH' => 'Can alter admin permission class',
|
||||
'ACL_A_UAUTH' => 'Can alter user permission class',
|
||||
'ACL_A_ROLES' => 'Can manage roles',
|
||||
'ACL_A_SWITCHPERM' => 'Can use others permissions',
|
||||
|
||||
'acl_a_styles' => array('lang' => 'Can manage styles', 'cat' => 'misc'),
|
||||
'acl_a_extensions' => array('lang' => 'Can manage extensions', 'cat' => 'misc'),
|
||||
'acl_a_viewlogs' => array('lang' => 'Can view logs', 'cat' => 'misc'),
|
||||
'acl_a_clearlogs' => array('lang' => 'Can clear logs', 'cat' => 'misc'),
|
||||
'acl_a_modules' => array('lang' => 'Can manage modules', 'cat' => 'misc'),
|
||||
'acl_a_language' => array('lang' => 'Can manage language packs', 'cat' => 'misc'),
|
||||
'acl_a_email' => array('lang' => 'Can send mass email', 'cat' => 'misc'),
|
||||
'acl_a_bots' => array('lang' => 'Can manage bots', 'cat' => 'misc'),
|
||||
'acl_a_reasons' => array('lang' => 'Can manage report/denial reasons', 'cat' => 'misc'),
|
||||
'acl_a_backup' => array('lang' => 'Can backup/restore database', 'cat' => 'misc'),
|
||||
'acl_a_search' => array('lang' => 'Can manage search backends and settings', 'cat' => 'misc'),
|
||||
'ACL_A_STYLES' => 'Can manage styles',
|
||||
'ACL_A_EXTENSIONS' => 'Can manage extensions',
|
||||
'ACL_A_VIEWLOGS' => 'Can view logs',
|
||||
'ACL_A_CLEARLOGS' => 'Can clear logs',
|
||||
'ACL_A_MODULES' => 'Can manage modules',
|
||||
'ACL_A_LANGUAGE' => 'Can manage language packs',
|
||||
'ACL_A_EMAIL' => 'Can send mass email',
|
||||
'ACL_A_BOTS' => 'Can manage bots',
|
||||
'ACL_A_REASONS' => 'Can manage report/denial reasons',
|
||||
'ACL_A_BACKUP' => 'Can backup/restore database',
|
||||
'ACL_A_SEARCH' => 'Can manage search backends and settings',
|
||||
));
|
||||
|
|
|
@ -2,7 +2,7 @@ Subject: Forum post notification - "{FORUM_NAME}"
|
|||
|
||||
Hello {USERNAME},
|
||||
|
||||
You are receiving this notification because you are watching the forum "{FORUM_NAME}" at "{SITENAME}". This forum has received a new reply to the topic "{TOPIC_TITLE}"<!-- IF AUTHOR_NAME --> by {AUTHOR_NAME}<!-- ENDIF --> since your last visit. You can use the following link to view the last unread reply, no more notifications will be sent until you visit the topic.
|
||||
You are receiving this notification because you are watching the forum "{FORUM_NAME}" at "{SITENAME}". This forum has received a new reply to the topic "{TOPIC_TITLE}"<!-- IF AUTHOR_NAME !== '' --> by {AUTHOR_NAME}<!-- ENDIF --> since your last visit. You can use the following link to view the last unread reply, no more notifications will be sent until you visit the topic.
|
||||
|
||||
{U_NEWEST_POST}
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@ Username: {USERNAME}
|
|||
Board URL: {U_BOARD}
|
||||
----------------------------
|
||||
|
||||
Useful information regarding the phpBB software can be found in the docs folder of your installation and on phpBB.com's support page - http://www.phpbb.com/support/
|
||||
Useful information regarding the phpBB software can be found in the docs folder of your installation and on phpBB.com's support page - https://www.phpbb.com/support/
|
||||
|
||||
In order to keep your board safe and secure, we highly recommended keeping current with software releases. For your convenience, a mailing list is available at the page referenced above.
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@ Subject: New topic notification - "{FORUM_NAME}"
|
|||
|
||||
Hello {USERNAME},
|
||||
|
||||
You are receiving this notification because you are watching the forum "{FORUM_NAME}" at "{SITENAME}". This forum has received a new topic<!-- IF AUTHOR_NAME --> by {AUTHOR_NAME}<!-- ENDIF --> since your last visit, "{TOPIC_TITLE}". You can use the following link to view the forum, no more notifications will be sent until you visit the forum.
|
||||
You are receiving this notification because you are watching the forum "{FORUM_NAME}" at "{SITENAME}". This forum has received a new topic<!-- IF AUTHOR_NAME !== '' --> by {AUTHOR_NAME}<!-- ENDIF --> since your last visit, "{TOPIC_TITLE}". You can use the following link to view the forum, no more notifications will be sent until you visit the forum.
|
||||
|
||||
{U_FORUM}
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@ Subject: Topic reply notification - "{TOPIC_TITLE}"
|
|||
|
||||
Hello {USERNAME},
|
||||
|
||||
You are receiving this notification because you are watching the topic "{TOPIC_TITLE}" at "{SITENAME}". This topic has received a reply<!-- IF AUTHOR_NAME --> by {AUTHOR_NAME}<!-- ENDIF --> since your last visit. You can use the following link to view the replies made, no more notifications will be sent until you visit the topic.
|
||||
You are receiving this notification because you are watching the topic "{TOPIC_TITLE}" at "{SITENAME}". This topic has received a reply<!-- IF AUTHOR_NAME !== '' --> by {AUTHOR_NAME}<!-- ENDIF --> since your last visit. You can use the following link to view the replies made, no more notifications will be sent until you visit the topic.
|
||||
|
||||
If you want to view the newest post made since your last visit, click the following link:
|
||||
{U_NEWEST_POST}
|
||||
|
|
|
@ -332,7 +332,7 @@ $help = array(
|
|||
),
|
||||
array(
|
||||
0 => 'Why isn’t X feature available?',
|
||||
1 => 'This software was written by and licensed through phpBB Group. If you believe a feature needs to be added, or you want to report a bug, please visit the phpBB <a href="http://area51.phpbb.com/">Area51</a> website, where you will find resources to do so.'
|
||||
1 => 'This software was written by and licensed through phpBB Group. If you believe a feature needs to be added please visit the <a href="https://www.phpbb.com/ideas/">phpBB Ideas Centre</a>, where you can upvote existing ideas or suggest new features.'
|
||||
),
|
||||
array(
|
||||
0 => 'Who do I contact about abusive and/or legal matters related to this board?',
|
||||
|
|
|
@ -374,7 +374,7 @@ $lang = array_merge($lang, array(
|
|||
|
||||
// Updater
|
||||
$lang = array_merge($lang, array(
|
||||
'ALL_FILES_UP_TO_DATE' => 'All files are up to date with the latest phpBB version. You should now <a href="%1$s">login to your board</a> and check if everything is working fine. Do not forget to delete, rename or move your install directory! Please send us updated information about your server and board configurations from the <a href="%2$s">Send statistics</a> module in your ACP.',
|
||||
'ALL_FILES_UP_TO_DATE' => 'All files are up to date with the latest phpBB version.',
|
||||
'ARCHIVE_FILE' => 'Source file within archive',
|
||||
|
||||
'BACK' => 'Back',
|
||||
|
@ -398,7 +398,7 @@ $lang = array_merge($lang, array(
|
|||
|
||||
'DATABASE_TYPE' => 'Database type',
|
||||
'DATABASE_UPDATE_COMPLETE' => 'Database updater has completed!',
|
||||
'DATABASE_UPDATE_CONTINUE' => 'Continue database update.',
|
||||
'DATABASE_UPDATE_CONTINUE' => 'Continue database update',
|
||||
'DATABASE_UPDATE_INFO_OLD' => 'The database update file within the install directory is outdated. Please make sure you uploaded the correct version of the file.',
|
||||
'DATABASE_UPDATE_NOT_COMPLETED' => 'The database update has not yet completed.',
|
||||
'DELETE_USER_REMOVE' => 'Delete user and remove posts',
|
||||
|
@ -419,8 +419,9 @@ $lang = array_merge($lang, array(
|
|||
'DOWNLOAD_UPDATE_METHOD' => 'Download modified files archive',
|
||||
'DOWNLOAD_UPDATE_METHOD_EXPLAIN' => 'Once downloaded you should unpack the archive. You will find the modified files you need to upload to your phpBB root directory within it. Please upload the files to their respective locations then. After you have uploaded all files, please check the files again with the other button below.',
|
||||
|
||||
'ERROR' => 'Error',
|
||||
'EDIT_USERNAME' => 'Edit username',
|
||||
'ERROR' => 'Error',
|
||||
'EVERYTHING_UP_TO_DATE' => 'Everything is up to date with the latest phpBB version. You should now <a href="%1$s">login to your board</a> and check if everything is working fine. Do not forget to delete, rename or move your install directory! Please send us updated information about your server and board configurations from the <a href="%2$s">Send statistics</a> module in your ACP.',
|
||||
|
||||
'FILE_ALREADY_UP_TO_DATE' => 'File is already up to date.',
|
||||
'FILE_DIFF_NOT_ALLOWED' => 'File not allowed to be diffed.',
|
||||
|
@ -570,6 +571,7 @@ $lang = array_merge($lang, array(
|
|||
'UPLOAD_METHOD' => 'Upload method',
|
||||
|
||||
'UPDATE_DB_SUCCESS' => 'Database update was successful.',
|
||||
'UPDATE_FILE_SUCCESS' => 'File update was successful.',
|
||||
'USER_ACTIVE' => 'Active user',
|
||||
'USER_INACTIVE' => 'Inactive user',
|
||||
|
||||
|
|
|
@ -561,17 +561,8 @@ switch ($mode)
|
|||
|
||||
if ($member['user_sig'])
|
||||
{
|
||||
$member['user_sig'] = censor_text($member['user_sig']);
|
||||
|
||||
if ($member['user_sig_bbcode_bitfield'])
|
||||
{
|
||||
include_once($phpbb_root_path . 'includes/bbcode.' . $phpEx);
|
||||
$bbcode = new bbcode();
|
||||
$bbcode->bbcode_second_pass($member['user_sig'], $member['user_sig_bbcode_uid'], $member['user_sig_bbcode_bitfield']);
|
||||
}
|
||||
|
||||
$member['user_sig'] = bbcode_nl2br($member['user_sig']);
|
||||
$member['user_sig'] = smiley_text($member['user_sig']);
|
||||
$parse_flags = ($member['user_sig_bbcode_bitfield'] ? OPTION_FLAG_BBCODE : 0) | OPTION_FLAG_SMILIES;
|
||||
$member['user_sig'] = generate_text_for_display($member['user_sig'], $member['user_sig_bbcode_uid'], $member['user_sig_bbcode_bitfield'], $parse_flags, true);
|
||||
}
|
||||
|
||||
$poster_avatar = phpbb_get_user_avatar($member);
|
||||
|
|
|
@ -93,7 +93,7 @@ class phpbb_avatar_driver_remote extends phpbb_avatar_driver
|
|||
// Make sure getimagesize works...
|
||||
if (function_exists('getimagesize'))
|
||||
{
|
||||
if (($width <= 0 || $height <= 0) && (($image_data = getimagesize($url)) === false))
|
||||
if (($width <= 0 || $height <= 0) && (($image_data = @getimagesize($url)) === false))
|
||||
{
|
||||
$error[] = 'UNABLE_GET_IMAGE_SIZE';
|
||||
return false;
|
||||
|
|
70
phpBB/phpbb/cache/driver/file.php
vendored
70
phpBB/phpbb/cache/driver/file.php
vendored
|
@ -205,28 +205,34 @@ class phpbb_cache_driver_file extends phpbb_cache_driver_base
|
|||
function purge()
|
||||
{
|
||||
// Purge all phpbb cache files
|
||||
$dir = @opendir($this->cache_dir);
|
||||
|
||||
if (!$dir)
|
||||
try
|
||||
{
|
||||
$iterator = new DirectoryIterator($this->cache_dir);
|
||||
}
|
||||
catch (Exception $e)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
while (($entry = readdir($dir)) !== false)
|
||||
foreach ($iterator as $fileInfo)
|
||||
{
|
||||
if (strpos($entry, 'container_') !== 0 &&
|
||||
strpos($entry, 'url_matcher') !== 0 &&
|
||||
strpos($entry, 'sql_') !== 0 &&
|
||||
strpos($entry, 'data_') !== 0 &&
|
||||
strpos($entry, 'ctpl_') !== 0 &&
|
||||
strpos($entry, 'tpl_') !== 0)
|
||||
if ($fileInfo->isDot())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
$this->remove_file($this->cache_dir . $entry);
|
||||
$filename = $fileInfo->getFilename();
|
||||
if ($fileInfo->isDir())
|
||||
{
|
||||
$this->remove_dir($fileInfo->getPathname());
|
||||
}
|
||||
elseif (strpos($filename, 'container_') === 0 ||
|
||||
strpos($filename, 'url_matcher') === 0 ||
|
||||
strpos($filename, 'sql_') === 0 ||
|
||||
strpos($filename, 'data_') === 0)
|
||||
{
|
||||
$this->remove_file($fileInfo->getPathname());
|
||||
}
|
||||
}
|
||||
closedir($dir);
|
||||
|
||||
unset($this->vars);
|
||||
unset($this->var_expires);
|
||||
|
@ -241,6 +247,44 @@ class phpbb_cache_driver_file extends phpbb_cache_driver_base
|
|||
$this->is_modified = false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove directory
|
||||
*
|
||||
* @param string $dir Directory to remove
|
||||
*
|
||||
* @return null
|
||||
*/
|
||||
protected function remove_dir($dir)
|
||||
{
|
||||
try
|
||||
{
|
||||
$iterator = new DirectoryIterator($dir);
|
||||
}
|
||||
catch (Exception $e)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
foreach ($iterator as $fileInfo)
|
||||
{
|
||||
if ($fileInfo->isDot())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if ($fileInfo->isDir())
|
||||
{
|
||||
$this->remove_dir($fileInfo->getPathname());
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->remove_file($fileInfo->getPathname());
|
||||
}
|
||||
}
|
||||
|
||||
@rmdir($dir);
|
||||
}
|
||||
|
||||
/**
|
||||
* Destroy cache data
|
||||
*/
|
||||
|
|
|
@ -360,6 +360,11 @@ class phpbb_content_visibility
|
|||
// Sync the first/last topic information if needed
|
||||
if (!$is_starter && $is_latest)
|
||||
{
|
||||
if (!function_exists('update_post_information'))
|
||||
{
|
||||
include($this->phpbb_root_path . 'includes/functions_posting.' . $this->php_ext);
|
||||
}
|
||||
|
||||
// update_post_information can only update the last post info ...
|
||||
if ($topic_id)
|
||||
{
|
||||
|
|
|
@ -35,6 +35,12 @@ class phpbb_controller_helper
|
|||
*/
|
||||
protected $user;
|
||||
|
||||
/**
|
||||
* Request object
|
||||
* @var phpbb_request
|
||||
*/
|
||||
protected $request;
|
||||
|
||||
/**
|
||||
* phpBB root path
|
||||
* @var string
|
||||
|
@ -55,10 +61,11 @@ class phpbb_controller_helper
|
|||
* @param string $phpbb_root_path phpBB root path
|
||||
* @param string $php_ext PHP extension
|
||||
*/
|
||||
public function __construct(phpbb_template $template, phpbb_user $user, $phpbb_root_path, $php_ext)
|
||||
public function __construct(phpbb_template $template, phpbb_user $user, phpbb_request_interface $request, $phpbb_root_path, $php_ext)
|
||||
{
|
||||
$this->template = $template;
|
||||
$this->user = $user;
|
||||
$this->request = $request;
|
||||
$this->phpbb_root_path = $phpbb_root_path;
|
||||
$this->php_ext = $php_ext;
|
||||
}
|
||||
|
@ -102,22 +109,16 @@ class phpbb_controller_helper
|
|||
$route = substr($route, 0, $route_delim);
|
||||
}
|
||||
|
||||
if (is_array($params) && !empty($params))
|
||||
{
|
||||
$params = array_merge(array(
|
||||
'controller' => $route,
|
||||
), $params);
|
||||
}
|
||||
else if (is_string($params) && $params)
|
||||
{
|
||||
$params = 'controller=' . $route . (($is_amp) ? '&' : '&') . $params;
|
||||
}
|
||||
else
|
||||
{
|
||||
$params = array('controller' => $route);
|
||||
}
|
||||
$request_uri = $this->request->variable('REQUEST_URI', '', false, phpbb_request::SERVER);
|
||||
$script_name = $this->request->variable('SCRIPT_NAME', '', false, phpbb_request::SERVER);
|
||||
|
||||
return append_sid($this->phpbb_root_path . 'app.' . $this->php_ext . $route_params, $params, $is_amp, $session_id);
|
||||
// If the app.php file is being used (no rewrite) keep it in the URL.
|
||||
// Otherwise, don't include it.
|
||||
$route_prefix = $this->phpbb_root_path;
|
||||
$parts = explode('/', $script_name);
|
||||
$route_prefix .= strpos($request_uri, $script_name) === 0 ? array_pop($parts) . '/' : '';
|
||||
|
||||
return append_sid($route_prefix . "$route" . $route_params, $params, $is_amp, $session_id);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -38,23 +38,23 @@ class phpbb_controller_resolver implements ControllerResolverInterface
|
|||
protected $container;
|
||||
|
||||
/**
|
||||
* phpbb_style object
|
||||
* @var phpbb_style
|
||||
* phpbb_template object
|
||||
* @var phpbb_template
|
||||
*/
|
||||
protected $style;
|
||||
protected $template;
|
||||
|
||||
/**
|
||||
* Construct method
|
||||
*
|
||||
* @param phpbb_user $user User Object
|
||||
* @param ContainerInterface $container ContainerInterface object
|
||||
* @param phpbb_style $style
|
||||
* @param phpbb_template $template
|
||||
*/
|
||||
public function __construct(phpbb_user $user, ContainerInterface $container, phpbb_style $style = null)
|
||||
public function __construct(phpbb_user $user, ContainerInterface $container, phpbb_template $template = null)
|
||||
{
|
||||
$this->user = $user;
|
||||
$this->container = $container;
|
||||
$this->style = $style;
|
||||
$this->template = $template;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -96,13 +96,13 @@ class phpbb_controller_resolver implements ControllerResolverInterface
|
|||
$controller_dir = explode('_', get_class($controller_object));
|
||||
|
||||
// 0 phpbb, 1 ext, 2 vendor, 3 extension name, ...
|
||||
if (!is_null($this->style) && isset($controller_dir[3]) && $controller_dir[1] === 'ext')
|
||||
if (!is_null($this->template) && isset($controller_dir[3]) && $controller_dir[1] === 'ext')
|
||||
{
|
||||
$controller_style_dir = 'ext/' . $controller_dir[2] . '/' . $controller_dir[3] . '/styles';
|
||||
|
||||
if (is_dir($controller_style_dir))
|
||||
{
|
||||
$this->style->set_style(array($controller_style_dir, 'styles'));
|
||||
$this->template->set_style(array($controller_style_dir, 'styles'));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_10 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.10', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.10', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_10_rc1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.10-rc1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.10-RC1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -24,7 +24,7 @@ class phpbb_db_migration_data_30x_3_0_10_rc1 extends phpbb_db_migration
|
|||
return array(
|
||||
array('config.add', array('email_max_chunk_size', 50)),
|
||||
|
||||
array('config.update', array('version', '3.0.10-rc1')),
|
||||
array('config.update', array('version', '3.0.10-RC1')),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_10_rc2 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.10-rc2', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.10-RC2', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -22,7 +22,7 @@ class phpbb_db_migration_data_30x_3_0_10_rc2 extends phpbb_db_migration
|
|||
public function update_data()
|
||||
{
|
||||
return array(
|
||||
array('config.update', array('version', '3.0.10-rc2')),
|
||||
array('config.update', array('version', '3.0.10-RC2')),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_10_rc3 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.10-rc3', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.10-RC3', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -22,7 +22,7 @@ class phpbb_db_migration_data_30x_3_0_10_rc3 extends phpbb_db_migration
|
|||
public function update_data()
|
||||
{
|
||||
return array(
|
||||
array('config.update', array('version', '3.0.10-rc3')),
|
||||
array('config.update', array('version', '3.0.10-RC3')),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_11 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.11', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.11', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_11_rc1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.11-rc1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.11-RC1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -25,7 +25,7 @@ class phpbb_db_migration_data_30x_3_0_11_rc1 extends phpbb_db_migration
|
|||
array('custom', array(array(&$this, 'cleanup_deactivated_styles'))),
|
||||
array('custom', array(array(&$this, 'delete_orphan_private_messages'))),
|
||||
|
||||
array('config.update', array('version', '3.0.11-rc1')),
|
||||
array('config.update', array('version', '3.0.11-RC1')),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_11_rc2 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.11-rc2', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.11-RC2', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -44,7 +44,7 @@ class phpbb_db_migration_data_30x_3_0_11_rc2 extends phpbb_db_migration
|
|||
public function update_data()
|
||||
{
|
||||
return array(
|
||||
array('config.update', array('version', '3.0.11-rc2')),
|
||||
array('config.update', array('version', '3.0.11-RC2')),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@ class phpbb_db_migration_data_30x_3_0_12_rc1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.12-rc1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.12-RC1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -28,7 +28,7 @@ class phpbb_db_migration_data_30x_3_0_12_rc1 extends phpbb_db_migration
|
|||
array('custom', array(array(&$this, 'update_bots'))),
|
||||
array('custom', array(array(&$this, 'disable_bots_from_receiving_pms'))),
|
||||
|
||||
array('config.update', array('version', '3.0.12-rc1')),
|
||||
array('config.update', array('version', '3.0.12-RC1')),
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -108,7 +108,7 @@ class phpbb_db_migration_data_30x_3_0_12_rc1 extends phpbb_db_migration
|
|||
WHERE user_id = $bot_user_id";
|
||||
$this->sql_query($sql);
|
||||
|
||||
user_delete('remove', $bot_user_id);
|
||||
user_delete('retain', $bot_user_id);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_1_rc1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.1-rc1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.1-RC1', '>=');
|
||||
}
|
||||
|
||||
public function update_schema()
|
||||
|
@ -74,7 +74,7 @@ class phpbb_db_migration_data_30x_3_0_1_rc1 extends phpbb_db_migration
|
|||
array('custom', array(array(&$this, 'fix_unset_last_view_time'))),
|
||||
array('custom', array(array(&$this, 'reset_smiley_size'))),
|
||||
|
||||
array('config.update', array('version', '3.0.1-rc1')),
|
||||
array('config.update', array('version', '3.0.1-RC1')),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_2 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.2', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.2', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_2_rc1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.2-rc1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.2-RC1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -26,7 +26,7 @@ class phpbb_db_migration_data_30x_3_0_2_rc1 extends phpbb_db_migration
|
|||
array('config.add', array('check_attachment_content', '1')),
|
||||
array('config.add', array('mime_triggers', 'body|head|html|img|plaintext|a href|pre|script|table|title')),
|
||||
|
||||
array('config.update', array('version', '3.0.2-rc1')),
|
||||
array('config.update', array('version', '3.0.2-RC1')),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_2_rc2 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.2-rc2', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.2-RC2', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -74,7 +74,7 @@ class phpbb_db_migration_data_30x_3_0_2_rc2 extends phpbb_db_migration
|
|||
public function update_data()
|
||||
{
|
||||
return array(
|
||||
array('config.update', array('version', '3.0.2-rc2')),
|
||||
array('config.update', array('version', '3.0.2-RC2')),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_3 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.3', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.3', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_3_rc1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.3-rc1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.3-RC1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -60,7 +60,7 @@ class phpbb_db_migration_data_30x_3_0_3_rc1 extends phpbb_db_migration
|
|||
array('permission.add', array('u_masspm_group', true, 'u_masspm')),
|
||||
array('custom', array(array(&$this, 'correct_acp_email_permissions'))),
|
||||
|
||||
array('config.update', array('version', '3.0.3-rc1')),
|
||||
array('config.update', array('version', '3.0.3-RC1')),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_4 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.4', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.4', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_4_rc1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.4-rc1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.4-RC1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -76,7 +76,7 @@ class phpbb_db_migration_data_30x_3_0_4_rc1 extends phpbb_db_migration
|
|||
return array(
|
||||
array('custom', array(array(&$this, 'update_custom_profile_fields'))),
|
||||
|
||||
array('config.update', array('version', '3.0.4-rc1')),
|
||||
array('config.update', array('version', '3.0.4-RC1')),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_5 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.5', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.5', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_5_rc1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.5-rc1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.5-RC1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_5_rc1part2 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.5-rc1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.5-RC1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -36,7 +36,7 @@ class phpbb_db_migration_data_30x_3_0_5_rc1part2 extends phpbb_db_migration
|
|||
public function update_data()
|
||||
{
|
||||
return array(
|
||||
array('config.update', array('version', '3.0.5-rc1')),
|
||||
array('config.update', array('version', '3.0.5-RC1')),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_6 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.6', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.6', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_6_rc1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.6-rc1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.6-RC1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -185,7 +185,7 @@ class phpbb_db_migration_data_30x_3_0_6_rc1 extends phpbb_db_migration
|
|||
array('custom', array(array(&$this, 'add_newly_registered_group'))),
|
||||
array('custom', array(array(&$this, 'set_user_options_default'))),
|
||||
|
||||
array('config.update', array('version', '3.0.6-rc1')),
|
||||
array('config.update', array('version', '3.0.6-RC1')),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_6_rc2 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.6-rc2', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.6-RC2', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -22,7 +22,7 @@ class phpbb_db_migration_data_30x_3_0_6_rc2 extends phpbb_db_migration
|
|||
public function update_data()
|
||||
{
|
||||
return array(
|
||||
array('config.update', array('version', '3.0.6-rc2')),
|
||||
array('config.update', array('version', '3.0.6-RC2')),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_6_rc3 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.6-rc3', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.6-RC3', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -24,7 +24,7 @@ class phpbb_db_migration_data_30x_3_0_6_rc3 extends phpbb_db_migration
|
|||
return array(
|
||||
array('custom', array(array(&$this, 'update_cp_fields'))),
|
||||
|
||||
array('config.update', array('version', '3.0.6-rc3')),
|
||||
array('config.update', array('version', '3.0.6-RC3')),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_6_rc4 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.6-rc4', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.6-RC4', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -22,7 +22,7 @@ class phpbb_db_migration_data_30x_3_0_6_rc4 extends phpbb_db_migration
|
|||
public function update_data()
|
||||
{
|
||||
return array(
|
||||
array('config.update', array('version', '3.0.6-rc4')),
|
||||
array('config.update', array('version', '3.0.6-RC4')),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_7 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.7', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.7', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_7_pl1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.7-pl1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.7-pl1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_7_rc1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.7-rc1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.7-RC1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -62,7 +62,7 @@ class phpbb_db_migration_data_30x_3_0_7_rc1 extends phpbb_db_migration
|
|||
array('config.add', array('feed_topics_active', $this->config['feed_overall_topics'])),
|
||||
array('custom', array(array(&$this, 'delete_text_templates'))),
|
||||
|
||||
array('config.update', array('version', '3.0.7-rc1')),
|
||||
array('config.update', array('version', '3.0.7-RC1')),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_7_rc2 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.7-rc2', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.7-RC2', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -24,7 +24,7 @@ class phpbb_db_migration_data_30x_3_0_7_rc2 extends phpbb_db_migration
|
|||
return array(
|
||||
array('custom', array(array(&$this, 'update_email_hash'))),
|
||||
|
||||
array('config.update', array('version', '3.0.7-rc2')),
|
||||
array('config.update', array('version', '3.0.7-RC2')),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_8 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.8', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.8', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_8_rc1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.8-rc1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.8-RC1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -38,7 +38,7 @@ class phpbb_db_migration_data_30x_3_0_8_rc1 extends phpbb_db_migration
|
|||
array('config.update_if_equals', array(600, 'queue_interval', 60)),
|
||||
array('config.update_if_equals', array(50, 'email_package_size', 20)),
|
||||
|
||||
array('config.update', array('version', '3.0.8-rc1')),
|
||||
array('config.update', array('version', '3.0.8-RC1')),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_9 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.9', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.9', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_9_rc1 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.9-rc1', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.9-RC1', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -74,7 +74,7 @@ class phpbb_db_migration_data_30x_3_0_9_rc1 extends phpbb_db_migration
|
|||
array('custom', array(array(&$this, 'update_file_extension_group_names'))),
|
||||
array('custom', array(array(&$this, 'fix_firebird_qa_captcha'))),
|
||||
|
||||
array('config.update', array('version', '3.0.9-rc1')),
|
||||
array('config.update', array('version', '3.0.9-RC1')),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_9_rc2 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.9-rc2', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.9-RC2', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -22,7 +22,7 @@ class phpbb_db_migration_data_30x_3_0_9_rc2 extends phpbb_db_migration
|
|||
public function update_data()
|
||||
{
|
||||
return array(
|
||||
array('config.update', array('version', '3.0.9-rc2')),
|
||||
array('config.update', array('version', '3.0.9-RC2')),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_9_rc3 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.9-rc3', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.9-RC3', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -22,7 +22,7 @@ class phpbb_db_migration_data_30x_3_0_9_rc3 extends phpbb_db_migration
|
|||
public function update_data()
|
||||
{
|
||||
return array(
|
||||
array('config.update', array('version', '3.0.9-rc3')),
|
||||
array('config.update', array('version', '3.0.9-RC3')),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ class phpbb_db_migration_data_30x_3_0_9_rc4 extends phpbb_db_migration
|
|||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
return version_compare($this->config['version'], '3.0.9-rc4', '>=');
|
||||
return phpbb_version_compare($this->config['version'], '3.0.9-RC4', '>=');
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
|
@ -22,7 +22,7 @@ class phpbb_db_migration_data_30x_3_0_9_rc4 extends phpbb_db_migration
|
|||
public function update_data()
|
||||
{
|
||||
return array(
|
||||
array('config.update', array('version', '3.0.9-rc4')),
|
||||
array('config.update', array('version', '3.0.9-RC4')),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,7 +17,7 @@ class phpbb_db_migration_data_310_signature_module_auth extends phpbb_db_migrati
|
|||
AND module_basename = 'ucp_profile'
|
||||
AND module_mode = 'signature'";
|
||||
$result = $this->db->sql_query($sql);
|
||||
$module_auth = $this->db_sql_fetchfield('module_auth');
|
||||
$module_auth = $this->db->sql_fetchfield('module_auth');
|
||||
$this->db->sql_freeresult($result);
|
||||
|
||||
return $module_auth === 'acl_u_sig' || $module_auth === false;
|
||||
|
|
55
phpBB/phpbb/db/migration/data/310/softdelete_mcp_modules.php
Normal file
55
phpBB/phpbb/db/migration/data/310/softdelete_mcp_modules.php
Normal file
|
@ -0,0 +1,55 @@
|
|||
<?php
|
||||
/**
|
||||
*
|
||||
* @package migration
|
||||
* @copyright (c) 2013 phpBB Group
|
||||
* @license http://opensource.org/licenses/gpl-license.php GNU Public License v2
|
||||
*
|
||||
*/
|
||||
|
||||
class phpbb_db_migration_data_310_softdelete_mcp_modules extends phpbb_db_migration
|
||||
{
|
||||
public function effectively_installed()
|
||||
{
|
||||
$sql = 'SELECT module_id
|
||||
FROM ' . MODULES_TABLE . "
|
||||
WHERE module_class = 'mcp'
|
||||
AND module_basename = 'mcp_queue'
|
||||
AND module_mode = 'deleted_topics'";
|
||||
$result = $this->db->sql_query($sql);
|
||||
$module_id = $this->db->sql_fetchfield('module_id');
|
||||
$this->db->sql_freeresult($result);
|
||||
|
||||
return $module_id !== false;
|
||||
}
|
||||
|
||||
static public function depends_on()
|
||||
{
|
||||
return array(
|
||||
'phpbb_db_migration_data_310_dev',
|
||||
'phpbb_db_migration_data_310_softdelete_p2',
|
||||
);
|
||||
}
|
||||
|
||||
public function update_data()
|
||||
{
|
||||
return array(
|
||||
array('module.add', array(
|
||||
'mcp',
|
||||
'MCP_QUEUE',
|
||||
array(
|
||||
'module_basename' => 'mcp_queue',
|
||||
'modes' => array('deleted_topics'),
|
||||
),
|
||||
)),
|
||||
array('module.add', array(
|
||||
'mcp',
|
||||
'MCP_QUEUE',
|
||||
array(
|
||||
'module_basename' => 'mcp_queue',
|
||||
'modes' => array('deleted_posts'),
|
||||
),
|
||||
)),
|
||||
);
|
||||
}
|
||||
}
|
1219
phpBB/phpbb/db/schema_data.php
Normal file
1219
phpBB/phpbb/db/schema_data.php
Normal file
File diff suppressed because it is too large
Load diff
|
@ -37,7 +37,16 @@ class phpbb_db_tools
|
|||
* The Column types for every database we support
|
||||
* @var array
|
||||
*/
|
||||
var $dbms_type_map = array(
|
||||
var $dbms_type_map = array();
|
||||
|
||||
/**
|
||||
* Get the column types for every database we support
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function get_dbms_type_map()
|
||||
{
|
||||
return array(
|
||||
'mysql_41' => array(
|
||||
'INT:' => 'int(%d)',
|
||||
'BINT' => 'bigint(20)',
|
||||
|
@ -278,6 +287,7 @@ class phpbb_db_tools
|
|||
'VARBINARY' => 'bytea',
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* A list of types being unsigned for better reference in some db's
|
||||
|
@ -308,6 +318,8 @@ class phpbb_db_tools
|
|||
$this->db = $db;
|
||||
$this->return_statements = $return_statements;
|
||||
|
||||
$this->dbms_type_map = self::get_dbms_type_map();
|
||||
|
||||
// Determine mapping database type
|
||||
switch ($this->db->sql_layer)
|
||||
{
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue