* develop-olympus:
[ticket/9712] Future dates can be formatted as 'less than one minute ago'
[ticket/9659] Signature options in set_user_options
[ticket/9703] Correct database leak where deleting user did not rm some PM data
[ticket/9697] Backlink broken when the select parent forum does not exist.
[ticket/9695] Correct the improper display of user input in mcp_ban.php
[ticket/9628] _add_module 'after'-parameter does not work correctly.
[ticket/9578] ACP Posting tab is missing "Post settings" module.
The autoloader is registered in install without caching, since caching is set
up during installation. This provides the same functionality, performance is
not a concern during installation anyway.
In common.php the autoloader is instantiated after the cache is initialised and
is started with the standard cache backend used for other cached values.
A few places in the code using class_exists had to be updated to explicitly
avoid autoloading, since they are used to check whether a file needs to be
included which does not (yet) follow the naming scheme the autoloader follows.
PHPBB3-9682
phpBB class name lookups follow these rules:
- All classes are prefixed with phpbb_
- All classes reside in includes/ or a subdirectory thereof
- Directories must not contain underscores
- The class name is separated into parts by underscores, the parts
are checked from first to last, until one is found which is not
a directory, all remaining parts make up the file name. If no parts
are left, the last directory name is used.
Examples:
directory structure:
includes/
class_name.php
dir/
class_name.php
dir.php
subdir/
class_name.php
lookups:
phpbb_class_name -> includes/class_name.php
phpbb_dir_class_name -> includes/dir/class_name.php
phpbb_dir -> includes/dir/dir.php
phpbb_dir_subdir_class_name -> includes/dir/subdir/class_name.php
Optionally the class can be supplied with a cache instance, either in the
constructor or via set_cache() at a later time. This allows for the lookups to
be cached, so the directories do not have to be traveresed on every request.
This makes it necessary for the cache and its dependency to continue to be
loaded the old way - without autoloading.
The code will not be changed to use autoloading, but it will rather only be
used for new classes where applicable.
PHPBB3-9682
* task/coding-guidelines:
[task/coding-guidelines] Class member qualifier guidelines
[task/coding-guidelines] Added a section about class names.
[task/coding-guidelines] Coding guideline update: Class names, eval, VCS, EOF
- Class names need to be prefixed with phpbb_
- eval should not be used in any form
- there should be newlines at the end of file
- the closing php tag should be ommited
- array elements should always have a trailing comma
- the phpBB VCS is now git
- removed the coding guidelines changelog
PHPBB3-9557
* develop-olympus:
[ticket/9653] Valid XHTML with code BBCode in subsilver2 viewtopic signatures
[ticket/9656] Remove @ from phpinfo() to get correct error_reporting value.
[ticket/9665] Allow preview of signature when it is the string "0".
[ticket/9112] Make sure current user can see most active forum/topic.
[ticket/9655] Pass E_USER_WARNING, so it doesn't look like a successful action.
[ticket/9643] Only split $port from $sqlserver, if it's not an IPv6 address.
Conflicts:
phpBB/styles/subsilver2/template/ucp_profile_signature.html
phpBB/styles/subsilver2/template/viewtopic_body.html
Since only the SIGNATURE_PREVIEW parameter is evaluated in the templates
<!-- IF SIGNATURE_PREVIEW --> will not allow the signature to be "0".
<!-- IF SIGNATURE_PREVIEW != '' --> however does allow "0".
PHPBB3-9665
* develop-olympus:
[ticket/9626] Adding tests for the URL regular expression.
[ticket/9626] Add missing class prefix.
[ticket/9626] A few tests for the email regular expression.
[ticket/9626] More IPv6 regex tests.
[ticket/9626] Adding tests for the IPv4 regular expression.
[ticket/9626] Adding tests for regular expressions.
* ticket/bantu/9626:
[ticket/9626] Adding tests for the URL regular expression.
[ticket/9626] Add missing class prefix.
[ticket/9626] A few tests for the email regular expression.
[ticket/9626] More IPv6 regex tests.
[ticket/9626] Adding tests for the IPv4 regular expression.
[ticket/9626] Adding tests for regular expressions.
This has been introduced by merge of c7a25c58b893fc72ffb3746374ece9de1d388531, which was not supposed to be merged. 1b2a65333b5be1f6086bbd1d438e061041bd2b75 was supposed to be merged instead.
PHPBB3-9587
* develop-olympus:
[feature/dbal-tests] Follow the coding guidelines and ...
[feature/dbal-tests] Update data
[feature/dbal-tests] Multi insert
[feature/dbal-tests] Delete data
[feature/dbal-tests] Insert data
[feature/dbal-tests] Fix SQL-ERROR: invalid input syntax for integer: ""
[ticket/9587] Prosilver overrides reCaptcha class.
[ticket/9605] Wrong class added to topiclist, when there's no announcement topic.
* feature/bantu/dbal-tests:
[feature/dbal-tests] Follow the coding guidelines and ...
[feature/dbal-tests] Update data
[feature/dbal-tests] Multi insert
[feature/dbal-tests] Delete data
[feature/dbal-tests] Insert data
[feature/dbal-tests] Fix SQL-ERROR: invalid input syntax for integer: ""