aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--build/build.xml4
-rw-r--r--phpBB/composer.json2
-rw-r--r--phpBB/composer.lock130
-rw-r--r--phpBB/config/default/container/services.yml2
-rw-r--r--phpBB/docs/events.md14
-rw-r--r--phpBB/includes/acp/auth.php10
-rw-r--r--phpBB/includes/functions.php6
-rw-r--r--phpBB/includes/functions_display.php2
-rw-r--r--phpBB/includes/functions_messenger.php2
-rw-r--r--phpBB/includes/functions_upload.php2
-rw-r--r--phpBB/includes/message_parser.php2
-rw-r--r--phpBB/language/en/cli.php9
-rw-r--r--phpBB/language/en/common.php2
-rw-r--r--phpBB/phpbb/avatar/driver/driver.php6
-rw-r--r--phpBB/phpbb/avatar/driver/upload.php2
-rw-r--r--phpBB/phpbb/console/command/cron/run.php1
-rw-r--r--phpBB/phpbb/controller/helper.php6
-rw-r--r--phpBB/phpbb/db/driver/sqlite3.php1
-rw-r--r--phpBB/phpbb/db/migration/data/v31x/v316.php31
-rw-r--r--phpBB/phpbb/permissions.php22
-rw-r--r--phpBB/phpbb/textformatter/s9e/parser.php2
-rw-r--r--phpBB/styles/prosilver/template/jumpbox.html6
-rw-r--r--phpBB/styles/prosilver/template/posting_preview.html2
-rw-r--r--phpBB/styles/prosilver/template/viewtopic_body.html1
-rw-r--r--phpBB/styles/prosilver/theme/colours.css213
-rw-r--r--phpBB/styles/prosilver/theme/common.css50
-rw-r--r--phpBB/styles/prosilver/theme/content.css4
-rw-r--r--phpBB/styles/prosilver/theme/forms.css1
-rw-r--r--phpBB/styles/prosilver/theme/images/bg_button.gifbin182 -> 0 bytes
-rw-r--r--phpBB/styles/prosilver/theme/images/gradient.gifbin549 -> 0 bytes
-rw-r--r--phpBB/styles/prosilver/theme/links.css4
-rw-r--r--phpBB/styles/prosilver/theme/tweaks.css12
-rw-r--r--tests/avatar/manager_test.php2
-rw-r--r--tests/upload/imagesize_test.php4
34 files changed, 363 insertions, 194 deletions
diff --git a/build/build.xml b/build/build.xml
index eb5e9bcfb7..2fe39bbf13 100644
--- a/build/build.xml
+++ b/build/build.xml
@@ -3,8 +3,8 @@
<project name="phpBB" description="The phpBB forum software" default="all" basedir="../">
<!-- a few settings for the build -->
<property name="newversion" value="3.2.0-a1-dev" />
- <property name="prevversion" value="3.1.5" />
- <property name="olderversions" value="3.0.12, 3.0.13, 3.0.13-PL1, 3.0.14, 3.1.0, 3.1.1, 3.1.2, 3.1.3, 3.1.4" />
+ <property name="prevversion" value="3.1.6" />
+ <property name="olderversions" value="3.0.14, 3.1.0, 3.1.1, 3.1.2, 3.1.3, 3.1.4, 3.1.5" />
<!-- no configuration should be needed beyond this point -->
<property name="oldversions" value="${olderversions}, ${prevversion}" />
diff --git a/phpBB/composer.json b/phpBB/composer.json
index 2edd33a217..70319fe3fb 100644
--- a/phpBB/composer.json
+++ b/phpBB/composer.json
@@ -26,7 +26,7 @@
},
"require": {
"lusitanian/oauth": "0.2.*",
- "marc1706/fast-image-size": "1.0.*",
+ "marc1706/fast-image-size": "1.1.*",
"patchwork/utf8": "1.1.*",
"php": ">=5.3.9",
"s9e/text-formatter": "dev-release/php5.3",
diff --git a/phpBB/composer.lock b/phpBB/composer.lock
index 15d3e8a7ff..7d45abc6e3 100644
--- a/phpBB/composer.lock
+++ b/phpBB/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
"This file is @generated automatically"
],
- "hash": "94d0f6dab53f11dab1de63c0ae519ee6",
+ "hash": "da690ad4ab4884661792b4b9d648934a",
"packages": [
{
"name": "lusitanian/oauth",
@@ -71,16 +71,16 @@
},
{
"name": "marc1706/fast-image-size",
- "version": "v1.0.2",
+ "version": "v1.1.0",
"source": {
"type": "git",
"url": "https://github.com/marc1706/fast-image-size.git",
- "reference": "ab7b594325cdf6b374d50b3934c8d16dd5249a2a"
+ "reference": "27467cfeca8fb2afd7ef3ffeea6d28a84f79df41"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/marc1706/fast-image-size/zipball/ab7b594325cdf6b374d50b3934c8d16dd5249a2a",
- "reference": "ab7b594325cdf6b374d50b3934c8d16dd5249a2a",
+ "url": "https://api.github.com/repos/marc1706/fast-image-size/zipball/27467cfeca8fb2afd7ef3ffeea6d28a84f79df41",
+ "reference": "27467cfeca8fb2afd7ef3ffeea6d28a84f79df41",
"shasum": ""
},
"require": {
@@ -92,8 +92,8 @@
"type": "library",
"autoload": {
"psr-4": {
- "fastImageSize\\": "lib",
- "fastImageSize\\tests\\": "tests"
+ "FastImageSize\\": "lib",
+ "FastImageSize\\tests\\": "tests"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -118,7 +118,7 @@
"php",
"size"
],
- "time": "2015-04-09 11:19:59"
+ "time": "2015-08-21 11:40:30"
},
{
"name": "patchwork/utf8",
@@ -279,12 +279,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/Config.git",
- "reference": "3f495530550377a55c0cced5ddf8f58cfcd9ce5b"
+ "reference": "a3aa17e2dcec2dc1c764bedd21e69fdf888b8b55"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Config/zipball/3f495530550377a55c0cced5ddf8f58cfcd9ce5b",
- "reference": "3f495530550377a55c0cced5ddf8f58cfcd9ce5b",
+ "url": "https://api.github.com/repos/symfony/Config/zipball/a3aa17e2dcec2dc1c764bedd21e69fdf888b8b55",
+ "reference": "a3aa17e2dcec2dc1c764bedd21e69fdf888b8b55",
"shasum": ""
},
"require": {
@@ -321,7 +321,7 @@
],
"description": "Symfony Config Component",
"homepage": "https://symfony.com",
- "time": "2015-08-03 08:27:53"
+ "time": "2015-08-27 18:34:50"
},
{
"name": "symfony/console",
@@ -329,12 +329,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/Console.git",
- "reference": "eb0fcf6f58054ac9d07539451e27aa4e17aebfe0"
+ "reference": "d31246d93cd99dc57858adb5da63841d56969928"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Console/zipball/eb0fcf6f58054ac9d07539451e27aa4e17aebfe0",
- "reference": "eb0fcf6f58054ac9d07539451e27aa4e17aebfe0",
+ "url": "https://api.github.com/repos/symfony/Console/zipball/d31246d93cd99dc57858adb5da63841d56969928",
+ "reference": "d31246d93cd99dc57858adb5da63841d56969928",
"shasum": ""
},
"require": {
@@ -378,7 +378,7 @@
],
"description": "Symfony Console Component",
"homepage": "https://symfony.com",
- "time": "2015-08-04 15:59:05"
+ "time": "2015-09-01 07:33:03"
},
{
"name": "symfony/debug",
@@ -386,12 +386,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/Debug.git",
- "reference": "e6ce720c140d144e2b2e2b14d36b887011e2a578"
+ "reference": "3c14966b099b4ba807f146df4c6a7acffba2f793"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Debug/zipball/e6ce720c140d144e2b2e2b14d36b887011e2a578",
- "reference": "e6ce720c140d144e2b2e2b14d36b887011e2a578",
+ "url": "https://api.github.com/repos/symfony/Debug/zipball/3c14966b099b4ba807f146df4c6a7acffba2f793",
+ "reference": "3c14966b099b4ba807f146df4c6a7acffba2f793",
"shasum": ""
},
"require": {
@@ -433,7 +433,7 @@
],
"description": "Symfony Debug Component",
"homepage": "https://symfony.com",
- "time": "2015-08-01 06:34:55"
+ "time": "2015-08-31 12:33:08"
},
{
"name": "symfony/dependency-injection",
@@ -441,12 +441,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/DependencyInjection.git",
- "reference": "b0e1cef8acbc3b6df877c47b8e0b8449defcfc5f"
+ "reference": "99c05679526e9293783ce3a9059890b47da1d97e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/b0e1cef8acbc3b6df877c47b8e0b8449defcfc5f",
- "reference": "b0e1cef8acbc3b6df877c47b8e0b8449defcfc5f",
+ "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/99c05679526e9293783ce3a9059890b47da1d97e",
+ "reference": "99c05679526e9293783ce3a9059890b47da1d97e",
"shasum": ""
},
"require": {
@@ -493,7 +493,7 @@
],
"description": "Symfony DependencyInjection Component",
"homepage": "https://symfony.com",
- "time": "2015-08-05 15:50:26"
+ "time": "2015-08-24 07:31:10"
},
{
"name": "symfony/event-dispatcher",
@@ -559,12 +559,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/Filesystem.git",
- "reference": "9f70c5625a32b2f1e6fc37222f52b4e0eb437b0e"
+ "reference": "b9fa06f1822de287e660130955b546777994597b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Filesystem/zipball/9f70c5625a32b2f1e6fc37222f52b4e0eb437b0e",
- "reference": "9f70c5625a32b2f1e6fc37222f52b4e0eb437b0e",
+ "url": "https://api.github.com/repos/symfony/Filesystem/zipball/b9fa06f1822de287e660130955b546777994597b",
+ "reference": "b9fa06f1822de287e660130955b546777994597b",
"shasum": ""
},
"require": {
@@ -600,7 +600,7 @@
],
"description": "Symfony Filesystem Component",
"homepage": "https://symfony.com",
- "time": "2015-07-09 16:11:14"
+ "time": "2015-08-27 07:03:53"
},
{
"name": "symfony/finder",
@@ -608,12 +608,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/Finder.git",
- "reference": "8712d5e8c4ad65e6b936ed9b6a581e5e6a87fddf"
+ "reference": "142440d48e10fd4b4f2ffb2d72fa0aad6f03cacf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Finder/zipball/8712d5e8c4ad65e6b936ed9b6a581e5e6a87fddf",
- "reference": "8712d5e8c4ad65e6b936ed9b6a581e5e6a87fddf",
+ "url": "https://api.github.com/repos/symfony/Finder/zipball/142440d48e10fd4b4f2ffb2d72fa0aad6f03cacf",
+ "reference": "142440d48e10fd4b4f2ffb2d72fa0aad6f03cacf",
"shasum": ""
},
"require": {
@@ -649,7 +649,7 @@
],
"description": "Symfony Finder Component",
"homepage": "https://symfony.com",
- "time": "2015-07-09 16:11:14"
+ "time": "2015-08-27 06:53:13"
},
{
"name": "symfony/http-foundation",
@@ -657,12 +657,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/HttpFoundation.git",
- "reference": "caede1f3361223098395b955bdbf3fe59d58d3ba"
+ "reference": "3f179ebcfc2f9cb82a47e890ed4622f48cfb4602"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/caede1f3361223098395b955bdbf3fe59d58d3ba",
- "reference": "caede1f3361223098395b955bdbf3fe59d58d3ba",
+ "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/3f179ebcfc2f9cb82a47e890ed4622f48cfb4602",
+ "reference": "3f179ebcfc2f9cb82a47e890ed4622f48cfb4602",
"shasum": ""
},
"require": {
@@ -702,7 +702,7 @@
],
"description": "Symfony HttpFoundation Component",
"homepage": "https://symfony.com",
- "time": "2015-08-05 15:58:16"
+ "time": "2015-08-27 06:53:13"
},
{
"name": "symfony/http-kernel",
@@ -710,12 +710,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/HttpKernel.git",
- "reference": "8480ac939c8f6441e3575badb2306b936e14184a"
+ "reference": "330079921340f2d273dd24df16fc129948614e77"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/8480ac939c8f6441e3575badb2306b936e14184a",
- "reference": "8480ac939c8f6441e3575badb2306b936e14184a",
+ "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/330079921340f2d273dd24df16fc129948614e77",
+ "reference": "330079921340f2d273dd24df16fc129948614e77",
"shasum": ""
},
"require": {
@@ -782,7 +782,7 @@
],
"description": "Symfony HttpKernel Component",
"homepage": "https://symfony.com",
- "time": "2015-08-01 06:34:21"
+ "time": "2015-09-01 07:33:03"
},
{
"name": "symfony/routing",
@@ -790,12 +790,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/Routing.git",
- "reference": "b7c7ba4300592b5127318301d3d5aef537c05664"
+ "reference": "e9554bafc78c93b15ef56ce72c5aa2f3a511e683"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Routing/zipball/b7c7ba4300592b5127318301d3d5aef537c05664",
- "reference": "b7c7ba4300592b5127318301d3d5aef537c05664",
+ "url": "https://api.github.com/repos/symfony/Routing/zipball/e9554bafc78c93b15ef56ce72c5aa2f3a511e683",
+ "reference": "e9554bafc78c93b15ef56ce72c5aa2f3a511e683",
"shasum": ""
},
"require": {
@@ -853,7 +853,7 @@
"uri",
"url"
],
- "time": "2015-08-05 15:58:16"
+ "time": "2015-08-24 07:31:10"
},
{
"name": "symfony/security",
@@ -937,17 +937,17 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/TwigBridge.git",
- "reference": "f7cbabeaaaf27c904951876f4a5bde5363833382"
+ "reference": "f85dc88ede5943c63c8681c02d8ef6b4252be54c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/TwigBridge/zipball/f7cbabeaaaf27c904951876f4a5bde5363833382",
- "reference": "f7cbabeaaaf27c904951876f4a5bde5363833382",
+ "url": "https://api.github.com/repos/symfony/TwigBridge/zipball/f85dc88ede5943c63c8681c02d8ef6b4252be54c",
+ "reference": "f85dc88ede5943c63c8681c02d8ef6b4252be54c",
"shasum": ""
},
"require": {
"php": ">=5.3.9",
- "twig/twig": "~1.18"
+ "twig/twig": "~1.20|~2.0"
},
"require-dev": {
"symfony/asset": "~2.7|~3.0.0",
@@ -1008,7 +1008,7 @@
],
"description": "Symfony Twig Bridge",
"homepage": "https://symfony.com",
- "time": "2015-08-01 09:43:59"
+ "time": "2015-09-01 07:33:03"
},
{
"name": "symfony/yaml",
@@ -1016,12 +1016,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/Yaml.git",
- "reference": "6eef1477f3c4451b6024fadb1254009be4602908"
+ "reference": "1a0bd40f71908db4c9d44d308e0008cc44fc5f2f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Yaml/zipball/6eef1477f3c4451b6024fadb1254009be4602908",
- "reference": "6eef1477f3c4451b6024fadb1254009be4602908",
+ "url": "https://api.github.com/repos/symfony/Yaml/zipball/1a0bd40f71908db4c9d44d308e0008cc44fc5f2f",
+ "reference": "1a0bd40f71908db4c9d44d308e0008cc44fc5f2f",
"shasum": ""
},
"require": {
@@ -1057,7 +1057,7 @@
],
"description": "Symfony Yaml Component",
"homepage": "https://symfony.com",
- "time": "2015-07-29 07:12:56"
+ "time": "2015-08-24 07:18:02"
},
{
"name": "twig/twig",
@@ -2464,12 +2464,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/CssSelector.git",
- "reference": "5b0968a01e1f6fb724ecc8b7334d662ad4c8cda6"
+ "reference": "6470dad1d5c3a926906b5660a7046bbd61bd7806"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/CssSelector/zipball/5b0968a01e1f6fb724ecc8b7334d662ad4c8cda6",
- "reference": "5b0968a01e1f6fb724ecc8b7334d662ad4c8cda6",
+ "url": "https://api.github.com/repos/symfony/CssSelector/zipball/6470dad1d5c3a926906b5660a7046bbd61bd7806",
+ "reference": "6470dad1d5c3a926906b5660a7046bbd61bd7806",
"shasum": ""
},
"require": {
@@ -2509,7 +2509,7 @@
],
"description": "Symfony CssSelector Component",
"homepage": "https://symfony.com",
- "time": "2015-05-15 14:11:12"
+ "time": "2015-08-24 07:18:02"
},
{
"name": "symfony/dom-crawler",
@@ -2517,12 +2517,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/DomCrawler.git",
- "reference": "3aed431721a4a779d1ec30210bd53075da9623f5"
+ "reference": "be577b3a5d4a06d8ce03db57222bd06b5a6509de"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/DomCrawler/zipball/3aed431721a4a779d1ec30210bd53075da9623f5",
- "reference": "3aed431721a4a779d1ec30210bd53075da9623f5",
+ "url": "https://api.github.com/repos/symfony/DomCrawler/zipball/be577b3a5d4a06d8ce03db57222bd06b5a6509de",
+ "reference": "be577b3a5d4a06d8ce03db57222bd06b5a6509de",
"shasum": ""
},
"require": {
@@ -2562,7 +2562,7 @@
],
"description": "Symfony DomCrawler Component",
"homepage": "https://symfony.com",
- "time": "2015-07-09 16:11:14"
+ "time": "2015-08-27 06:53:13"
},
{
"name": "symfony/process",
@@ -2570,12 +2570,12 @@
"source": {
"type": "git",
"url": "https://github.com/symfony/Process.git",
- "reference": "25d74c90d79e66905013714d8d188e4ccb5ff466"
+ "reference": "fc18e378d05c6b81bcac39338bf334e053186efa"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Process/zipball/25d74c90d79e66905013714d8d188e4ccb5ff466",
- "reference": "25d74c90d79e66905013714d8d188e4ccb5ff466",
+ "url": "https://api.github.com/repos/symfony/Process/zipball/fc18e378d05c6b81bcac39338bf334e053186efa",
+ "reference": "fc18e378d05c6b81bcac39338bf334e053186efa",
"shasum": ""
},
"require": {
@@ -2611,7 +2611,7 @@
],
"description": "Symfony Process Component",
"homepage": "https://symfony.com",
- "time": "2015-07-01 14:16:54"
+ "time": "2015-08-27 06:53:13"
}
],
"aliases": [],
diff --git a/phpBB/config/default/container/services.yml b/phpBB/config/default/container/services.yml
index 25b0a85913..288785201c 100644
--- a/phpBB/config/default/container/services.yml
+++ b/phpBB/config/default/container/services.yml
@@ -148,7 +148,7 @@ services:
- @mimetype.guesser
upload_imagesize:
- class: fastImageSize\fastImageSize
+ class: FastImageSize\FastImageSize
version_helper:
class: phpbb\version_helper
diff --git a/phpBB/docs/events.md b/phpBB/docs/events.md
index 06d30fc1fa..7203e7758e 100644
--- a/phpBB/docs/events.md
+++ b/phpBB/docs/events.md
@@ -1121,6 +1121,13 @@ posting_poll_body_options_after
* Since: 3.1.4-RC1
* Purpose: Add content after the poll options on creating a poll
+posting_preview_poll_after
+===
+* Locations:
+ + styles/prosilver/template/posting_preview.html
+* Since: 3.1.7-RC1
+* Purpose: Add content after the poll preview block
+
posting_topic_title_before
===
* Locations:
@@ -1915,6 +1922,13 @@ viewtopic_body_topic_actions_before
* Since: 3.1.0-a4
* Purpose: Add data before the topic actions buttons (after the posts sorting options)
+viewtopic_topic_title_after
+===
+* Locations:
+ + styles/prosilver/template/viewtopic_body.html
+* Since: 3.1.7-RC1
+* Purpose: Add content directly after the topic title link on the View topic screen (outside of the h2 HTML tag)
+
viewtopic_topic_title_append
===
* Locations:
diff --git a/phpBB/includes/acp/auth.php b/phpBB/includes/acp/auth.php
index 2c4c82fcc7..027be03a00 100644
--- a/phpBB/includes/acp/auth.php
+++ b/phpBB/includes/acp/auth.php
@@ -1114,6 +1114,11 @@ class auth_admin extends \phpbb\auth\auth
@reset($category_array);
while (list($cat, $cat_array) = each($category_array))
{
+ if (!$phpbb_permissions->category_defined($cat))
+ {
+ continue;
+ }
+
$template->assign_block_vars($tpl_cat, array(
'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,
@@ -1140,6 +1145,11 @@ class auth_admin extends \phpbb\auth\auth
@reset($cat_array['permissions']);
while (list($permission, $allowed) = each($cat_array['permissions']))
{
+ if (!$phpbb_permissions->permission_defined($permission))
+ {
+ continue;
+ }
+
if ($s_view)
{
$template->assign_block_vars($tpl_cat . '.' . $tpl_mask, array(
diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php
index 6bc5d91ac4..311208baf3 100644
--- a/phpBB/includes/functions.php
+++ b/phpBB/includes/functions.php
@@ -4031,7 +4031,7 @@ function phpbb_get_avatar($row, $alt, $ignore_config = false, $lazy = false)
return $html;
}
- $avatar_data = $driver->get_data($row, $ignore_config);
+ $avatar_data = $driver->get_data($row);
}
else
{
@@ -4502,10 +4502,10 @@ function phpbb_generate_debug_output(\phpbb\db\driver\driver_interface $db, \php
if (isset($GLOBALS['starttime']))
{
$totaltime = microtime(true) - $GLOBALS['starttime'];
- $debug_info[] = sprintf('<abbr title="SQL time: %.3fs / PHP time: %.3fs">Time: %.3fs</abbr>', $db->get_sql_time(), ($totaltime - $db->get_sql_time()), $totaltime);
+ $debug_info[] = sprintf('<span title="SQL time: %.3fs / PHP time: %.3fs">Time: %.3fs</span>', $db->get_sql_time(), ($totaltime - $db->get_sql_time()), $totaltime);
}
- $debug_info[] = sprintf('<abbr title="Cached: %d">Queries: %d</abbr>', $db->sql_num_queries(true), $db->sql_num_queries());
+ $debug_info[] = sprintf('<span title="Cached: %d">Queries: %d</span>', $db->sql_num_queries(true), $db->sql_num_queries());
$memory_usage = memory_get_peak_usage();
if ($memory_usage)
diff --git a/phpBB/includes/functions_display.php b/phpBB/includes/functions_display.php
index c53a9f3bc0..3d61b5c098 100644
--- a/phpBB/includes/functions_display.php
+++ b/phpBB/includes/functions_display.php
@@ -1483,7 +1483,7 @@ function watch_topic_forum($mode, &$s_watching, $user_id, $forum_id, $topic_id,
* @param array $user_data the current stored users data
* @param int $user_posts the users number of posts
*
-* @return array An associative array containing the rank title (title), the rank image source (img) and the rank image as full img tag (img)
+* @return array An associative array containing the rank title (title), the rank image as full img tag (img) and the rank image source (img_src)
*
* Note: since we do not want to break backwards-compatibility, this function will only properly assign ranks to guests if you call it for them with user_posts == false
*/
diff --git a/phpBB/includes/functions_messenger.php b/phpBB/includes/functions_messenger.php
index 6abfb40b01..810f2c0584 100644
--- a/phpBB/includes/functions_messenger.php
+++ b/phpBB/includes/functions_messenger.php
@@ -931,6 +931,8 @@ class queue
{
// Do nothing
}
+
+ $this->data = array();
}
$lock->release();
diff --git a/phpBB/includes/functions_upload.php b/phpBB/includes/functions_upload.php
index dcc9bc4874..3ab87ee794 100644
--- a/phpBB/includes/functions_upload.php
+++ b/phpBB/includes/functions_upload.php
@@ -403,7 +403,7 @@ class filespec
$this->width = $this->height = 0;
// Get imagesize class
- $imagesize = new \fastImageSize\fastImageSize();
+ $imagesize = new \FastImageSize\FastImageSize();
$this->image_info = $imagesize->getImageSize($this->destination_file, $this->mimetype);
diff --git a/phpBB/includes/message_parser.php b/phpBB/includes/message_parser.php
index c50212e8ff..31fc1577a2 100644
--- a/phpBB/includes/message_parser.php
+++ b/phpBB/includes/message_parser.php
@@ -403,7 +403,7 @@ class bbcode_firstpass extends bbcode
if ($config['max_' . $this->mode . '_img_height'] || $config['max_' . $this->mode . '_img_width'])
{
- $imagesize = new \fastImageSize\fastImageSize();
+ $imagesize = new \FastImageSize\FastImageSize();
$size_info = $imagesize->getImageSize(htmlspecialchars_decode($in));
if ($size_info === false)
diff --git a/phpBB/language/en/cli.php b/phpBB/language/en/cli.php
index e529fc0bde..9aa8b7fcc2 100644
--- a/phpBB/language/en/cli.php
+++ b/phpBB/language/en/cli.php
@@ -54,9 +54,9 @@ $lang = array_merge($lang, array(
'CLI_DESCRIPTION_DELETE_CONFIG' => 'Deletes a configuration option',
'CLI_DESCRIPTION_DISABLE_EXTENSION' => 'Disables the specified extension.',
'CLI_DESCRIPTION_ENABLE_EXTENSION' => 'Enables the specified extension.',
- 'CLI_DESCRIPTION_FIND_MIGRATIONS' => 'Finds migrations that are not depended on.',
+ 'CLI_DESCRIPTION_FIND_MIGRATIONS' => 'Finds migrations that are not depended upon.',
'CLI_DESCRIPTION_GET_CONFIG' => 'Gets a configuration option’s value',
- 'CLI_DESCRIPTION_INCREMENT_CONFIG' => 'Increments a configuration option’s value',
+ 'CLI_DESCRIPTION_INCREMENT_CONFIG' => 'Increments a configuration option’s integer value',
'CLI_DESCRIPTION_LIST_EXTENSIONS' => 'Lists all extensions in the database and on the filesystem.',
'CLI_DESCRIPTION_OPTION_ENV' => 'The Environment name.',
@@ -111,3 +111,8 @@ $lang = array_merge($lang, array(
'CLI_THUMBNAIL_NOTHING_TO_GENERATE' => 'No thumbnails to generate.',
'CLI_THUMBNAIL_NOTHING_TO_DELETE' => 'No thumbnails to delete.',
));
+
+// Additional help for commands.
+$lang = array_merge($lang, array(
+ 'CLI_HELP_CRON_RUN' => $lang['CLI_DESCRIPTION_CRON_RUN'] . ' Optionally you can specify a cron task name to run only the specified cron task.',
+));
diff --git a/phpBB/language/en/common.php b/phpBB/language/en/common.php
index 292d30dd1c..bde9a91267 100644
--- a/phpBB/language/en/common.php
+++ b/phpBB/language/en/common.php
@@ -81,7 +81,7 @@ $lang = array_merge($lang, array(
'ALL_FORUMS' => 'All forums',
'ALL_MESSAGES' => 'All messages',
'ALL_POSTS' => 'All posts',
- 'ALL_TIMES' => 'All times are <abbr title="%2$s">%1$s</abbr>',
+ 'ALL_TIMES' => 'All times are <span title="%2$s">%1$s</span>',
'ALL_TOPICS' => 'All Topics',
'AND' => 'And',
'ARE_WATCHING_FORUM' => 'You have subscribed to be notified of new posts in this forum.',
diff --git a/phpBB/phpbb/avatar/driver/driver.php b/phpBB/phpbb/avatar/driver/driver.php
index b6fd380bda..c849533166 100644
--- a/phpBB/phpbb/avatar/driver/driver.php
+++ b/phpBB/phpbb/avatar/driver/driver.php
@@ -30,7 +30,7 @@ abstract class driver implements \phpbb\avatar\driver\driver_interface
*/
protected $config;
- /** @var \fastImageSize\fastImageSize */
+ /** @var \FastImageSize\FastImageSize */
protected $imagesize;
/**
@@ -76,13 +76,13 @@ abstract class driver implements \phpbb\avatar\driver\driver_interface
* Construct a driver object
*
* @param \phpbb\config\config $config phpBB configuration
- * @param \fastImageSize\fastImageSize $imagesize fastImageSize class
+ * @param \FastImageSize\FastImageSize $imagesize FastImageSize class
* @param string $phpbb_root_path Path to the phpBB root
* @param string $php_ext PHP file extension
* @param \phpbb\path_helper $path_helper phpBB path helper
* @param \phpbb\cache\driver\driver_interface $cache Cache driver
*/
- public function __construct(\phpbb\config\config $config, \fastImageSize\fastImageSize $imagesize, $phpbb_root_path, $php_ext, \phpbb\path_helper $path_helper, \phpbb\cache\driver\driver_interface $cache = null)
+ public function __construct(\phpbb\config\config $config, \FastImageSize\FastImageSize $imagesize, $phpbb_root_path, $php_ext, \phpbb\path_helper $path_helper, \phpbb\cache\driver\driver_interface $cache = null)
{
$this->config = $config;
$this->imagesize = $imagesize;
diff --git a/phpBB/phpbb/avatar/driver/upload.php b/phpBB/phpbb/avatar/driver/upload.php
index 1939a91cfe..b31609b982 100644
--- a/phpBB/phpbb/avatar/driver/upload.php
+++ b/phpBB/phpbb/avatar/driver/upload.php
@@ -60,7 +60,7 @@ class upload extends \phpbb\avatar\driver\driver
/**
* {@inheritdoc}
*/
- public function get_data($row, $ignore_config = false)
+ public function get_data($row)
{
$root_path = (defined('PHPBB_USE_BOARD_URL_PATH') && PHPBB_USE_BOARD_URL_PATH) ? generate_board_url() . '/' : $this->path_helper->get_web_root_path();
diff --git a/phpBB/phpbb/console/command/cron/run.php b/phpBB/phpbb/console/command/cron/run.php
index 72ad1205ef..a9648fcd41 100644
--- a/phpBB/phpbb/console/command/cron/run.php
+++ b/phpBB/phpbb/console/command/cron/run.php
@@ -50,6 +50,7 @@ class run extends \phpbb\console\command\command
$this
->setName('cron:run')
->setDescription($this->user->lang('CLI_DESCRIPTION_CRON_RUN'))
+ ->setHelp($this->user->lang('CLI_HELP_CRON_RUN'))
->addArgument('name', InputArgument::OPTIONAL, $this->user->lang('CLI_DESCRIPTION_CRON_RUN_ARGUMENT_1'))
;
}
diff --git a/phpBB/phpbb/controller/helper.php b/phpBB/phpbb/controller/helper.php
index 5722951278..e98de0e771 100644
--- a/phpBB/phpbb/controller/helper.php
+++ b/phpBB/phpbb/controller/helper.php
@@ -78,12 +78,14 @@ class helper
* @param string $page_title The title of the page to output
* @param int $status_code The status code to be sent to the page header
* @param bool $display_online_list Do we display online users list
+ * @param int $item_id Restrict online users to item id
+ * @param string $item Restrict online users to a certain session item, e.g. forum for session_forum_id
*
* @return Response object containing rendered page
*/
- public function render($template_file, $page_title = '', $status_code = 200, $display_online_list = false)
+ public function render($template_file, $page_title = '', $status_code = 200, $display_online_list = false, $item_id = 0, $item = 'forum')
{
- page_header($page_title, $display_online_list);
+ page_header($page_title, $display_online_list, $item_id, $item);
$this->template->set_filenames(array(
'body' => $template_file,
diff --git a/phpBB/phpbb/db/driver/sqlite3.php b/phpBB/phpbb/db/driver/sqlite3.php
index f5c2dd225b..b7f6e60337 100644
--- a/phpBB/phpbb/db/driver/sqlite3.php
+++ b/phpBB/phpbb/db/driver/sqlite3.php
@@ -48,6 +48,7 @@ class sqlite3 extends \phpbb\db\driver\driver
try
{
$this->dbo = new \SQLite3($this->server, SQLITE3_OPEN_READWRITE | SQLITE3_OPEN_CREATE);
+ $this->dbo->busyTimeout(60000);
$this->db_connect_id = true;
}
catch (\Exception $e)
diff --git a/phpBB/phpbb/db/migration/data/v31x/v316.php b/phpBB/phpbb/db/migration/data/v31x/v316.php
new file mode 100644
index 0000000000..cec113eff2
--- /dev/null
+++ b/phpBB/phpbb/db/migration/data/v31x/v316.php
@@ -0,0 +1,31 @@
+<?php
+/**
+*
+* This file is part of the phpBB Forum Software package.
+*
+* @copyright (c) phpBB Limited <https://www.phpbb.com>
+* @license GNU General Public License, version 2 (GPL-2.0)
+*
+* For full copyright and license information, please see
+* the docs/CREDITS.txt file.
+*
+*/
+
+namespace phpbb\db\migration\data\v31x;
+
+class v316 extends \phpbb\db\migration\migration
+{
+ static public function depends_on()
+ {
+ return array(
+ '\phpbb\db\migration\data\v31x\v316rc1',
+ );
+ }
+
+ public function update_data()
+ {
+ return array(
+ array('config.update', array('version', '3.1.6')),
+ );
+ }
+}
diff --git a/phpBB/phpbb/permissions.php b/phpBB/phpbb/permissions.php
index c462f72a73..0c6fad295c 100644
--- a/phpBB/phpbb/permissions.php
+++ b/phpBB/phpbb/permissions.php
@@ -160,6 +160,28 @@ class permissions
}
/**
+ * Checks if a category has been defined
+ *
+ * @param string $category Identifier of the category
+ * @return bool True if the category is defined, false otherwise
+ */
+ public function category_defined($category)
+ {
+ return isset($this->categories[$category]);
+ }
+
+ /**
+ * Checks if a permission has been defined
+ *
+ * @param string $permission Identifier of the permission
+ * @return bool True if the permission is defined, false otherwise
+ */
+ public function permission_defined($permission)
+ {
+ return isset($this->permissions[$permission]);
+ }
+
+ /**
* Returns the language string of a permission
*
* @param string $permission Identifier of the permission
diff --git a/phpBB/phpbb/textformatter/s9e/parser.php b/phpBB/phpbb/textformatter/s9e/parser.php
index 838c211e56..ffaffbc63c 100644
--- a/phpBB/phpbb/textformatter/s9e/parser.php
+++ b/phpBB/phpbb/textformatter/s9e/parser.php
@@ -370,7 +370,7 @@ class parser implements \phpbb\textformatter\parser_interface
if ($max_height || $max_width)
{
- $imagesize = new \fastImageSize\fastImageSize();
+ $imagesize = new \FastImageSize\FastImageSize();
$size_info = $imagesize->getImageSize($url);
if ($size_info === false)
{
diff --git a/phpBB/styles/prosilver/template/jumpbox.html b/phpBB/styles/prosilver/template/jumpbox.html
index 3096d08318..15c69aeed2 100644
--- a/phpBB/styles/prosilver/template/jumpbox.html
+++ b/phpBB/styles/prosilver/template/jumpbox.html
@@ -11,7 +11,7 @@
<!-- IF S_DISPLAY_JUMPBOX -->
- <div class="dropdown-container dropdown-container-{S_CONTENT_FLOW_END}<!-- IF not S_IN_MCP --> dropdown-up<!-- ENDIF --> dropdown-{S_CONTENT_FLOW_BEGIN} dropdown-button-control" id="jumpbox">
+ <div class="jumpbox dropdown-container dropdown-container-{S_CONTENT_FLOW_END}<!-- IF not S_IN_MCP --> dropdown-up<!-- ENDIF --> dropdown-{S_CONTENT_FLOW_BEGIN} dropdown-button-control" id="jumpbox">
<span title="<!-- IF S_IN_MCP and S_MERGE_SELECT -->{L_SELECT_TOPICS_FROM}<!-- ELSEIF S_IN_MCP -->{L_MODERATE_FORUM}<!-- ELSE -->{L_JUMP_TO}<!-- ENDIF -->" class="dropdown-trigger button dropdown-select">
<!-- IF S_IN_MCP and S_MERGE_SELECT -->{L_SELECT_TOPICS_FROM}<!-- ELSEIF S_IN_MCP -->{L_MODERATE_FORUM}<!-- ELSE -->{L_JUMP_TO}<!-- ENDIF -->
</span>
@@ -20,7 +20,7 @@
<ul class="dropdown-contents">
<!-- BEGIN jumpbox_forums -->
<!-- IF jumpbox_forums.FORUM_ID neq -1 -->
- <li><!-- BEGIN level -->&nbsp; &nbsp;<!-- END level --><a href="{jumpbox_forums.LINK}">{jumpbox_forums.FORUM_NAME}</a></li>
+ <li><a href="{jumpbox_forums.LINK}" class="<!-- IF jumpbox_forums.level -->jumpbox-sub-link<!-- ELSEIF jumpbox_forums.S_IS_CAT -->jumpbox-cat-link<!-- ELSE -->jumpbox-forum-link<!-- ENDIF -->"><!-- BEGIN level --><span class="spacer"></span><!-- END level --> <span><!-- IF jumpbox_forums.level --> &#8627; &nbsp;<!-- ENDIF --> {jumpbox_forums.FORUM_NAME}</span></a></li>
<!-- ENDIF -->
<!-- END jumpbox_forums -->
</ul>
@@ -29,4 +29,4 @@
<!-- ELSE -->
<br /><br />
-<!-- ENDIF -->
+<!-- ENDIF --> \ No newline at end of file
diff --git a/phpBB/styles/prosilver/template/posting_preview.html b/phpBB/styles/prosilver/template/posting_preview.html
index a5aae8c436..aac117c090 100644
--- a/phpBB/styles/prosilver/template/posting_preview.html
+++ b/phpBB/styles/prosilver/template/posting_preview.html
@@ -24,6 +24,8 @@
<!-- ENDIF -->
+<!-- EVENT posting_preview_poll_after -->
+
<div class="postbody">
<h3>{L_PREVIEW}{L_COLON} {PREVIEW_SUBJECT}</h3>
diff --git a/phpBB/styles/prosilver/template/viewtopic_body.html b/phpBB/styles/prosilver/template/viewtopic_body.html
index 87a9e95dce..b7506608d9 100644
--- a/phpBB/styles/prosilver/template/viewtopic_body.html
+++ b/phpBB/styles/prosilver/template/viewtopic_body.html
@@ -1,6 +1,7 @@
<!-- INCLUDE overall_header.html -->
<h2 class="topic-title"><!-- EVENT viewtopic_topic_title_prepend --><a href="{U_VIEW_TOPIC}">{TOPIC_TITLE}</a><!-- EVENT viewtopic_topic_title_append --></h2>
+<!-- EVENT viewtopic_topic_title_after -->
<!-- NOTE: remove the style="display: none" when you want to have the forum description on the topic body -->
<!-- IF FORUM_DESC --><div style="display: none !important;">{FORUM_DESC}<br /></div><!-- ENDIF -->
diff --git a/phpBB/styles/prosilver/theme/colours.css b/phpBB/styles/prosilver/theme/colours.css
index 29cf641df2..a4c1925cc7 100644
--- a/phpBB/styles/prosilver/theme/colours.css
+++ b/phpBB/styles/prosilver/theme/colours.css
@@ -48,23 +48,25 @@ hr {
}
.headerbar {
- background-color: #12A3EB;
- background-image: url("./images/bg_header.gif");
color: #FFFFFF;
}
-.navbar {
- background-color: #cadceb;
+.headerbar, .forumbg {
+ background-color: #12A3EB;
+ background-image: -webkit-linear-gradient(top, #6ACEFF 0%, #0076B1 2px, #12A3EB 92px, #12A3EB 100%);
+ background-image: linear-gradient(to bottom, #6ACEFF 0%,#0076B1 2px,#12A3EB 92px,#12A3EB 100%);
+ background-repeat: repeat-x;
}
.forabg {
- background-color: #0076b1;
- background-image: url("./images/bg_list.gif");
+ background-color: #0076B1;
+ background-image: -webkit-linear-gradient(top, #6ACEFF 0%, #12A3EB 2px, #0076B1 92px, #0076B1 100%);
+ background-image: linear-gradient(to bottom, #6ACEFF 0%,#12A3EB 2px,#0076B1 92px,#0076B1 100%);
+ background-repeat: repeat-x;
}
-.forumbg {
- background-color: #12A3EB;
- background-image: url("./images/bg_header.gif");
+.navbar {
+ background-color: #CADCEB;
}
.panel {
@@ -89,15 +91,15 @@ table.zebra-list tr:nth-child(odd) td, ul.zebra-list li:nth-child(odd) {
}
.bg2 {
- background-color: #e1ebf2;
+ background-color: #E1EBF2;
}
table.zebra-list tr:nth-child(even) td, ul.zebra-list li:nth-child(even) {
- background-color: #e1ebf2;
+ background-color: #E1EBF2;
}
.bg3 {
- background-color: #cadceb;
+ background-color: #CADCEB;
}
.ucprowbg {
@@ -197,6 +199,42 @@ dl.details dd {
background-image: url("./images/icon_pages.gif");
}
+.jumpbox .dropdown li {
+ border-top-color: #CCCCCC;
+}
+
+.jumpbox-cat-link {
+ background-color: #0076b1;
+ border-top-color: #0076B1;
+ color: #FFFFFF;
+}
+
+.jumpbox-cat-link:hover {
+ background-color: #12A3EB;
+ border-top-color: #12A3EB;
+ color: #FFFFFF;
+}
+
+.jumpbox-forum-link {
+ background-color: #E1EBF2;
+}
+
+.jumpbox-forum-link:hover {
+ background-color: #F6F4D0;
+}
+
+.jumpbox .dropdown .pointer-inner {
+ border-color: #E1EBF2 transparent;
+}
+
+.jumpbox-sub-link {
+ background-color: #E1EBF2;
+}
+
+.jumpbox-sub-link:hover {
+ background-color: #F1F8FF;
+}
+
/* Miscellaneous styles
---------------------------------------- */
@@ -316,8 +354,10 @@ Colours and backgrounds for content.css
-------------------------------------------------------------- */
ul.forums {
- background-color: #eef5f9;
- background-image: url("./images/gradient.gif");
+ background-color: #EEF5F9; /* Old browsers */ /* FF3.6+ */
+ background-image: -webkit-linear-gradient(top, #D2E0EB 0%, #EEF5F9 100%);
+ background-image: linear-gradient(to bottom, #D2E0EB 0%,#EEF5F9 100%); /* W3C */
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#D2E0EB', endColorstr='#EEF5F9',GradientType=0 ); /* IE6-9 */
}
ul.topiclist li {
@@ -329,7 +369,7 @@ ul.topiclist dd {
}
.rtl ul.topiclist dd {
- border-right-color: #fff;
+ border-right-color: #FFFFFF;
border-left-color: transparent;
}
@@ -600,12 +640,10 @@ Colours and backgrounds for buttons.css
-------------------------------------------------------------- */
.button {
border-color: #C7C3BF;
- background-color: #FFFFFF;
- background-image: -moz-linear-gradient(top, #FFFFFF, #E9E9E9);
- background-image: -webkit-linear-gradient(top, #FFFFFF, #E9E9E9);
- background-image: -o-linear-gradient(top, #FFFFFF, #E9E9E9);
- background-image: linear-gradient(to bottom, #FFFFFF, #E9E9E9);
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#FFFFFF', EndColorStr='#E9E9E9')";
+ background-color: #E9E9E9; /* Old browsers */ /* FF3.6+ */
+ background-image: -webkit-linear-gradient(top, #FFFFFF 0%, #E9E9E9 100%);
+ background-image: linear-gradient(to bottom, #FFFFFF 0%,#E9E9E9 100%); /* W3C */
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFFFFF', endColorstr='#E9E9E9',GradientType=0 ); /* IE6-9 */
box-shadow: 0 0 0 1px #FFFFFF inset;
-webkit-box-shadow: 0 0 0 1px #FFFFFF inset;
color: #D31141;
@@ -616,12 +654,11 @@ Colours and backgrounds for buttons.css
}
.button:hover, .dropdown-visible .dropdown-select, .nojs .dropdown-container:hover .dropdown-select {
- border-color: #0a8ed0;
- background-image: -moz-linear-gradient(top, #E9E9E9, #FFFFFF);
- background-image: -webkit-linear-gradient(top, #E9E9E9, #FFFFFF);
- background-image: -o-linear-gradient(top, #E9E9E9, #FFFFFF);
- background-image: linear-gradient(to bottom, #E9E9E9, #FFFFFF);
- -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#E9E9E9', EndColorStr='#FFFFFF')";
+ border-color: #0A8ED0;
+ background-color: #FFFFFF; /* Old browsers */ /* FF3.6+ */
+ background-image: -webkit-linear-gradient(top, #E9E9E9 0%, #FFFFFF 100%);
+ background-image: linear-gradient(to bottom, #E9E9E9 0%,#FFFFFF 100%); /* W3C */
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#E9E9E9', endColorstr='#FFFFFF',GradientType=0 ); /* IE6-9 */
text-shadow: 1px 1px 0 #FFFFFF, -1px -1px 0 #FFFFFF, -1px -1px 0 rgba(188, 42, 77, 0.2);
}
@@ -638,35 +675,36 @@ Colours and backgrounds for buttons.css
/* Icon images
---------------------------------------- */
-.icon-acp { background-image: url("./images/icon_acp.gif"); }
-.icon-bookmark { background-image: url("./images/icon_bookmark.gif"); }
-.icon-bump { background-image: url("./images/icon_bump.gif"); }
-.icon-contact { background-image: url("./images/icon_pm.gif"); }
-.icon-delete-cookies { background-image: url("./images/icon_delete_cookies.gif"); }
-.icon-download { background-image: url("./images/icon_download.gif"); }
-.icon-faq { background-image: url("./images/icon_faq.gif"); }
-.icon-home { background-image: url("./images/icon_home.gif"); }
-.icon-logout { background-image: url("./images/icon_logout.gif"); }
-.icon-mark { background-image: url("./images/icon_mark.gif"); }
-.icon-mcp { background-image: url("./images/icon_mcp.gif"); }
-.icon-members { background-image: url("./images/icon_members.gif"); }
-.icon-notification { background-image: url("./images/icon_notification.gif"); }
-.icon-pages { background-image: url("./images/icon_pages.gif"); }
-.icon-pm { background-image: url("./images/icon_pm.gif"); }
-.icon-print { background-image: url("./images/icon_print.gif"); }
-.icon-profile { background-image: url("./images/icon_profile.gif"); }
-.icon-register { background-image: url("./images/icon_register.gif"); }
-.icon-search, .responsive-search a { background-image: url("./images/icon_search.gif"); }
-.icon-search-active { background-image: url("./images/subforum_read.gif"); }
-.icon-search-new { background-image: url("./images/subforum_unread.gif"); }
-.icon-search-self { background-image: url("./images/icon_topic_latest.gif"); }
-.icon-search-unanswered { background-image: url("./images/icon_post_target.gif"); }
-.icon-search-unread { background-image: url("./images/subforum_unread.gif"); }
-.icon-sendemail { background-image: url("./images/icon_sendemail.gif"); }
-.icon-subscribe { background-image: url("./images/icon_subscribe.gif"); }
-.icon-team { background-image: url("./images/icon_team.gif"); }
-.icon-ucp { background-image: url("./images/icon_ucp.gif"); }
-.icon-unsubscribe { background-image: url("./images/icon_unsubscribe.gif"); }
+.icon-acp { background-image: url("./images/icon_acp.gif"); }
+.icon-bookmark { background-image: url("./images/icon_bookmark.gif"); }
+.icon-bump { background-image: url("./images/icon_bump.gif"); }
+.icon-contact { background-image: url("./images/icon_pm.gif"); }
+.icon-delete-cookies { background-image: url("./images/icon_delete_cookies.gif"); }
+.icon-download { background-image: url("./images/icon_download.gif"); }
+.icon-faq { background-image: url("./images/icon_faq.gif"); }
+.icon-home { background-image: url("./images/icon_home.gif"); }
+.icon-logout { background-image: url("./images/icon_logout.gif"); }
+.icon-mark { background-image: url("./images/icon_mark.gif"); }
+.icon-mcp { background-image: url("./images/icon_mcp.gif"); }
+.icon-members { background-image: url("./images/icon_members.gif"); }
+.icon-notification { background-image: url("./images/icon_notification.gif"); }
+.icon-pages { background-image: url("./images/icon_pages.gif"); }
+.icon-pm { background-image: url("./images/icon_pm.gif"); }
+.icon-print { background-image: url("./images/icon_print.gif"); }
+.icon-profile { background-image: url("./images/icon_profile.gif"); }
+.icon-register { background-image: url("./images/icon_register.gif"); }
+.icon-search,
+.responsive-search a { background-image: url("./images/icon_search.gif"); }
+.icon-search-active { background-image: url("./images/subforum_read.gif"); }
+.icon-search-new { background-image: url("./images/subforum_unread.gif"); }
+.icon-search-self { background-image: url("./images/icon_topic_latest.gif"); }
+.icon-search-unanswered { background-image: url("./images/icon_post_target.gif"); }
+.icon-search-unread { background-image: url("./images/subforum_unread.gif"); }
+.icon-sendemail { background-image: url("./images/icon_sendemail.gif"); }
+.icon-subscribe { background-image: url("./images/icon_subscribe.gif"); }
+.icon-team { background-image: url("./images/icon_team.gif"); }
+.icon-ucp { background-image: url("./images/icon_ucp.gif"); }
+.icon-unsubscribe { background-image: url("./images/icon_unsubscribe.gif"); }
/* Profile & navigation icons */
.contact-icon { background-image: url("./images/icons_contact.png"); }
@@ -774,14 +812,10 @@ ul.cplist {
#tabs .activetab > a,
#tabs .activetab > a:hover {
- background: #CADCEB;
- background: -moz-linear-gradient(top, #E2F2FF 0%, #CADCEB 100%);
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #E2F2FF), color-stop(100%, #CADCEB));
- background: -webkit-linear-gradient(top, #E2F2FF 0%, #CADCEB 100%);
- background: -o-linear-gradient(top, #E2F2FF 0%, #CADCEB 100%);
- background: -ms-linear-gradient(top, #E2F2FF 0%, #CADCEB 100%);
- background: linear-gradient(to bottom, #E2F2FF 0%, #CADCEB 100%);
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#E2F2FF', endColorstr='#CADCEB', GradientType=0 );
+ background-color: #CADCEB; /* Old browsers */ /* FF3.6+ */
+ background-image: -webkit-linear-gradient(top, #E2F2FF 0%, #CADCEB 100%);
+ background-image: linear-gradient(to bottom, #E2F2FF 0%,#CADCEB 100%); /* W3C */
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#E2F2FF', endColorstr='#CADCEB',GradientType=0 ); /* IE6-9 */
border-color: #CADCEB;
box-shadow: 0 1px 1px #F2F9FF inset;
color: #333333;
@@ -819,25 +853,17 @@ ul.cplist {
/* Link styles for the sub-section links */
#navigation a {
color: #333;
- background: #B4C4D1;
- background: -moz-linear-gradient(left, #B4C4D1 50%, #CADCEB 100%);
- background: -webkit-gradient(left top, right top, color-stop(50%, #B4C4D1), color-stop(100%, #CADCEB));
+ background: #CADCEB; /* Old browsers */ /* FF3.6+ */
background: -webkit-linear-gradient(left, #B4C4D1 50%, #CADCEB 100%);
- background: -o-linear-gradient(left, #B4C4D1 50%, #CADCEB 100%);
- background: -ms-linear-gradient(left, #B4C4D1 50%, #CADCEB 100%);
- background: linear-gradient(to right, #B4C4D1 50%, #CADCEB 100%);
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#B4C4D1', endColorstr='#CADCEB', GradientType=1 );
+ background: linear-gradient(to right, #B4C4D1 50%,#CADCEB 100%); /* W3C */
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#B4C4D1', endColorstr='#CADCEB',GradientType=1 ); /* IE6-9 */
}
.rtl #navigation a {
- background: #B4C4D1;
- background: -moz-linear-gradient(left, #CADCEB 0%, #B4C4D1 50%);
- background: -webkit-gradient(left top, right top, color-stop(0%, #CADCEB), color-stop(50%, #B4C4D1));
- background: -webkit-linear-gradient(left, #CADCEB 0%, #B4C4D1 50%);
- background: -o-linear-gradient(left, #CADCEB 0%, #B4C4D1 50%);
- background: -ms-linear-gradient(left, #CADCEB 0%, #B4C4D1 50%);
- background: linear-gradient(to right, #CADCEB 0%, #B4C4D1 50%);
- filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#CADCEB', endColorstr='#B4C4D1', GradientType=1 );
+ background: #B4C4D1; /* Old browsers */ /* FF3.6+ */
+ background: -webkit-linear-gradient(left, #CADCEB 50%, #B4C4D1 100%);
+ background: linear-gradient(to right, #CADCEB 50%,#B4C4D1 100%); /* W3C */
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#CADCEB', endColorstr='#B4C4D1',GradientType=1 ); /* IE6-9 */
}
#navigation a:hover {
@@ -879,7 +905,7 @@ ul.cplist {
/* Friends list */
.cp-mini {
- background-color: #eef5f9;
+ background-color: #EEF5F9;
}
dl.mini dt {
@@ -1024,8 +1050,10 @@ fieldset.quick-login input.inputbox {
a.button1, input.button1, input.button3, a.button2, input.button2 {
color: #000;
- background-color: #FAFAFA;
- background-image: url("./images/bg_button.gif");
+ background-color: #EFEFEF; /* Old browsers */ /* FF3.6+ */
+ background-image: -webkit-linear-gradient(top, #D2D2D2 0%, #EFEFEF 100%);
+ background-image: linear-gradient(to bottom, #D2D2D2 0%,#EFEFEF 100%); /* W3C */
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#D2D2D2', endColorstr='#EFEFEF',GradientType=0 ); /* IE6-9 */
}
a.button1, input.button1 {
@@ -1048,8 +1076,12 @@ a.button1, a.button2 {
/* Hover states */
a.button1:hover, input.button1:hover, a.button2:hover, input.button2:hover, input.button3:hover {
- border-color: #BC2A4D;
- color: #BC2A4D;
+ border-color: #D31141;
+ color: #D31141;
+ background-color: #D2D2D2; /* Old browsers */ /* FF3.6+ */
+ background-image: -webkit-linear-gradient(top, #EFEFEF 0%, #D2D2D2 100%);
+ background-image: linear-gradient(to bottom, #EFEFEF 0%,#D2D2D2 100%); /* W3C */
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#EFEFEF', endColorstr='#D2D2D2',GradientType=0 ); /* IE6-9 */
}
/* Focus states */
@@ -1104,13 +1136,10 @@ input.disabled {
}
.dropdown-extended .header {
- background: #F1F8FF;
- background: -moz-linear-gradient(top, #F1F8FF 0%, #CADCEB 100%);
- background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #F1F8FF), color-stop(100%, #CADCEB));
- background: -webkit-linear-gradient(top, #F1F8FF 0%, #CADCEB 100%);
- background: -o-linear-gradient(top, #F1F8FF 0%, #CADCEB 100%);
- background: -ms-linear-gradient(top, #F1F8FF 0%, #CADCEB 100%);
- background: linear-gradient(to bottom, #F1F8FF 0%, #CADCEB 100%);
+ background-color: #F1F8FF; /* Old browsers */ /* FF3.6+ */
+ background-image: -webkit-linear-gradient(top, #F1F8FF 0%, #CADCEB 100%);
+ background-image: linear-gradient(to bottom, #F1F8FF 0%,#CADCEB 100%); /* W3C */
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#F1F8FF', endColorstr='#CADCEB',GradientType=0 ); /* IE6-9 */
}
.dropdown .pointer {
@@ -1135,7 +1164,7 @@ ul.linklist li.responsive-menu a.responsive-menu-link:hover:before, ul.linklist
.dropdown .dropdown-contents {
background: #fff;
- border-color: #b9b9b9;
+ border-color: #B9B9B9;
box-shadow: 1px 3px 5px rgba(0, 0, 0, 0.2);
}
diff --git a/phpBB/styles/prosilver/theme/common.css b/phpBB/styles/prosilver/theme/common.css
index 7ecb1bb83f..33293edf02 100644
--- a/phpBB/styles/prosilver/theme/common.css
+++ b/phpBB/styles/prosilver/theme/common.css
@@ -177,7 +177,6 @@ ol ol ul, ol ul ul, ul ol ul, ul ul ul {
/* Round cornered boxes and backgrounds
---------------------------------------- */
.headerbar {
- background: transparent none repeat-x 0 0;
margin-bottom: 4px;
padding: 5px;
border-radius: 7px;
@@ -189,7 +188,6 @@ ol ol ul, ol ul ul, ul ol ul, ul ul ul {
}
.forabg {
- background: transparent none repeat-x 0 0;
margin-bottom: 4px;
padding: 5px;
clear: both;
@@ -197,7 +195,6 @@ ol ol ul, ol ul ul, ul ol ul, ul ul ul {
}
.forumbg {
- background: transparent none repeat-x 0 0;
margin-bottom: 4px;
padding: 5px;
clear: both;
@@ -487,9 +484,45 @@ ul.linklist.bulletin > li.no-bulletin:before {
position: relative;
min-width: 40px;
max-height: 300px;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
+}
+
+.dropdown-contents a {
+ display: block;
+ padding: 5px;
+}
+
+
+.jumpbox .dropdown li {
+ border-top: 1px solid transparent;
+}
+
+.jumpbox .dropdown-select {
+ margin: 0;
+}
+
+.jumpbox .dropdown-contents {
+ padding: 0;
+ text-decoration: none;
+}
+
+.jumpbox .dropdown-contents li {
+ padding: 0;
+}
+
+.jumpbox .dropdown-contents a {
+ margin-right: 20px;
+ padding: 5px 10px;
+ text-decoration: none;
+ width: 100%;
+}
+
+.jumpbox .spacer {
+ display: inline-block;
+ width: 0px;
+}
+
+.jumpbox .spacer + .spacer {
+ width: 20px;
}
.dropdown li {
@@ -1124,6 +1157,11 @@ ul.linklist:after,
text-transform: none;
}
+.dropdown-extended .header .header_settings a {
+ display: inline-block;
+ padding: 0 5px;
+}
+
.dropdown-extended .footer {
text-align: center;
font-size: 1.1em;
diff --git a/phpBB/styles/prosilver/theme/content.css b/phpBB/styles/prosilver/theme/content.css
index e20aaef7d4..758cc8a771 100644
--- a/phpBB/styles/prosilver/theme/content.css
+++ b/phpBB/styles/prosilver/theme/content.css
@@ -7,10 +7,6 @@ ul.topiclist {
margin: 0;
}
-ul.forums {
- background: transparent none repeat-x 0 0;
-}
-
ul.topiclist li {
display: block;
list-style-type: none;
diff --git a/phpBB/styles/prosilver/theme/forms.css b/phpBB/styles/prosilver/theme/forms.css
index 777f011c35..27b33f74aa 100644
--- a/phpBB/styles/prosilver/theme/forms.css
+++ b/phpBB/styles/prosilver/theme/forms.css
@@ -353,7 +353,6 @@ a.button1, a.button1:link, a.button1:visited, a.button1:active, a.button2, a.but
/* Hover states */
a.button1:hover, input.button1:hover, a.button2:hover, input.button2:hover, input.button3:hover {
border: 1px solid transparent;
- background-position: 0 100%;
}
input.disabled {
diff --git a/phpBB/styles/prosilver/theme/images/bg_button.gif b/phpBB/styles/prosilver/theme/images/bg_button.gif
deleted file mode 100644
index 03172ff5c6..0000000000
--- a/phpBB/styles/prosilver/theme/images/bg_button.gif
+++ /dev/null
Binary files differ
diff --git a/phpBB/styles/prosilver/theme/images/gradient.gif b/phpBB/styles/prosilver/theme/images/gradient.gif
deleted file mode 100644
index 21dc11f13b..0000000000
--- a/phpBB/styles/prosilver/theme/images/gradient.gif
+++ /dev/null
Binary files differ
diff --git a/phpBB/styles/prosilver/theme/links.css b/phpBB/styles/prosilver/theme/links.css
index a2f512443c..7cf45a69ca 100644
--- a/phpBB/styles/prosilver/theme/links.css
+++ b/phpBB/styles/prosilver/theme/links.css
@@ -58,6 +58,10 @@ li.breadcrumbs span:first-child > a {
width: 40px;
}
+.jumpbox-cat-link,
+.jumpbox-forum-link { font-weight: bold; }
+
+
/* Links for forum/topic lists */
a.forumtitle {
font-family: "Trebuchet MS", Helvetica, Arial, Sans-serif;
diff --git a/phpBB/styles/prosilver/theme/tweaks.css b/phpBB/styles/prosilver/theme/tweaks.css
index d2dad9e299..4bd9d2099f 100644
--- a/phpBB/styles/prosilver/theme/tweaks.css
+++ b/phpBB/styles/prosilver/theme/tweaks.css
@@ -27,3 +27,15 @@ dd label input { vertical-align: text-bottom\9; }
.search-header, .search-header .inputbox, .search-header a.button {
border-radius: 0;
}
+
+.headerbar, .forumbg {
+ background-image: url("./images/bg_header.gif");
+}
+
+.forabg {
+ background-image: url("./images/bg_list.gif");
+}
+
+#tabs .tab > a {
+ border-radius: 0;
+}
diff --git a/tests/avatar/manager_test.php b/tests/avatar/manager_test.php
index 6d77f2ed3a..9804869c81 100644
--- a/tests/avatar/manager_test.php
+++ b/tests/avatar/manager_test.php
@@ -57,7 +57,7 @@ class phpbb_avatar_manager_test extends \phpbb_database_test_case
new \phpbb\mimetype\content_guesser,
);
$guesser = new \phpbb\mimetype\guesser($guessers);
- $imagesize = new \fastImageSize\fastImageSize();
+ $imagesize = new \FastImageSize\FastImageSize();
$dispatcher = new phpbb_mock_event_dispatcher();
diff --git a/tests/upload/imagesize_test.php b/tests/upload/imagesize_test.php
index bfea4b819d..d20e866dab 100644
--- a/tests/upload/imagesize_test.php
+++ b/tests/upload/imagesize_test.php
@@ -16,7 +16,7 @@ require_once(__DIR__ . '/../../phpBB/includes/functions.php');
class phpbb_upload_imagesize_test extends \phpbb_test_case
{
- /** @var \fastImageSize\fastImageSize */
+ /** @var \FastImageSize\FastImageSize */
protected $imagesize;
/** @var string Path to fixtures */
@@ -25,7 +25,7 @@ class phpbb_upload_imagesize_test extends \phpbb_test_case
public function setUp()
{
parent::setUp();
- $this->imagesize = new \fastImageSize\fastImageSize();
+ $this->imagesize = new \FastImageSize\FastImageSize();
$this->path = __DIR__ . '/fixture/';
}