+ - Changes since 3.0.11
- Changes since 3.0.10
- Changes since 3.0.9
- Changes since 3.0.8
@@ -92,7 +93,162 @@
-
1.i. Changes since 3.0.10
+
1.i. Changes since 3.0.11
+
+
Bug
+
+- [PHPBB3-6723] - Empty message in deleted messages in PM history
+- [PHPBB3-7262] - Clarify docs about is_dynamic not being updated by set_config()
+- [PHPBB3-8319] - LOCAL_URL not enforced in bbcodes
+- [PHPBB3-9551] - Mysql fulltext index creation fails due to partial collation change
+- [PHPBB3-9975] - Hard coded language in sessions.php
+- [PHPBB3-10184] - Bots can be sent private messages
+- [PHPBB3-10491] - Fatal error in functional tests when server returns 404
+- [PHPBB3-10568] - Modify the trigger language when you edit a PM
+- [PHPBB3-10602] - A bug in mail queue processing
+- [PHPBB3-10661] - UCP > PM > Compose > enumerated recipients > BCC group misses a (prosilver)
+- [PHPBB3-10678] - Provide Firebird, Oracle, and increased MSSQL support in unit tests
+- [PHPBB3-10772] - trigger_error is using the default style
+- [PHPBB3-10789] - PM print template (prosilver) with unnecessary variables
+- [PHPBB3-10820] - Display images directly in IE9 and 10 instead of download
+- [PHPBB3-10828] - PostgreSQL dbal tests try to connect to the database named as user specified in configuration
+- [PHPBB3-10838] - Functional tests are not mentioned in RUNNING_TESTS.txt
+- [PHPBB3-10840] - If you add a member to a group, the form_token can be set to 0 if the creation_time is 0 too. Maybe even if creation_time is unchanged.
+- [PHPBB3-10848] - Wrong redirect to installer from acp
+- [PHPBB3-10850] - create_schema_files.php is not creating the oracle or postgres' schema file properly
+- [PHPBB3-10879] - prosilver: attachment-link will be displayed wrong, when filename is too long
+- [PHPBB3-10880] - m_approve should not imply f_noapprove
+- [PHPBB3-10896] - board_email & board_contact are not validated as email addresses in ACP
+- [PHPBB3-10897] - Bot Definitions are outdated
+- [PHPBB3-10918] - docs/INSTALL.html claims there are tar.gz packages
+- [PHPBB3-10943] - Search Box should display keywords entered by the user
+- [PHPBB3-10967] - PHPBB_USE_BOARD_URL_PATH not implemented in posting_gen_topic_icons
+- [PHPBB3-10986] - Invalid email message ids because config variable server_name is used even when force server URL settings is disabled
+- [PHPBB3-10995] - Return value of $db->sql_fetchrow() on empty tables is not consistent on mssqlnative
+- [PHPBB3-10996] - Travis tests fail on Postgres because database does not exist
+- [PHPBB3-11034] - The functional test case framework does not install a full board each time
+- [PHPBB3-11066] - MSSQLnative driver contains debug code error_reporting(E_ALL)
+- [PHPBB3-11069] - missing closing span in subsilver2 simple_footer.html
+- [PHPBB3-11081] - Duplicated /TD in styles/subsilver2/template/catpcha_qa.html
+- [PHPBB3-11093] - acp_users_overview.html has a wrongly placed </dd>
+- [PHPBB3-11094] - prosilver: searching for users: no textbox for Jabber
+- [PHPBB3-11105] - Missing mandatory space in meta http-equiv=refresh
+- [PHPBB3-11112] - phpBB Footer Link should be SSL
+- [PHPBB3-11122] - Update docs/AUTHORS for 3.0.12-RC1
+- [PHPBB3-11144] - {FORUM_NAME} is not filled in login mask when logging into a password protected forum
+- [PHPBB3-11145] - ATTACHED_IMAGE_NOT_IMAGE thrown because of file limit in php.ini
+- [PHPBB3-11158] - modules table lacks acl_u_sig for signature module
+- [PHPBB3-11159] - Coding guidelines: static public
+- [PHPBB3-11164] - Composer not finding symfony/config in PHP 5.3.3
+- [PHPBB3-11178] - database_update.php should not set error_reporting to E_ALL
+- [PHPBB3-11186] - Database unit tests fail on windows using sqlite2
+- [PHPBB3-11190] - Functional tests do not clear the cache between each test
+- [PHPBB3-11196] - /includes/session.php sends 401 HTTP status with "Not authorized" instead of "Unauthorized"
+- [PHPBB3-11219] - Database sequences are not updated for tests using fixtures with auto_incremented columns
+- [PHPBB3-11227] - @return void -> @return null
+- [PHPBB3-11233] - Anonymous can be selected as a PM recipient
+- [PHPBB3-11248] - CRLF line endings
+- [PHPBB3-11262] - .lock files are not in .gitignore
+- [PHPBB3-11265] - Functional tests do not assert that board installation succeeded
+- [PHPBB3-11269] - Travis functional test case errors
+- [PHPBB3-11278] - Firebird tables are not removed correctly on 3.0.9-rc1 update
+- [PHPBB3-11291] - "Could not open input file: ../composer.phar" error during phing's create-package
+- [PHPBB3-11292] - Newlines removed in display of PM reports, no clickable links in PM reports
+- [PHPBB3-11301] - "String offset cast occured" error on PHP 5.4
+- [PHPBB3-11304] - check_form_key breaks in tests when form is submitted in the same second it is retrieved
+- [PHPBB3-11343] - Loose string comparison during new password activation
+- [PHPBB3-11355] - Incorrect error message when no user selected for action on group membership management page
+- [PHPBB3-11358] - Success message even withot selecting a user and performing a group operation
+- [PHPBB3-11361] - "Array to string conversion" error in $user->format_date()
+- [PHPBB3-11493] - Functional tests should fail if any debug output is made
+- [PHPBB3-11517] - Numbering is wrong in coding guidelines
+- [PHPBB3-11536] - Installer incorrectly removes /install from script_path
+- [PHPBB3-11537] - UCP group manage page's error box differs heavily from the rest of the UCP
+- [PHPBB3-11538] - SQL error on UCP groups manage page caused by setting color to 7 characters long string
+- [PHPBB3-11544] - Add admin_login() to 3.0 functional test case
+- [PHPBB3-11545] - is_absolute() should not depend on DIRECTORY_SEPARATOR
+- [PHPBB3-11546] - is_absolute() throws E_NOTICE for empty string
+- [PHPBB3-11547] - Test fixtures do not support utf8 characters
+- [PHPBB3-11548] - Untranslated TOO_SHORT in UCP "Manage Groups"
+- [PHPBB3-11566] - Reporting a post should require a captcha to be solved by guests
+- [PHPBB3-11568] - Functional tests fail with retrieving install pages using file_get_contents
+- [PHPBB3-11575] - phpbb_dbal_order_lower_test::test_cross_join should be called test_order_lower
+- [PHPBB3-11578] - Missing underscore after function prefix in validate_data()
+- [PHPBB3-11579] - Add unit tests for validate_data()
+- [PHPBB3-11580] - Avoid API Limit from composer downloads on github
+- [PHPBB3-11588] - install/install_update.php should use version.phpbb.com instead of www
+- [PHPBB3-11590] - Close database connections from tests whenever possible
+- [PHPBB3-11601] - Allow manual resync of database columns in unit tests not only on fixture load
+- [PHPBB3-11603] - git-tools use invalid api urls
+- [PHPBB3-11604] - Functional tests fail when phpBB can not create the config file
+- [PHPBB3-11617] - Missing U_ACTION in acp_captcha.php
+- [PHPBB3-11618] - Template tests fail on some systems due to a PHP error in glob()
+- [PHPBB3-11619] - get_remote_file() should use HTTP 1.0
+- [PHPBB3-11630] - Improvements to the PHP lint pre-commit hook
+- [PHPBB3-11644] - Skip phpbb_dbal_order_lower_test on MySQL 5.6
+- [PHPBB3-11662] - "occured" should be "occurred"
+- [PHPBB3-11670] - Replace trademark ™ with ® on "Welcome to phpBB" install page
+- [PHPBB3-11674] - Do not include vendor folder if there are no dependencies.
+- [PHPBB3-11524] - MySQL Upgrader throws warnings on PHP 5.4
+- [PHPBB3-11720] - Reporting posts leads to white page error
+- [PHPBB3-11769] - Wrong poster in subscription email when poster is using the Quote button
+- [PHPBB3-11775] - Error while moving posts to a new topic
+- [PHPBB3-11802] - Undefined variable $browser in /download/file.php
+
+
Improvement
+
+- [PHPBB3-8743] - New topic / reply notifications do not contain author's name.
+- [PHPBB3-10050] - subsilver2: Do not show "Mark topics as read" when there are no topics
+- [PHPBB3-10205] - More informative reporting of errors when database connection fails (MySQL and others)
+- [PHPBB3-10716] - PHP-parse all php files as part of the test suite
+- [PHPBB3-10841] - Disable style and language selectors if there's only one installed.
+- [PHPBB3-10854] - sql server drop default constraint when dropping column
+- [PHPBB3-10865] - Updated and Added to docs/INSTALL.html
+- [PHPBB3-10873] - Change language entry for deleted PMs
+- [PHPBB3-10981] - Upgrade Goutte and use Composer for Installation
+- [PHPBB3-11131] - Phrasing & semantics of Board settings
+- [PHPBB3-11162] - Get rid of $db->sql_return_on_error(true) trickery when splitting/merging topics
+- [PHPBB3-11192] - Add Tebibyte to get_formatted_filesize()
+- [PHPBB3-11202] - Add response status checks to functional tests
+- [PHPBB3-11220] - Improve tooltip explaining the [list=] - BBcode
+- [PHPBB3-11238] - Specify goutte version
+- [PHPBB3-11285] - Use more granularity in dependency checks in compress test
+- [PHPBB3-11293] - Prefer mysqli over mysql due to php 5.5 alpha 2 deprecating mysql
+- [PHPBB3-11294] - Update extension list in running tests doc
+- [PHPBB3-11368] - Latest pm reports row count
+- [PHPBB3-11583] - InnoDB supports FULLTEXT index since MySQL 5.6.4.
+- [PHPBB3-11740] - Update link in FAQ to Ideas Centre
+- [PHPBB3-11873] - Prevent expensive hash computation in phpbb_check_hash() by rejecting very long passwords
+
+
Sub-task
+
+- [PHPBB3-10974] - Move tests/mock_user.php to tests/mock/user.php
+- [PHPBB3-11009] - Backport phing build.xml from develop to develop-olympus so it uses composer.
+- [PHPBB3-11540] - Add unit tests for (phpbb_)is_absolute()
+- [PHPBB3-11541] - Add unit tests for style_select() in functions.php
+- [PHPBB3-11542] - Add unit tests for language_select() in functions.php
+- [PHPBB3-11543] - Add unit tests for obtain online functions in functions.php
+
+
Task
+
+- [PHPBB3-10877] - Have bamboo generate and publish a phpBB package for every build.
+- [PHPBB3-11045] - Add unit tests for the compress class
+- [PHPBB3-11059] - Fix README logo
+- [PHPBB3-11060] - Fix travis.yml pyrus config
+- [PHPBB3-11240] - Turn on PHPUnit's verbose mode on Travis
+- [PHPBB3-11324] - Add PHP 5.5 environment on Travis-CI
+- [PHPBB3-11337] - Run functional tests on Travis CI
+- [PHPBB3-11513] - Install PHPUnit via Composer's require-dev to simplify test running (no need for pear)
+- [PHPBB3-11526] - Increase composer minimum-stability from beta to stable
+- [PHPBB3-11527] - Upgrade composer.phar to 1.0.0-alpha7
+- [PHPBB3-11529] - Rename RUNNING_TESTS file to .md file to render it on GitHub
+- [PHPBB3-11576] - Make phpBB Test Suite MySQL behave at least as strict as phpBB MySQL driver
+- [PHPBB3-11671] - Add phing/phing to composer.json
+- [PHPBB3-11752] - Update phpBB.com URLs to https in email templates
+- [PHPBB3-11753] - Upgrade mysql_upgrader.php schema data.
+
+
+
1.ii. Changes since 3.0.10
Bug
@@ -217,7 +373,7 @@
- [PHPBB3-10909] - Update Travis Test Configuration: Travis no longer supports PHP 5.3.2
-
1.ii. Changes since 3.0.9
+
1.iii. Changes since 3.0.9
Bug
@@ -353,7 +509,7 @@
- [PHPBB3-10480] - Automate changelog building
-
1.iii. Changes since 3.0.8
+
1.iv. Changes since 3.0.8
Bug
@@ -721,7 +877,7 @@
-
1.iv. Changes since 3.0.7-PL1
+
1.v. Changes since 3.0.7-PL1
Security
-
1.iv. Changes since 3.0.7
+
1.vi. Changes since 3.0.7
- [Sec] Do not expose forum content of forums with ACL entries but no actual permission in ATOM Feeds. (Bug #58595)
-
1.vi. Changes since 3.0.6
+
1.vii. Changes since 3.0.6
- [Fix] Allow ban reason and length to be selected and copied in ACP and subsilver2 MCP. (Bug #51095)
@@ -1289,7 +1445,7 @@
-
1.vii. Changes since 3.0.5
+
1.viii. Changes since 3.0.5
- [Fix] Allow whitespaces in avatar gallery names. (Bug #44955)
@@ -1511,7 +1667,7 @@
- [Feature] Send anonymous statistical information to phpBB on installation and update (optional).
-
1.viii. Changes since 3.0.4
+
1.ix. Changes since 3.0.4
- [Fix] Delete user entry from ban list table upon user deletion (Bug #40015 - Patch by TerraFrost)
@@ -1600,7 +1756,7 @@
- [Sec] Only use forum id supplied for posting if global announcement detected. (Reported by nickvergessen)
-
1.ix. Changes since 3.0.3
+
1.x. Changes since 3.0.3
- [Fix] Allow mixed-case template directories to be inherited (Bug #36725)
@@ -1632,7 +1788,7 @@
- [Sec] Ask for forum password if post within passworded forum quoted in private message. (Reported by nickvergessen)
-
1.x. Changes since 3.0.2
+
1.xi. Changes since 3.0.2
- [Fix] Correctly set topic starter if first post in topic removed (Bug #30575 - Patch by blueray2048)
@@ -1731,7 +1887,7 @@
- [Sec Precaution] Stricter validation of the HTTP_HOST header (Thanks to Techie-Micheal et al for pointing out possible issues in derived code)
-
1.xi. Changes since 3.0.1
+
1.xii. Changes since 3.0.1
- [Fix] Ability to set permissions on non-mysql dbms (Bug #24955)
@@ -1779,7 +1935,7 @@
- [Sec] Only allow urls gone through redirect() being used within login_box(). (thanks nookieman)
-
1.xii Changes since 3.0.0
+
1.xiii Changes since 3.0.0
- [Change] Validate birthdays (Bug #15004)
@@ -1850,7 +2006,7 @@
- [Fix] Find and display colliding usernames correctly when converting from one database to another (Bug #23925)
-
1.xiii. Changes since 3.0.RC8
+
1.xiv. Changes since 3.0.RC8
- [Fix] Cleaned usernames contain only single spaces, so "a_name" and "a__name" are treated as the same name (Bug #15634)
@@ -1859,7 +2015,7 @@
- [Fix] Call garbage_collection() within database updater to correctly close connections (affects Oracle for example)
-
1.xiv. Changes since 3.0.RC7
+
1.xv. Changes since 3.0.RC7
- [Fix] Fixed MSSQL related bug in the update system
@@ -1894,7 +2050,7 @@
- [Fix] No duplication of active topics (Bug #15474)
-
1.xv. Changes since 3.0.RC6
+
1.xvi. Changes since 3.0.RC6
- [Fix] Submitting language changes using acp_language (Bug #14736)
@@ -1904,7 +2060,7 @@
- [Fix] Able to request new password (Bug #14743)
-
1.xvi. Changes since 3.0.RC5
+
1.xvii. Changes since 3.0.RC5
- [Feature] Removing constant PHPBB_EMBEDDED in favor of using an exit_handler(); the constant was meant to achive this more or less.
@@ -1967,7 +2123,7 @@
- [Sec] New password hashing mechanism for storing passwords (#i42)
-
1.xvii. Changes since 3.0.RC4
+
1.xviii. Changes since 3.0.RC4
- [Fix] MySQL, PostgreSQL and SQLite related database fixes (Bug #13862)
@@ -2018,7 +2174,7 @@
- [Fix] odbc_autocommit causing existing result sets to be dropped (Bug #14182)
-
1.xviii. Changes since 3.0.RC3
+
1.xix. Changes since 3.0.RC3
- [Fix] Fixing some subsilver2 and prosilver style issues
@@ -2127,7 +2283,7 @@
-
1.xviv. Changes since 3.0.RC2
+
1.xx. Changes since 3.0.RC2
- [Fix] Re-allow searching within the memberlist
@@ -2173,7 +2329,7 @@
-
1.xx. Changes since 3.0.RC1
+
1.xxi. Changes since 3.0.RC1
- [Fix] (X)HTML issues within the templates (Bug #11255, #11255)
@@ -2308,7 +2464,7 @@
-
This application is opensource software released under the GNU General Public License v2. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) phpBB Group, All Rights Reserved.
+
This application is opensource software released under the GNU General Public License v2. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) phpBB Group, All Rights Reserved.
diff --git a/phpBB/docs/FAQ.html b/phpBB/docs/FAQ.html
index dbcefc44c1..9b6440ab21 100644
--- a/phpBB/docs/FAQ.html
+++ b/phpBB/docs/FAQ.html
@@ -89,7 +89,7 @@
There are people, companies (unrelated to your hosting provider), etc. that will install your forum, either for free or for a payment. We do not recommend you make use of these offers. Unless the service is provided by your hosting company you will have to divulge passwords and other sensitive details. If you did not know how to use an ATM would you give a passer-by your bank card and PIN and ask them to show you what to do? No, probably not! The same applies to your hosting account details!
-We think a better solution is for you to carefully read the enclosed documentation, read through our knowledge base at www.phpbb.com and if necessary ask for help on any thing you get stuck on. However, the decision is yours but please note we may not offer support if we believe you have had the board installed by a third party. In such cases you should direct your questions to that company or person/s.
+We think a better solution is for you to carefully read the enclosed documentation, read through our knowledge base at www.phpbb.com and if necessary ask for help on any thing you get stuck on. However, the decision is yours but please note we may not offer support if we believe you have had the board installed by a third party. In such cases you should direct your questions to that company or person/s.
@@ -150,7 +150,7 @@ I want to sue you because i think you host an illegal board!
-
This error will occur if phpBB cannot send mail. phpBB can send email two ways; using the PHP mail()
function or directly via SMTP. Some hosting providers limit the mail()
function to prevent its use in spamming, others may rename it or limit its functionality. If the mail()
function got renamed, you are able to enter the correct name within the administration control panel. In either case you may need to make use of SMTP. This requires that you have access to such a facility, e.g. your hosting provider may provide one (perhaps requiring specific written authorisation), etc. Please see www.phpbb.com for additional help on this matter.
+
This error will occur if phpBB cannot send mail. phpBB can send email two ways; using the PHP mail()
function or directly via SMTP. Some hosting providers limit the mail()
function to prevent its use in spamming, others may rename it or limit its functionality. If the mail()
function got renamed, you are able to enter the correct name within the administration control panel. In either case you may need to make use of SMTP. This requires that you have access to such a facility, e.g. your hosting provider may provide one (perhaps requiring specific written authorisation), etc. Please see www.phpbb.com for additional help on this matter.
If you do require SMTP services please do not ask (on our forums or elsewhere) for someone to provide you with one. Open relays are now things of the past thanks to the unthinking spammers out there. Therefore you are unlikely to find someone willing to offer you (free) services.
@@ -250,7 +250,7 @@ I want to sue you because i think you host an illegal board!
-
Please read the paragraph about permissions in our extensive online documentation.
+
Please read the paragraph about permissions in our extensive online documentation.
@@ -306,11 +306,11 @@ I want to sue you because i think you host an illegal board!
-
Please read our extensive user documentation first, it may just explain what you want to know.
+
Please read our extensive user documentation first, it may just explain what you want to know.
Feel free to search our community forum for the information you require. PLEASE DO NOT post your question without having first used search, chances are someone has already asked and answered your question. You can find our board here:
-
www.phpbb.com
+
www.phpbb.com
@@ -328,7 +328,7 @@ I want to sue you because i think you host an illegal board!
-
This application is opensource software released under the GNU General Public License v2. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) phpBB Group, All Rights Reserved.
+
This application is opensource software released under the GNU General Public License v2. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) phpBB Group, All Rights Reserved.
diff --git a/phpBB/docs/INSTALL.html b/phpBB/docs/INSTALL.html
index cca5e83149..3fa0597fc8 100644
--- a/phpBB/docs/INSTALL.html
+++ b/phpBB/docs/INSTALL.html
@@ -46,7 +46,7 @@
This document will walk you through the basics on installing, updating and converting the forum software.
-
A basic overview of running phpBB3 can be found in the accompanying README file. Please ensure you read that document in addition to this! For more detailed information on using, installing, updating and converting phpBB3 you should read the documentation available online.
+
A basic overview of running phpBB3 can be found in the accompanying README file. Please ensure you read that document in addition to this! For more detailed information on using, installing, updating and converting phpBB3 you should read the documentation available online.
Install
@@ -62,7 +62,7 @@
- Updating from stable releases of phpBB 3.0.x
- Full package
- - Changed files only
+ - Changed files
- Patch file
- Automatic update package
- All package types
@@ -82,6 +82,7 @@
- Webserver configuration
+
- Anti-Spam Measures
- Copyright and disclaimer
@@ -107,10 +108,10 @@
- Change the permissions on config.php to be writable by all (666 or -rw-rw-rw- within your FTP Client)
- Change the permissions on the following directories to be writable by all (777 or -rwxrwxrwx within your FTP Client):
store/
, cache/
, files/
and images/avatars/upload/
.
-
- Using your web browser visit the location you placed phpBB3 with the addition of install/index.php or pointing directly to install/, e.g. http://www.mydomain.com/phpBB3/install/, http://www.mydomain.com/forum/install/ etc.
-
- Click the INSTALL tab, follow the steps and fill out all the requested information.
+
- Point your web browser to the location where you uploaded the phpBB3 files with the addition of
install/index.php
or simply install/
, e.g. http://www.example.com/phpBB3/install/index.php
, http://www.example.com/forum/install/
.
+
- Click the INSTALL tab, follow the steps and fill out all the requested information.
- Change the permissions on config.php to be writable only by yourself (644 or -rw-r--r-- within your FTP Client)
-
- phpBB3 should now be available, please MAKE SURE you read at least Section 6 below for important, security related post-installation instructions.
+
- phpBB3 should now be available, please MAKE SURE you read at least Section 6 below for important, security related post-installation instructions, and also take note of Section 7 regarding anti-spam measures.
If you experienced problems or do not know how to proceed with any of the steps above please read the rest of this document.
@@ -131,7 +132,7 @@
-
phpBB3 has a few requirements which must be met before you are able to install and use it.
+
phpBB 3.0.x has a few requirements which must be met before you are able to install and use it.
- A webserver or web hosting account running on any major Operating System with support for PHP
@@ -145,8 +146,8 @@
- Oracle
-
- PHP 4.3.3+ (>=4.3.3, >=4.4.x, >=5.x.x, >=5.4.x) with support for the database you intend to use.
-
- getimagesize() function need to be enabled.
+
- PHP (>=4.3.3, >=4.4.0, >=5.0.0) with support for the database you intend to use.
+
- getimagesize() function must be enabled.
- Presence of the following modules within PHP will provide access to additional features, but they are not required:
- zlib Compression support
@@ -158,7 +159,7 @@
-
If your server or hosting account does not meet the requirements above we are afraid phpBB3 is not for you.
+
If your server or hosting account does not meet the requirements above then you will be unable to install phpBB 3.0.x.
@@ -178,21 +179,21 @@
Installation of phpBB3 will vary according to your server and database. If you have shell access to your account (via telnet or ssh for example) you may want to upload the entire phpBB3 archive (in binary mode!) to a directory on your host and unarchive it there.
-
If you do not have shell access or do not wish to use it you will need to decompress the phpBB3 archive to a local directory on your system using your favourite compression program, e.g. winzip, rar, zip, etc. From there you must FTP ALL the files it contains (being sure to retain the directory structure and filenames) to your host. Please ensure that the cases of filenames are retained, do NOT force filenames to all lower or upper case doing so will cause errors later.
+
If you do not have shell access or do not wish to use it, you will need to decompress the phpBB3 archive to a local directory on your system using your favourite compression program, e.g. winzip, rar, zip, etc. From there you must FTP ALL the files it contains (being sure to retain the directory structure and filenames) to your host. Please ensure that the cases of filenames are retained, do NOT force filenames to all lower or upper case as doing so will cause errors later.
-
All .php, .inc, .sql, .cfg, .html and .txt files should be uploaded in ASCII mode, while all graphics should be uploaded in BINARY mode. If you are unfamiliar with what this means please refer to your FTP client documentation. In most cases this is all handled transparantly by your ftp client but if you encounter problems later you should be sure the files where uploaded correctly as described here.
+
All .php, .sql, .cfg, .css, .js, .html, .htaccess and .txt files should be uploaded in ASCII mode, while all graphics should be uploaded in BINARY mode. If you are unfamiliar with what this means please refer to your FTP client documentation. In most cases this is all handled transparantly by your ftp client, but if you encounter problems later you should be sure the files were uploaded correctly as described here.
-
phpBB3 comes supplied with British English as its standard language. However a number of separate packs for different languages are available. If you are not a native English speaker you may wish to install one or more of these packages before continuing. The installation process below will allow you to select a default language from those available (you can of course change this default at a later stage). For more details of language packs, where to obtain them and how to install them please see the README.
+
phpBB3 comes supplied with British English as its standard language. However, a number of separate packs for different languages are available. If you are not a native English speaker you may wish to install one or more of these packages before continuing. The installation process below will allow you to select a default language from those available (you can, of course, change this default at a later stage). For more details on language packs, where to obtain them and how to install them please see the README.
-
Once all the files have been uploaded to your site you should point your browser at this location with the addition of install/
. For example if your domain name is www.mydomain.tld and you placed phpBB3 in a directory /phpBB3 off your web root you would enter http://www.mydomain.tld/phpBB3/install/ or (alternatively) http://www.mydomain.tld/phpBB3/install/index.php into your browser. When you have done this you should see the phpBB3 Installation screen appear.
+
Once all the files have been uploaded to your site, you should point your browser at this location with the addition of /install/
. For example, if your domain name is www.example.com
and you placed the phpBB3 files in the directory /phpBB3
off your web root you would enter http://www.example.com/phpBB3/install/
or (alternatively) http://www.example.com/phpBB3/install/index.php
into your browser. When you have done this, you should see the phpBB3 Introduction screen appear.
Introduction:
-
The installation screen gives you a short introduction into phpBB. It allows you to read the license phpBB3 is released under (General Public License) and provides information about how you can receive support. To start the installation, use the Install button.
+
The initial screen gives you a short introduction into phpBB. It allows you to read the license phpBB3 is released under (General Public License v2) and provides information about how you can receive support. To start the installation, use the INSTALL tab.
Requirements
-
The first page you will see after starting the installation is the Requirements list. phpBB3 checks automatically whether everything that it needs to run properly is installed on your server. You need to have at least the minimum PHP version installed, and at least one database available to continue the installation. Also important, is that all shown folders are available and do have the correct permissions. Please see the description of each section to find out whether they are optional or required for phpBB3 to run. If everything is in order, you can continue the installation with Start Install.
+
The first page you will see after starting the installation is the Requirements list. phpBB3 automatically checks whether everything that it needs to run properly is installed on your server. You need to have at least the minimum PHP version installed, and at least one database available to continue the installation. Also important, is that all shown folders are available and have the correct permissions. Please see the description of each section to find out whether they are optional or required for phpBB3 to run. If everything is in order, you can continue the installation with Start Install.
Database settings
@@ -210,33 +211,33 @@
Note: if you are installing using SQLite, you should enter the full path to your database file in the DSN field and leave the username and password fields blank. For security reasons, you should make sure that the database file is not stored in a location accessible from the web.
- You don't need to change the Prefix for tables in database setting, unless you plan on using multipe phpBB installations on one database. In this case you can use a different prefix for each installation to make it work.
+ You don't need to change the Prefix for tables in database setting, unless you plan on using multipe phpBB installations on one database. In this case, you can use a different prefix for each installation to make it work.
- After you entered your details, you can continue with the Proceed to next step button. Now phpBB3 will check whether the data you entered will lead to a successful database connection and whether tables with the same prefix already exist.
+ After you entered your details, you can continue with the Proceed to next step button. Now phpBB3 will check whether the data you entered will lead to a successful database connection and whether tables with the same prefix already exist.
A Could not connect to the database error means that you didn't enter the database data correctly and it is not possible for phpBB to connect. Make sure that everything you entered is in order and try again. Again, if you are unsure about your database settings, please contact your host.
If you installed another version of phpBB before on the same database with the same prefix, phpBB will inform you and you just need to enter a different database prefix.
- If you see the Successful Connection message, you can continue to the next step.
+ If you see the Successful Connection message, you can continue to the next step.
Administrator details
- Now you have to create your administration user. This user will have full administration access and he/she will be the first user on your forum. All fields on this page are required. You can also set the default language of your forum on this page. In a vanilla phpBB3 installation we only include English. You can download further languages from www.phpbb.com, and add them before installing or later.
+ Now you have to create your administration user. This user will have full administration access and he/she will be the first user on your forum. All fields on this page are required. You can also set the default language of your forum on this page. In a vanilla phpBB3 installation, we only include British English. You can download further languages from www.phpbb.com, and add them before installing or later.
Configuration file
- In this step, phpBB will try to write the configuration file automatically. The forum needs the configuration to run properly. It contains all database settings, so without it, phpBB will not be able to access the database.
+ In this step, phpBB will try to write the configuration file automatically. The forum needs the configuration file in order to operate. It contains all the database settings, so without it, phpBB will not be able to access the database.
- Usually writing the configuration file automatically works fine. But in some cases it can fail due to wrong file permissions, for instance. In this case, you need to upload the file manually. phpBB asks you to download the config.php file and tells you what to do with it. Please read the instructions carefully. After you have uploaded the file, use Done to get to the last step. If Done returns you to the same page as before, and does not return a success message, you did not upload the file correctly.
+ Usually, writing the configuration file automatically works fine. If the file permissions are not set correctly, this process can fail. In this case, you need to upload the file manually. phpBB asks you to download the config.php
file and tells you what to do with it. Please read the instructions carefully. After you have uploaded the file, use Done to get to the last step. If Done returns you to the same page as before, and does not return a success message, you did not upload the file correctly.
Advanced settings
- The Advanced settings allow you to set some parameters of the board configuration. They are optional, and you can always change them later. So if you are not sure what these settings mean, proceed to the final step and finish the installation.
+ The Advanced settings allow you to set additional parameters of the board configuration. They are optional and you can always change them later. So, even if you are not sure what these settings mean, you can still proceed to the final step and finish the installation.
- If the installation was successful, you can now use the Login button to visit the Administration Control Panel. Congratulations, you have installed phpBB3 successfully. But there is still work ahead!
+ If the installation was successful, you can now use the Login button to visit the Administration Control Panel. Congratulations, you have installed phpBB successfully. But there is still work ahead!
- If you are unable to get phpBB3 installed even after reading this guide, please look at the support section to find out where you can ask for further assistance.
+ If you are unable to get phpBB3 installed even after reading this guide, please look at the support section of the installer's introduction page to find out where you can ask for further assistance.
At this point if you are converting from phpBB 2.0.x, you should refer to the conversion steps for further information. If not, you should remove the install directory from your server as you will only be able to access the Administration Control Panel whilst it is present.
@@ -256,55 +257,55 @@
-
If you are currently using a stable release of phpBB3 updating to this version is straightforward. You would have downloaded one of four packages and your choice determines what you need to do. Please Note: That before updating we heavily recommend you do a full backup of your database and existing phpBB3 files! If you are unsure how to achieve this please ask your hosting provider for advice.
+
If you are currently using a stable release of phpBB3, updating to this version is straightforward. You would have downloaded one of four packages and your choice determines what you need to do. Note: Before updating, we heavily recommend you do a full backup of your database and existing phpBB3 files! If you are unsure how to achieve this please ask your hosting provider for advice.
Please make sure you update your phpBB3 source files too, even if you run the database_update.php
file.
4.i. Full package
-
The full package is normally meant for new installations only, but if you want to replace all source files this package comes in handy.
+
The full package is normally meant for new installations only, but if you want to replace all source files, this package comes in handy.
-
First you should make a copy of your existing config.php file, keep it in a safe place! Next delete all the existing phpBB3 files, you may want to leave your files/
and images/
directory in place. You can leave alternative styles in-place too. With this complete you can upload the new phpBB3 files (see New installation for details if necessary). Once complete copy back your saved config.php, replacing the new one. Another method is to just replace the existing files with the files from the full package - though make sure you do not overwrite your config.php file.
+
First, you should make a copy of your existing config.php
file; keep it in a safe place! Next, delete all the existing phpBB3 files, you may want to leave your files/
and images/
directorie in place. You can leave alternative styles in place too. With this complete, you can upload the new phpBB files (see New installation for details if necessary). Once complete, copy back your saved config.php
, replacing the new one. Another method is to just replace the existing files with the files from the full package - though make sure you do not overwrite your config.php file.
-
You should now run install/database_update.php
which, depending on your previous version, will make a number of database changes. You may receive FAILURES during this procedure, they should not be a cause for concern unless you see an actual ERROR, in which case the script will stop (in this case you should seek help via our forums or bug tracker).
+
You should now run install/database_update.php
which, depending on your previous version, will make a number of database changes. You may receive FAILURES during this procedure. They should not be a cause for concern unless you see an actual ERROR, in which case the script will stop (in this case you should seek help via our forums or bug tracker).
-
Once the install/database_update.php has completed you may proceed to the Administration Control Panel and check remove the install directory as advised.
+
Once install/database_update.php
has completed, you may proceed to the Administration Control Panel and then remove the install directory as advised.
-
4.ii. Changed files only
+
4.ii. Changed files
-
This package is meant for those wanting to only replace changed files from a previous version to the latest version. This package normally contains the changed files from up to five previous versions.
+
This package is meant for those wanting to only replace the files that were changed between a previous version and the latest version.
-
This package contains a number of archives, each contains the files changed from a given release to the latest version. You should select the appropriate archive for your current version, e.g. if you currently have 3.0.10 you should select the phpBB-3.0.10_to_3.0.11.zip/tar.gz file.
+
This package contains a number of archives, each contains the files changed from a given release to the latest version. You should select the appropriate archive for your current version, e.g. if you currently have 3.0.11 you should select the appropriate phpBB-3.0.12-files.zip/tar.bz2
file.
-
The directory structure has been preserved enabling you (if you wish) to simply upload the contents of the archive to the appropriate location on your server, i.e. simply overwrite the existing files with the new versions. Do not forget that if you have installed any MODs these files will overwrite the originals possibly destroying them in the process. You will need to re-add MODs to any affected file before uploading.
+
The directory structure has been preserved, enabling you (if you wish) to simply upload the uncompressed contents of the archive to the appropriate location on your server, i.e. simply overwrite the existing files with the new versions. Do not forget that if you have installed any modifications (MODs) these files will overwrite the originals, possibly destroying them in the process. You will need to re-add MODs to any affected file before uploading.
-
As for the other update procedures you should run install/database_update.php after you have finished updating the files. This will update your database schema and increment the version number.
+
As for the other update procedures, you should run install/database_update.php
after you have finished updating the files. This will update your database schema and increment the version number.
4.iii. Patch file
-
The patch file package is for those wanting to update through the patch application, and being comfortable with it.
+
The patch file package is for those wanting to update through the patch application, and should only be used by those who are comfortable with it.
-
The patch file is one solution for those with many Modifications (MODs) or other changes who do not want to re-add them back to all the changed files if they use the method explained above. To use this you will need command line access to a standard UNIX type patch application. If you do not have access to such an application but still want to use this update approach, we strongly recommend the Automatic update package explained below. It is also the recommended update method.
+
The patch file is one solution for those with many Modifications (MODs) or other changes and do not want to re-add them back to all the changed files. To use this you will need command line access to a standard UNIX type patch application. If you do not have access to such an application, but still want to use this update approach, we strongly recommend the Automatic update package explained below. It is also the recommended update method.
-
A number of patch files are provided to allow you to update from previous stable releases. Select the correct patch, e.g. if your current version is 3.0.10 you need the phpBB-3.0.10_to_3.0.11.patch file. Place the correct patch in the parent directory containing the phpBB3 core files (i.e. index.php, viewforum.php, etc.). With this done you should run the following command: patch -cl -d [PHPBB DIRECTORY] -p1 < [PATCH NAME] (where PHPBB DIRECTORY is the directory name your phpBB Installation resides in, for example phpBB3, and where PATCH NAME is the relevant filename of the selected patch file). This should complete quickly, hopefully without any HUNK FAILED comments.
+
A number of patch files are provided to allow you to update from previous stable releases. Select the correct patch, e.g. if your current version is 3.0.11, you need the phpBB-3.0.12-patch.zip/tar.bz2
file. Place the correct patch in the parent directory containing the phpBB core files (i.e. index.php, viewforum.php, etc.). With this done you should run the following command: patch -cl -d [PHPBB DIRECTORY] -p1 < [PATCH NAME]
(where PHPBB DIRECTORY is the directory name your phpBB Installation resides in, for example phpBB, and where PATCH NAME is the relevant filename of the selected patch file). This should complete quickly, hopefully without any HUNK FAILED comments.
-
If you do get failures you should look at using the Changed files only package to replace the files which failed to patch, please note that you will need to manually re-add any Modifications (MODs) to these particular files. Alternatively if you know how you can examine the .rej files to determine what failed where and make manual adjustments to the relevant source.
+
If you do get failures, you should look at using the Changed Files package to replace the files which failed to patch. Please note that you will need to manually re-add any MODs to these particular files. Alternatively, if you know how, you can examine the .rej files to determine what failed where and make manual adjustments to the relevant source.
-
You should of course delete the patch file (or files) after use. As for the other update procedures you should run install/database_update.php
after you have finished updating the files. This will update your database schema and data (if appropriate) and increment the version number.
+
You should, of course, delete the patch file (or files) after use. As for the other update procedures, you should run install/database_update.php
after you have finished updating the files. This will update your database schema and data (if appropriate) and increment the version number.
4.iv. Automatic update package
-
This update method is the recommended method for updating. This package allows detecting changed files automatically and merges changes if needed.
+
This update method is the recommended method for updating. This package detects changed files automatically and merges in changes if needed.
-
The automatic update package contains - contrary to the others - only the information required to update the previous release version to the latest available version. These packages are meant for use with the automatic update tool.
+
The automatic update package will update the board from a given version to the latest version. A number of automatic update files are available, and you should choose the one that corresponds to the version of the board that you are currently running. For example, if your current version is 3.0.11, you need the phpBB-3.0.11_to_3.0.12.zip/tar.bz2
file.
-
To perform the update, either follow the instructions from the Administration Control Panel->System
Tab - this should point out that you are running an outdated version and will guide you through the update - or follow the instructions listed below.
+
To perform the update, either follow the instructions from the Administration Control Panel->System Tab - this should point out that you are running an outdated version and will guide you through the update - or follow the instructions listed below.
- - Go to the downloads page and download the latest update package listed there, matching your current version.
- - Upload the archives contents to your phpBB installation - only the install folder is required. Upload the whole install folder, retaining the file structure.
+ - Go to the downloads page and download the latest update package listed there, matching your current version.
+ - Upload the uncompressed archive contents to your phpBB installation - only the install folder is required. Upload the whole install folder, retaining the file structure.
- After the install folder is present, phpBB3 will go offline automatically.
- - Point your browser to the install directory, for example http://www.example.com/phpBB3/install/
+ - Point your browser to the install directory, for example
http://www.example.com/phpBB3/install/
- Choose the "Update" Tab and follow the instructions
@@ -312,7 +313,9 @@
4.v. All package types
-
If you have non-English language packs installed you may want to see if a new version has been made available. A number of missing strings may have been added which, though not essential, may be beneficial to users. Please note that at this time not all language packs have been updated so you should be prepared to periodically check for updates.
+
If you have non-English language packs installed, you may want to see if a new version has been made available. A number of missing strings may have been added which, though not essential, may be beneficial to users. Please note that at this time not all language packs have been updated so you should be prepared to periodically check for updates.
+
+
These update methods will only update the standard styles, prosilver
and subsilver2
, any other styles you have installed for your board will usually also need to be updated.
@@ -334,47 +337,47 @@
5.i. Requirements before converting
- Before converting we heavily recommend you do a full backup of your database and files! If you are unsure how to achieve this please ask your hosting provider for advice. You basically need to follow the basic instructions given for New installations. Please do not overwrite any old files - install phpBB3 at a different location.
+ Before converting, we heavily recommend you do a full backup of your database and files! If you are unsure how to achieve this, please ask your hosting provider for advice. You basically need to follow the instructions given for New installations. Please do not overwrite any old files - install phpBB3 at a different location.
Once you made a backup of everything and also have a brand new phpBB3 installation, you can now begin the conversion.
- Note that the conversion requires CREATE and DROP privileges for the phpBB3's database user account.
+ Note that the conversion requires CREATE
and DROP
privileges for the phpBB3 database user account.
5.ii. Converting
- To begin the conversion visit the install folder of your phpBB3 installation (the same as you have done for installing). Now you will see a new tab Convert. Click this tab.
+ To begin the conversion, visit the install/
folder of your phpBB3 installation (the same as you have done for installing). Now you will see a new tab Convert. Click this tab.
- As with install the conversion is automated. Your previous 2.0.x database tables will not be changed as well as the original 2.0.x files remaining unaltered. The conversion is actually only filling your phpBB3 database tables and copying additional data over to your phpBB3 installation. This has the benefit that if something goes wrong you are able to either re-run the conversion or continue a conversion, while your old board is still accessible. We really recommend you disable your old installation while converting, else you may have inconsistent data after the conversion.
+ As with install, the conversion is automated. Your previous 2.0.x database tables will not be changed and the original 2.0.x files will remain unaltered. The conversion is actually only filling your phpBB3 database tables and copying additional data over to your phpBB3 installation. This has the benefit that if something goes wrong, you are able to either re-run the conversion or continue a conversion, while your old board is still accessible. We really recommend that you disable your old installation while converting, else you may have inconsistent data after the conversion.
- Please note that this conversion process may take quite some time and depending on your hosting provider this may result in it failing (due to web server or other timeout issues). If this is the case you should ask your provider if they are willing to allow the convert script to temporarily exceed their limits (be nice and they will probably be quite helpful).
+ Please note that this conversion process may take quite some time and depending on your hosting provider this may result in it failing (due to web server resource limits or other timeout issues). If this is the case, you should ask your provider if they are willing to allow the convert script to temporarily exceed their limits (be nice and they will probably be quite helpful). If your host is unwilling to increase the limits to run the convertor, please see this article for performing the conversion on your local machine: Knowledge Base - Offline Conversions
- Once completed your board should be immediately available. If you encountered errors you should report the problems to our bug tracker or seek help via our forums (see README for details).
+ Once completed, your board should be immediately available. If you encountered errors, you should report the problems to our bug tracker or seek help via our forums (see README for details).
5.iii. Things to do after conversion
- After successful conversion there may be a few items you need to do - apart from checking if the installation is accessible and everything displayed correctly.
+ After a successful conversion, there may be a few items you need to do - apart from checking if the installation is accessible and everything displayed correctly.
- The first thing you may want to do is going to the administration control panel and checking every configuration item within the general tab. Thereafter you may want to adjust the forum descriptions/names if you entered HTML there. You also may want to access the other administrative sections, e.g. adjusting permissions, smilies, icons, ranks, etc.
+ The first thing you may want to do is to go to the administration control panel and check every configuration item within the general tab. Thereafter, you may want to adjust the forum descriptions/names if you entered HTML there. You also may want to access the other administrative sections, e.g. adjusting permissions, smilies, icons, ranks, etc.
- Within the conversion the search index has not been created or transferred. This means after conversion you are not able to find any matches if you want to search for something. We recommend you rebuild your search index within Admin -> Maintenance -> Database -> Search Index
.
+ During the conversion, the search index is not created or transferred. This means after conversion you are not able to find any matches if you want to search for something. We recommend you rebuild your search index within Administration Control Panel -> Maintenance -> Database -> Search Index.
After verifying the settings in the ACP, you can delete the install directory to enable the board. The board will stay disabled until you do so.
- Once you are pleased with your new installation you may want to give it the name of your old installation, changing the directory name. With phpBB3 this is possible without any problems - but you may still want to check your cookie settings within the administration panel, if the cookie path need to be adjusted prior to renaming.
+ Once you are pleased with your new installation, you may want to give it the name of your old installation, changing the directory name. With phpBB3 this is possible without any problems, but you may still want to check your cookie settings within the administration panel; in case your cookie path needs to be adjusted prior to renaming.
5.iv. Common conversion problems
Broken non-latin characters The conversion script assumes that the database encoding in the source phpBB2 matches the encoding defined in the lang_main.php
file of the default language pack of the source installation. Edit that file to match the database's encoding and re-start the conversion procedure.
- http 500 / white pages The conversion is a load-heavy procedure. Restrictions imposed by some server hosting providers can cause problems. The most common causes are: too low values for the php settings memory_limit
and max_execution_time
. Limits on the allowed CPU time are also a frequent cause for such errors, as are caps on the number of database queries allowed. If you cannot change such settings, then contact your hosting provider or run the conversion procedure on a different computer. The phpBB.com forums are also an excellent location to ask for support.
+ http 500 / white pages The conversion is a load-heavy procedure. Restrictions imposed by some server hosting providers can cause problems. The most common causes are: values too low for the PHP settings memory_limit
and max_execution_time
. Limits on the allowed CPU time are also a frequent cause for such errors, as are limits on the number of database queries allowed. If you cannot change such settings, then contact your hosting provider or run the conversion procedure on a different computer. The phpBB.com forums are also an excellent location to ask for support.
- Password conversion Due to the utf-8 based handling of passwords in phpBB3, it is not always possible to transfer all passwords. For passwords "lost in translation" the easiest workaround is to use the "forgotten password" function.
+ Password conversion Due to the utf-8 based handling of passwords in phpBB3, it is not always possible to transfer all passwords. For passwords "lost in translation" the easiest workaround is to use the I forgot my password link on the login page.
- Path to your former board The converter expects the relative path to your old board's files. So, - for instance - if the old board is located at http://www.yourdomain.com/forum
and the phpBB3 installation is located at http://www.yourdomain.com/phpBB3
, then the correct value would be ../forum
. Note that the webserver user must be able to access the source installation's files.
+ Path to your former board The convertor expects the relative path to your old board's files. So, for instance, if the old board is located at http://www.yourdomain.com/forum
and the phpBB3 installation is located at http://www.yourdomain.com/phpBB3
, then the correct value would be ../forum
. Note that the webserver user must be able to access the source installation's files.
Missing images If your default board language's language pack does not include all images, then some images might be missing in your installation. Always use a complete language pack as default language.
- Smilies During the conversion you might see warnings about image files where the copying failed. That can happen if the old board's smilies have the same file names as those on the new board. Copy those files manually after the conversion, if you want to continue using the old smilies.
+ Smilies During the conversion you might see warnings about image files where the copying failed. This can happen if the old board's smilies have the same file names as those on the new board. Copy those files manually after the conversion, if you want to continue using the old smilies.
@@ -393,27 +396,27 @@
-
Once you have successfully installed phpBB3 you MUST ensure you remove the entire install/ directory. Leaving the install directory in place is a very serious potential security issue which may lead to deletion or alteration of files, etc. Please note that until this directory is removed, phpBB3 will not operate and a warning message will be displayed. Beyond this essential deletion, you may also wish to delete the docs/ directories if you wish.
+
Once you have successfully installed phpBB3 you MUST ensure you remove the entire install/
directory. Leaving the install directory in place is a very serious potential security issue which may lead to deletion or alteration of files, etc. Please note that until this directory is removed, phpBB will not operate and a warning message will be displayed. Beyond this essential deletion, you may also wish to delete the docs/ directory if you wish.
-
With these directories deleted you should proceed to the administration panel. Depending on how the installation completed you may have been directed there automatically. If not, login as the administrator you specified during install/conversion and click the Administration Panel link at the bottom of any page. Ensure that details specified in Admin -> General
are correct!
+
With these directories deleted, you should proceed to the administration panel. Depending on how the installation completed, you may have been directed there automatically. If not, login as the administrator you specified during install/conversion and click the Administration Control Panel link at the bottom of any page. Ensure that details specified on the General tab are correct!
6.i. Uploadable avatars
phpBB3 supports several methods for allowing users to select their own avatar (an avatar is a small image generally unique to a user and displayed just below their username in posts).
-
Two of these options allow users to upload an avatar from their machine or a remote location (via a URL). If you wish to enable this function you should first ensure the correct paths for uploadeable avatars is set in Admin -> General -> Board Configuration -> Avatar settings
. By default this is images/avatars/uploads but you can set it to whatever you like, just ensure the configuration setting is updated. You must also ensure this directory can be written to by the webserver. Usually this means you have to alter its permissions to allow anyone to read and write to. Exactly how you should do this depends on your ftp client or server operating system.
+
Two of these options allow users to upload an avatar from their machine or a remote location (via a URL). If you wish to enable this function you should first ensure the correct path for uploadable avatars is set in Administration Control Panel -> General -> Board Configuration -> Avatar settings. By default this is images/avatars/uploads
, but you can set it to whatever you like, just ensure the configuration setting is updated. You must also ensure this directory can be written to by the webserver. Usually this means you have to alter its permissions to allow anyone to read and write to it. Exactly how you should do this depends on your FTP client or server operating system.
-
On UNIX systems for example you set the directory to a+rwx (or ugo+rwx or even 777). This can be done from a command line on your server using chmod or via your FTP client (using the Change Permissions, chmod or other Permissions dialoge box, see your FTP clients documentation for help). Most FTP clients list permissions in the form of User (Read, Write, Execute), Group (Read, Write, Execute) and Other (Read, Write, Execute). You need to tick all of these boxes to set correct permissions.
+
On UNIX systems, for example, you set the directory to a+rwx (or ugo+rwx or even 777). This can be done from a command line on your server using chmod or via your FTP client (using the Change Permissions, chmod or other Permissions dialog box, see your FTP client's documentation for help). Most FTP clients list permissions in the form of User (Read, Write, Execute), Group (Read, Write, Execute) and Other (Read, Write, Execute). You need to tick all of these boxes to set correct permissions.
-
On Windows system you need to ensure the directory is not write-protected and that it has global write permissions (see your servers documentation or contact your hosting provider if you are unsure on how to achieve this).
+
On Windows systems, you need to ensure the directory is not write-protected and that it has global write permissions (see your server's documentation or contact your hosting provider if you are unsure on how to achieve this).
-
Please be aware that setting a directories permissions to global write access is a potential security issue. While it is unlikely that anything nasty will occur (such as all the avatars being deleted) there are always people out there to cause trouble. Therefore you should monitor this directory and if possible make regular backups.
+
Please be aware that setting a directory's permissions to global write access is a potential security issue. While it is unlikely that anything nasty will occur (such as all the avatars being deleted) there are always people out there to cause trouble. Therefore you should monitor this directory and if possible make regular backups.
6.ii. Webserver configuration
-
Depending on your web server you may have to configure your server to deny web access to the cache/
, files/
, store/
and other directories. This is to prevent users from accessing sensitive files.
+
Depending on your web server, you may have to configure your server to deny web access to the cache/
, files/
, store/
and other directories. This is to prevent users from accessing sensitive files.
-
For apache there are .htaccess
files already in place to do this for you. For other webservers you will have to adjust the configuration yourself. Sample files for nginx and lighttpd to help you get started may be found in docs directory.
+
For Apache there are .htaccess
files already in place to do this for you. Similarly, for Windows based servers using IIS there are web.config
files already in place to do this for you. For other webservers, you will have to adjust the configuration yourself. Sample files for nginx and lighttpd to help you get started may be found in docs/
directory.
@@ -424,14 +427,30 @@
-7. Copyright and disclaimer
+7. Anti-Spam Measures
+
+
+
+
+
+
Like any online site that allows user input, your board could be subject to unwanted posts; often referred to as forum spam. The vast majority of these attacks will be from automated computer programs known as spambots. The attacks, generally, are not personal as the spammers are just trying to find accessible targets. phpBB has a number of anti-spam measures built in, including a range of CAPTCHAs. However, administrators are strongly urged to read and follow the advice for Preventing Spam in phpBB as soon as possible after completing the installation of your board.
+
+
+
+
+
+
+
+
+
+8. Copyright and disclaimer
-
This application is opensource software released under the GNU General Public License v2. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) phpBB Group, All Rights Reserved.
+
This application is opensource software released under the GNU General Public License v2. Please see the source code and docs/
directory for more details. This package and its contents are Copyright © phpBB Group, All Rights Reserved.
diff --git a/phpBB/docs/README.html b/phpBB/docs/README.html
index 86340ac882..89f573de04 100644
--- a/phpBB/docs/README.html
+++ b/phpBB/docs/README.html
@@ -41,7 +41,7 @@
-
Thank you for downloading phpBB3. This README will guide through the basics of installation and operation of phpBB3. Please ensure you read this and the accompanying documentation fully before proceeding with the installation.
+
Thank you for downloading phpBB3. This README will guide you through the basics of installation and operation of phpBB3. Please ensure you read this and the accompanying documentation fully before proceeding with the installation.
Readme
@@ -68,7 +68,7 @@
- Status of this version
-
- Reporting Bugs
+
- Reporting bugs
- Security related bugs
@@ -92,11 +92,11 @@
-
Installation, update and conversion instructions can be found in the INSTALL document contained in this distribution. If you are intending to convert from a previous phpBB 2.0.x installation we highly recommend you backup any existing data before proceeding!
+
Installation, update and conversion instructions can be found in the INSTALL document in this directory. If you are intending on converting from a phpBB 2.0.x installation we highly recommend that you backup any existing data before proceeding!
Users of phpBB3 Beta versions cannot directly update.
-
Please note that we won't support the following installation types:
+
Please note that we don't support the following installation types:
- Updates from phpBB3 Beta versions to phpBB3 RC1 and higher
- Conversions from phpBB 2.0.x to phpBB3 Beta versions
@@ -109,7 +109,7 @@
- Updates from phpBB3 RC1 to the latest version
- Note: if using the Automatic Update Package, updates are supported from phpBB 3.0.2 onward. To update a pre-3.0.2 installation, first update to 3.0.2 and then update to the current version.
- Conversions from phpBB 2.0.x to the latest version
- - New installations of phpBB3 - always only the latest released version
+ - New installations of phpBB3 - only the latest released version
@@ -132,21 +132,21 @@
2.i. Languages (Internationalisation - i18n)
- A number of language packs with included style localisations are available. You can find them listed in the Language Packs pages of our downloads section or from the Language Packs section of the Customisation Database.
+ A number of language packs with included style localisations are available. You can find them listed in the Language Packs pages of our downloads section or from the Language Packs section of the Customisation Database.
- For more information about language packs, please see: http://www.phpbb.com/languages/
+ For more information about language packs, please see: https://www.phpbb.com/languages/
- This is the official location for all supported language sets. If you download a package from a 3rd party site you do so with the understanding that we cannot offer support. So please, do not ask for help in these cases!
+ This is the official location for all supported language sets. If you download a package from a 3rd party site you do so with the understanding that we cannot offer support. Please do not ask for support if you download a language pack from a 3rd party site.
- Installation of these packages is straightforward: simply download the required language pack, uncompress (unzip) it and via FTP transfer the included language
and styles
folders to the root of your board installation. The language can then be installed via the Administration Control Panel of your board: System tab -> General Tasks -> Language packs
. A more detailed description of the process is in the Knowledge Base article, How to Install a Language Pack.
+ Installation of these packages is straightforward: simply download the required language pack, uncompress (unzip) it and via FTP transfer the included language
and styles
folders to the root of your board installation. The language can then be installed via the Administration Control Panel of your board: System tab -> General Tasks -> Language packs
. A more detailed description of the process is in the Knowledge Base article, How to Install a Language Pack.
- If your language is not available, please visit our [3.0.x] Translations forum where you will find topics on translations in progress. Should you wish to volunteer to translate a language not currently available or assist in maintaining an existing language pack, you can Apply to become a translator.
+ If your language is not available, please visit our [3.0.x] Translations forum where you will find topics on translations in progress. Should you wish to volunteer to translate a language not currently available or assist in maintaining an existing language pack, you can Apply to become a translator.
2.ii. Styles
- Although the phpBB Group is rather proud of the included styles, we realise that they may not be to everyone's taste. Therefore, phpBB3 allows styles to be switched with relative ease. First, you need to locate and download a style you like. You can find them listed in the Styles section of our Customisation Database.
+ Although the phpBB Group is rather proud of the included styles, we realise that they may not be to everyone's taste. Therefore, phpBB3 allows styles to be switched with relative ease. First, you need to locate and download a style you like. You can find them listed in the Styles section of our Customisation Database.
- For more information about styles, please see: http://www.phpbb.com/styles/
+ For more information about styles, please see: https://www.phpbb.com/styles/
Please note that 3rd party styles downloaded for versions of phpBB2 will not work in phpBB3. It is also important to ensure that the style is updated to match the current version of the phpBB software you are using.
@@ -156,9 +156,9 @@
2.iii. Modifications
- Although not officially supported by the phpBB Group, phpBB has a thriving modification scene. These third party modifications to the standard phpBB software, known as MODs, extend its capabilities still further. You can browse through many of the MODs in the Modifications section of our Customisation Database.
+ Although not officially supported by the phpBB Group, phpBB has a thriving modification scene. These third party modifications to the standard phpBB software, known as MODs, extend its capabilities still further. You can browse through many of the MODs in the Modifications section of our Customisation Database.
- For more information about MODs, please see: http://www.phpbb.com/mods/
+ For more information about MODs, please see: https://www.phpbb.com/mods/
Please remember that any bugs or other issues that occur after you have added any modification should NOT be reported to the bug tracker (see below). First remove the MOD and see if the problem is resolved. Any support for a MOD should only be sought in the "Discussion/Support" forum for that MOD.
@@ -180,35 +180,35 @@
-
phpBB3 can seem a little daunting to new users in places, particularly with regard the permission system. The first thing you should do is check the FAQ which covers a few basic getting started questions. If you need additional help there are several places you should look.
+
phpBB3 can sometimes seem a little daunting to new users, particularly with regards to the permission system. The first thing you should do is check the FAQ, which covers a few basic getting started questions. If you need additional help there are several places you can find it.
3.i. phpBB3 Documentation
-
A comprehensive documentation is now available online and can be accessed from the following location:
+
Comprehensive documentation is now available on the phpBB website:
-
http://www.phpbb.com/support/documentation/3.0/
+
https://www.phpbb.com/support/documentation/3.0/
-
This covers everything from installation through setting permissions and managing users.
+
This covers everything from installation to setting permissions and managing users.
3.ii. Knowledge Base
The Knowledge Base consists of a number of detailed articles on some common issues phpBB users may encounter while using the product. The Knowledge Base can be found at:
-
http://www.phpbb.com/kb/
+
https://www.phpbb.com/kb/
3.iii. Community Forums
The phpBB Group maintains a thriving community where a number of people have generously decided to donate their time to help support users. This site can be found at:
-
http://www.phpbb.com/community/
+
https://www.phpbb.com/community/
-
If you do seek help via our forums please be sure to do a Search before posting. This may well save both you and us time and allow the developer, moderator and support groups to spend more time responding to people with unknown issues and problems. Please also remember that phpBB is an entirely volunteer effort, no one receives any compensation for the time they give, this includes moderators as well as developers. So please be respectful and mindful when awaiting responses.
+
If you do seek help via our forums please be sure to do a search before posting; if someone has experienced the issue before, then you may find that your question has already been answered. Please remember that phpBB is entirely staffed by volunteers, no one receives any compensation for the time they give, including moderators as well as developers; please be respectful and mindful when awaiting responses and receiving support.
3.iv Internet Relay Chat
Another place you may find help is our IRC channel. This operates on the Freenode IRC network, irc.freenode.net and the channel is #phpbb and can be accessed by any decent IRC client such as mIRC, XChat, etc. Again, please do not abuse this service and be respectful of other users.
-
There are other IRC channels available, please see http://www.phpbb.com/support/irc/ for the complete list.
+
There are other IRC channels available, please see https://www.phpbb.com/support/irc/ for the complete list.
@@ -273,7 +273,7 @@
The relevant database type/version is listed within the administration control panel.
- Please also be as detailed as you can in your report, if possible list the steps required to duplicate the problem. If you have a patch that fixes the issue, please attach it to the ticket or submit a pull request on GitHub.
+ Please be as detailed as you can in your report, and if possible, list the steps required to duplicate the problem. If you have a patch that fixes the issue, please attach it to the ticket or submit a pull request to our repository on GitHub.
If you create a patch, it is very much appreciated (but not required) if you follow the phpBB coding guidelines. Please note that the coding guidelines are somewhat different between different versions of phpBB. For phpBB 3.0.x the coding guidelines may be found here: http://area51.phpbb.com/docs/30x/coding-guidelines.html
@@ -283,7 +283,7 @@
If you find a potential security related vulnerability in phpBB please DO NOT post it to the bug tracker, public forums, etc.! Doing so may allow unscrupulous users to take advantage of it before we have time to put a fix in place. All security related bugs should be sent to our security tracker:
- http://www.phpbb.com/security/
+ https://www.phpbb.com/security/
@@ -304,8 +304,8 @@
This list is not complete but does represent those bugs which may affect users on a wider scale. Other bugs listed in the tracker have typically been shown to be limited to certain setups or methods of installation, updating and/or conversions.
- - Conversions may fail to complete on large boards under some hosts
- - Updates may fail to complete on large update sets under some hosts
+ - Conversions may fail to complete on large boards under some hosts.
+ - Updates may fail to complete on large update sets under some hosts.
- Smilies placed directly after bbcode tags will not get parsed. Smilies always need to be separated by spaces.
@@ -325,9 +325,9 @@
-
phpBB is no longer supported on PHP3 due to several compatibility issues and we recommend that you upgrade to the latest stable release of PHP5 to run phpBB. The minimum version required is PHP 4.3.3.
+
phpBB is no longer supported on PHP3 due to several compatibility issues and we recommend that you upgrade to the latest stable release of PHP5 to run phpBB. The minimum version required is PHP 4.3.3. The minimum version that will be required for phpBB 3.1 is PHP 5.3.3.
-
Please remember that running any application on a developmental version of PHP can lead to strange/unexpected results which may appear to be bugs in the application (which may not be true). Therefore we recommend you upgrade to the newest stable version of PHP before running phpBB3. If you are running a developmental version of PHP please check any bugs you find on a system running a stable release before submitting.
+
Please remember that running any application on a development (unstable, e.g. a beta release) version of PHP can lead to strange/unexpected results which may appear to be bugs in the application. Therefore, we recommend you upgrade to the newest stable version of PHP before running phpBB3. If you are running a development version of PHP please check any bugs you find on a system running a stable release before submitting.
This board has been developed and tested under Linux and Windows (amongst others) running Apache using MySQL 3.23, 4.x, 5.x, MSSQL Server 2000, PostgreSQL 7.x, Oracle 8, SQLite 2 and Firebird. Versions of PHP used range from 4.3.3 to 5.4.x without problem.
@@ -351,7 +351,7 @@
-
This application is opensource software released under the GNU General Public License v2. Please see source code and the docs directory for more details. This package and its contents are Copyright © phpBB Group, All Rights Reserved.
+
This application is opensource software released under the GNU General Public License v2. Please see source code and the docs directory for more details. This package and its contents are Copyright © phpBB Group, All Rights Reserved.
diff --git a/phpBB/docs/auth_api.html b/phpBB/docs/auth_api.html
index 29469c21ac..eb168e26a6 100644
--- a/phpBB/docs/auth_api.html
+++ b/phpBB/docs/auth_api.html
@@ -200,7 +200,7 @@ $user_id = 2;
$auth->acl_clear_prefetch($user_id);
-
This method returns void.
+
This method returns null.
2.viii. acl_get_list
@@ -275,7 +275,7 @@ $auth_admin = new auth_admin();
-
This application is opensource software released under the GNU General Public License v2. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) phpBB Group, All Rights Reserved.
+
This application is opensource software released under the GNU General Public License v2. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) phpBB Group, All Rights Reserved.
diff --git a/phpBB/docs/coding-guidelines.html b/phpBB/docs/coding-guidelines.html
index cd113a7226..a541fe8866 100644
--- a/phpBB/docs/coding-guidelines.html
+++ b/phpBB/docs/coding-guidelines.html
@@ -956,6 +956,8 @@ $action_ary = request_var('action', array('' => 0));
Login checks/redirection:
To show a forum login box use login_forum_box($forum_data)
, else use the login_box()
function.
+
$forum_data
should contain at least the forum_id
and forum_password
fields. If the field forum_name
is available, then it is displayed on the forum login page.
+
The login_box()
function can have a redirect as the first parameter. As a thumb of rule, specify an empty string if you want to redirect to the users current location, else do not add the $SID
to the redirect string (for example within the ucp/login we redirect to the board index because else the user would be redirected to the login screen).
Sensitive Operations:
@@ -1189,7 +1191,7 @@ append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=group&
-it will be included and executed inline.
A note, it is very much encouraged that template designers do not include PHP. The ability to include raw PHP was introduced primarily to allow end users to include banner code, etc. without modifying multiple files (as with 2.0.x). It was not intended for general use ... hence www.phpbb.com will not make available template sets which include PHP. And by default templates will have PHP disabled (the admin will need to specifically activate PHP for a template).
+it will be included and executed inline.
A note, it is very much encouraged that template designers do not include PHP. The ability to include raw PHP was introduced primarily to allow end users to include banner code, etc. without modifying multiple files (as with 2.0.x). It was not intended for general use ... hence www.phpbb.com will not make available template sets which include PHP. And by default templates will have PHP disabled (the admin will need to specifically activate PHP for a template).
Conditionals/Control structures
The most significant addition to 3.0.x are conditions or control structures, "if something then do this else do that". The system deployed is very similar to Smarty. This may confuse some people at first but it offers great potential and great flexibility with a little imagination. In their most simple form these constructs take the form:
@@ -2314,14 +2316,14 @@ if (utf8_case_fold_nfc($string1) == utf8_case_fold_nfc($string2))
-8. Copyright and disclaimer
+7. Copyright and disclaimer
-
This application is opensource software released under the GNU General Public License v2. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) phpBB Group, All Rights Reserved.
+
This application is opensource software released under the GNU General Public License v2. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) phpBB Group, All Rights Reserved.
diff --git a/phpBB/docs/hook_system.html b/phpBB/docs/hook_system.html
index 1b8131efaf..fbc8baaf75 100644
--- a/phpBB/docs/hook_system.html
+++ b/phpBB/docs/hook_system.html
@@ -867,7 +867,7 @@ function phpbb_hook_register(&$hook)
-
This application is opensource software released under the GNU General Public License v2. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) phpBB Group, All Rights Reserved.
+
This application is opensource software released under the GNU General Public License v2. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) phpBB Group, All Rights Reserved.
diff --git a/phpBB/download/file.php b/phpBB/download/file.php
index bf277c69fa..ed33fc0962 100644
--- a/phpBB/download/file.php
+++ b/phpBB/download/file.php
@@ -170,7 +170,7 @@ else
if (!$attachment['in_message'])
{
//
- $sql = 'SELECT p.forum_id, f.forum_password, f.parent_id
+ $sql = 'SELECT p.forum_id, f.forum_name, f.forum_password, f.parent_id
FROM ' . POSTS_TABLE . ' p, ' . FORUMS_TABLE . ' f
WHERE p.post_id = ' . $attachment['post_msg_id'] . '
AND p.forum_id = f.forum_id';
@@ -285,7 +285,7 @@ else if (($display_cat == ATTACHMENT_CATEGORY_NONE/* || $display_cat == ATTACHME
$db->sql_query($sql);
}
-if ($display_cat == ATTACHMENT_CATEGORY_IMAGE && $mode === 'view' && (strpos($attachment['mimetype'], 'image') === 0) && ((strpos(strtolower($user->browser), 'msie') !== false) && (strpos(strtolower($user->browser), 'msie 8.0') === false)))
+if ($display_cat == ATTACHMENT_CATEGORY_IMAGE && $mode === 'view' && (strpos($attachment['mimetype'], 'image') === 0) && (strpos(strtolower($user->browser), 'msie') !== false) && !phpbb_is_greater_ie_version($user->browser, 7))
{
wrap_img_in_html(append_sid($phpbb_root_path . 'download/file.' . $phpEx, 'id=' . $attachment['attach_id']), $attachment['real_filename']);
file_gc();
@@ -343,8 +343,8 @@ function send_avatar_to_browser($file, $browser)
$image_data = @getimagesize($file_path);
header('Content-Type: ' . image_type_to_mime_type($image_data[2]));
-
- if (strpos(strtolower($browser), 'msie') !== false && strpos(strtolower($browser), 'msie 8.0') === false)
+
+ if ((strpos(strtolower($browser), 'msie') !== false) && !phpbb_is_greater_ie_version($browser, 7))
{
header('Content-Disposition: attachment; ' . header_filename($file));
@@ -477,10 +477,9 @@ function send_file_to_browser($attachment, $upload_dir, $category)
*/
// Send out the Headers. Do not set Content-Disposition to inline please, it is a security measure for users using the Internet Explorer.
- $is_ie8 = (strpos(strtolower($user->browser), 'msie 8.0') !== false);
header('Content-Type: ' . $attachment['mimetype']);
-
- if ($is_ie8)
+
+ if (phpbb_is_greater_ie_version($user->browser, 7))
{
header('X-Content-Type-Options: nosniff');
}
@@ -492,7 +491,7 @@ function send_file_to_browser($attachment, $upload_dir, $category)
}
else
{
- if (empty($user->browser) || (!$is_ie8 && (strpos(strtolower($user->browser), 'msie') !== false)))
+ if (empty($user->browser) || ((strpos(strtolower($user->browser), 'msie') !== false) && !phpbb_is_greater_ie_version($user->browser, 7)))
{
header('Content-Disposition: attachment; ' . header_filename(htmlspecialchars_decode($attachment['real_filename'])));
if (empty($user->browser) || (strpos(strtolower($user->browser), 'msie 6.0') !== false))
@@ -503,7 +502,7 @@ function send_file_to_browser($attachment, $upload_dir, $category)
else
{
header('Content-Disposition: ' . ((strpos($attachment['mimetype'], 'image') === 0) ? 'inline' : 'attachment') . '; ' . header_filename(htmlspecialchars_decode($attachment['real_filename'])));
- if ($is_ie8 && (strpos($attachment['mimetype'], 'image') !== 0))
+ if (phpbb_is_greater_ie_version($user->browser, 7) && (strpos($attachment['mimetype'], 'image') !== 0))
{
header('X-Download-Options: noopen');
}
@@ -680,7 +679,8 @@ function set_modified_headers($stamp, $browser)
{
// let's see if we have to send the file at all
$last_load = isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) ? strtotime(trim($_SERVER['HTTP_IF_MODIFIED_SINCE'])) : false;
- if ((strpos(strtolower($browser), 'msie 6.0') === false) && (strpos(strtolower($browser), 'msie 8.0') === false))
+
+ if (strpos(strtolower($browser), 'msie 6.0') === false && !phpbb_is_greater_ie_version($browser, 7))
{
if ($last_load !== false && $last_load >= $stamp)
{
@@ -709,4 +709,25 @@ function file_gc()
exit;
}
+/**
+* Check if the browser is internet explorer version 7+
+*
+* @param string $user_agent User agent HTTP header
+* @param int $version IE version to check against
+*
+* @return bool true if internet explorer version is greater than $version
+*/
+function phpbb_is_greater_ie_version($user_agent, $version)
+{
+ if (preg_match('/msie (\d+)/', strtolower($user_agent), $matches))
+ {
+ $ie_version = (int) $matches[1];
+ return ($ie_version > $version);
+ }
+ else
+ {
+ return false;
+ }
+}
+
?>
\ No newline at end of file
diff --git a/phpBB/includes/acm/acm_apc.php b/phpBB/includes/acm/acm_apc.php
index 1a487f94ad..205353d3a5 100644
--- a/phpBB/includes/acm/acm_apc.php
+++ b/phpBB/includes/acm/acm_apc.php
@@ -33,7 +33,7 @@ class acm extends acm_memory
/**
* Purge cache data
*
- * @return void
+ * @return null
*/
function purge()
{
diff --git a/phpBB/includes/acm/acm_eaccelerator.php b/phpBB/includes/acm/acm_eaccelerator.php
index 645067c199..ecec3ac9a5 100644
--- a/phpBB/includes/acm/acm_eaccelerator.php
+++ b/phpBB/includes/acm/acm_eaccelerator.php
@@ -37,7 +37,7 @@ class acm extends acm_memory
/**
* Purge cache data
*
- * @return void
+ * @return null
*/
function purge()
{
@@ -54,7 +54,7 @@ class acm extends acm_memory
/**
* Perform cache garbage collection
*
- * @return void
+ * @return null
*/
function tidy()
{
diff --git a/phpBB/includes/acm/acm_memcache.php b/phpBB/includes/acm/acm_memcache.php
index e54fa36c38..70bc219952 100644
--- a/phpBB/includes/acm/acm_memcache.php
+++ b/phpBB/includes/acm/acm_memcache.php
@@ -71,7 +71,7 @@ class acm extends acm_memory
/**
* Unload the cache resources
*
- * @return void
+ * @return null
*/
function unload()
{
@@ -83,7 +83,7 @@ class acm extends acm_memory
/**
* Purge cache data
*
- * @return void
+ * @return null
*/
function purge()
{
diff --git a/phpBB/includes/acm/acm_redis.php b/phpBB/includes/acm/acm_redis.php
index 41533eaacb..dc11ca7768 100644
--- a/phpBB/includes/acm/acm_redis.php
+++ b/phpBB/includes/acm/acm_redis.php
@@ -80,7 +80,7 @@ class acm extends acm_memory
/**
* Unload the cache resources
*
- * @return void
+ * @return null
*/
function unload()
{
@@ -92,7 +92,7 @@ class acm extends acm_memory
/**
* Purge cache data
*
- * @return void
+ * @return null
*/
function purge()
{
diff --git a/phpBB/includes/acm/acm_wincache.php b/phpBB/includes/acm/acm_wincache.php
index 0501ab74c5..7faba4f5b6 100644
--- a/phpBB/includes/acm/acm_wincache.php
+++ b/phpBB/includes/acm/acm_wincache.php
@@ -32,7 +32,7 @@ class acm extends acm_memory
/**
* Purge cache data
*
- * @return void
+ * @return null
*/
function purge()
{
diff --git a/phpBB/includes/acm/acm_xcache.php b/phpBB/includes/acm/acm_xcache.php
index d0a614660c..e3d83f8bfa 100644
--- a/phpBB/includes/acm/acm_xcache.php
+++ b/phpBB/includes/acm/acm_xcache.php
@@ -48,7 +48,7 @@ class acm extends acm_memory
/**
* Purge cache data
*
- * @return void
+ * @return null
*/
function purge()
{
diff --git a/phpBB/includes/acp/acp_bbcodes.php b/phpBB/includes/acp/acp_bbcodes.php
index 0644b38eb1..31166a56dc 100644
--- a/phpBB/includes/acp/acp_bbcodes.php
+++ b/phpBB/includes/acp/acp_bbcodes.php
@@ -113,8 +113,8 @@ class acp_bbcodes
{
$template->assign_block_vars('token', array(
'TOKEN' => '{' . $token . '}',
- 'EXPLAIN' => $token_explain)
- );
+ 'EXPLAIN' => ($token === 'LOCAL_URL') ? sprintf($token_explain, generate_board_url() . '/') : $token_explain,
+ ));
}
return;
@@ -345,6 +345,9 @@ class acp_bbcodes
'LOCAL_URL' => array(
'!(' . str_replace(array('!', '\#'), array('\!', '#'), get_preg_expression('relative_url')) . ')!e' => "\$this->bbcode_specialchars('$1')"
),
+ 'RELATIVE_URL' => array(
+ '!(' . str_replace(array('!', '\#'), array('\!', '#'), get_preg_expression('relative_url')) . ')!e' => "\$this->bbcode_specialchars('$1')"
+ ),
'EMAIL' => array(
'!(' . get_preg_expression('email') . ')!ie' => "\$this->bbcode_specialchars('$1')"
),
@@ -371,6 +374,7 @@ class acp_bbcodes
$sp_tokens = array(
'URL' => '(?i)((?:' . str_replace(array('!', '\#'), array('\!', '#'), get_preg_expression('url')) . ')|(?:' . str_replace(array('!', '\#'), array('\!', '#'), get_preg_expression('www_url')) . '))(?-i)',
'LOCAL_URL' => '(?i)(' . str_replace(array('!', '\#'), array('\!', '#'), get_preg_expression('relative_url')) . ')(?-i)',
+ 'RELATIVE_URL' => '(?i)(' . str_replace(array('!', '\#'), array('\!', '#'), get_preg_expression('relative_url')) . ')(?-i)',
'EMAIL' => '(' . get_preg_expression('email') . ')',
'TEXT' => '(.*?)',
'SIMPLETEXT' => '([a-zA-Z0-9-+.,_ ]+)',
@@ -427,7 +431,11 @@ class acp_bbcodes
$fp_replace = str_replace($token, $replace, $fp_replace);
$sp_match = str_replace(preg_quote($token, '!'), $sp_tokens[$token_type], $sp_match);
- $sp_replace = str_replace($token, '${' . ($n + 1) . '}', $sp_replace);
+
+ // Prepend the board url to local relative links
+ $replace_prepend = ($token_type === 'LOCAL_URL') ? generate_board_url() . '/' : '';
+
+ $sp_replace = str_replace($token, $replace_prepend . '${' . ($n + 1) . '}', $sp_replace);
}
$fp_match = '!' . $fp_match . '!' . $modifiers;
diff --git a/phpBB/includes/acp/acp_board.php b/phpBB/includes/acp/acp_board.php
index f437dca8f9..ebbf66657e 100644
--- a/phpBB/includes/acp/acp_board.php
+++ b/phpBB/includes/acp/acp_board.php
@@ -408,8 +408,8 @@ class acp_board
'board_email_form' => array('lang' => 'BOARD_EMAIL_FORM', 'validate' => 'bool', 'type' => 'radio:enabled_disabled', 'explain' => true),
'email_function_name' => array('lang' => 'EMAIL_FUNCTION_NAME', 'validate' => 'string', 'type' => 'text:20:50', 'explain' => true),
'email_package_size' => array('lang' => 'EMAIL_PACKAGE_SIZE', 'validate' => 'int:0', 'type' => 'text:5:5', 'explain' => true),
- 'board_contact' => array('lang' => 'CONTACT_EMAIL', 'validate' => 'string', 'type' => 'text:25:100', 'explain' => true),
- 'board_email' => array('lang' => 'ADMIN_EMAIL', 'validate' => 'string', 'type' => 'text:25:100', 'explain' => true),
+ 'board_contact' => array('lang' => 'CONTACT_EMAIL', 'validate' => 'email', 'type' => 'text:25:100', 'explain' => true),
+ 'board_email' => array('lang' => 'ADMIN_EMAIL', 'validate' => 'email', 'type' => 'text:25:100', 'explain' => true),
'board_email_sig' => array('lang' => 'EMAIL_SIG', 'validate' => 'string', 'type' => 'textarea:5:30', 'explain' => true),
'board_hide_emails' => array('lang' => 'BOARD_HIDE_EMAILS', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
diff --git a/phpBB/includes/acp/acp_captcha.php b/phpBB/includes/acp/acp_captcha.php
index 469a367bba..bfec7c27d8 100644
--- a/phpBB/includes/acp/acp_captcha.php
+++ b/phpBB/includes/acp/acp_captcha.php
@@ -124,6 +124,8 @@ class acp_captcha
'CAPTCHA_PREVIEW_TPL' => $demo_captcha->get_demo_template($id),
'S_CAPTCHA_HAS_CONFIG' => $demo_captcha->has_config(),
'CAPTCHA_SELECT' => $captcha_select,
+
+ 'U_ACTION' => $this->u_action,
));
}
}
diff --git a/phpBB/includes/acp/acp_groups.php b/phpBB/includes/acp/acp_groups.php
index 486616c33d..c9d476b8ae 100644
--- a/phpBB/includes/acp/acp_groups.php
+++ b/phpBB/includes/acp/acp_groups.php
@@ -80,6 +80,11 @@ class acp_groups
case 'approve':
case 'demote':
case 'promote':
+ if (!check_form_key($form_key))
+ {
+ trigger_error($user->lang['FORM_INVALID'] . adm_back_link($this->u_action), E_USER_WARNING);
+ }
+
if (!$group_id)
{
trigger_error($user->lang['NO_GROUP'] . adm_back_link($this->u_action), E_USER_WARNING);
@@ -120,48 +125,64 @@ class acp_groups
{
trigger_error($user->lang['NO_GROUP'] . adm_back_link($this->u_action), E_USER_WARNING);
}
+ else if (empty($mark_ary))
+ {
+ trigger_error($user->lang['NO_USERS'] . adm_back_link($this->u_action . '&action=list&g=' . $group_id), E_USER_WARNING);
+ }
if (confirm_box(true))
{
$group_name = ($group_row['group_type'] == GROUP_SPECIAL) ? $user->lang['G_' . $group_row['group_name']] : $group_row['group_name'];
+ group_user_attributes('default', $group_id, $mark_ary, false, $group_name, $group_row);
+ trigger_error($user->lang['GROUP_DEFS_UPDATED'] . adm_back_link($this->u_action . '&action=list&g=' . $group_id));
+ }
+ else
+ {
+ confirm_box(false, $user->lang['CONFIRM_OPERATION'], build_hidden_fields(array(
+ 'mark' => $mark_ary,
+ 'g' => $group_id,
+ 'i' => $id,
+ 'mode' => $mode,
+ 'action' => $action))
+ );
+ }
+ break;
- if (!sizeof($mark_ary))
+ case 'set_default_on_all':
+ if (confirm_box(true))
+ {
+ $group_name = ($group_row['group_type'] == GROUP_SPECIAL) ? $user->lang['G_' . $group_row['group_name']] : $group_row['group_name'];
+
+ $start = 0;
+
+ do
{
- $start = 0;
+ $sql = 'SELECT user_id
+ FROM ' . USER_GROUP_TABLE . "
+ WHERE group_id = $group_id
+ ORDER BY user_id";
+ $result = $db->sql_query_limit($sql, 200, $start);
- do
+ $mark_ary = array();
+ if ($row = $db->sql_fetchrow($result))
{
- $sql = 'SELECT user_id
- FROM ' . USER_GROUP_TABLE . "
- WHERE group_id = $group_id
- ORDER BY user_id";
- $result = $db->sql_query_limit($sql, 200, $start);
-
- $mark_ary = array();
- if ($row = $db->sql_fetchrow($result))
+ do
{
- do
- {
- $mark_ary[] = $row['user_id'];
- }
- while ($row = $db->sql_fetchrow($result));
-
- group_user_attributes('default', $group_id, $mark_ary, false, $group_name, $group_row);
-
- $start = (sizeof($mark_ary) < 200) ? 0 : $start + 200;
+ $mark_ary[] = $row['user_id'];
}
- else
- {
- $start = 0;
- }
- $db->sql_freeresult($result);
+ while ($row = $db->sql_fetchrow($result));
+
+ group_user_attributes('default', $group_id, $mark_ary, false, $group_name, $group_row);
+
+ $start = (sizeof($mark_ary) < 200) ? 0 : $start + 200;
}
- while ($start);
- }
- else
- {
- group_user_attributes('default', $group_id, $mark_ary, false, $group_name, $group_row);
+ else
+ {
+ $start = 0;
+ }
+ $db->sql_freeresult($result);
}
+ while ($start);
trigger_error($user->lang['GROUP_DEFS_UPDATED'] . adm_back_link($this->u_action . '&action=list&g=' . $group_id));
}
@@ -175,10 +196,13 @@ class acp_groups
'action' => $action))
);
}
-
break;
case 'deleteusers':
+ if (empty($mark_ary))
+ {
+ trigger_error($user->lang['NO_USERS'] . adm_back_link($this->u_action . '&action=list&g=' . $group_id), E_USER_WARNING);
+ }
case 'delete':
if (!$group_id)
{
@@ -233,6 +257,11 @@ class acp_groups
break;
case 'addusers':
+ if (!check_form_key($form_key))
+ {
+ trigger_error($user->lang['FORM_INVALID'] . adm_back_link($this->u_action), E_USER_WARNING);
+ }
+
if (!$group_id)
{
trigger_error($user->lang['NO_GROUP'] . adm_back_link($this->u_action), E_USER_WARNING);
@@ -394,13 +423,21 @@ class acp_groups
}
}
- // Validate the length of "Maximum number of allowed recipients per private message" setting.
- // We use 16777215 as a maximum because it matches MySQL unsigned mediumint maximum value
- // which is the lowest amongst DBMSes supported by phpBB3
- if ($max_recipients_error = validate_data($submit_ary, array('max_recipients' => array('num', false, 0, 16777215))))
+ /*
+ * Validate the length of "Maximum number of allowed recipients per
+ * private message" setting. We use 16777215 as a maximum because it matches
+ * MySQL unsigned mediumint maximum value which is the lowest amongst DBMSes
+ * supported by phpBB3. Also validate the submitted colour value.
+ */
+ $validation_checks = array(
+ 'max_recipients' => array('num', false, 0, 16777215),
+ 'colour' => array('hex_colour', true),
+ );
+
+ if ($validation_error = validate_data($submit_ary, $validation_checks))
{
// Replace "error" string with its real, localised form
- $error = array_merge($error, array_map(array(&$user, 'lang'), $max_recipients_error));
+ $error = array_merge($error, $validation_error);
}
if (!sizeof($error))
@@ -493,6 +530,7 @@ class acp_groups
if (sizeof($error))
{
+ $error = array_map(array(&$user, 'lang'), $error);
$group_rank = $submit_ary['rank'];
$group_desc_data = array(
@@ -683,7 +721,7 @@ class acp_groups
'U_ACTION' => $this->u_action . "&g=$group_id",
'U_BACK' => $this->u_action,
'U_FIND_USERNAME' => append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=searchuser&form=list&field=usernames'),
- 'U_DEFAULT_ALL' => "{$this->u_action}&action=default&g=$group_id",
+ 'U_DEFAULT_ALL' => "{$this->u_action}&action=set_default_on_all&g=$group_id",
));
// Grab the members
@@ -795,4 +833,4 @@ class acp_groups
}
}
-?>
\ No newline at end of file
+?>
diff --git a/phpBB/includes/acp/acp_main.php b/phpBB/includes/acp/acp_main.php
index cffe296651..d80b0d1532 100644
--- a/phpBB/includes/acp/acp_main.php
+++ b/phpBB/includes/acp/acp_main.php
@@ -398,11 +398,11 @@ class acp_main
// Version check
$user->add_lang('install');
- if ($auth->acl_get('a_server') && version_compare(PHP_VERSION, '5.3.2', '<'))
+ if ($auth->acl_get('a_server') && version_compare(PHP_VERSION, '5.3.3', '<'))
{
$template->assign_vars(array(
'S_PHP_VERSION_OLD' => true,
- 'L_PHP_VERSION_OLD' => sprintf($user->lang['PHP_VERSION_OLD'], '
', ''),
+ 'L_PHP_VERSION_OLD' => sprintf($user->lang['PHP_VERSION_OLD'], '
', ''),
));
}
diff --git a/phpBB/includes/acp/acp_send_statistics.php b/phpBB/includes/acp/acp_send_statistics.php
index b3baf54983..b8fc2d2c45 100644
--- a/phpBB/includes/acp/acp_send_statistics.php
+++ b/phpBB/includes/acp/acp_send_statistics.php
@@ -29,7 +29,7 @@ class acp_send_statistics
{
global $config, $template, $phpbb_admin_path, $phpEx;
- $collect_url = "http://www.phpbb.com/stats/receive_stats.php";
+ $collect_url = "https://www.phpbb.com/stats/receive_stats.php";
$this->tpl_name = 'acp_send_statistics';
$this->page_title = 'ACP_SEND_STATISTICS';
diff --git a/phpBB/includes/acp/acp_update.php b/phpBB/includes/acp/acp_update.php
index 7e3d1a1024..5d3e9abcea 100644
--- a/phpBB/includes/acp/acp_update.php
+++ b/phpBB/includes/acp/acp_update.php
@@ -39,7 +39,7 @@ class acp_update
$info = obtain_latest_version_info(request_var('versioncheck_force', false));
- if ($info === false)
+ if (empty($info))
{
trigger_error('VERSIONCHECK_FAIL', E_USER_WARNING);
}
diff --git a/phpBB/includes/captcha/captcha_non_gd.php b/phpBB/includes/captcha/captcha_non_gd.php
index f82896f628..2adf909b96 100644
--- a/phpBB/includes/captcha/captcha_non_gd.php
+++ b/phpBB/includes/captcha/captcha_non_gd.php
@@ -119,7 +119,7 @@ class captcha
$new_line = '';
$end = strlen($scanline) - ceil($width/2);
- for ($i = floor($width/2); $i < $end; $i++)
+ for ($i = (int) floor($width / 2); $i < $end; $i++)
{
$pixel = ord($scanline{$i});
diff --git a/phpBB/includes/constants.php b/phpBB/includes/constants.php
index 54e5e2632d..3533c49d46 100644
--- a/phpBB/includes/constants.php
+++ b/phpBB/includes/constants.php
@@ -25,7 +25,7 @@ if (!defined('IN_PHPBB'))
*/
// phpBB Version
-define('PHPBB_VERSION', '3.0.11');
+define('PHPBB_VERSION', '3.0.12');
// QA-related
// define('PHPBB_QA', 1);
@@ -157,6 +157,7 @@ define('PHYSICAL_LINK', 2);
define('CONFIRM_REG', 1);
define('CONFIRM_LOGIN', 2);
define('CONFIRM_POST', 3);
+define('CONFIRM_REPORT', 4);
// Categories - Attachments
define('ATTACHMENT_CATEGORY_NONE', 0);
diff --git a/phpBB/includes/db/db_tools.php b/phpBB/includes/db/db_tools.php
index c6dd23e6bd..f63ff18cbe 100644
--- a/phpBB/includes/db/db_tools.php
+++ b/phpBB/includes/db/db_tools.php
@@ -1819,6 +1819,22 @@ class phpbb_db_tools
case 'mssql':
case 'mssqlnative':
+ // remove default cosntraints first
+ // http://msdn.microsoft.com/en-us/library/aa175912%28v=sql.80%29.aspx
+ $statements[] = "DECLARE @drop_default_name VARCHAR(100), @cmd VARCHAR(1000)
+ SET @drop_default_name =
+ (SELECT so.name FROM sysobjects so
+ JOIN sysconstraints sc ON so.id = sc.constid
+ WHERE object_name(so.parent_obj) = '{$table_name}'
+ AND so.xtype = 'D'
+ AND sc.colid = (SELECT colid FROM syscolumns
+ WHERE id = object_id('{$table_name}')
+ AND name = '{$column_name}'))
+ IF @drop_default_name <> ''
+ BEGIN
+ SET @cmd = 'ALTER TABLE [{$table_name}] DROP CONSTRAINT [' + @drop_default_name + ']'
+ EXEC(@cmd)
+ END";
$statements[] = 'ALTER TABLE [' . $table_name . '] DROP COLUMN [' . $column_name . ']';
break;
diff --git a/phpBB/includes/db/dbal.php b/phpBB/includes/db/dbal.php
index 9cc337955b..30d2870938 100644
--- a/phpBB/includes/db/dbal.php
+++ b/phpBB/includes/db/dbal.php
@@ -827,7 +827,7 @@ class dbal