* develop-olympus:
[ticket/10428] Documentation for optionget/optionset functions.
[ticket/10428] Use phpbb_optionget/set in optionget/set for DRYness.
[ticket/10428] Dispose of $this->keyvalues cache for optionget.
[ticket/10428] Compare $data to false strictly.
It does not work properly when custom $data is provided, and
making it work will make the code so complicated that any benefits
from having this cache in the first place will be nullified.
Just get rid of it.
PHPBB3-10428
This message was only viewed for 1 second anyway,
as floor($delta / 60) is only 60 for 3600 to 3660,
but the code was limited to $delta <= 3600
PHPBB3-10345
The bulk of database storage of templates is removed, rendering template
stored in the database as useless.
Theme database storage is reduced to a skeleton for full removal soon.
This commit was cherry picked from the old feature/ascraeus-experiment branch
the old commit hash is 0dbe7e3b6cd450342d3c566eb2caf36ca1b5db8e.
PHPBB3-9741
* develop-olympus:
[ticket/10320] Exclude passworded forums when determining "Most active topic".
[ticket/10320] Move phpbb_feed_base::get_passworded_forums() to user class.
Extend the request class with helpers for reading server vars (server())
and HTTP request headers (header()). Refactor the existing code base
to make use of these helpers, make $_SERVER a deactivated super global.
Also introduce an is_ajax() method, which checks the X-Requested-With
header for the value 'XMLHttpRequest', which is sent by JavaScript
libraries, such as jQuery.
PHPBB3-9716
* develop-olympus:
[ticket/10250] The site_logo hash is different depending on imageset & language
[ticket/10250] Destroy cached md5 hash of site_logo on refreshing an imageset
[ticket/10250] Overwrite the site_logo width&height when the phpbb logo is used
[ticket/10250] Added the new phpBB Logo with the Registered Trademark Symbol
The new logo is slightly wider than the old logo. If we changed the size in the
imageset.cfg we would cause a conflict for everyone who replaced the logo with
their own and modified the size. Instead we overwrite the width and height in
the img() function in session.php only if its contents are that of the stock
phpbb logo.
PHPBB3-10250
* develop-olympus:
[ticket/9992] Clarify explanations of ip and account limits on login
[ticket/9992] Add a comma to language for IP_LOGIN_LIMIT_MAX_EXPLAIN
[ticket/9992] Use sql_fetchfield for single row and single column result
[ticket/9992] Adding a limit on login attempts per IP.
[ticket/9992] Make sql_create_table and sql_table_exists available in updater
* naderman/ticket/9992:
[ticket/9992] Clarify explanations of ip and account limits on login
[ticket/9992] Add a comma to language for IP_LOGIN_LIMIT_MAX_EXPLAIN
[ticket/9992] Use sql_fetchfield for single row and single column result
[ticket/9992] Adding a limit on login attempts per IP.
[ticket/9992] Make sql_create_table and sql_table_exists available in updater
A new table was created to save all failed login attempts with
corresponding information on username, ip and useragent. By default
the limit is 50 login attempts within 6 hours per IP. The limit is
relatively high to avoid big problems on sites behind a reverse
proxy that don't receive the forwarded-for value as REMOTE_ADDR but
see all users as coming from the same IP address. But if these
users run into problems a special forwarded-for option is available
to limit logins by forwarded-for value instead of ip.
PHPBB3-9992
* develop-olympus:
[ticket/9802] Remove unnecessary htmlspecialchars() call on REMOTE_ADDR.
[ticket/9802] Only check for IPv4-mapped address when address is IPv6.
[ticket/9802] Fix tiny logic bug in loop determining REMOTE_ADDR.
[ticket/9802] Remove redundant character class definition from preg_replace.
[ticket/9802] Fix redundant str_replace call. No need to replace ' ' with ' '.
Conflicts:
phpBB/includes/session.php
* ticket/bantu/9802:
[ticket/9802] Remove unnecessary htmlspecialchars() call on REMOTE_ADDR.
[ticket/9802] Only check for IPv4-mapped address when address is IPv6.
[ticket/9802] Fix tiny logic bug in loop determining REMOTE_ADDR.
[ticket/9802] Remove redundant character class definition from preg_replace.
[ticket/9802] Fix redundant str_replace call. No need to replace ' ' with ' '.
* develop-olympus:
[ticket/10158] Remove some code duplication from generating the message.
[ticket/10195] Return false in session::check_dnsbl() when IPv6 is passed.
[ticket/10158] Only view "Return to" links if they are useful.
[ticket/10158] Add return-link to folder, when the user replied from a folder.
[ticket/10158] Add "Return to Inbox"-link to "PM send"-message.
The value in $_SERVER['REMOTE_ADDR'] is either validated to be a valid IP
address or is replaced by our default value. Valid IP addresses do not contain
HTML special characters, thus the htmlspecialchars() call is unnecessary.
PHPBB3-9802