Commit graph

4806 commits

Author SHA1 Message Date
Igor Wiedler
24e9fb24d1 [feature/request-class] Make server() use the $html_encode parameter
$request->server() should not auto html-escape values. header() however should.
Also introduce some tests for this behaviour.

Thanks to nn- for catching this.

PHPBB3-9716
2011-08-06 19:47:12 +02:00
Igor Wiedler
d1a0dfbafb [feature/request-class] Remove useless condition
PHPBB3-9716
2011-07-16 15:09:33 +02:00
Igor Wiedler
76aa24e6b7 [feature/request-class] Minor spacing CS adjustments
PHPBB3-9716
2011-07-16 14:59:52 +02:00
Igor Wiedler
0bf6966c52 [feature/request-class] Add server(), header() and is_ajax() to request
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
2011-07-15 22:34:24 +02:00
Andreas Fischer
79af1da0a5 Merge branch 'develop-olympus' into develop
* 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
2011-07-07 20:06:26 +02:00
Andreas Fischer
71df03960c Merge branch 'prep-release-3.0.9' into develop-olympus
* prep-release-3.0.9:
  [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
2011-07-07 20:06:11 +02:00
Andreas Fischer
5fefdecc50 Merge remote-tracking branch 'naderman/ticket/10250' into prep-release-3.0.9
* naderman/ticket/10250:
  [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
2011-07-07 20:05:47 +02:00
Nils Adermann
3fb9b62c69 Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/9859] Changing all phpBB footers to match the new credit line
  [ticket/9859] New footer copyright line with registered symbol
2011-07-06 21:52:05 -04:00
Nils Adermann
cf4e6d8a3e Merge branch 'prep-release-3.0.9' into develop-olympus
* prep-release-3.0.9:
  [ticket/9859] Changing all phpBB footers to match the new credit line
  [ticket/9859] New footer copyright line with registered symbol
2011-07-06 21:51:33 -04:00
Yuriy Rusko
a275d17625 [ticket/9859] Changing all phpBB footers to match the new credit line
PHPBB3-9859
2011-07-06 21:46:33 -04:00
Nils Adermann
b261a1a31a [ticket/10250] The site_logo hash is different depending on imageset & language
PHPBB3-10250
2011-07-06 17:53:57 -04:00
Nils Adermann
8ec737e9c4 [ticket/10250] Destroy cached md5 hash of site_logo on refreshing an imageset
PHPBB3-10250
2011-07-05 19:38:15 -04:00
Nils Adermann
f610f44a4e [ticket/10250] Overwrite the site_logo width&height when the phpbb logo is used
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
2011-07-05 19:09:09 -04:00
Andreas Fischer
0a79930387 Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/10247] Use COUNT(*) instead of COUNT(attempt_id)
2011-07-05 02:10:03 +02:00
Andreas Fischer
7e4460dbc9 Merge branch 'prep-release-3.0.9' into develop-olympus
* prep-release-3.0.9:
  [ticket/10247] Use COUNT(*) instead of COUNT(attempt_id)
2011-07-05 02:09:47 +02:00
Andreas Fischer
c916d49ddd Merge remote-tracking branch 'naderman/ticket/10247' into prep-release-3.0.9
* naderman/ticket/10247:
  [ticket/10247] Use COUNT(*) instead of COUNT(attempt_id)
2011-07-05 02:09:29 +02:00
Nils Adermann
0d602e1722 [ticket/10247] Use COUNT(*) instead of COUNT(attempt_id)
attempt_id column was deleted

PHPBB3-10247
2011-07-04 19:57:54 -04:00
Andreas Fischer
d8ac2cc5f0 [prep-release-3.0.9] Bumping version number for the final 3.0.9 release. 2011-07-05 00:40:45 +02:00
Andreas Fischer
fe0932fdf0 [prep-release-3.0.9] Bumping version number for 3.0.9-RC3. 2011-06-26 20:47:33 +02:00
Andreas Fischer
cabb42790c Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/10188] Prevent semi-compressed output
2011-06-26 20:40:42 +02:00
Andreas Fischer
cdc23a9877 Merge branch 'prep-release-3.0.9' into develop-olympus
* prep-release-3.0.9:
  [ticket/10188] Prevent semi-compressed output
