diff options
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 --> <!-- 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 --> ↳ <!-- 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 Binary files differdeleted file mode 100644 index 03172ff5c6..0000000000 --- a/phpBB/styles/prosilver/theme/images/bg_button.gif +++ /dev/null diff --git a/phpBB/styles/prosilver/theme/images/gradient.gif b/phpBB/styles/prosilver/theme/images/gradient.gif Binary files differdeleted file mode 100644 index 21dc11f13b..0000000000 --- a/phpBB/styles/prosilver/theme/images/gradient.gif +++ /dev/null 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/'; } |