aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--build/build.xml10
-rw-r--r--build/phpdoc-phpbb.ini145
-rw-r--r--build/sami.conf.php50
-rw-r--r--phpBB/adm/style/install_footer.html2
-rw-r--r--phpBB/adm/style/overall_footer.html2
-rw-r--r--phpBB/adm/style/simple_footer.html2
-rw-r--r--phpBB/assets/javascript/core.js4
-rw-r--r--phpBB/assets/javascript/jquery.min.js (renamed from phpBB/assets/javascript/jquery.js)0
-rw-r--r--phpBB/common.php5
-rw-r--r--phpBB/composer.json1
-rw-r--r--phpBB/composer.lock204
-rw-r--r--phpBB/cron.php8
-rw-r--r--phpBB/includes/functions.php5
-rw-r--r--phpBB/includes/functions_acp.php2
-rw-r--r--phpBB/install/index.php2
-rw-r--r--phpBB/language/en/common.php5
-rw-r--r--phpBB/memberlist.php12
-rw-r--r--phpBB/phpbb/extension/manager.php9
-rw-r--r--phpBB/styles/prosilver/template/memberlist_email.html2
-rw-r--r--phpBB/styles/prosilver/template/memberlist_view.html4
-rw-r--r--phpBB/styles/prosilver/template/overall_footer.html2
-rw-r--r--phpBB/styles/prosilver/template/simple_footer.html2
-rw-r--r--phpBB/styles/prosilver/template/ucp_pm_viewmessage.html2
-rw-r--r--phpBB/styles/prosilver/template/viewtopic_body.html2
-rw-r--r--phpBB/styles/prosilver/theme/bidi.css15
-rw-r--r--phpBB/styles/prosilver/theme/colours.css1
-rw-r--r--phpBB/styles/prosilver/theme/common.css10
-rw-r--r--phpBB/styles/subsilver2/template/memberlist_email.html22
-rw-r--r--phpBB/styles/subsilver2/template/memberlist_view.html2
-rw-r--r--phpBB/styles/subsilver2/template/overall_footer.html2
-rw-r--r--phpBB/styles/subsilver2/template/simple_footer.html2
31 files changed, 330 insertions, 206 deletions
diff --git a/build/build.xml b/build/build.xml
index 9a04d4efdb..dbf16acfeb 100644
--- a/build/build.xml
+++ b/build/build.xml
@@ -108,14 +108,8 @@
</target>
<target name="docs">
- <!-- only works if you setup phpdoctor:
- git clone https://github.com/peej/phpdoctor.git
- and then create an executable phpdoctor in your path containing
- #!/bin/sh
- php -f /path/to/phpdoctor/phpdoc.php $@
- -->
- <exec dir="build"
- command="phpdoctor phpdoc-phpbb.ini"
+ <exec dir="."
+ command="phpBB/vendor/bin/sami.php update build/sami.conf.php"
passthru="true" />
</target>
diff --git a/build/phpdoc-phpbb.ini b/build/phpdoc-phpbb.ini
deleted file mode 100644
index f1a7a4bee5..0000000000
--- a/build/phpdoc-phpbb.ini
+++ /dev/null
@@ -1,145 +0,0 @@
-; Default configuration file for PHPDoctor
-
-; This config file will cause PHPDoctor to generate API documentation of
-; itself.
-
-
-; PHPDoctor settings
-; -----------------------------------------------------------------------------
-
-; Names of files to parse. This can be a single filename, or a comma separated
-; list of filenames. Wildcards are allowed.
-
-files = "*.php"
-
-; Names of files or directories to ignore. This can be a single filename, or a
-; comma separated list of filenames. Wildcards are NOT allowed.
-
-;ignore = "CVS, .svn, .git, _compiled"
-ignore = templates_c/,*HTML/default/*,spec/,*config.php*,*CVS/,test_chora.php,testupdate/,cache/,store/,*proSilver/,develop/,includes/utf/data/,includes/captcha/fonts/,install/update/,install/update.new/,files/,*phpinfo.php*,*update_script.php*,*upgrade.php*,*convert.php*,install/converter/,language/de/,script/,*swatch.php*,*test.php*,*test2.php*,*install.php*,*functions_diff.php*,*acp_update.php*,acm_xcache.php
-
-; The directory to look for files in, if not used the PHPDoctor will look in
-; the current directory (the directory it is run from).
-
-source_path = "../phpBB/"
-
-; If you do not want PHPDoctor to look in each sub directory for files
-; uncomment this line.
-
-;subdirs = off
-
-; Set how loud PHPDoctor is as it runs. Quiet mode suppresses all output other
-; than warnings and errors. Verbose mode outputs additional messages during
-; execution.
-
-quiet = on
-;verbose = on
-
-; Select the doclet to use for generating output.
-
-doclet = standard
-;doclet = debug
-
-; The directory to find the doclet in. Doclets control the HTML output of
-; phpDoctor and can be modified to suit your needs. They are expected to be
-; in a directory named after themselves at the location given.
-
-;doclet_path = ./doclets
-
-; Select the formatter to use for generating output.
-
-;formatter = htmlStandardFormatter
-
-; The directory to find the formatter in. Formatters convert textual markup
-; for use by the doclet.
-
-;formatter_path = ./formatters
-
-; The directory to find taglets in. Taglets allow you to make PHPDoctor handle
-; new tags and to alter the behavour of existing tags and their output.
-
-;taglet_path = ./taglets
-
-; If the code you are parsing does not use package tags or not all elements
-; have package tags, use this setting to place unbound elements into a
-; particular package.
-
-default_package = "phpBB"
-
-use_class_path_as_package = off
-
-ignore_package_tags = off
-
-; Specifies the name of a HTML file containing text for the overview
-; documentation to be placed on the overview page. The path is relative to
-; "source_path" unless an absolute path is given.
-
-overview = ../README.md
-
-; Package comments will be looked for in a file named package.html in the same
-; directory as the first source file parsed in that package or in the directory
-; given below. If package comments are placed in the directory given below then
-; they should be named "<packageName>.html".
-
-package_comment_dir = ./
-
-; Parse out global variables and/or global constants?
-
-;globals = off
-;constants = off
-
-; Generate documentation for all class members
-
-;private = on
-
-; Generate documentation for public and protected class members
-
-;protected = on
-
-; Generate documentation for only public class members
-
-;public = on
-
-; Use the PEAR compatible handling of the docblock first sentence
-
-;pear_compat = on
-
-; Standard doclet settings
-; -----------------------------------------------------------------------------
-
-; The directory to place generated documentation in. If the given path is
-; relative to it will be relative to "source_path".
-
-d = "../build/api/"
-
-; Specifies the title to be placed in the HTML <title> tag.
-
-windowtitle = "phpBB3"
-
-; Specifies the title to be placed near the top of the overview summary file.
-
-doctitle = "phpBB3 Sourcecode Documentation"
-
-; Specifies the header text to be placed at the top of each output file. The
-; header will be placed to the right of the upper navigation bar.
-
-header = "phpBB3"
-
-; Specifies the footer text to be placed at the bottom of each output file. The
-; footer will be placed to the right of the lower navigation bar.
-
-footer = "phpBB3"
-
-; Specifies the text to be placed at the bottom of each output file. The text
-; will be placed at the bottom of the page, below the lower navigation bar.
-
-;bottom = "This document was generated by <a href="http://peej.github.com/phpdoctor/">PHPDoctor: The PHP Documentation Creator</a>"
-
-; Create a class tree?
-
-;tree = off
-
-; Use GeSHi to include formatted source files in the documentation. PHPDoctor will look in the current doclet directory for a /geshi subdirectory. Unpack the GeSHi archive from http://qbnz.com/highlighter to get this directory - it will contain a php script and a subdirectory with formatting files.
-
-include_source = off
-
diff --git a/build/sami.conf.php b/build/sami.conf.php
new file mode 100644
index 0000000000..dd57ec8780
--- /dev/null
+++ b/build/sami.conf.php
@@ -0,0 +1,50 @@
+<?php
+/**
+* @copyright (c) 2014 phpBB Group
+* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
+*/
+
+// Prevent 'Class "acm" does not exist.' exception on removeClass().
+class PhpbbArrayStore extends Sami\Store\ArrayStore
+{
+ public function removeClass(Sami\Project $project, $name)
+ {
+ unset($this->classes[$name]);
+ }
+}
+
+$iterator = Symfony\Component\Finder\Finder::create()
+ ->files()
+ ->name('*.php')
+ ->in(__DIR__ . '/../phpBB/')
+ ->notPath('#^cache/#')
+ ->notPath('#^develop/#')
+ ->notPath('#^ext/#')
+ ->notPath('#^vendor/#')
+ ->notPath('data')
+;
+
+$versions = Sami\Version\GitVersionCollection::create(__DIR__ . '/../')
+ /*
+ This would be nice, but currently causes various problems that need
+ debugging.
+ ->addFromTags('release-3.0.*')
+ ->add('develop-olympus', '3.0-next (olympus)')
+ ->addFromTags('release-3.1.*')
+ ->add('develop-ascraeus', '3.1-next (ascraeus)')
+ ->add('develop')
+ */
+ ->add('develop-olympus')
+ ->add('develop-ascraeus')
+;
+
+return new Sami\Sami($iterator, array(
+ 'theme' => 'enhanced',
+ 'versions' => $versions,
+ 'title' => 'phpBB API Documentation',
+ 'build_dir' => __DIR__.'/api/output/%version%',
+ 'cache_dir' => __DIR__.'/api/cache/%version%',
+ 'default_opened_level' => 2,
+ // Do not use JsonStore. See https://github.com/fabpot/Sami/issues/79
+ 'store' => new PhpbbArrayStore,
+));
diff --git a/phpBB/adm/style/install_footer.html b/phpBB/adm/style/install_footer.html
index 822ab76313..c3d148966d 100644
--- a/phpBB/adm/style/install_footer.html
+++ b/phpBB/adm/style/install_footer.html
@@ -10,7 +10,7 @@
</div>
<script type="text/javascript" src="{T_JQUERY_LINK}"></script>
-<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.js" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
+<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.min.js" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
<script type="text/javascript" src="{T_ASSETS_PATH}/javascript/core.js?assets_version={T_ASSETS_VERSION}"></script>
<!-- INCLUDEJS admin.js -->
{$SCRIPTS}
diff --git a/phpBB/adm/style/overall_footer.html b/phpBB/adm/style/overall_footer.html
index 8810414fc2..0f4589f5d4 100644
--- a/phpBB/adm/style/overall_footer.html
+++ b/phpBB/adm/style/overall_footer.html
@@ -32,7 +32,7 @@
</div>
<script type="text/javascript" src="{T_JQUERY_LINK}"></script>
-<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.js?assets_version={T_ASSETS_VERSION}" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
+<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.min.js?assets_version={T_ASSETS_VERSION}" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
<script type="text/javascript" src="{T_ASSETS_PATH}/javascript/core.js?assets_version={T_ASSETS_VERSION}"></script>
<!-- INCLUDEJS ajax.js -->
<!-- INCLUDEJS admin.js -->
diff --git a/phpBB/adm/style/simple_footer.html b/phpBB/adm/style/simple_footer.html
index d3f2f17bc7..c08fd931a0 100644
--- a/phpBB/adm/style/simple_footer.html
+++ b/phpBB/adm/style/simple_footer.html
@@ -17,7 +17,7 @@
</div>
<script type="text/javascript" src="{T_JQUERY_LINK}"></script>
-<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.js?assets_version={T_ASSETS_VERSION}" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
+<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.min.js?assets_version={T_ASSETS_VERSION}" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
<script type="text/javascript" src="{T_ASSETS_PATH}/javascript/core.js?assets_version={T_ASSETS_VERSION}"></script>
<!-- EVENT acp_simple_footer_after -->
diff --git a/phpBB/assets/javascript/core.js b/phpBB/assets/javascript/core.js
index cd633ed2ae..3cb41039cf 100644
--- a/phpBB/assets/javascript/core.js
+++ b/phpBB/assets/javascript/core.js
@@ -333,7 +333,9 @@ phpbb.ajaxify = function(options) {
// Hide the alert even if we refresh the page, in case the user
// presses the back button.
dark.fadeOut(phpbb.alertTime, function() {
- alert.hide();
+ if (typeof alert !== 'undefined') {
+ alert.hide();
+ }
});
}, res.REFRESH_DATA.time * 1000); // Server specifies time in seconds
}
diff --git a/phpBB/assets/javascript/jquery.js b/phpBB/assets/javascript/jquery.min.js
index 73f33fb3aa..73f33fb3aa 100644
--- a/phpBB/assets/javascript/jquery.js
+++ b/phpBB/assets/javascript/jquery.min.js
diff --git a/phpBB/common.php b/phpBB/common.php
index 4ad669a021..d8375d365b 100644
--- a/phpBB/common.php
+++ b/phpBB/common.php
@@ -108,11 +108,6 @@ foreach ($phpbb_hook_finder->find() as $hook)
@include($phpbb_root_path . 'includes/hooks/' . $hook . '.' . $phpEx);
}
-if (!$config['use_system_cron'])
-{
- $cron = $phpbb_container->get('cron.manager');
-}
-
/**
* Main event which is triggered on every page
*
diff --git a/phpBB/composer.json b/phpBB/composer.json
index a55733b3c0..435d6139e4 100644
--- a/phpBB/composer.json
+++ b/phpBB/composer.json
@@ -19,6 +19,7 @@
"phpunit/dbunit": "1.3.*",
"phpunit/phpunit": "4.1.*",
"phing/phing": "2.4.*",
+ "sami/sami": "1.*",
"squizlabs/php_codesniffer": "1.*"
}
}
diff --git a/phpBB/composer.lock b/phpBB/composer.lock
index 9e0bcf9771..2213c3789b 100644
--- a/phpBB/composer.lock
+++ b/phpBB/composer.lock
@@ -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": "194c86e9ae52700a8f6c1b10d7b2e4d0",
+ "hash": "be323c0a1b5baeb83934238033e079ec",
"packages": [
{
"name": "lusitanian/oauth",
@@ -979,6 +979,101 @@
"time": "2013-07-30 22:07:23"
},
{
+ "name": "michelf/php-markdown",
+ "version": "1.4.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/michelf/php-markdown.git",
+ "reference": "de9a19c7bf352d41cc99ed86c3c0ef17e87394b6"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/michelf/php-markdown/zipball/de9a19c7bf352d41cc99ed86c3c0ef17e87394b6",
+ "reference": "de9a19c7bf352d41cc99ed86c3c0ef17e87394b6",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-lib": "1.4.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "Michelf": ""
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Michel Fortin",
+ "email": "michel.fortin@michelf.ca",
+ "homepage": "http://michelf.ca/",
+ "role": "Developer"
+ },
+ {
+ "name": "John Gruber",
+ "homepage": "http://daringfireball.net/"
+ }
+ ],
+ "description": "PHP Markdown",
+ "homepage": "http://michelf.ca/projects/php-markdown/",
+ "keywords": [
+ "markdown"
+ ],
+ "time": "2014-05-05 02:43:50"
+ },
+ {
+ "name": "nikic/php-parser",
+ "version": "v0.9.4",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/nikic/PHP-Parser.git",
+ "reference": "1e5e280ae88a27effa2ae4aa2bd088494ed8594f"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/1e5e280ae88a27effa2ae4aa2bd088494ed8594f",
+ "reference": "1e5e280ae88a27effa2ae4aa2bd088494ed8594f",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.2"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "0.9-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "PHPParser": "lib/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Nikita Popov"
+ }
+ ],
+ "description": "A PHP parser written in PHP",
+ "keywords": [
+ "parser",
+ "php"
+ ],
+ "time": "2013-08-25 17:11:40"
+ },
+ {
"name": "phing/phing",
"version": "2.4.14",
"source": {
@@ -1469,6 +1564,113 @@
"time": "2014-05-02 07:04:11"
},
{
+ "name": "pimple/pimple",
+ "version": "v1.0.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/fabpot/Pimple.git",
+ "reference": "ae11e57e8c2bb414b2ff93396dbbfc0eb92feb94"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/fabpot/Pimple/zipball/ae11e57e8c2bb414b2ff93396dbbfc0eb92feb94",
+ "reference": "ae11e57e8c2bb414b2ff93396dbbfc0eb92feb94",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "Pimple": "lib/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com",
+ "homepage": "http://fabien.potencier.org",
+ "role": "Lead Developer"
+ }
+ ],
+ "description": "Pimple is a simple Dependency Injection Container for PHP 5.3",
+ "homepage": "http://pimple.sensiolabs.org",
+ "keywords": [
+ "container",
+ "dependency injection"
+ ],
+ "time": "2013-03-08 08:21:40"
+ },
+ {
+ "name": "sami/sami",
+ "version": "v1.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/fabpot/Sami.git",
+ "reference": "76f2ed80b3420f7e2f6dcd5b7218b5a5781f4110"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/fabpot/Sami/zipball/76f2ed80b3420f7e2f6dcd5b7218b5a5781f4110",
+ "reference": "76f2ed80b3420f7e2f6dcd5b7218b5a5781f4110",
+ "shasum": ""
+ },
+ "require": {
+ "michelf/php-markdown": "~1.3",
+ "nikic/php-parser": "0.9.*",
+ "php": ">=5.3.0",
+ "pimple/pimple": "1.0.*",
+ "symfony/console": "~2.1",
+ "symfony/filesystem": "~2.1",
+ "symfony/finder": "~2.1",
+ "symfony/process": "~2.1",
+ "symfony/yaml": "~2.1",
+ "twig/twig": "1.*"
+ },
+ "bin": [
+ "sami.php"
+ ],
+ "type": "application",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.3-dev"
+ }
+ },
+ "autoload": {
+ "psr-0": {
+ "Sami": "."
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com",
+ "homepage": "http://fabien.potencier.org",
+ "role": "Lead Developer"
+ }
+ ],
+ "description": "Sami, an API documentation generator",
+ "homepage": "http://sami.sensiolabs.org",
+ "keywords": [
+ "phpdoc"
+ ],
+ "time": "2013-11-30 17:16:25"
+ },
+ {
"name": "sebastian/comparator",
"version": "1.0.0",
"source": {
diff --git a/phpBB/cron.php b/phpBB/cron.php
index 787183f689..f63642faa2 100644
--- a/phpBB/cron.php
+++ b/phpBB/cron.php
@@ -59,11 +59,7 @@ function do_cron($cron_lock, $run_tasks)
//
// If DEBUG is defined and cron lock cannot be obtained, a message will be printed.
-if ($config['use_system_cron'])
-{
- $cron = $phpbb_container->get('cron.manager');
-}
-else
+if (!$config['use_system_cron'])
{
$cron_type = request_var('cron_type', '');
@@ -74,6 +70,8 @@ else
$cron_lock = $phpbb_container->get('cron.lock_db');
if ($cron_lock->acquire())
{
+ $cron = $phpbb_container->get('cron.manager');
+
if ($config['use_system_cron'])
{
$run_tasks = $cron->find_all_ready_tasks();
diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php
index a0e2a46f54..adb6e1a0a0 100644
--- a/phpBB/includes/functions.php
+++ b/phpBB/includes/functions.php
@@ -4974,7 +4974,7 @@ function page_header($page_title = '', $display_online_list = false, $item_id =
'T_UPLOAD_PATH' => "{$web_path}{$config['upload_path']}/",
'T_STYLESHEET_LINK' => "{$web_path}styles/" . rawurlencode($user->style['style_path']) . '/theme/stylesheet.css?assets_version=' . $config['assets_version'],
'T_STYLESHEET_LANG_LINK' => "{$web_path}styles/" . rawurlencode($user->style['style_path']) . '/theme/' . $user->lang_name . '/stylesheet.css?assets_version=' . $config['assets_version'],
- 'T_JQUERY_LINK' => !empty($config['allow_cdn']) && !empty($config['load_jquery_url']) ? $config['load_jquery_url'] : "{$web_path}assets/javascript/jquery.js?assets_version=" . $config['assets_version'],
+ 'T_JQUERY_LINK' => !empty($config['allow_cdn']) && !empty($config['load_jquery_url']) ? $config['load_jquery_url'] : "{$web_path}assets/javascript/jquery.min.js?assets_version=" . $config['assets_version'],
'S_ALLOW_CDN' => !empty($config['allow_cdn']),
'T_THEME_NAME' => rawurlencode($user->style['style_path']),
@@ -5116,7 +5116,8 @@ function page_footer($run_cron = true, $display_template = true, $exit_handler =
// Call cron job?
if ($call_cron)
{
- global $cron;
+ global $phpbb_container;
+ $cron = $phpbb_container->get('cron.manager');
$task = $cron->find_one_ready_task();
if ($task)
diff --git a/phpBB/includes/functions_acp.php b/phpBB/includes/functions_acp.php
index 1c4d6966da..9a82ef7ea7 100644
--- a/phpBB/includes/functions_acp.php
+++ b/phpBB/includes/functions_acp.php
@@ -176,7 +176,7 @@ function adm_page_footer($copyright_html = true)
'TRANSLATION_INFO' => (!empty($user->lang['TRANSLATION_INFO'])) ? $user->lang['TRANSLATION_INFO'] : '',
'S_COPYRIGHT_HTML' => $copyright_html,
'CREDIT_LINE' => $user->lang('POWERED_BY', '<a href="https://www.phpbb.com/">phpBB</a>&reg; Forum Software &copy; phpBB Group'),
- 'T_JQUERY_LINK' => !empty($config['allow_cdn']) && !empty($config['load_jquery_url']) ? $config['load_jquery_url'] : "{$phpbb_root_path}assets/javascript/jquery.js",
+ 'T_JQUERY_LINK' => !empty($config['allow_cdn']) && !empty($config['load_jquery_url']) ? $config['load_jquery_url'] : "{$phpbb_root_path}assets/javascript/jquery.min.js",
'S_ALLOW_CDN' => !empty($config['allow_cdn']),
'VERSION' => $config['version'])
);
diff --git a/phpBB/install/index.php b/phpBB/install/index.php
index 66c8559e98..85fedaddfc 100644
--- a/phpBB/install/index.php
+++ b/phpBB/install/index.php
@@ -409,7 +409,7 @@ class module
'L_SKIP' => $lang['SKIP'],
'PAGE_TITLE' => $this->get_page_title(),
'T_IMAGE_PATH' => htmlspecialchars($phpbb_admin_path) . 'images/',
- 'T_JQUERY_LINK' => $path . '/../../assets/javascript/jquery.js',
+ 'T_JQUERY_LINK' => $path . '/../../assets/javascript/jquery.min.js',
'S_CONTENT_DIRECTION' => $lang['DIRECTION'],
'S_CONTENT_FLOW_BEGIN' => ($lang['DIRECTION'] == 'ltr') ? 'left' : 'right',
diff --git a/phpBB/language/en/common.php b/phpBB/language/en/common.php
index 982ca4cf5a..30b3078a41 100644
--- a/phpBB/language/en/common.php
+++ b/phpBB/language/en/common.php
@@ -167,7 +167,8 @@ $lang = array_merge($lang, array(
'CONGRATULATIONS' => 'Congratulations to',
'CONNECTION_FAILED' => 'Connection failed.',
'CONNECTION_SUCCESS' => 'Connection was successful!',
- 'CONTACT_USER' => 'Contact',
+ 'CONTACT' => 'Contact',
+ 'CONTACT_USER' => 'Contact %s',
'COOKIES_DELETED' => 'All board cookies successfully deleted.',
'CURRENT_TIME' => 'It is currently %s',
@@ -664,7 +665,7 @@ $lang = array_merge($lang, array(
'SELECT_DESTINATION_FORUM' => 'Please select a destination forum',
'SELECT_FORUM' => 'Select a forum',
'SEND_EMAIL' => 'Email', // Used for submit buttons
- 'SEND_EMAIL_USER' => 'Email', // Used as: {L_SEND_EMAIL_USER} {USERNAME} -> Email UserX
+ 'SEND_EMAIL_USER' => 'Email %s',
'SEND_PRIVATE_MESSAGE' => 'Send private message',
'SETTINGS' => 'Settings',
'SIGNATURE' => 'Signature',
diff --git a/phpBB/memberlist.php b/phpBB/memberlist.php
index 51171a0a74..2001c816eb 100644
--- a/phpBB/memberlist.php
+++ b/phpBB/memberlist.php
@@ -966,8 +966,8 @@ switch ($mode)
if ($user_id)
{
$template->assign_vars(array(
- 'S_SEND_USER' => true,
- 'USERNAME' => $row['username'],
+ 'S_SEND_USER' => true,
+ 'L_SEND_EMAIL_USER' => $user->lang('SEND_EMAIL_USER', $row['username']),
'L_EMAIL_BODY_EXPLAIN' => $user->lang['EMAIL_BODY_EXPLAIN'],
'S_POST_ACTION' => append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=email&amp;u=' . $user_id))
@@ -1782,7 +1782,7 @@ function show_profile($data, $user_notes_enabled = false, $warn_user_enabled = f
'AGE' => $age,
'RANK_TITLE' => $rank_title,
'JOINED' => $user->format_date($data['user_regdate']),
- 'LAST_ACTIVE' => (empty($last_active)) ? ' - ' : $user->format_date($last_active),
+ 'LAST_ACTIVE' => (empty($last_active)) ? ' - ' : $user->format_date($last_active),
'POSTS' => ($data['user_posts']) ? $data['user_posts'] : 0,
'WARNINGS' => isset($data['user_warnings']) ? $data['user_warnings'] : 0,
@@ -1802,7 +1802,7 @@ function show_profile($data, $user_notes_enabled = false, $warn_user_enabled = f
'S_WARNINGS' => ($auth->acl_getf_global('m_') || $auth->acl_get('m_warn')) ? true : false,
- 'U_SEARCH_USER' => ($auth->acl_get('u_search')) ? append_sid("{$phpbb_root_path}search.$phpEx", "author_id=$user_id&amp;sr=posts") : '',
+ 'U_SEARCH_USER' => ($auth->acl_get('u_search')) ? append_sid("{$phpbb_root_path}search.$phpEx", "author_id=$user_id&amp;sr=posts") : '',
'U_NOTES' => ($user_notes_enabled && $auth->acl_getf_global('m_')) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=notes&amp;mode=user_notes&amp;u=' . $user_id, true, $user->session_id) : '',
'U_WARN' => ($warn_user_enabled && $auth->acl_get('m_warn')) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=warn&amp;mode=warn_user&amp;u=' . $user_id, true, $user->session_id) : '',
'U_PM' => ($config['allow_privmsg'] && $auth->acl_get('u_sendpm') && $can_receive_pm) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=pm&amp;mode=compose&amp;u=' . $user_id) : '',
@@ -1812,7 +1812,9 @@ function show_profile($data, $user_notes_enabled = false, $warn_user_enabled = f
'USER_JABBER' => $data['user_jabber'],
'USER_JABBER_IMG' => ($data['user_jabber']) ? $user->img('icon_contact_jabber', $data['user_jabber']) : '',
- 'L_VIEWING_PROFILE' => sprintf($user->lang['VIEWING_PROFILE'], $username),
+ 'L_SEND_EMAIL_USER' => $user->lang('SEND_EMAIL_USER', $username),
+ 'L_CONTACT_USER' => $user->lang('CONTACT_USER', $username),
+ 'L_VIEWING_PROFILE' => $user->lang('VIEWING_PROFILE', $username),
);
/**
diff --git a/phpBB/phpbb/extension/manager.php b/phpBB/phpbb/extension/manager.php
index b22fbf07a6..604f680af2 100644
--- a/phpBB/phpbb/extension/manager.php
+++ b/phpBB/phpbb/extension/manager.php
@@ -409,8 +409,13 @@ class manager
}
$iterator = new \RecursiveIteratorIterator(
- new \RecursiveDirectoryIterator($this->phpbb_root_path . 'ext/', \FilesystemIterator::NEW_CURRENT_AND_KEY | \FilesystemIterator::FOLLOW_SYMLINKS),
- \RecursiveIteratorIterator::SELF_FIRST);
+ new \phpbb\recursive_dot_prefix_filter_iterator(
+ new \RecursiveDirectoryIterator($this->phpbb_root_path . 'ext/', \FilesystemIterator::NEW_CURRENT_AND_KEY | \FilesystemIterator::FOLLOW_SYMLINKS)
+ ),
+ \RecursiveIteratorIterator::SELF_FIRST
+ );
+ $iterator->setMaxDepth(2);
+
foreach ($iterator as $file_info)
{
if ($file_info->isFile() && $file_info->getFilename() == 'ext.' . $this->php_ext)
diff --git a/phpBB/styles/prosilver/template/memberlist_email.html b/phpBB/styles/prosilver/template/memberlist_email.html
index 218402a9e9..78d0eba5a8 100644
--- a/phpBB/styles/prosilver/template/memberlist_email.html
+++ b/phpBB/styles/prosilver/template/memberlist_email.html
@@ -1,6 +1,6 @@
<!-- INCLUDE overall_header.html -->
-<h2 class="titlespace">{L_SEND_EMAIL_USER} {USERNAME}</h2>
+<h2 class="titlespace">{L_SEND_EMAIL_USER}</h2>
<form method="post" action="{S_POST_ACTION}" id="post">
diff --git a/phpBB/styles/prosilver/template/memberlist_view.html b/phpBB/styles/prosilver/template/memberlist_view.html
index a8b1e972fe..ffa57f9cc8 100644
--- a/phpBB/styles/prosilver/template/memberlist_view.html
+++ b/phpBB/styles/prosilver/template/memberlist_view.html
@@ -60,10 +60,10 @@
<div class="inner">
<div class="column1">
- <h3>{L_CONTACT_USER} {USERNAME}</h3>
+ <h3>{L_CONTACT_USER}</h3>
<dl class="details">
- <!-- IF U_EMAIL --><dt>{L_EMAIL_ADDRESS}{L_COLON}</dt> <dd><a href="{U_EMAIL}">{L_SEND_EMAIL_USER} {USERNAME}</a></dd><!-- ENDIF -->
+ <!-- IF U_EMAIL --><dt>{L_EMAIL_ADDRESS}{L_COLON}</dt> <dd><a href="{U_EMAIL}">{L_SEND_EMAIL_USER}</a></dd><!-- ENDIF -->
<!-- IF U_PM --><dt>{L_PM}{L_COLON}</dt> <dd><a href="{U_PM}">{L_SEND_PRIVATE_MESSAGE}</a></dd><!-- ENDIF -->
<!-- IF U_JABBER and S_JABBER_ENABLED --><dt>{L_JABBER}{L_COLON}</dt> <dd><a href="{U_JABBER}" onclick="popup(this.href, 550, 320); return false;">{L_SEND_JABBER_MESSAGE}</a></dd><!-- ELSEIF USER_JABBER --><dt>{L_JABBER}{L_COLON}</dt> <dd>{USER_JABBER}</dd><!-- ENDIF -->
<!-- BEGIN custom_fields -->
diff --git a/phpBB/styles/prosilver/template/overall_footer.html b/phpBB/styles/prosilver/template/overall_footer.html
index a43dd3c8a6..28ed215662 100644
--- a/phpBB/styles/prosilver/template/overall_footer.html
+++ b/phpBB/styles/prosilver/template/overall_footer.html
@@ -38,7 +38,7 @@
</div>
<script type="text/javascript" src="{T_JQUERY_LINK}"></script>
-<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.js?assets_version={T_ASSETS_VERSION}" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
+<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.min.js?assets_version={T_ASSETS_VERSION}" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
<script type="text/javascript" src="{T_ASSETS_PATH}/javascript/core.js?assets_version={T_ASSETS_VERSION}"></script>
<!-- INCLUDEJS forum_fn.js -->
<!-- INCLUDEJS ajax.js -->
diff --git a/phpBB/styles/prosilver/template/simple_footer.html b/phpBB/styles/prosilver/template/simple_footer.html
index 02e24ab796..d5d0f45fa9 100644
--- a/phpBB/styles/prosilver/template/simple_footer.html
+++ b/phpBB/styles/prosilver/template/simple_footer.html
@@ -21,7 +21,7 @@
</div>
<script type="text/javascript" src="{T_JQUERY_LINK}"></script>
-<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.js?assets_version={T_ASSETS_VERSION}" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
+<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.min.js?assets_version={T_ASSETS_VERSION}" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
<script type="text/javascript" src="{T_ASSETS_PATH}/javascript/core.js?assets_version={T_ASSETS_VERSION}"></script>
<!-- INCLUDEJS forum_fn.js -->
<!-- INCLUDEJS ajax.js -->
diff --git a/phpBB/styles/prosilver/template/ucp_pm_viewmessage.html b/phpBB/styles/prosilver/template/ucp_pm_viewmessage.html
index 81171e97b2..f58b334a60 100644
--- a/phpBB/styles/prosilver/template/ucp_pm_viewmessage.html
+++ b/phpBB/styles/prosilver/template/ucp_pm_viewmessage.html
@@ -36,7 +36,7 @@
<!-- EVENT ucp_pm_viewmessage_contact_fields_before -->
<!-- IF .contact -->
<dd class="profile-contact">
- <strong>{L_CONTACT_USER}{L_COLON}</strong>
+ <strong>{L_CONTACT}{L_COLON}</strong>
<div class="dropdown-container dropdown-left">
<a href="#" class="dropdown-trigger"><span class="imageset icon_contact"></span></a>
<div class="dropdown hidden">
diff --git a/phpBB/styles/prosilver/template/viewtopic_body.html b/phpBB/styles/prosilver/template/viewtopic_body.html
index 17c73b82f4..18fa7ce783 100644
--- a/phpBB/styles/prosilver/template/viewtopic_body.html
+++ b/phpBB/styles/prosilver/template/viewtopic_body.html
@@ -149,7 +149,7 @@
<!-- EVENT viewtopic_body_contact_fields_before -->
<!-- IF not S_IS_BOT and .postrow.contact -->
<dd class="profile-contact">
- <strong>{L_CONTACT_USER}{L_COLON}</strong>
+ <strong>{L_CONTACT}{L_COLON}</strong>
<div class="dropdown-container dropdown-left">
<a href="#" class="dropdown-trigger"><span class="imageset icon_contact"></span></a>
<div class="dropdown hidden">
diff --git a/phpBB/styles/prosilver/theme/bidi.css b/phpBB/styles/prosilver/theme/bidi.css
index 0d5e1cf829..c2d15b9ef2 100644
--- a/phpBB/styles/prosilver/theme/bidi.css
+++ b/phpBB/styles/prosilver/theme/bidi.css
@@ -112,6 +112,12 @@
padding-right: 10px;
}
+/* Responsive breadcrumbs
+----------------------------------------*/
+.rtl .breadcrumbs .crumb {
+ float: right;
+}
+
/* Table styles
----------------------------------------*/
.rtl table.table1 thead th {
@@ -289,7 +295,7 @@ ul.linklist li.small-icon > a, ul.linklist li.breadcrumbs span:first-child > a {
.rtl ul.topiclist dt, .rtl li.header dt {
float: right;
margin-right: 0;
- margin-left: -410px;
+ margin-left: -440px;
}
.rtl ul.topiclist.missing-column dt {
@@ -309,7 +315,7 @@ ul.linklist li.small-icon > a, ul.linklist li.breadcrumbs span:first-child > a {
.rtl ul.topiclist dt .list-inner {
margin-right: 0;
- margin-left: 410px;
+ margin-left: 440px;
}
.rtl ul.topiclist.missing-column dt .list-inner {
@@ -338,6 +344,11 @@ ul.linklist li.small-icon > a, ul.linklist li.breadcrumbs span:first-child > a {
border-left: none;
}
+.rtl ul.topiclist dfn {
+ left: auto;
+ right: -999px;
+}
+
.rtl ul.topiclist li.row dt a.subforum {
padding-right: 12px;
background-position: right;
diff --git a/phpBB/styles/prosilver/theme/colours.css b/phpBB/styles/prosilver/theme/colours.css
index f43dfcfcce..acb2df92a0 100644
--- a/phpBB/styles/prosilver/theme/colours.css
+++ b/phpBB/styles/prosilver/theme/colours.css
@@ -1161,7 +1161,6 @@ input.disabled {
}
.dropdown-extended .footer {
- padding: 5px 0;
border-top-style: solid;
border-top-width: 1px;
}
diff --git a/phpBB/styles/prosilver/theme/common.css b/phpBB/styles/prosilver/theme/common.css
index 94fad55ae9..b90a53b4e8 100644
--- a/phpBB/styles/prosilver/theme/common.css
+++ b/phpBB/styles/prosilver/theme/common.css
@@ -1056,7 +1056,7 @@ form > p.post-notice strong {
}
.dropdown-extended ul li {
- padding: 10px;
+ padding: 0;
margin: 0;
float: none;
border-bottom: 1px solid;
@@ -1098,6 +1098,14 @@ form > p.post-notice strong {
font-size: 1.1em;
}
+.dropdown-extended ul li a{
+ padding: 10px;
+}
+
+.dropdown-extended .footer > a {
+ padding: 5px 0;
+}
+
.dropdown-extended ul li a, .notification_list dt > a, .dropdown-extended .footer > a {
display: block;
text-decoration: none;
diff --git a/phpBB/styles/subsilver2/template/memberlist_email.html b/phpBB/styles/subsilver2/template/memberlist_email.html
index 88289e53bf..7693a4167f 100644
--- a/phpBB/styles/subsilver2/template/memberlist_email.html
+++ b/phpBB/styles/subsilver2/template/memberlist_email.html
@@ -3,10 +3,10 @@
<div id="pagecontent">
<form action="{S_POST_ACTION}" method="post" name="postform">
-
+
<table class="tablebg" width="100%" cellspacing="1">
- <tr>
- <th colspan="2">{L_SEND_EMAIL_USER} {USERNAME}</th>
+ <tr>
+ <th colspan="2">{L_SEND_EMAIL_USER}</th>
</tr>
<!-- IF ERROR_MESSAGE -->
<tr>
@@ -14,11 +14,11 @@
</tr>
<!-- ENDIF -->
<!-- IF S_SEND_USER -->
- <tr>
+ <tr>
<td class="row1" width="35%"><b class="genmed">{L_RECIPIENT}</b></td>
<td class="row2" width="65%"><b class="genmed">{USERNAME}</b></td>
</tr>
- <tr>
+ <tr>
<td class="row1" width="35%"><b class="genmed">{L_SUBJECT}</b></td>
<td class="row2"><input class="post" type="text" name="subject" size="50" tabindex="2" value="{SUBJECT}" /></td>
</tr>
@@ -27,24 +27,24 @@
<td class="row1" width="35%"><b class="genmed">{L_EMAIL_ADDRESS}</b></td>
<td class="row2"><input class="post" type="email" name="email" size="50" maxlength="100" value="{EMAIL}" /></td>
</tr>
- <tr>
+ <tr>
<td class="row1" width="35%"><b class="genmed">{L_REAL_NAME}</b></td>
<td class="row2"><input class="post" type="text" name="name" size="50" value="{NAME}" /></td>
</tr>
- <tr>
+ <tr>
<td class="row1" width="35%"><b class="genmed">{L_DEST_LANG}</b><br /><span class="gensmall">{L_DEST_LANG_EXPLAIN}</span></td>
<td class="row2"><select name="lang">{S_LANG_OPTIONS}</select></td>
</tr>
<!-- ENDIF -->
- <tr>
+ <tr>
<td class="row1" valign="top"><b class="genmed">{L_MESSAGE_BODY}</b><br /><span class="gensmall">{L_EMAIL_BODY_EXPLAIN}</span></td>
<td class="row2"><textarea class="post" name="message" rows="15" cols="76" tabindex="3">{MESSAGE}</textarea></td>
</tr>
- <tr>
+ <tr>
<td class="row1" valign="top"><span class="gen"><b>{L_OPTIONS}</b></span></td>
<td class="row2">
<table cellspacing="0" cellpadding="1" border="0">
- <tr>
+ <tr>
<td><input type="checkbox" class="radio" name="cc_email" value="1" checked="checked" /></td>
<td class="gen">{L_CC_EMAIL}</td>
</tr>
@@ -57,7 +57,7 @@
</table>
{S_FORM_TOKEN}
-
+
</form>
</div>
diff --git a/phpBB/styles/subsilver2/template/memberlist_view.html b/phpBB/styles/subsilver2/template/memberlist_view.html
index 4c8014a370..550643ff03 100644
--- a/phpBB/styles/subsilver2/template/memberlist_view.html
+++ b/phpBB/styles/subsilver2/template/memberlist_view.html
@@ -104,7 +104,7 @@
</td>
</tr>
<tr>
- <td class="cat" align="center"><h4>{L_CONTACT_USER}</h4></td>
+ <td class="cat" align="center"><h4>{L_CONTACT}</h4></td>
<td class="cat" align="center"><h4>{L_ABOUT_USER}</h4></td>
</tr>
<!-- EVENT memberlist_view_contact_before -->
diff --git a/phpBB/styles/subsilver2/template/overall_footer.html b/phpBB/styles/subsilver2/template/overall_footer.html
index 200401eeda..42ee17f2ed 100644
--- a/phpBB/styles/subsilver2/template/overall_footer.html
+++ b/phpBB/styles/subsilver2/template/overall_footer.html
@@ -16,7 +16,7 @@
</div>
<script type="text/javascript" src="{T_JQUERY_LINK}"></script>
-<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.js?assets_version={T_ASSETS_VERSION}" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
+<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.min.js?assets_version={T_ASSETS_VERSION}" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
<script type="text/javascript" src="{T_ASSETS_PATH}/javascript/core.js?assets_version={T_ASSETS_VERSION}"></script>
<!-- EVENT overall_footer_after -->
diff --git a/phpBB/styles/subsilver2/template/simple_footer.html b/phpBB/styles/subsilver2/template/simple_footer.html
index 6a9c3096bc..d69c56fb8c 100644
--- a/phpBB/styles/subsilver2/template/simple_footer.html
+++ b/phpBB/styles/subsilver2/template/simple_footer.html
@@ -6,7 +6,7 @@
</div>
<script type="text/javascript" src="{T_JQUERY_LINK}"></script>
-<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.js?assets_version={T_ASSETS_VERSION}" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
+<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write(unescape('%3Cscript src="{T_ASSETS_PATH}/javascript/jquery.min.js?assets_version={T_ASSETS_VERSION}" type="text/javascript"%3E%3C/script%3E'));</script><!-- ENDIF -->
<!-- EVENT simple_footer_after -->