2011-06-26 20:40:25 +02:00
Nils Adermann
a5ef6c3b20 [ticket/10188] Prevent semi-compressed output
When a non-fatal error occurs at the beginning of the script before any custom
error handler is set one of two situations can be encountered:

1) if the ini option output buffer is disabled:
      - headers are sent to the http client
      - the error message is output
2) if the ini option output_buffer is enabled or the script
   is run within an ob_start()/ob_end() wrapper:
      - the error message is written to the output buffer

Once the script reaches page_header() phpbb starts gzip compression if enabled.
This is done through ob_start with a ob_gzhandler as a callback. The
compression is skipped if headers have already been sent. In situation 1) the
error message sent in plain text comes with headers and this gzip compression
is skipped. The client receives a plaintext version of the page. However in
situation 2) headers have not been sent yet and the rest of the page will be
compressed. The result is a plaintext error message followed by compressed
output. The client does not understand this output resulting in either an
error message or simply a blank page in the browser.

In addition to the above situation this problem occurs with errors that are
triggered after the custom error handler is loaded. The problem has been
noticed before, and a workaround was found. The error handler would call
ob_flush() for particular configuration settings before outputting the error
message. This resulted in headers being sent when output buffering was enabled
thus disabling gzip compression for the rest of the page. The constraints under
which ob_flush() was called were lessened over time whenever a new case was
found that would trigger this problem. Eventually ob_flush() would be called
even when code causing an E_NOTICE was simply run within an ob_start/ob_end.
This makes it impossible to use output buffering to retrieve the content of an
error message without prohibiting the page from setting headers afterwards.

This commit removes all flushing in msg_handler completely and instead fixes
the problem for both errors before and after the error handler is registered.
GZIP compression is only enabled if there is at most one level of output
buffering (e.g. the output_buffer php.ini option is enabled) and if there has
not yet been any output in this buffer. This should avoid any partial output
compression.

PHPBB3-10188
2011-06-26 20:31:22 +02:00
Nils Adermann
c1ef02716e Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/7729] Prevent date/time functions from throwing E_WARNING on PHP 5.3.
2011-06-26 01:38:05 +02:00
Nils Adermann
0e067ec3c2 Merge branch 'prep-release-3.0.9' into develop-olympus
* prep-release-3.0.9:
  [ticket/7729] Prevent date/time functions from throwing E_WARNING on PHP 5.3.
2011-06-26 01:37:30 +02:00
Andreas Fischer
9f3b159998 [ticket/7729] Prevent date/time functions from throwing E_WARNING on PHP 5.3.
PHPBB3-7729
2011-06-25 17:42:52 +02:00
Nils Adermann
bf39d6abdc Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/10234] Report E_WARNING errors as "PHP Warning" instead of "PHP Notice"
2011-06-20 00:36:05 +02:00
Nils Adermann
fd7e29131e Merge branch 'prep-release-3.0.9' into develop-olympus
* prep-release-3.0.9:
  [ticket/10234] Report E_WARNING errors as "PHP Warning" instead of "PHP Notice"
2011-06-20 00:35:17 +02:00
Andreas Fischer
8c01ed578d [ticket/10234] Report E_WARNING errors as "PHP Warning" instead of "PHP Notice"
PHPBB3-10234
2011-06-20 00:03:20 +02:00
Andreas Fischer
bd4a781c15 Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/10227] Allow persistent connections for mysqli with PHP 5.3.0+
2011-06-19 17:58:44 +02:00
rxu
7de078b26e [ticket/10227] Allow persistent connections for mysqli with PHP 5.3.0+
PHPBB3-10227
2011-06-19 19:03:53 +08:00
Andreas Fischer
d79d093d11 Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/10221] Append unit (seconds) after input field, remove from explanation
2011-06-16 16:11:38 +02:00
Andreas Fischer
bd6e27d9c5 Merge branch 'prep-release-3.0.9' into develop-olympus
* prep-release-3.0.9:
  [ticket/10221] Append unit (seconds) after input field, remove from explanation
2011-06-16 16:11:27 +02:00
Nils Adermann
63b9b91dee [ticket/10221] Append unit (seconds) after input field, remove from explanation
PHPBB3-10221
2011-06-16 16:02:34 +02:00
Andreas Fischer
48e5e56146 [prep-release-3.0.9] Bumping version number for 3.0.9-RC2. 2011-06-15 19:41:14 +02:00
Andreas Fischer
835faff61a Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/10218] Prevent startime from being overwritten by deregister_globals()
  [ticket/10218] Moving global deregistration, etc. to startup.php

