diff --git a/phpBB/common.php b/phpBB/common.php
index 2e488b423d..ebffd46228 100644
--- a/phpBB/common.php
+++ b/phpBB/common.php
@@ -203,7 +203,7 @@ $cache = new cache();
$db = new $sql_db();
// Connect to DB
-$db->sql_connect($dbhost, $dbuser, $dbpasswd, $dbname, $dbport, false, false);
+$db->sql_connect($dbhost, $dbuser, $dbpasswd, $dbname, $dbport, false, defined('PHPBB_DB_NEW_LINK') ? PHPBB_DB_NEW_LINK : false);
// We do not need this any longer, unset for safety purposes
unset($dbpasswd);
diff --git a/phpBB/docs/coding-guidelines.html b/phpBB/docs/coding-guidelines.html
index d70e0be2a3..124ac74bb9 100644
--- a/phpBB/docs/coding-guidelines.html
+++ b/phpBB/docs/coding-guidelines.html
@@ -955,6 +955,10 @@ append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=group&
+
Exiting
+
+ Your page should either call page_footer()
in the end to trigger output through the template engine and terminate the script, or alternatively at least call the exit_handler()
. That call is necessary because it provides a method for external applications embedding phpBB to be called at the end of the script.
+
diff --git a/phpBB/docs/hook_system.html b/phpBB/docs/hook_system.html
index 2aab028a78..b7fd702987 100644
--- a/phpBB/docs/hook_system.html
+++ b/phpBB/docs/hook_system.html
@@ -384,6 +384,7 @@ a:active { color: #368AD2; }
PHPBB_MSG_HANDLER (overwrite message handler)
+PHPBB_DB_NEW_LINK (overwrite new_link parameter for sql_connect)
PHPBB_ROOT_PATH (overwrite $phpbb_root_path)
PHPBB_ADMIN_PATH (overwrite $phpbb_admin_path)
diff --git a/phpBB/includes/constants.php b/phpBB/includes/constants.php
index c3bb2aa468..e32597d722 100644
--- a/phpBB/includes/constants.php
+++ b/phpBB/includes/constants.php
@@ -19,6 +19,7 @@ if (!defined('IN_PHPBB'))
/**
* valid external constants:
* PHPBB_MSG_HANDLER
+* PHPBB_DB_NEW_LINK
* PHPBB_ROOT_PATH
* PHPBB_ADMIN_PATH
*/
diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php
index 668fc9d0e0..8620134311 100644
--- a/phpBB/includes/functions.php
+++ b/phpBB/includes/functions.php
@@ -2765,8 +2765,9 @@ function get_preg_expression($mode)
case 'url':
case 'url_inline':
$inline = ($mode == 'url') ? ')' : '';
+ $scheme = ($mode == 'url') ? '[a-z\d+\-.]' : '[a-z\d+]'; // avoid automatic parsing of "word" in "last word.http://..."
// generated with regex generation file in the develop folder
- return "[a-z][a-z\d+\-.]*:/{2}(?:(?:[a-z0-9\-._~!$&'($inline*+,;=:@|]+|%[\dA-F]{2})+|[0-9.]+|\[[a-z0-9.]+:[a-z0-9.]+:[a-z0-9.:]+\])(?::\d*)?(?:/(?:[a-z0-9\-._~!$&'($inline*+,;=:@|]+|%[\dA-F]{2})*)*(?:\?(?:[a-z0-9\-._~!$&'($inline*+,;=:@/?|]+|%[\dA-F]{2})*)?(?:\#(?:[a-z0-9\-._~!$&'($inline*+,;=:@/?|]+|%[\dA-F]{2})*)?";
+ return "[a-z]$scheme*:/{2}(?:(?:[a-z0-9\-._~!$&'($inline*+,;=:@|]+|%[\dA-F]{2})+|[0-9.]+|\[[a-z0-9.]+:[a-z0-9.]+:[a-z0-9.:]+\])(?::\d*)?(?:/(?:[a-z0-9\-._~!$&'($inline*+,;=:@|]+|%[\dA-F]{2})*)*(?:\?(?:[a-z0-9\-._~!$&'($inline*+,;=:@/?|]+|%[\dA-F]{2})*)?(?:\#(?:[a-z0-9\-._~!$&'($inline*+,;=:@/?|]+|%[\dA-F]{2})*)?";
break;
case 'www_url':
diff --git a/phpBB/includes/functions_content.php b/phpBB/includes/functions_content.php
index cbd38cd478..b072895226 100644
--- a/phpBB/includes/functions_content.php
+++ b/phpBB/includes/functions_content.php
@@ -622,11 +622,11 @@ function make_clickable($text, $server_url = false, $class = 'postlink')
// Be sure to not let the matches cross over. ;)
// relative urls for this board
- $magic_url_match[] = '#(^|[\n\t (>])(' . preg_quote($server_url, '#') . ')/(' . get_preg_expression('relative_url_inline') . ')#ie';
+ $magic_url_match[] = '#(^|[\n\t (>.])(' . preg_quote($server_url, '#') . ')/(' . get_preg_expression('relative_url_inline') . ')#ie';
$magic_url_replace[] = "make_clickable_callback(MAGIC_URL_LOCAL, '\$1', '\$2', '\$3', '$local_class')";
// matches a xxxx://aaaaa.bbb.cccc. ...
- $magic_url_match[] = '#(^|[\n\t (>])(' . get_preg_expression('url_inline') . ')#ie';
+ $magic_url_match[] = '#(^|[\n\t (>.])(' . get_preg_expression('url_inline') . ')#ie';
$magic_url_replace[] = "make_clickable_callback(MAGIC_URL_FULL, '\$1', '\$2', '', '$class')";
// matches a "www.xxxx.yyyy[/zzzz]" kinda lazy URL thing
diff --git a/phpBB/styles/prosilver/template/ucp_profile_profile_info.html b/phpBB/styles/prosilver/template/ucp_profile_profile_info.html
index 6c98f31827..1bd54619b9 100644
--- a/phpBB/styles/prosilver/template/ucp_profile_profile_info.html
+++ b/phpBB/styles/prosilver/template/ucp_profile_profile_info.html
@@ -50,9 +50,9 @@
{L_BIRTHDAY}: {L_BIRTHDAY_EXPLAIN}
- {L_DAY}: {S_BIRTHDAY_DAY_OPTIONS}
- {L_MONTH}: {S_BIRTHDAY_MONTH_OPTIONS}
- {L_YEAR}: {S_BIRTHDAY_YEAR_OPTIONS}
+ {L_DAY}: {S_BIRTHDAY_DAY_OPTIONS}
+ {L_MONTH}: {S_BIRTHDAY_MONTH_OPTIONS}
+ {L_YEAR}: {S_BIRTHDAY_YEAR_OPTIONS}