Conflicts:
	phpBB/install/database_update.php
2011-06-15 18:51:45 +02:00
Andreas Fischer
79f757d4b7 Merge branch 'prep-release-3.0.9' into develop-olympus
* prep-release-3.0.9:
  [ticket/10218] Prevent startime from being overwritten by deregister_globals()
  [ticket/10218] Moving global deregistration, etc. to startup.php

Conflicts:
	phpBB/install/database_update.php
2011-06-15 18:51:04 +02:00
Andreas Fischer
2d6df4c7fc Merge remote-tracking branch 'Marshalrusty/ticket/10218' into prep-release-3.0.9
* Marshalrusty/ticket/10218:
  [ticket/10218] Prevent startime from being overwritten by deregister_globals()
  [ticket/10218] Moving global deregistration, etc. to startup.php
2011-06-15 18:50:14 +02:00
Andreas Fischer
9b2a72e6ff Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/10220] Limit user agent value length for storage in login attempt table
2011-06-15 18:47:30 +02:00
Andreas Fischer
1e8c257bd4 Merge branch 'prep-release-3.0.9' into develop-olympus
* prep-release-3.0.9:
  [ticket/10220] Limit user agent value length for storage in login attempt table
2011-06-15 18:47:27 +02:00
Nils Adermann
74785a8bda [ticket/10220] Limit user agent value length for storage in login attempt table
PHPBB3-10220
2011-06-15 18:20:16 +02:00
Yuriy Rusko
4bb98fb046 [ticket/10218] Prevent startime from being overwritten by deregister_globals()
PHPBB3-10218
2011-06-15 00:50:12 -04:00
Yuriy Rusko
f8eb154714 [ticket/10218] Moving global deregistration, etc. to startup.php
Because startup.php deletes all variables, the constants in
database_update are used to preserve settings at the top.

PHPBB3-10218
2011-06-14 06:11:35 -04:00
Andreas Fischer
bf61602a28 [develop-olympus] Incrementing the version to 3.0.10-dev in develop-olympus. 2011-06-13 22:23:28 +02:00
Andreas Fischer
8a54aa5d68 Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/10214] Correct Oracle create table query syntax in db_tools
2011-06-13 19:50:06 +02:00
Nils Adermann
c090e1c9e9 [ticket/10214] Correct Oracle create table query syntax in db_tools
Removes the semicolon at end of oracle CREATE TABLE queries and adds a
semicolon to the end of a SELECT query inside of the trigger for a new
table's auto increment column before the end keyword

PHPBB3-10214
2011-06-13 06:14:59 +02:00
Andreas Fischer
7232ca4102 [develop-olympus] Bumping version number for 3.0.9-RC1. 2011-06-12 19:45:01 +02:00
Andreas Fischer
9b469eb163 Merge branch 'develop-olympus' into develop
* develop-olympus:
  [ticket/9892] Correct copyright year
  [ticket/9892] Remove incorrect use of camel case
  [ticket/9892] Removing closing php tag from create_schema_files
  [ticket/9892] Transaction support for database update sql execution function
  [ticket/9892] count is a keyword in firebird, so renaming this alias
  [ticket/9892] Q&A CAPTCHA did not work on firebird, so no need to change config
  [ticket/9892] Shorten login_attempt key names to avoid firebird length problems
  [ticket/9892] Drop Q&A CAPTCHA tables if left in inconsistent state
  [ticket/9892] Adding a number of tests for db_tools
  [ticket/9892] Table prefix lengths influence index lengths in db_tools
  [ticket/9892] Shorten the index names on the q&a captcha
  [ticket/9892] column & index name limits, firebird auto increment in db_tools

Conflicts:
	phpBB/develop/create_schema_files.php
2011-06-12 19:27:01 +02:00
Nils Adermann
ef977abe59 [ticket/9892] count is a keyword in firebird, so renaming this alias
PHPBB3-9892
2011-06-12 11:33:55 +02:00
Nils Adermann
ef544ee095 [ticket/9892] Table prefix lengths influence index lengths in db_tools
PHPBB3-9892
2011-06-12 04:10:51 +02:00
Nils Adermann
8a5e3781d5 [ticket/9892] Shorten the index names on the q&a captcha
PHPBB3-9892
2011-06-12 01:28:06 +02:00