1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-09-10 00:01:29 +02:00

Compare commits

...

1041 Commits

Author SHA1 Message Date
Nils Adermann
af4c2a3eb1 [prep-release-3.0.8] Incrementing version number to 3.0.8 and update changelog 2010-11-19 13:22:36 +01:00
Nils Adermann
2831a3a9a9 Merge branch 'ticket/9903' into prep-release-3.0.8
* ticket/9903:
  [ticket/9903] Script for detecting potentially malicious flash bbcodes
  [ticket/9903] Fix XSS in BBcode-parser's Flash-BBcode.
2010-11-19 11:33:14 +01:00
Igor Wiedler
49b639dd95 [ticket/9903] Script for detecting potentially malicious flash bbcodes
PHPBB3-9903
2010-11-19 11:31:00 +01:00
Nils Adermann
bce138ca14 Merge branch 'ticket/igorw/9904' into prep-release-3.0.8
* ticket/igorw/9904:
  [ticket/9904] Update WebPI Parameters.xml to work with WebMatrix.
2010-11-19 11:27:57 +01:00
Chris Sfanos
e043dc316a [ticket/9904] Update WebPI Parameters.xml to work with WebMatrix.
PHPBB3-9904
2010-11-19 11:27:16 +01:00
Andreas Fischer
d917b2d737 Merge branch 'ticket/igorw/9509' into prep-release-3.0.8
* ticket/igorw/9509:
  [ticket/9509] Fix a typo and wrong period placement
2010-11-18 14:01:38 +01:00
Andreas Fischer
bb9c8ca563 Merge branch 'ticket/rmcgirr83/9899' into prep-release-3.0.8
* ticket/rmcgirr83/9899:
  [ticket/9899] Change recaptcha theme from default to 'clean' in the ACP.
2010-11-18 14:01:27 +01:00
RMcGirr83
6c45754a43 [ticket/9899] Change recaptcha theme from default to 'clean' in the ACP.
Change recaptcha theme from default to 'clean' in the ACP to better match
the administration control panel.

Follow up to d6aa25ede1.

PHPBB3-9899
2010-11-18 13:59:49 +01:00
Igor Wiedler
859149f5c3 [ticket/9509] Fix a typo and wrong period placement
Thanks to Michael C. for spotting this.

PHPBB3-9509
2010-11-18 13:55:39 +01:00
Ruslan Uzdenov
291a1fff1f [ticket/9903] Fix XSS in BBcode-parser's Flash-BBcode.
Fix XSS in Flash-BBcode by validating that the supplied argument is a URL.

PHPBB3-9903
2010-11-18 13:37:56 +01:00
Nils Adermann
7b4cdc94a8 [develop-olympus] Updating changelog for last minute 3.0.8-RC1 fixes. 2010-11-10 19:01:54 +01:00
Nils Adermann
cdb57aaa64 Merge branch 'ticket/nickvergessen/9140' into develop-olympus
* ticket/nickvergessen/9140:
  [ticket/9140] Check current board version in incremental update packages
2010-11-10 19:00:45 +01:00
Nils Adermann
cb94085323 Merge branch 'ticket/nickvergessen/9891' into develop-olympus
* ticket/nickvergessen/9891:
  [ticket/9891] Updater drops language-selection after database-update
2010-11-10 19:00:32 +01:00
Joas Schilling
4340e5a217 [ticket/9140] Check current board version in incremental update packages
We need to use $this->current_version in this case instead of
$config['version']. Otherwise the message will be displayed after the database
got updated from database_update.php. Using PHPBB_VERSION from
includes/constants.php is not the right selection either, because than the
message is displayed after the files got updated and are checked one last time.

PHPBB3-9140
2010-11-10 18:26:02 +01:00
Joas Schilling
9d55794e33 [ticket/9891] Updater drops language-selection after database-update
PHPBB3-9891
2010-11-10 17:56:05 +01:00
Nils Adermann
88602d138c [develop-olympus] Updating changelog with latest changes for 3.0.8-RC1 2010-11-10 16:29:34 +01:00
Nils Adermann
2ed9b3e1d5 Merge branch 'ticket/nickvergessen/9886' into develop-olympus
* ticket/nickvergessen/9886:
  [ticket/9886] Update fails on PostgreSQL because of an error in _add_module
2010-11-10 16:16:16 +01:00
Nils Adermann
1b12884c7d Merge branch 'ticket/igorw/9884' into develop-olympus
* ticket/igorw/9884:
  [ticket/9884] Reduce queue interval to 60 seconds, email package size to 20
2010-11-10 15:56:53 +01:00
Igor Wiedler
c9c19874d6 [ticket/9884] Reduce queue interval to 60 seconds, email package size to 20
PHPBB3-9884
2010-11-10 15:50:53 +01:00
Joas Schilling
d722eeb64b [ticket/9886] Update fails on PostgreSQL because of an error in _add_module
PHPBB3-9886
2010-11-09 07:56:37 +01:00
Andreas Fischer
05dce726d0 Merge branch 'ticket/nickvergessen/9888' into develop-olympus
* ticket/nickvergessen/9888:
  [ticket/9888] Update fails when Bing [Bot] was already added to the users table
2010-11-08 23:41:19 +01:00
Nils Adermann
1a637a3860 Merge branch 'ticket/bantu/9885' into develop-olympus
* ticket/bantu/9885:
  [ticket/9885] Fix extension group name updater. Loop through all languages.
2010-11-08 23:22:23 +01:00
Joas Schilling
b88f35caef [ticket/9888] Update fails when Bing [Bot] was already added to the users table
Added a check whether the user already exists before we try to add it.

PHPBB3-9888
2010-11-08 23:22:06 +01:00
Nils Adermann
794c0f6b68 [develop-olympus] Bumping version number for 3.0.8-RC1. 2010-11-08 23:21:27 +01:00
Andreas Fischer
f7e37dae86 [ticket/9885] Fix extension group name updater. Loop through all languages.
Fix a regression introduced by 58dc5a191c.

The problem is that $user->add_lang() includes language strings from the board
root folder instead of the update folder. Because the database updater is run
first, the root folder files have not been upgrade yet. Thus, the language
strings we're looking for cannot be found.

Since the language strings we are looking for have been moved from the
install.php language file to acp/attachments.php it should be possible to
always find them in either file. When there is an acp/attachments.php file in
the update package, it can also be used.

We now also loop through all the installed languages as well, because the board
could have been installed in a language other than the admin's current
language.

PHPBB3-9885
PHPBB3-7717
2010-11-08 14:19:53 +01:00
Andreas Fischer
e71911a8d2 Merge branch 'ticket/sa007/9847' into develop-olympus
* ticket/sa007/9847:
  [ticket/9847] Fix typo in search synonyms. Use british english for 'judgement'.
2010-11-08 12:48:19 +01:00
SA007
fd03ecad01 [ticket/9847] Fix typo in search synonyms. Use british english for 'judgement'.
The word "gauge" was misspelled as "guage".
The word "judgement" is preferred over "judgment" in british english.

PHPBB3-9847
2010-11-08 12:32:19 +01:00
Chris Smith
6f3b06e2b5 Merge branch 'ticket/sa007/9883' into develop-olympus
* ticket/sa007/9883:
  [ticket/9883] Change an American English spelling to British English.
2010-11-08 01:43:54 +00:00
SA007
babfd0075d [ticket/9883] Change an American English spelling to British English.
PHPBB3-9883
2010-11-08 01:29:46 +00:00
Andreas Fischer
0e731ca5dd Merge branch 'task/naderman/phing-build' into develop-olympus
* task/naderman/phing-build:
  [task/phing-build] Correct the path for update package patch files.
2010-11-08 00:17:47 +01:00
Nils Adermann
2847b2125e [task/phing-build] Correct the path for update package patch files.
PHPBB3-9849
2010-11-08 00:13:23 +01:00
Andreas Fischer
6c04e7ed80 Merge branch 'ticket/bantu/9880' into develop-olympus
* ticket/bantu/9880:
  [ticket/9880] Change "antibot" to "anti-spambot".
  [ticket/9880] Changing the term 'CAPTCHA' to something more obvious.
2010-11-07 14:57:07 +01:00
Andreas Fischer
81ca3d202e [ticket/9880] Change "antibot" to "anti-spambot".
PHPBB3-9880
2010-11-07 13:17:27 +01:00
Andreas Fischer
371e54e054 Merge branch 'ticket/paul999/9696' into develop-olympus
* ticket/paul999/9696:
  [ticket/9696] Surpress is_dir() notice when using SQLite with open_basedir.
2010-11-07 13:12:16 +01:00
Paul Sohier
5cdf27edef [ticket/9696] Surpress is_dir() notice when using SQLite with open_basedir.
PHPBB3-9696
2010-11-07 12:50:32 +01:00
Andreas Fischer
2e5217f773 Merge branch 'task/naderman/phing-build' into develop-olympus
* task/naderman/phing-build:
  [task/phing-build] Automatically trigger build_diff
  [task/phing-build] Added a build.xml configuration for phing.
2010-11-07 12:33:40 +01:00
Chris Smith
7b1d9fbbe2 [ticket/9880] Changing the term 'CAPTCHA' to something more obvious.
PHPBB3-9880
2010-11-07 05:28:29 +00:00
Nils Adermann
225482c06a Merge branch 'ticket/cs278/9752' into develop-olympus
* ticket/cs278/9752:
  [ticket/9752] Mark unused language variable as such.
  [ticket/9752] Change reference to 'confirmation code' to be more generic.
2010-11-07 03:27:44 +01:00
Chris Smith
dd1532a72c [ticket/9752] Mark unused language variable as such.
PHPBB3-9752
2010-11-07 02:16:56 +00:00
576de284a7 [ticket/9752] Change reference to 'confirmation code' to be more generic.
Related to 71b35a924f

PHPBB3-9752
2010-11-07 02:15:33 +00:00
Nils Adermann
48e6126094 Merge remote branches 'github-bantu/ticket/9879' and 'github-cs278/ticket/9095' into develop-olympus
* github-bantu/ticket/9879:
  [ticket/9879] Fix markup and use Q&A instead of Q & A for consistency.
  [ticket/9879] Spelling, punctuation and grammar update for the Q&A CAPTCHA.

* github-cs278/ticket/9095:
  [ticket/9095] Update CAPTCHA related strings to reflect CAPTCHAs plugins.
2010-11-07 03:10:57 +01:00
71b35a924f [ticket/9095] Update CAPTCHA related strings to reflect CAPTCHAs plugins.
With the addition of CAPTCHA plugins in 3.0.6 a number of language
strings need updating to account for non visual based CAPTCHAs.

PHPBB3-9095
2010-11-07 01:52:53 +00:00
Nils Adermann
e1aff2841b [task/phing-build] Automatically trigger build_diff
The build_diff script generates MOD format change descriptions for
language and style files. It is automatically triggered by phin with
the correct version numbers now so it does not need to be changed
anymore.

PHPBB3-9849
2010-11-07 02:14:49 +01:00
Andreas Fischer
5d9a9d6874 [ticket/9879] Fix markup and use Q&A instead of Q & A for consistency.
PHPBB3-9879
2010-11-07 00:35:11 +01:00
2299c40137 [ticket/9879] Spelling, punctuation and grammar update for the Q&A CAPTCHA.
Fixed spelling, punctuation and grammar as well as removed registration
specific language from plugin as it can be/is used for form submissions other
than registration.

PHPBB3-9879
2010-11-07 00:13:01 +01:00
Nils Adermann
f7180f4430 Merge branch 'ticket/bantu/9075' into develop-olympus
* ticket/bantu/9075:
  [ticket/9075] CPF Numbers fields: Prevent SQL error on registration page.
2010-11-07 00:03:15 +01:00
Andreas Fischer
516282dfa9 Merge branch 'ticket/bantu/9835' into develop-olympus
* ticket/bantu/9835:
  [ticket/9835] subsilver2: Don't show "To prevent automated ..." when logging in
2010-11-06 18:53:32 +01:00
Andreas Fischer
414d8a41e5 Merge branch 'ticket/bantu/9827' into develop-olympus
* ticket/bantu/9827:
  [ticket/9827] No longer emulate Internet Explorer 7 when using IE9.
2010-11-06 18:51:52 +01:00
Andreas Fischer
46dbdfdef4 Merge branch 'ticket/igorw/9850' into develop-olympus
* ticket/igorw/9850:
  [ticket/9850] Display upgrade instructions for feature release in acp
2010-11-06 18:47:19 +01:00
Adam Reyher
3b7414fca8 [ticket/9827] No longer emulate Internet Explorer 7 when using IE9.
The IE9 beta fixes the IE8 textarea width bug which required IE7 emulation in
phpBB's styles. Emulation should only occur when using IE8 now.

PHPBB3-9827
2010-11-05 17:07:18 +01:00
Andreas Fischer
e3b460a518 Merge branch 'task/naderman/mssql-db-tests' into develop-olympus
* task/naderman/mssql-db-tests:
  [task/mssql-db-tests] Remove MS SQL helper values from SELECT LIMIT results.
  [task/mssql-db-tests] Split up database tests into SELECT and write operations
  [task/mssql-db-tests] PHPUnit output got stuck after unterminated ob_start.
  [task/mssql-db-tests] sql_query_limit must return all results when total = 0
  [task/mssql-db-tests] Add support for odbc & sqlsrv PDO test connections
  [task/mssql-db-tests] Refactored getConnection into multiple smaller parts.
  [task/mssql-db-tests] Allow test configuration with environment variables.
  [task/mssql-db-tests] No longer display an error when skipping db tests.
  [task/mssql-db-tests] Use a simple getter for test case helpers.
2010-11-03 11:32:13 +01:00
Igor Wiedler
857271ebbd [ticket/9850] Display upgrade instructions for feature release in acp
PHPBB3-9850
2010-11-02 23:53:14 +01:00
Andreas Fischer
ec3dac0595 [ticket/9075] CPF Numbers fields: Prevent SQL error on registration page.
When an administrator set a numbers field to default to 'not specified', a SQL
error was caused on the registration page because it was tried to insert an
empty string into an integer column.
Because the column already supports NULL values, empty strings are now
converted to NULL for custom profile fields of the type 'Numbers' before
insertion into the data table.

PHPBB3-9075
2010-10-30 12:42:23 +02:00
a009614afb [ticket/9835] subsilver2: Don't show "To prevent automated ..." when logging in
This makes subsilver2 consistent with prosilver.

PHPBB3-9835
2010-10-28 22:35:53 +02:00
Andreas Fischer
6ff403c9f8 Merge branch 'ticket/cs278/9061' into develop-olympus
* ticket/cs278/9061:
  [ticket/9061] Simplify conditional statements by reworking the logic.
  [ticket/9061] Fixed a race condition in queue locking.
2010-10-27 13:06:21 +02:00
Chris Smith
9819700247 [ticket/9061] Simplify conditional statements by reworking the logic.
PHPBB3-9061
2010-10-27 11:31:42 +01:00
Oleg Pudeyev
01ef46a510 [ticket/9061] Fixed a race condition in queue locking.
Changed queue locking to cover all queue file operations,
in particular the check for queue file existince and
inclusion of queue file must be done under one lock.

Also refactored queue locking and unlocking into separate
methods.

PHPBB3-9061
2010-10-27 11:31:27 +01:00
Igor Wiedler
832b09d60d Merge branches 'ticket/bantu/9101', 'ticket/bantu/9595' and 'ticket/bantu/9853' into develop-olympus
* ticket/bantu/9101:
  [ticket/9101] Remove misleading 'below' from RECAPTCHA_EXPLAIN.

* ticket/bantu/9595:
  [ticket/9595] List min/max characters indexed by search for mysql_fulltext.

* ticket/bantu/9853:
  [ticket/9853] Change recaptcha theme from default to 'clean'.
2010-10-25 22:08:37 +02:00
Andreas Fischer
52546e8d15 Merge branch 'ticket/naderman/9686' into develop-olympus
* ticket/naderman/9686:
  [ticket/9686] Fix mssqlnative database data export
2010-10-25 21:54:49 +02:00
Andreas Fischer
a5bc7c90f5 Merge branch 'ticket/rxu/9478' into develop-olympus
* ticket/rxu/9478:
  [ticket/9478] Validate maximum number of allowed recipients per PM value.
2010-10-25 21:52:50 +02:00
rxu
257e264af7 [ticket/9478] Validate maximum number of allowed recipients per PM value.
Do not allow to enter the value larger than it's allowed by MySQL mediumnt(8).

PHPBB3-9478
2010-10-25 21:47:13 +02:00
Nils Adermann
76e8a9466e [task/mssql-db-tests] Remove MS SQL helper values from SELECT LIMIT results.
PHPBB3-9868
2010-10-25 19:43:39 +02:00
Nils Adermann
fa8dca2400 [task/mssql-db-tests] Split up database tests into SELECT and write operations
SELECT is based on the user table fixture, write (INSERT/UPDATE/DELETE) is
tested using the config table fixture.

PHPBB3-9868
2010-10-25 19:43:39 +02:00
Nils Adermann
9b4da98653 [task/mssql-db-tests] PHPUnit output got stuck after unterminated ob_start.
PHPBB3-9868
2010-10-25 19:43:39 +02:00
Nils Adermann
ee0993a8a6 [task/mssql-db-tests] sql_query_limit must return all results when total = 0
PHPBB3-9868
2010-10-25 19:43:39 +02:00
Nils Adermann
801f66b4a2 [task/mssql-db-tests] Add support for odbc & sqlsrv PDO test connections
PHPBB3-9868
2010-10-25 19:43:18 +02:00
Nils Adermann
832035f744 [task/mssql-db-tests] Refactored getConnection into multiple smaller parts.
This is a first step to simplify the extraction of database specific code
parts into separate classes.

PHPBB3-9868
2010-10-25 19:40:11 +02:00
Nils Adermann
a397f81a2b [task/mssql-db-tests] Allow test configuration with environment variables.
To allow execution of the tests with different configurations without having
to use the test_config.php file, environment variables of the form
PHPBB_TEST_<name> can now be used, e.g. PHPBB_TEST_DBMS to set the variables
otherwise expected in test_config.php

PHPBB3-9868
2010-10-25 19:39:12 +02:00
Nils Adermann
9dbbfea5fd [task/mssql-db-tests] No longer display an error when skipping db tests.
Tests are run with sqlite by default now anyway, so in the majority of cases
the error message explaining how to set up database test running will not be
displayed anyway. Database tests are now generally simply skipped if no
configuration can be found. The RUNNING_TESTS.txt file explains how to set
them up however, and more info is available on the wiki.

The get_database_config method was moved from test_case_helpers to
database_test_case because it has no general purpose.

PHPBB3-9868
2010-10-25 19:38:58 +02:00
Nils Adermann
ee846c461c [task/mssql-db-tests] Use a simple getter for test case helpers.
Calling initialisation to then use the member directly seems more
complicated than just having a method that returns the instance or
creates it if necessary.

PHPBB3-9868
2010-10-25 19:38:35 +02:00
Nils Adermann
5c5b0fc4be [ticket/9686] Fix mssqlnative database data export
We require version 1.1 of the sqlsrv extension anyway so the regular
sqlsrv_num_rows can be used instead of buffering the result. The result
buffer (class result_mssqlnative) should never automatically free the
resource it receives - we consistently close resources using sql_freeresult().

PHPBB3-9686
2010-10-25 03:33:37 +02:00
Nils Adermann
e87a8ef02c Merge branch 'ticket/igorw/9807' into develop-olympus
* ticket/igorw/9807:
  [ticket/9807] Update existing module permissions in database
  [ticket/9807] Hide avatar tab in UCP when avatars are disabled
2010-10-23 14:08:38 +02:00
Andreas Fischer
294c2c63c0 [ticket/9595] List min/max characters indexed by search for mysql_fulltext.
PHPBB3-9595
2010-10-21 20:31:00 +02:00
Igor Wiedler
b9afa26280 [ticket/9807] Update existing module permissions in database
PHPBB3-9807
2010-10-21 10:22:03 +02:00
Igor Wiedler
d503272645 Merge branch 'ticket/bantu/9857' into develop-olympus
* ticket/bantu/9857:
  [ticket/9857] Remove visible $Id$ from phpBB/docs files.
2010-10-19 14:03:44 +02:00
Igor Wiedler
5f0f8c25be Merge branch 'ticket/igorw/9509' into develop-olympus
* ticket/igorw/9509:
  [ticket/9509] Remove section 8 from index
  [ticket/9509] Close anchor tag in coding guidelines
  [ticket/9509] The VCS is now git
2010-10-19 13:55:18 +02:00
Igor Wiedler
c4dfe24fec [ticket/9509] Remove section 8 from index
Thanks Andreas.

PHPBB3-9509
2010-10-19 13:52:00 +02:00
Igor Wiedler
5ad5930c8f [ticket/9509] Close anchor tag in coding guidelines
Thanks Andreas.

PHPBB3-9509
2010-10-19 13:45:50 +02:00
Andreas Fischer
435636e626 Merge branch 'ticket/jellydoughnut/9854' into develop-olympus
* ticket/jellydoughnut/9854:
  [ticket/9854] Revise docs/auth_api.html to add more methods
2010-10-19 12:32:09 +02:00
Josh Woody
9950fa34c6 [ticket/9854] Revise docs/auth_api.html to add more methods
Notably, the auth_admin class is still missing documentation.

PHPBB3-9854
2010-10-19 12:31:18 +02:00
Andreas Fischer
b27b69cf37 [ticket/9857] Remove visible $Id$ from phpBB/docs files.
PHPBB3-9857
2010-10-19 12:22:07 +02:00
Nils Adermann
b6a60d4d64 [ticket/9509] The VCS is now git
Partially cherry-picked from 163a0974.

PHPBB3-9509
2010-10-18 13:17:16 +02:00
Andreas Fischer
acabe5a013 Merge branch 'ticket/rxu/9840' into develop-olympus
* ticket/rxu/9840:
  [ticket/9840] Display view unread posts link for guests.
2010-10-18 11:50:51 +02:00
Andreas Fischer
6236cfc9fa [ticket/9101] Remove misleading 'below' from RECAPTCHA_EXPLAIN.
Remove misleading 'below' from RECAPTCHA_EXPLAIN because recaptcha is actually
displayed to the side.

PHPBB3-9101
2010-10-18 11:24:04 +02:00
Andreas Fischer
d6aa25ede1 [ticket/9853] Change recaptcha theme from default to 'clean'.
Change recaptcha theme to 'clean' to better coordinate with the color schemes
of prosilver and subsilver2. The default red theme doesn't really fit prosilver
and subsilver2.

PHPBB3-9853
2010-10-18 10:59:00 +02:00
Igor Wiedler
6eb061ef0c Merge branch 'ticket/naderman/9855' into develop-olympus
* ticket/naderman/9855:
  [ticket/9855] Do not include the PHPUnit Framework manually on 3.5+.
  [ticket/9855] Make tests run under PHPUnit 3.5.
2010-10-17 23:36:09 +02:00
Nils Adermann
d56bf3b060 [ticket/9855] Do not include the PHPUnit Framework manually on 3.5+.
PHPBB3-9855
2010-10-17 23:32:57 +02:00
Nils Adermann
e195c91b1d [ticket/9855] Make tests run under PHPUnit 3.5.
PHPBB3-9855
2010-10-17 23:10:49 +02:00
Igor Wiedler
642f940bc8 Merge branch 'ticket/bantu/9848' into develop-olympus
* ticket/bantu/9848:
  [ticket/9848] Add avatars, attachments and store files to .gitignore.
2010-10-17 21:43:29 +02:00
Igor Wiedler
1722c1c819 Merge branch 'ticket/bantu/9841' into develop-olympus
* ticket/bantu/9841:
  [ticket/9841] Change "Save" to "Save draft", "Load" to "Load draft".
2010-10-17 21:38:38 +02:00
Igor Wiedler
2e26f86f02 Merge branch 'ticket/bantu/9822' into develop-olympus
* ticket/bantu/9822:
  [ticket/9822] Correct some style related ACP explain statements.
2010-10-17 21:35:41 +02:00
Igor Wiedler
8ac0efce65 Merge branch 'ticket/bantu/9698' into develop-olympus
* ticket/bantu/9698:
  [ticket/9698] Add .htaccess to the includes subdirectory.
2010-10-17 21:34:31 +02:00
Igor Wiedler
f6db95914b Merge branch 'ticket/bantu/9664' into develop-olympus
* ticket/bantu/9664:
  [ticket/9664] Resolve conflict with accesskey="t", change addlitsitem to "y".
2010-10-17 21:33:45 +02:00
Igor Wiedler
2895ade566 Merge branch 'ticket/bantu/7538' into develop-olympus
* ticket/bantu/7538:
  [ticket/7538] Limit user_login_attempts to prevent SQL errors.
2010-10-17 21:32:20 +02:00
Igor Wiedler
6582455e5d Merge branch 'ticket/bantu/7417' into develop-olympus
* ticket/bantu/7417:
  [ticket/7417] Also focus search keywords and username in subsilver2.
  [ticket/7417] Focus username field when prosilver login page is loaded.
  [ticket/7417] Focus search keywords field when prosilver search page is loaded.
2010-10-17 21:30:40 +02:00
Andreas Fischer
0aecbfa806 Merge branch 'ticket/cs278/7332' into develop-olympus
* ticket/cs278/7332:
  [ticket/7332] Fix post details expand link rendering on Webkit.
2010-10-17 18:33:29 +02:00
Andreas Fischer
003fe87080 Merge branch 'ticket/igorw/9162' into develop-olympus
* ticket/igorw/9162:
  [ticket/9162] Prevent notice on unset poll title
2010-10-17 18:30:59 +02:00
Chris Smith
e2d57fb4da [ticket/7332] Fix post details expand link rendering on Webkit.
PHPBB3-7332
2010-10-17 12:25:20 +01:00
Nils Adermann
5d9aef4794 [task/phing-build] Added a build.xml configuration for phing.
The current state of the phing build script allowed the removal of
some code from the old packaging process written entirely in PHP.
Further simplifcations of the PHP code and additions to the phing
build file will follow.

PHPBB3-9849
2010-10-17 01:19:23 +02:00
rxu
880bace355 [ticket/9840] Display view unread posts link for guests.
Display view unread posts link for guests if applicable.

PHPBB3-9840
2010-10-16 20:46:38 +08:00
Igor Wiedler
07a8d5a3dd [ticket/9162] Prevent notice on unset poll title
Regression from a81c857c96

PHPBB3-9162
2010-10-16 13:55:17 +02:00
Oleg Pudeyev
940191973f [ticket/7417] Also focus search keywords and username in subsilver2.
PHPBB3-7417
2010-10-16 12:24:54 +02:00
Oleg Pudeyev
6e9cf09adb [ticket/7417] Focus username field when prosilver login page is loaded.
PHPBB3-7417
2010-10-16 12:24:48 +02:00
Oleg Pudeyev
105de6b637 [ticket/7417] Focus search keywords field when prosilver search page is loaded.
PHPBB3-7417
2010-10-16 12:24:37 +02:00
Andreas Fischer
931bd25e34 [ticket/9841] Change "Save" to "Save draft", "Load" to "Load draft".
This has confused people that are less familiar with phpBB or web applications
in general. "Save draft" should make it clear that a draft is being saved, but
it is still short enough to be used in a button.

PHPBB3-9841
2010-10-15 19:42:29 +02:00
Andreas Fischer
2c4c1f9257 [ticket/9664] Resolve conflict with accesskey="t", change addlitsitem to "y".
PHPBB3-9664
2010-10-15 19:14:20 +02:00
Andreas Fischer
0452da2bf1 [ticket/7538] Limit user_login_attempts to prevent SQL errors.
PHPBB3-7538
2010-10-15 19:00:14 +02:00
Andreas Fischer
32ee8955b2 [ticket/9848] Add avatars, attachments and store files to .gitignore.
PHPBB3-9848
2010-10-15 18:08:43 +02:00
Andreas Fischer
59e62d271c [ticket/9822] Correct some style related ACP explain statements.
Remove "Additionally, if you have permission you can elect to remove the set
from the filesystem." because that functionality is not implemented.

Also remove unnecessary "When the imageset is deleted it is gone for good."
statement, "It is recommended that you first export your set for possible
future use." should be clear enough.

PHPBB3-9822
2010-10-15 17:57:43 +02:00
Andreas Fischer
d485664404 [ticket/9698] Add .htaccess to the includes subdirectory.
Add .htaccess to the includes folder to prevent full path disclosure when
running PHP 5.3. When the error_reporting setting in php.ini contains the
E_DEPRECATED error level, the PHP parser throws an error message containing
the local filesystem path when accessing one of the captcha plugins directly.
This is because the captcha plugins return explicit references for PHP 4
compatibility.

PHPBB3-9698
2010-10-15 16:47:21 +02:00
Andreas Fischer
b8f37a5024 Merge branch 'ticket/igorw/9816' into develop-olympus
* ticket/igorw/9816:
  [ticket/9816] Remove config.php from repository

Conflicts:
	.gitignore
2010-10-15 15:39:36 +02:00
Andreas Fischer
7ac8838b69 Merge branch 'ticket/igorw/9830' into develop-olympus
* ticket/igorw/9830:
  [ticket/9830] Redirect to install directly when config.php does not exist.
2010-10-15 15:33:27 +02:00
Igor Wiedler
c439cdc618 Merge branch 'ticket/marc1706/9810' into develop-olympus
* ticket/marc1706/9810:
  [ticket/9810] Hide "Select All" of code bbcode on print page
2010-10-04 20:27:00 +02:00
Igor Wiedler
8e7f2e179e Merge branch 'ticket/bantu/9829' into develop-olympus
* ticket/bantu/9829:
  [ticket/9829] Fix error in recaptcha validation.
2010-10-04 17:17:09 +02:00
Andreas Fischer
e081531a21 Merge branch 'ticket/igorw/9804' into develop-olympus
* ticket/igorw/9804:
  [ticket/9804] Account evil3 renamed to igorw, adjust AUTHORS
2010-09-24 12:07:26 +02:00
Igor Wiedler
f6700815a8 [ticket/9804] Account evil3 renamed to igorw, adjust AUTHORS
PHPBB3-9804
2010-09-21 00:53:30 +02:00
Cristian Rodriguez
68b35b5845 [ticket/9829] Fix error in recaptcha validation.
The recaptcha plugin falsely accepted error responses by recaptcha as valid
solutions.

PHPBB3-9829
2010-09-19 16:29:12 +02:00
Igor Wiedler
41245f9f7a Merge branch 'ticket/bantu/9091' into develop-olympus
* ticket/bantu/9091:
  [ticket/9091] Extract IPv4 address from addresses mapped into IPv6.
2010-09-16 23:38:50 +02:00
Igor Wiedler
ed783506c6 Merge branch 'ticket/bantu/9825' into develop-olympus
* ticket/bantu/9825:
  [ticket/9825] Add unit test config and db to gitignore
  [ticket/9825] Unit tests: Use sqlite when possible and no test_config exists.
2010-09-16 23:17:29 +02:00
Igor Wiedler
81d3f382a9 [ticket/9825] Add unit test config and db to gitignore
PHPBB3-9825
2010-09-16 23:16:30 +02:00
Igor Wiedler
46810f8747 Merge branch 'ticket/bantu/9644' into develop-olympus
* ticket/bantu/9644:
  [ticket/9644] Check $mode before calling user_notification() from submit_post()
2010-09-16 22:42:07 +02:00
Igor Wiedler
9015e03d05 Merge branch 'ticket/bantu/9613' into develop-olympus
* ticket/bantu/9613:
  [ticket/9613] Slightly update language strings.
  [ticket/9613] Fix missing database part for unread posts search load switch.
  [ticket/9613] Implement a load switch for unread posts search feature.
2010-09-16 22:34:48 +02:00
Igor Wiedler
3465c5e48d Merge branch 'ticket/bantu/9785' into develop-olympus
* ticket/bantu/9785:
  [ticket/9785] Allow users to request new passwords when board is disabled.
2010-09-16 22:29:18 +02:00
Igor Wiedler
6b5d5e1f63 Merge branch 'ticket/bantu/9609' into develop-olympus
* ticket/bantu/9609:
  [ticket/9609] Change header() calls setting HTTP status to send_status_line().
2010-09-16 22:24:49 +02:00
Igor Wiedler
6bfae1cd1a [ticket/9830] Redirect to install directly when config.php does not exist.
PHPBB3-9830
2010-09-16 22:00:17 +02:00
Andreas Fischer
ac753fa853 [ticket/9825] Unit tests: Use sqlite when possible and no test_config exists.
PHPBB3-9825
2010-09-16 00:03:52 +02:00
Andreas Fischer
d874c32374 Merge branch 'ticket/evil3/9592' into develop-olympus
* ticket/evil3/9592:
  [ticket/9592] Slight adjustments to simplify db test cases
  [ticket/9592] Remove test cases for empty IN()
  [ticket/9592] Test suite does not run on SQlite
2010-09-15 16:01:12 +02:00
Igor Wiedler
a4742f795e [ticket/9592] Slight adjustments to simplify db test cases
PHPBB3-9592
2010-09-15 09:50:04 +02:00
Andreas Fischer
20460dc12c Merge branch 'ticket/nickvergessen/9162' into develop-olympus
* ticket/nickvergessen/9162:
  [ticket/9162] BBCode in poll options is broken, when posting without question.
2010-09-14 16:47:46 +02:00
Andreas Fischer
b4b3efa45b Merge branch 'ticket/nickvergessen/9820' into develop-olympus
* ticket/nickvergessen/9820:
  [ticket/9820] phpBB Debug Error when trying to post a new topic.
2010-09-14 16:29:21 +02:00
Joas Schilling
ffd9437948 [ticket/9820] phpBB Debug Error when trying to post a new topic.
Regression from aa4519fb44

PHPBB3-9820
PHPBB3-7260
2010-09-14 15:43:05 +02:00
Joas Schilling
a81c857c96 [ticket/9162] BBCode in poll options is broken, when posting without question.
PHPBB3-9162
2010-09-14 13:20:38 +02:00
Igor Wiedler
05c88bb00d Merge branch 'ticket/bantu/9804' into develop-olympus
* ticket/bantu/9804:
  [ticket/9804] Update docs/AUTHORS. Move DavidMJ, add evil<3.
2010-09-12 20:36:34 +02:00
Andreas Fischer
4776952959 [ticket/9804] Update docs/AUTHORS. Move DavidMJ, add evil<3.
PHPBB3-9804
2010-09-12 19:19:30 +02:00
Igor Wiedler
161be96c66 Merge branch 'ticket/bantu/9748' into develop-olympus
* ticket/bantu/9748:
  [ticket/9748] Replace <br /> before converting < and > to their entities.
2010-09-12 14:59:59 +02:00
Igor Wiedler
20505ff326 [ticket/9816] Remove config.php from repository
PHPBB3-9816
2010-09-12 14:21:25 +02:00
Igor Wiedler
e08395745b Merge branch 'ticket/bantu/9503' into develop-olympus
* ticket/bantu/9503:
  [ticket/9503] Show 'No subject specified' in 'Posts awaiting approval'.
2010-09-12 13:40:02 +02:00
Igor Wiedler
e51e7701cd Merge branch 'ticket/bantu/9754' into develop-olympus
* ticket/bantu/9754:
  [ticket/9754] Populate S_USER_POSTED variable with correct value in search.php
2010-09-12 13:11:21 +02:00
Igor Wiedler
566ddf8a4b [ticket/9592] Remove test cases for empty IN()
They failed under SQLite because SQLite accepts empty IN() syntax.

PHPBB3-9592
2010-09-12 00:51:27 +02:00
Igor Wiedler
4fd45adfc5 [ticket/9592] Test suite does not run on SQlite
PHPBB3-9592
2010-09-11 23:34:14 +02:00
Andreas Fischer
bef108a5cc [ticket/9609] Change header() calls setting HTTP status to send_status_line().
PHPBB3-9609
2010-09-11 22:01:31 +02:00
Marc Alexander
a235f770f6 [ticket/9810] Hide "Select All" of code bbcode on print page
PHPBB3-9810
2010-09-10 05:34:57 -07:00
Igor Wiedler
fecca4ef21 Merge branch 'ticket/cs278/8935' into develop-olympus
* ticket/cs278/8935:
  [ticket/8935] Prevent setting maximum avatar dimensions less than the minimums.
2010-09-10 10:31:07 +02:00
Chris Smith
264ef66c5c [ticket/8935] Prevent setting maximum avatar dimensions less than the minimums.
This change actually applies to any configruation setting that is a pair
of values one representing the maximum and one minimum. This change enforces
that the maximum value cannot be less than the minimum value.

PHPBB3-8935
2010-09-09 23:42:20 +01:00
Igor Wiedler
2e891c5eba Merge branch 'task/cs278/git-tools' into develop-olympus
* task/cs278/git-tools:
  [task/git-tools] Change the GNU --lines argument to the POSIX -l
  [task/git-tools] Solve dependency on the GNU wc --max-line-length option
2010-09-09 00:20:38 +02:00
Chris Smith
e08e1e0d9a [task/git-tools] Change the GNU --lines argument to the POSIX -l
Changed to awk which handles the formatting differences between the
two versions of wc -- BSD version prefixes the output with spaces,
the GNU version does not.

PHPBB3-9808
2010-09-08 22:53:37 +01:00
Chris Smith
8ce2f63d73 [task/git-tools] Solve dependency on the GNU wc --max-line-length option
PHPBB3-9808
2010-09-07 23:35:47 +01:00
Igor Wiedler
a27811b1d4 [ticket/9807] Hide avatar tab in UCP when avatars are disabled
PHPBB3-9807
2010-09-07 22:27:41 +02:00
Chris Smith
1b3b79b694 Merge branch 'ticket/evil3/8944' into develop-olympus
* ticket/evil3/8944:
  [ticket/8944] Patch db_tools to support index length for MySQL4
  [ticket/8944] Add index length to CREATE INDEX for MySQL4 in database_update
2010-09-05 02:41:34 +01:00
Chris Smith
7de1fc40b3 Merge branch 'ticket/evil3/9800' into develop-olympus
* ticket/evil3/9800:
  [ticket/9800] Update tracker URL in docs/README.html
2010-09-05 02:14:46 +01:00
Igor Wiedler
e7b86871f0 [ticket/8944] Patch db_tools to support index length for MySQL4 2010-09-05 03:14:27 +02:00
Chris Smith
1b7c840bc8 Merge branch 'ticket/evil3/9039' into develop-olympus
* ticket/evil3/9039:
  [ticket/9039] Make mssqlnative.php non-executable
2010-09-05 02:07:14 +01:00
Igor Wiedler
58bdd91d61 [ticket/9039] Make mssqlnative.php non-executable
PHPBB3-9039
2010-09-03 22:43:29 +02:00
Igor Wiedler
bb191a1d69 [ticket/8944] Add index length to CREATE INDEX for MySQL4 in database_update
Fixes following SQL error when updating the database to 3.0.6.

BLOB column 'post_username' used in key specification without a key length

PHPBB3-8944
2010-09-03 22:26:06 +02:00
Igor Wiedler
fdd04eef49 [ticket/9800] Update tracker URL in docs/README.html
PHPBB3-9800
2010-09-02 20:15:33 +02:00
Andreas Fischer
ba0072080d Merge branch 'ticket/jellydoughnut/9662' into develop-olympus
* ticket/jellydoughnut/9662:
  [ticket/9662] Search flood interval no longer applies to non-keyword searches
2010-09-02 17:32:15 +02:00
Chris Smith
ebb4a50d9b Merge branch 'ticket/bantu/9615' into develop-olympus
* ticket/bantu/9615:
  [ticket/9615] magic_quotes_gpc: call stripslashes() before utf8_basename()
2010-08-30 14:55:50 +01:00
Nils Adermann
bb4eb41088 Merge branch 'ticket/bantu/9793' into develop-olympus
* ticket/bantu/9793:
  [ticket/9793] Make sure send_status_line() is defined when in avatar mode.
2010-08-30 00:19:31 +02:00
Andreas Fischer
f9764c684f [ticket/9613] Slightly update language strings.
PHPBB3-9613
2010-08-29 16:50:57 +02:00
rxu
b83163634f [ticket/9613] Fix missing database part for unread posts search load switch.
A record for load_unreads_search parameter had to be added to CONFIG_TABLE.

PHPBB3-9613
2010-08-29 16:09:41 +02:00
rxu
f1d5005797 [ticket/9613] Implement a load switch for unread posts search feature.
Since unread posts search can produce a high server load in certain
circumstances, we implement a switch for ACP "Load settings" to have an option
to disable this type of search.

PHPBB3-9613
2010-08-29 16:09:09 +02:00
Andreas Fischer
dbe8fb6488 Merge branch 'ticket/rxu/9117' into develop-olympus
* ticket/rxu/9117:
  [ticket/9117] Wrong redirection after login.
2010-08-28 23:25:30 +02:00
Andreas Fischer
098ff47602 Merge branch 'ticket/cs278/7369' into develop-olympus
* ticket/cs278/7369:
  [ticket/7369] CPF date should always render the users selection.
2010-08-28 23:25:21 +02:00
Andreas Fischer
250c04c8d5 Merge branch 'ticket/nickvergessen/7296' into develop-olympus
* ticket/nickvergessen/7296:
  [ticket/7296] Exporting styles to tar creates corrupted archives.
2010-08-28 23:25:14 +02:00
Andreas Fischer
dfd3c4a5df Merge branch 'ticket/nickvergessen/9519' into develop-olympus
* ticket/nickvergessen/9519:
  [ticket/9519] Replace remaining is_writable() calls with phpbb_is_writable().
  [ticket/9519] Replace remaining is_writable() calls with phpbb_is_writable().
  [ticket/9519] Replace remaining is_writable() calls with phpbb_is_writable().
  [ticket/9519] Replace remaining is_writable() calls with phpbb_is_writable().
2010-08-28 23:25:05 +02:00
Andreas Fischer
3c02a1cff7 Merge branch 'ticket/jellydoughnut/9772' into develop-olympus
* ticket/jellydoughnut/9772:
  [ticket/9772] Unify permissions for sending email when board_email_form is off
2010-08-28 23:24:55 +02:00
rxu
c71236ff4d [ticket/9117] Wrong redirection after login.
Go easy way for now - just place S_LOGIN_REDIRECT before S_HIDDEN_FIELDS so
the last value override the previous one.

PHPBB3-9117
2010-08-28 23:16:00 +02:00
Josh Woody
2a59e6d486 [ticket/9772] Unify permissions for sending email when board_email_form is off
Sending email via memberlist.php was limited to users having u_sendemail. When
board_email_form is disabled, no such requirement was enforced.  This is now
changed.

PHPBB3-9772
2010-08-28 15:49:47 -05:00
Andreas Fischer
3afd2c6948 [ticket/9793] Make sure send_status_line() is defined when in avatar mode.
When download/file.php is in avatar mode set_modified_headers() can be called,
which then calls send_status_line() which is not available because
includes/functions.php is not included in avatar mode.

We also load includes/functions.php in the bootstrap now to solve this problem.

Regression from c1a4cb1d01.

PHPBB3-9793
PHPBB3-7782
2010-08-27 15:36:26 +02:00
Chris Smith
50c6af0216 [ticket/7369] CPF date should always render the users selection.
CPF render code was incorrectly adding the users timezone offset instead
of removing it to compensate for the addition made in user::format_date().

PHPBB3-7369
2010-08-23 06:24:13 +01:00
Andreas Fischer
cd46b39967 Merge branch 'ticket/jellydoughnut/9646' into develop-olympus
* ticket/jellydoughnut/9646:
  [ticket/9646] Honor CSS comments in @import statements
2010-08-22 21:50:17 +02:00
Chris Smith
e4a1f08364 Merge branch 'ticket/nickvergessen/7260' into develop-olympus
* ticket/nickvergessen/7260:
  [ticket/7260] Don't delete poll if one exists and editing user lacks permission
2010-08-22 19:39:46 +01:00
Joas Schilling
aa4519fb44 [ticket/7260] Don't delete poll if one exists and editing user lacks permission
PHPBB3-7260
2010-08-22 19:30:43 +01:00
Andreas Fischer
889eace41c [ticket/9785] Allow users to request new passwords when board is disabled.
PHPBB3-9785
2010-08-22 20:26:18 +02:00
Joas Schilling
3cbcff56b2 [ticket/7296] Exporting styles to tar creates corrupted archives.
Add the folders to the archive before putting the files inside, seems to break
the tar-archives.

PHPBB3-7296
2010-08-22 11:16:19 -04:00
Andreas Fischer
9731f2492f Merge branch 'ticket/nickvergessen/7716' into develop-olympus
* ticket/nickvergessen/7716:
  [ticket/7716] Data too long for column 'message_subject'
2010-08-21 21:27:07 +02:00
Andreas Fischer
32bffe1a32 Revert "[ticket/7716] Data too long for column 'message_subject'"
This reverts commit 91a60aa878.
2010-08-21 21:25:34 +02:00
Andreas Fischer
7474b69175 Merge branch 'ticket/nickvergessen/7716' into develop-olympus
* ticket/nickvergessen/7716:
  [ticket/7716] Data too long for column 'message_subject'
2010-08-21 21:19:12 +02:00
Joas Schilling
2455a744e6 [ticket/7716] Data too long for column 'message_subject'
PHPBB3-7716
2010-08-21 15:14:16 -04:00
Andreas Fischer
81db8a8644 Merge branch 'ticket/nickvergessen/9104' into develop-olympus
* ticket/nickvergessen/9104:
  [ticket/9104] Safari does not display box headers correctly in the ACP.
2010-08-21 20:32:45 +02:00
Andreas Fischer
4222510e9c Merge branch 'ticket/cs278/7332' into develop-olympus
* ticket/cs278/7332:
  [ticket/7332] Redirect users back to post details when performing actions.
  [ticket/7332] Collapse post details content down to a maximum of 300px heigh
2010-08-21 20:30:33 +02:00
Josh Woody
c3a5fd30ee [ticket/9646] Honor CSS comments in @import statements
Add a basic CSS comment parser that allows comments to prevent loading an
@import statement. For simplicity, only whitespace is allowed between /* and
the @import. Also adjust regex to not parse improper quotation marks.

PHPBB3-9646
PHPBB3-8169
2010-08-20 16:02:58 -05:00
Andreas Fischer
bcf4f4fbdf Merge branch 'ticket/cs278/7972' into develop-olympus
* ticket/cs278/7972:
  [ticket/7972] Copying topics in the MCP now indexes the new topic.
2010-08-20 22:25:20 +02:00
Andreas Fischer
34c3732856 Merge branch 'ticket/nickvergessen/9635' into develop-olympus
* ticket/nickvergessen/9635:
  [ticket/9635] Useless parameter $data['post_time'] in function submit_post.
2010-08-20 22:15:15 +02:00
Andreas Fischer
31144ed4c5 Merge branch 'ticket/nickvergessen/9782' into develop-olympus
* ticket/nickvergessen/9782:
  [ticket/9782] Board disable radio set on when server load high
2010-08-20 22:11:04 +02:00
Chris Smith
de8c334aeb Merge branch 'ticket/bantu/9780' into develop-olympus
* ticket/bantu/9780:
  [ticket/9780] Adding unit tests for gen_rand_string().
  [ticket/9780] Add length check back to gen_rand_string().
2010-08-20 20:56:17 +01:00
Andreas Fischer
e09d6c6d71 [ticket/9780] Adding unit tests for gen_rand_string().
PHPBB3-9780
2010-08-20 21:36:56 +02:00
Josh Woody
c901a9eb70 [ticket/9662] Search flood interval no longer applies to non-keyword searches
The search interval was not consistently applied to "special" searches like
"unread posts" and "view your topics."  Now the special searches are always
exempt from the flood interval.

PHPBB3-9662
2010-08-20 14:22:56 -05:00
Joas Schilling
d533121741 [ticket/9780] Add length check back to gen_rand_string().
PHPBB3-9780
2010-08-20 20:11:36 +02:00
Chris Smith
b73d45ffc8 [ticket/7972] Copying topics in the MCP now indexes the new topic.
PHPBB3-7972
2010-08-20 13:59:21 -04:00
Joas Schilling
932b35ab7a [ticket/9782] Board disable radio set on when server load high
PHPBB3-9782
2010-08-20 13:41:06 -04:00
Joas Schilling
cc9a1952d9 [ticket/9635] Useless parameter $data['post_time'] in function submit_post.
PHPBB3-9635
2010-08-19 23:48:25 -04:00
Joas Schilling
5e330044b8 [ticket/9519] Replace remaining is_writable() calls with phpbb_is_writable().
In the ACM-Modules we need to check whether the function is loaded, before we
use it, as this is not the case from download/file.php in avatar-mode.

PHPBB3-9519
2010-08-19 12:30:24 -04:00
Chris Smith
0ee49ca432 Merge branch 'ticket/bantu/9777' into develop-olympus
* ticket/bantu/9777:
  [ticket/9777] Print error message in pre-commit hook when php is not installed.
2010-08-19 17:26:35 +01:00
Joas Schilling
44125f5533 [ticket/9104] Safari does not display box headers correctly in the ACP.
PHPBB3-9104
2010-08-19 12:22:18 -04:00
Josh Woody
3eb01d50cb Merge branch 'ticket/bantu/9702' into develop-olympus
* ticket/bantu/9702:
  [ticket/9702] Take user's timezone settings into account when banning Until ->
2010-08-19 10:56:34 -05:00
Josh Woody
f0aaecd6cc Merge branch 'ticket/bantu/9599' into develop-olympus
* ticket/bantu/9599:
  [ticket/9599] Reimplement phpbb_checkdnsrr() function.
  [ticket/9599] Adding tests for phpbb_checkdnsrr().
  [ticket/9599] Adding network function tests.
2010-08-19 10:53:10 -05:00
Josh Woody
6343e67fab Merge branch 'ticket/bantu/9534' into develop-olympus
* ticket/bantu/9534:
  [ticket/9534] Update function documentation for user_ipwhois().
  [ticket/9534] Adding support for IPv6 addresses in user_ipwhois().
2010-08-19 10:48:41 -05:00
Oleg Pudeyev
90d8fc7e86 [ticket/9777] Print error message in pre-commit hook when php is not installed.
PHPBB3-9777
2010-08-19 17:44:54 +02:00
Josh Woody
5eb175cefd Merge branch 'ticket/bantu/9694' into develop-olympus
* ticket/bantu/9694:
  [ticket/9694] Call error_reporting() in download/file.php when in avatar mode.
  [ticket/9694] Make sure string offset 0 exists to avoid E_NOTICE message.
2010-08-19 10:26:49 -05:00
Josh Woody
68744484c8 Merge branch 'ticket/bantu/9167' into develop-olympus
* ticket/bantu/9167:
  [ticket/9167] Detect and remove any dead left over shadow topics on update.
  [ticket/9167] Remove shadow topics from remaining forums when deleting a forum

Conflicts:
	phpBB/install/database_update.php
2010-08-19 10:09:32 -05:00
Joas Schilling
91a60aa878 [ticket/7716] Data too long for column 'message_subject'
PHPBB3-7716
2010-08-19 11:00:42 -04:00
Josh Woody
25c579c00d Merge branch 'ticket/bantu/9612' into develop-olympus
* ticket/bantu/9612:
  [ticket/9612] Introduce new function gen_rand_string_friendly().
2010-08-19 09:11:36 -05:00
Josh Woody
46d2d97a37 Merge branch 'ticket/bantu/9611' into develop-olympus
* ticket/bantu/9611:
  [ticket/9611] Make length of activation keys variable between 6 and 10.
2010-08-19 09:03:45 -05:00
Joas Schilling
89b35f7ab9 [ticket/9519] Replace remaining is_writable() calls with phpbb_is_writable().
PHPBB3-9519
2010-08-13 17:10:35 +02:00
Joas Schilling
884cc2ac9b [ticket/9519] Replace remaining is_writable() calls with phpbb_is_writable().
includes/functions_convert.php and install/install_convert.php tested by Dicky.

PHPBB3-9519
2010-08-13 16:40:56 +02:00
Joas Schilling
4c95ed0eeb [ticket/9519] Replace remaining is_writable() calls with phpbb_is_writable().
acm_memory.php is untested. install/install_convert.php and
includes/functions_convert.php are going to be tested and committed afterwards.

PHPBB3-9519
2010-08-10 16:11:39 +02:00
Andreas Fischer
64e6faa877 Merge branch 'ticket/cs278/9771' into develop-olympus
* ticket/cs278/9771:
  [ticket/9771] Remove query string parameters that have no name.
2010-08-10 16:05:45 +02:00
Andreas Fischer
59a0bcd38f Merge branch 'ticket/cs278/9761' into develop-olympus
* ticket/cs278/9761:
  [ticket/9761] Reworded quote nesting depth ACP option to match the behaviour
2010-08-10 16:05:18 +02:00
Andreas Fischer
d66aadc33f Merge branch 'ticket/cs278/9760' into develop-olympus
* ticket/cs278/9760:
  [ticket/9760] Remove unrestricted wildcards from search terms.
2010-08-10 16:04:49 +02:00
Andreas Fischer
19599b4c69 Merge branch 'ticket/nickvergessen/9743' into develop-olympus
* ticket/nickvergessen/9743:
  [ticket/9743] Fix background of top2-class in prosilver for RTL-languages.
2010-08-10 16:03:56 +02:00
Andreas Fischer
19d9d12339 Merge branch 'ticket/rxu/6747' into develop-olympus
* ticket/rxu/6747:
  [ticket/9747] Improve word censor.
2010-08-10 16:00:28 +02:00
Andreas Fischer
1778b53f12 Merge branch 'task/cs278/git-tools' into develop-olympus
* task/cs278/git-tools:
  [task/git-tools] Ignore git commit message comments
  [task/git-tools] Adjust the hook to enforce that a ticket is always mentioned
  [task/git-tools] Vastly expanded commit-msg hook.
  [task/git-tools] Beginnings of a syntax checking hook.
  [task/git-tools] Append ticket identifier to commit message prior to editing.
  [task/git-tools] add install and uninstall scripts for hooks
  [task/git-tools] move ticket id appending to commit-msg hook
  [task/git-tools] append ticket id to git log message
2010-08-10 15:50:53 +02:00
Chris Smith
e17ffa01e6 [task/git-tools] Ignore git commit message comments
Git commit message comments can be contained anywhere in the message and
this change ignores where they appear.

PHPBB3-9768
2010-08-10 14:48:46 +01:00
Chris Smith
a9046e5608 [task/git-tools] Adjust the hook to enforce that a ticket is always mentioned
PHPBB3-9768
2010-08-10 14:48:46 +01:00
Chris Smith
db13dc2d43 [task/git-tools] Vastly expanded commit-msg hook.
This updated hook supports validates each line of the commit message
confirms to the phpBB standards [1], there are two git config options
which adjust the behaviour of the hook. They are:

* phpbb.hooks.commit-msg.fatal: Set to false for the hook to allow
	commits with malformed structure, useful if you'll be squashing
	or editing the commits later. True is the default value.
* phpbb.hooks.commit-msg.debug: Any integer value greater than 0 will
	increase the debugging verbosity of the hook, the default value is 0.

[1] http://wiki.phpbb.com/display/DEV/Git

PHPBB3-9768
2010-08-10 14:48:46 +01:00
Chris Smith
66e58234ec [task/git-tools] Beginnings of a syntax checking hook.
Currently this hook checks line length is less than or equal to 80 characters.

PHPBB3-9768
2010-08-10 14:48:45 +01:00
Chris Smith
bfa7b28734 [task/git-tools] Append ticket identifier to commit message prior to editing.
PHPBB3-9770
2010-08-10 14:48:40 +01:00
Chris Smith
b7a1add009 [ticket/7332] Redirect users back to post details when performing actions.
Moderators are redirected to the index page of the MCP after locking a post,
a better location would be to direct them back to the post details.

PHPBB3-7332
2010-08-08 22:54:21 +01:00
Chris Smith
42e7c8a440 [ticket/7332] Collapse post details content down to a maximum of 300px heigh
The MCP post details can be difficult to use if the post is particularly long
this change shrinks the post area to a maximum of 300 pixels, like the topic
review, making it easier to access the functions beneath the post content.

PHPBB3-7332
2010-08-08 22:49:48 +01:00
Chris Smith
013f0b62b8 [ticket/9771] Remove query string parameters that have no name.
PHPBB3-9771
2010-08-08 16:14:05 +01:00
Chris Smith
76348ce43f [ticket/9760] Remove unrestricted wildcards from search terms.
Wildcards without any further result restrictions will cause phpBB to search
for everything, potentially allowing a DoS attack against the DB server by any
user who can use the search system.

PHPBB3-9760
2010-08-08 14:02:34 +01:00
Andreas Fischer
dd63f57344 [ticket/9615] magic_quotes_gpc: call stripslashes() before utf8_basename()
When magic_quotes_gpc is 'On' it also affects the $_FILES array and a filename
like 'bantu"s testfile.txt' will be returned as 'bantu\"s testfile.txt'.

Because utf8_basename() also strips off anything before the last backslash
the filename was returned as '"s testfile.txt'.

Calling stripslashes() before utf8_basename() solves the problem.

PHPBB3-9615
2010-08-04 12:35:19 +02:00
Andreas Fischer
24e23755cf [ticket/9599] Reimplement phpbb_checkdnsrr() function.
Use gethostbyname(), checkdnsrr(), dns_get_record() or nslookup via exec().

PHPBB3-9599
2010-08-03 10:50:41 +02:00
Andreas Fischer
4707b0c18e [ticket/9599] Adding tests for phpbb_checkdnsrr().
Tests for existing and non-existing records of the types:
MX, A, AAAA, NS, CNAME, TXT

PHPBB3-9599
2010-08-03 10:50:41 +02:00
Andreas Fischer
3e111bb41a [ticket/9599] Adding network function tests.
PHPBB3-9599
2010-08-03 10:50:41 +02:00
Joas Schilling
8045f63b41 [ticket/9743] Fix background of top2-class in prosilver for RTL-languages.
PHPBB3-9743
2010-08-02 11:35:38 +02:00
Andreas Fischer
e1328e87ce Merge branch 'ticket/jellydoughnut/9757' into develop-olympus
* ticket/jellydoughnut/9757:
  [ticket/9757] Fix empty template variable {HISTORY_TITLE}
2010-07-31 02:11:33 +02:00
Andreas Fischer
f179987f64 Merge branch 'ticket/jellydoughnut/9499' into develop-olympus
* ticket/jellydoughnut/9499:
  [ticket/9499] Unify definition of dE() and other javascript functions
2010-07-31 02:10:00 +02:00
Andreas Fischer
ccb4182d29 Merge branch 'ticket/kellanved/9521' into develop-olympus
* ticket/kellanved/9521:
  [ticket/9521] Fix error reporting for the native SQL Server plugin.
2010-07-31 02:08:40 +02:00
Andreas Fischer
4d61788843 Merge branch 'ticket/jellydoughnut/9679' into develop-olympus
* ticket/jellydoughnut/9679:
  [ticket/9679] phpBB offers to notify poster even if notification is disabled
2010-07-31 02:07:25 +02:00
Andreas Fischer
d0d9122165 Merge branch 'ticket/jellydoughnut/9722' into develop-olympus
* ticket/jellydoughnut/9722:
  [ticket/9722] Adjust "New Topic" title attribute for consistency in prosilver
2010-07-31 02:06:44 +02:00
Andreas Fischer
4de440826d Merge branch 'ticket/jellydoughnut/9749' into develop-olympus
* ticket/jellydoughnut/9749:
  [ticket/9749] Fulltext mysql unexpected behavior on entering a dash in query
2010-07-31 02:06:12 +02:00
Andreas Fischer
c8bb9a2d37 Merge branch 'ticket/jellydoughnut/9559' into develop-olympus
* ticket/jellydoughnut/9559:
  [ticket/9559] Do not override queue package size in the case of an overflow
2010-07-31 02:04:54 +02:00
Henry Sudhof
47557fd4d2 [ticket/9521] Fix error reporting for the native SQL Server plugin.
The native SQL Server plugin used to return an error string when calling
sql_error. However, some error condition checks are done using is_array.
This patch wraps the error into an array to follow the error logic used
elsewhere.

PHPBB3-9521
2010-07-31 01:48:13 +02:00
Josh Woody
15d7010d46 [ticket/9757] Fix empty template variable {HISTORY_TITLE}
The template variable {HISTORY_TITLE} was always being set to the empty string.
It is now filled with the title of the currently displayed message.  It is not
showed in prosilver or subsilver2 for aesthetic reasons (title is already
prominent)

PHPBB3-9757
2010-07-29 13:19:19 -05:00
Josh Woody
ac56b71c3e [ticket/9749] Fulltext mysql unexpected behavior on entering a dash in query
The Fulltext_mysql class had different behavior when a dash was entered in the
search query than the fulltext_native class.  Specifically, a dash was
automatically turned into boolean NOT even when the user wanted to search for
legitimate hyphenated words like farty-pants

PHPBB3-9749
2010-07-29 10:13:17 -05:00
Josh Woody
8ea0309ed1 [ticket/9679] phpBB offers to notify poster even if notification is disabled
The "notify user" check box would not do anything if checked in this case, but
it was still presented.  The checkbox is now only shown if there are
notification options enabled.

PHPBB3-9679
2010-07-29 10:01:35 -05:00
Andreas Fischer
18079d01b3 Merge branch 'task/evil3/set-permissions' into develop-olympus
* task/evil3/set-permissions:
  [task/set-permissions] shell script to set file permissions
2010-07-29 14:57:53 +02:00
Andreas Fischer
843d6e53fb [ticket/9754] Populate S_USER_POSTED variable with correct value in search.php
PHPBB3-9754
2010-07-26 23:58:10 +02:00
Josh Woody
4880305436 [ticket/9499] Unify definition of dE() and other javascript functions
dE() was defined differently in the ACP and in prosilver.  Other javascript
in editor.js files has also been unified (taking the prosilver implementation
as cannonical)

PHPBB3-9499
2010-07-26 13:29:53 -05:00
rxu
4d0a53b5ee [ticket/9747] Improve word censor.
Better handling of the asterisk inside censor pattern like 'bad*word' etc.

PHPBB3-9747
2010-07-25 16:57:00 +08:00
Richard Foote
66fc086742 [ticket/9748] Replace <br /> before converting < and > to their entities.
PHPBB3-9748
2010-07-24 11:48:47 +02:00
Andreas Fischer
95e0340daf [ticket/9644] Check $mode before calling user_notification() from submit_post()
PHPBB3-9644
2010-07-23 20:30:21 +02:00
Andreas Fischer
2f67eafd34 [ticket/9503] Show 'No subject specified' in 'Posts awaiting approval'.
Show 'No subject specified' in 'Posts awaiting approval' if post subject is
empty.

PHPBB3-9503
2010-07-23 19:50:17 +02:00
Andreas Fischer
aca0e024fa [ticket/9702] Take user's timezone settings into account when banning Until ->
PHPBB3-9702
2010-07-23 18:41:49 +02:00
Andreas Fischer
e5d5d58172 [ticket/9091] Extract IPv4 address from addresses mapped into IPv6.
PHPBB3-9091
2010-07-23 12:48:01 +02:00
Josh Woody
2f312b2175 [ticket/9559] Do not override queue package size in the case of an overflow
This reverts r8025 to includes/functions_messenger.php.  That code caused
problems on hosters with email limits less than package_size*2.5.  And it isn't
desirable in general to over-ride the admin's configuration options.

PHPBB3-9559
2010-07-22 10:44:31 -05:00
Josh Woody
c284ffade9 [ticket/9722] Adjust "New Topic" title attribute for consistency in prosilver
Title attribute was being applied to a <div> at the top of the page and to an
<a> at the bottom of the page.  Now both being applied to the <div>.

PHPBB3-9722
2010-07-21 22:42:44 -05:00
Andreas Fischer
fc25fe694a Merge branch 'ticket/bantu/9068' into develop-olympus
* ticket/bantu/9068:
  [ticket/9068] Added a missing comma in acp load settings explanation text.
2010-07-22 01:41:02 +02:00
Andreas Fischer
0f5814ac4f Merge branch 'ticket/bantu/9744' into develop-olympus
* ticket/bantu/9744:
  [ticket/9744] Fix mistyped word 'then' in FAQ. It should be 'than'.
2010-07-22 01:40:44 +02:00
Andreas Fischer
fada2ad261 Merge branch 'ticket/t-backoff/9099' into develop-olympus
* ticket/t-backoff/9099:
  [ticket/9099] Add missing commas in acp language.
2010-07-22 01:40:19 +02:00
Andreas Fischer
cfe0b5356f Merge branch 'ticket/jellydoughnut/9727' into develop-olympus
* ticket/jellydoughnut/9727:
  [ticket/9727] Smiley Path replacement in feeds is too generic
2010-07-22 01:39:18 +02:00
Nick Anderegg
afff4f7923 [ticket/9068] Added a missing comma in acp load settings explanation text.
PHPBB3-9068
2010-07-22 01:36:08 +02:00
Andreas Fischer
72dddf3aa3 [ticket/9744] Fix mistyped word 'then' in FAQ. It should be 'than'.
PHPBB3-9744
2010-07-22 00:31:13 +02:00
Tabitha Backoff
875fcda506 [ticket/9099] Add missing commas in acp language.
PHPBB3-9099
2010-07-21 17:37:14 +02:00
Josh Woody
16c95b4f83 [ticket/9727] Smiley Path replacement in feeds is too generic
The smiley path replacement in the feeds was too broad: any post content
containing "./" was changed to the fully qualified board URL. This broke CSS
for example.

PHPBB3-9727
2010-07-18 11:51:13 -05:00
Andreas Fischer
0dc05a2d84 Merge branch 'ticket/kellanved/9504' into develop-olympus
* ticket/kellanved/9504:
  [ticket/9504] Allow whitespaces in gallery avatars
2010-07-15 23:15:41 +02:00
Andreas Fischer
cb043b0e61 Merge branch 'ticket/rxu/9658' into develop-olympus
* ticket/rxu/9658:
  [ticket/9658] Optimize topic splitting.
2010-07-15 23:15:36 +02:00
rxu
1363ee109b [ticket/9658] Optimize topic splitting.
Split topics takes too long in some cases because of wrong variables or arrays
values types adjustment. Cast values representing topic and forum ids as int.

PHPBB3-9658
2010-07-15 23:10:22 +02:00
Henry Sudhof
8690d25b4f [ticket/9504] Allow whitespaces in gallery avatars
Gallery avatars are discovered on the server filesystem; to allow linking to
the images, the filenames are urlencoded before being written to the database.
However, getimagesize needs the decoded filename as input.

PHPBB3-9504
2010-07-15 13:05:56 +02:00
Andreas Fischer
e7e98f1de5 Merge branch 'ticket/nickvergessen/7720' into develop-olympus
* ticket/nickvergessen/7720:
  [ticket/7720] Fix alternative image-description for unread posts.
2010-07-14 20:55:49 +02:00
Joas Schilling
954b3c3484 [ticket/7720] Fix alternative image-description for unread posts.
Changed the wrong word "new" to "unread" as that is, what we show with the
red-icons, not whether the post is new or not. Language variables were
kept for backwards compatibility.

PHPBB3-7720
2010-07-14 20:55:07 +02:00
Patrick W
54713dcdc7 [ticket/9761] Reworded quote nesting depth ACP option to match the behaviour
The nesting depth applies per quote block, not per post which the previous
label and description indicated.

PHPBB3-9761
2010-07-12 02:04:29 +01:00
Igor Wiedler
14e5da90c3 [task/git-tools] add install and uninstall scripts for hooks
PHPBB3-9769
2010-07-12 02:04:29 +01:00
Igor Wiedler
6b2f4b6a85 [task/git-tools] move ticket id appending to commit-msg hook
PHPBB3-9770
2010-07-12 02:04:29 +01:00
Igor Wiedler
f0509e4620 [task/git-tools] append ticket id to git log message
PHPBB3-9770
2010-07-12 02:04:29 +01:00
Andreas Fischer
da256b33d9 Merge branch 'ticket/ckwalsh/9715' into develop-olympus
* ticket/ckwalsh/9715:
  [ticket/9715] Better email regex
  [ticket/9715] Extend email unit tests
2010-07-12 01:56:00 +02:00
Andreas Fischer
d869fc9804 Merge branch 'ticket/bantu/9714' into develop-olympus
* ticket/bantu/9714:
  [ticket/9714] Use correct variable name in email regular expression tests.
2010-07-12 01:55:52 +02:00
Andreas Fischer
88f6caf012 Merge branch 'ticket/naderman/9701' into develop-olympus
* ticket/naderman/9701:
  [ticket/9701] Prevent notices from being hidden by template tests
2010-07-12 01:53:58 +02:00
Andreas Fischer
eb7254a0c4 Merge branch 'ticket/naderman/9140' into develop-olympus
* ticket/naderman/9140:
  [ticket/9140] Check current board version in incremental update packages
2010-07-12 01:38:39 +02:00
Gabriel Vazquez
2ba6360e43 [ticket/9140] Check current board version in incremental update packages
Since we do not want to limit the updater functionality we only display
a prominent warning when the current board version does not match the
version the update files are meant to update from.

PHPBB3-9140
2010-07-12 01:37:05 +02:00
Cullen Walsh
593e193bdc [ticket/9715] Better email regex
Using email regex created by James Watts and Francisco Jose Martin Moreno.
This passes many more tests for RFC valid emails.

PHPBB3-9715
2010-07-11 16:22:26 -07:00
Cullen Walsh
a0b9f7806a [ticket/9715] Extend email unit tests
Adding more email tests for a wider range of valid email formats.

PHPBB3-9715
2010-07-11 16:20:27 -07:00
Andreas Fischer
6724b79967 Merge branch 'ticket/nickvergessen/9531' into develop-olympus
* ticket/nickvergessen/9531:
  [ticket/9531] BBCode-less quotes fallback-option is missing "Author wrote:"
2010-07-12 00:04:33 +02:00
Joas Schilling
5d9948e39c [ticket/9531] BBCode-less quotes fallback-option is missing "Author wrote:"
When quoting from the topic-review the statement "Author wrote:" is missing. The fix for this was not complete: Now it's backwards compatibile and uses the LA_ for the language variables.

PHPBB3-9531
2010-07-11 10:18:45 +02:00
Andreas Fischer
062d8fda04 Merge branch 'ticket/adamreyher/9012' into develop-olympus
* ticket/adamreyher/9012:
  [ticket/9012] Adjust shadow topic title to the title at the time it was moved.
2010-07-11 02:53:06 +02:00
Adam Reyher
b939ce5940 [ticket/9012] Adjust shadow topic title to the title at the time it was moved.
Moved topics which have their title changed in the new forum will now show the
old title in the original viewforum instead of the new title.

PHPBB3-9012
2010-07-11 02:44:07 +02:00
Andreas Fischer
2d9aa45aef Merge branch 'ticket/jellydoughnut/9637' into develop-olympus
* ticket/jellydoughnut/9637:
  [ticket/9637] Do not cache SQL server version in all cases
2010-07-11 01:44:59 +02:00
Josh Woody
9c61455d26 [ticket/9637] Do not cache SQL server version in all cases
Because the existing cache is global, there is no way to differentiate between
each of two databases which may be two different DBAL objects pointing to
servers with wildly different versions of an RDBMS. phpBB only has this
situation in the UCF, thus only one file changed outside the DBAL. I have
added a second optional parameter, $use_cache to each of the implementations
of dbal::sql_server_info()

PHPBB3-9637
2010-07-11 01:41:38 +02:00
Andreas Fischer
08a34ebe94 Merge branch 'ticket/jellydoughnut/9629' into develop-olympus
* ticket/jellydoughnut/9629:
  [ticket/9629] Allow style.php to retrieve its session ID from cookies
2010-07-11 01:41:22 +02:00
Josh Woody
c40b2c7601 [ticket/9629] Allow style.php to retrieve its session ID from cookies
style.php takes a session ID to ensure it gets the right language for a user,
but that session ID is always passed in GET. This allows change allows the SID
to be read from the cookie, and theoretically makes it friendlier for caching
engines like Varnish.

PHPBB3-9629
2010-07-11 01:35:01 +02:00
Andreas Fischer
c0183cabd0 [ticket/9534] Update function documentation for user_ipwhois().
PHPBB3-9534
2010-07-11 01:19:42 +02:00
Andreas Fischer
ed44235d26 [ticket/9534] Adding support for IPv6 addresses in user_ipwhois().
whois.arin.net does currently not refer to other servers (using ReferralServer)
when queried for an IPv6 address. whois.sixxs.net however works in this case.

This also adds '.' to the hostname to make sure we're querying the dns root.

PHPBB3-9534
2010-07-11 01:19:27 +02:00
Andreas Fischer
e46745ed34 Merge branch 'ticket/nickvergessen/9678' into develop-olympus
* ticket/nickvergessen/9678:
  [ticket/9678] Flash attachments are not displayed in subsilver2.
2010-07-10 21:22:33 +02:00
Andreas Fischer
e629929958 Merge branch 'ticket/nickvergessen/9677' into develop-olympus
* ticket/nickvergessen/9677:
  [ticket/9677] Subsilver2 is missing the bbcode-helpline for inline-attachments.
2010-07-10 21:22:31 +02:00
Andreas Fischer
0c2512bea2 Merge branch 'ticket/jellydoughnut/9650' into develop-olympus
* ticket/jellydoughnut/9650:
  [ticket/9650] Do not allow banning the anonymous user by username
2010-07-10 21:22:16 +02:00
Nils Adermann
bbc3105466 [ticket/9701] Prevent notices from being hidden by template tests
The template tests disable NOTICEs for the duration of template execution since
the current version of the template engine does not generate sufficiently clean
code. The error level is reset aftwards, however that part is skipped when
trigger_error is called which is converted into a regular exception by PHPUnit
and passed down until caught. Such exceptions are now caught to reset the error
level, and then the exception is rethrown.

This uncovered another issue in the template tests which only passed because
NOTICEs were unintentionally disabled at this point. assign_display is also
required to operate without NOTICEs. The respective code has been added around
its callee as well. However no handling of exceptions takes place there. If
another test checking for errors in that function is ever added similar catch
logic will have to be added there.

PHPBB3-9701
2010-07-08 22:46:28 +02:00
Joas Schilling
df99bdbd53 [ticket/9678] Flash attachments are not displayed in subsilver2.
PHPBB3-9678
2010-07-08 21:22:54 +02:00
Joas Schilling
fc89d5d7db [ticket/9677] Subsilver2 is missing the bbcode-helpline for inline-attachments.
PHPBB3-9677
2010-07-08 21:13:17 +02:00
Andreas Fischer
c6c4d01fe9 [ticket/9714] Use correct variable name in email regular expression tests.
PHPBB3-9714
2010-07-08 20:26:50 +02:00
Josh Woody
ae967d16f1 [ticket/9650] Do not allow banning the anonymous user by username
Banning anonymous can result in bad things, like not being able to log in.  However, it was possible until now.

PHPBB3-9650
2010-07-08 13:24:45 -05:00
Andreas Fischer
6da582e8be Merge branch 'ticket/p/9570' into develop-olympus
* ticket/p/9570:
  [ticket/9570] Changed "system" to "guest" timezone in ACP, added explanation.
2010-07-08 20:02:34 +02:00
Andreas Fischer
29716cd5d5 Merge branch 'ticket/p/9589' into develop-olympus
* ticket/p/9589:
  [ticket/9589] Added sample nginx configuration file for phpbb.
2010-07-08 20:01:22 +02:00
Andreas Fischer
7a0b554724 Merge branch 'ticket/p/9593' into develop-olympus
* ticket/p/9593:
  [ticket/9593] A readme file for unit tests and running unit tests.
2010-07-08 20:00:26 +02:00
Andreas Fischer
c3db21bfa2 Merge branch 'ticket/bantu/9451' into develop-olympus
* ticket/bantu/9451:
  [ticket/9451] Add optional $can_upload parameter to avatar_process_user().
2010-07-08 19:52:29 +02:00
Andreas Fischer
f92c96d424 Merge branch 'ticket/jellydoughnut/9690' into develop-olympus
* ticket/jellydoughnut/9690:
  [ticket/9690] Add forthcoming Bing Bot to list of recognized bots
2010-07-08 19:49:22 +02:00
Andreas Fischer
c86f9eb25a Merge branch 'ticket/evil3/9704' into develop-olympus
* ticket/evil3/9704:
  [ticket/9704] Fix minor typo in coding guidelines.
2010-07-08 19:44:39 +02:00
Igor Wiedler
58cb46d344 [ticket/9704] Fix minor typo in coding guidelines.
PHPBB3-9704
2010-07-08 09:15:03 +02:00
Andreas Fischer
c79df9700d Merge branch 'ticket/nickvergessen/9578' into develop-olympus
* ticket/nickvergessen/9578:
  [ticket/9578] ACP Posting tab is missing "Post settings" module.
2010-07-08 02:20:25 +02:00
Andreas Fischer
c592cab989 Merge branch 'ticket/nickvergessen/9628' into develop-olympus
* ticket/nickvergessen/9628:
  [ticket/9628] _add_module 'after'-parameter does not work correctly.
2010-07-08 02:20:05 +02:00
Andreas Fischer
f22f89888d Merge branch 'ticket/jellydoughnut/9695' into develop-olympus
* ticket/jellydoughnut/9695:
  [ticket/9695] Correct the improper display of user input in mcp_ban.php
2010-07-08 01:41:16 +02:00
Andreas Fischer
c091a04a55 Merge branch 'ticket/nickvergessen/9697' into develop-olympus
* ticket/nickvergessen/9697:
  [ticket/9697] Backlink broken when the select parent forum does not exist.
2010-07-08 01:29:47 +02:00
Andreas Fischer
e3fe4d7b56 Merge branch 'ticket/jellydoughnut/9703' into develop-olympus
* ticket/jellydoughnut/9703:
  [ticket/9703] Correct database leak where deleting user did not rm some PM data
2010-07-08 01:24:18 +02:00
Andreas Fischer
ef753d046d Merge branch 'ticket/cs278/9712' into develop-olympus
* ticket/cs278/9712:
  [ticket/9712] Future dates can be formatted as 'less than one minute ago'
2010-07-08 01:21:55 +02:00
Chris Smith
9764a32138 [ticket/9712] Future dates can be formatted as 'less than one minute ago'
PHPBB3-9712
2010-07-07 23:04:46 +01:00
Josh Woody
d00f2ec183 [ticket/9690] Add forthcoming Bing Bot to list of recognized bots
Microsoft will rename MSN Bot to Bing Bot later this year, and change its user agent.  This updates phpBB to be aware of Bing Bot

PHPBB3-9690
2010-07-07 15:51:31 -05:00
Thatbitextra
e130a6bad9 [ticket/9451] Add optional $can_upload parameter to avatar_process_user().
Avoid unnecessary overhead in avatar_process_user() by optionally passing in
the value of $can_upload.

PHPBB3-9451
2010-07-07 16:45:00 +02:00
Oleg Pudeyev
030f9c03c6 [ticket/9593] A readme file for unit tests and running unit tests.
Added a readme file explaining prerequisites for unit tests, and how to run
unit tests.

PHPBB3-9593
2010-07-07 16:10:13 +02:00
Andreas Fischer
4ac5d5e352 Merge branch 'ticket/naderman/9659' into develop-olympus
* ticket/naderman/9659:
  [ticket/9659] Signature options in set_user_options
2010-07-07 12:09:04 +02:00
Richard Foote
b64f456c40 [ticket/9659] Signature options in set_user_options
The phpBB3 defaults are being used.

PHPBB3-9659
2010-07-06 14:43:50 +02:00
Oleg Pudeyev
097854ca85 [ticket/9570] Changed "system" to "guest" timezone in ACP, added explanation.
PHPBB3-9570
2010-07-06 13:14:04 +02:00
Josh Woody
24cc3fd0f9 [ticket/9703] Correct database leak where deleting user did not rm some PM data
Users' PM rules and PM folders were being left intact when deleting them.

PHPBB3-9703
2010-07-03 21:21:22 -05:00
Joas Schilling
0db657381b [ticket/9697] Backlink broken when the select parent forum does not exist.
PHPBB3-9697
2010-07-02 12:28:06 +02:00
Josh Woody
0e93d8386b [ticket/9695] Correct the improper display of user input in mcp_ban.php
Correct the improper display of "ban_reason" and "ban_give_reason" in mcp_ban.php

PHPBB3-9695
2010-07-01 17:48:32 -05:00
Andreas Fischer
881c74688b [ticket/9694] Call error_reporting() in download/file.php when in avatar mode.
PHPBB3-9694
2010-07-01 23:30:48 +02:00
Andreas Fischer
32882fd798 [ticket/9694] Make sure string offset 0 exists to avoid E_NOTICE message.
PHPBB3-9694
2010-07-01 23:29:25 +02:00
Igor Wiedler
38cc9ce72f [task/set-permissions] shell script to set file permissions
PHPBB3-9689
2010-06-28 18:12:56 +02:00
Andreas Fischer
b7ae0fe4e9 Merge branch 'ticket/bantu/9655' into develop-olympus
* ticket/bantu/9655:
  [ticket/9655] Pass E_USER_WARNING, so it doesn't look like a successful action.
2010-06-20 22:46:23 +02:00
Andreas Fischer
352c69f7b2 Merge branch 'ticket/bantu/9665' into develop-olympus
* ticket/bantu/9665:
  [ticket/9665] Allow preview of signature when it is the string "0".
2010-06-20 22:46:14 +02:00
Andreas Fischer
d537dc60ce Merge branch 'ticket/bantu/9656' into develop-olympus
* ticket/bantu/9656:
  [ticket/9656] Remove @ from phpinfo() to get correct error_reporting value.
2010-06-20 22:45:55 +02:00
Andreas Fischer
b91950d413 Merge branch 'ticket/bantu/9653' into develop-olympus
* ticket/bantu/9653:
  [ticket/9653] Valid XHTML with code BBCode in subsilver2 viewtopic signatures
2010-06-20 22:45:47 +02:00
Andreas Fischer
3496948b94 Merge branch 'ticket/bantu/9643' into develop-olympus
* ticket/bantu/9643:
  [ticket/9643] Only split $port from $sqlserver, if it's not an IPv6 address.
2010-06-20 22:45:28 +02:00
Andreas Fischer
6b1f7a2d9d Merge branch 'ticket/bantu/9112' into develop-olympus
* ticket/bantu/9112:
  [ticket/9112] Make sure current user can see most active forum/topic.
2010-06-20 22:45:16 +02:00
Andreas Fischer
ac45f07402 [ticket/9653] Valid XHTML with code BBCode in subsilver2 viewtopic signatures
PHPBB3-9653
2010-06-20 21:48:07 +02:00
Andreas Fischer
52c3b51c95 [ticket/9656] Remove @ from phpinfo() to get correct error_reporting value.
PHPBB3-9656
2010-06-20 21:43:56 +02:00
Andreas Fischer
6221ba4dd1 [ticket/9665] Allow preview of signature when it is the string "0".
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
2010-06-20 13:38:36 +02:00
Andreas Fischer
6d248097e5 Merge branch 'ticket/jellydoughnut/9132' into develop-olympus
* ticket/jellydoughnut/9132:
  [ticket/9132] Oracle CLOB support is broken, preventing storage of long strings
2010-06-17 19:15:17 +02:00
Andreas Fischer
4eac7dca6d Merge branch 'ticket/rxu/9606' into develop-olympus
* ticket/rxu/9606:
  [ticket/9606] Optimize unread search option.
2010-06-17 19:10:59 +02:00
Andreas Fischer
876a6e4686 Merge branch 'ticket/bantu/9626' into develop-olympus
* 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.
2010-06-17 18:50:41 +02:00
Andreas Fischer
26057fe3ff Merge branch 'ticket/bantu/9587' into develop-olympus
* ticket/bantu/9587:
  [ticket/9587] Replace '0px' with '0'.
2010-06-17 18:35:53 +02:00
Andreas Fischer
4bc2158235 [ticket/9587] Replace '0px' with '0'.
This has been introduced by merge of c7a25c58b8, which was not supposed to be merged. 1b2a65333b5be1f6086bbd1d438e061041bd2b75 was supposed to be merged instead.

PHPBB3-9587
2010-06-17 17:01:13 +02:00
Andreas Fischer
f9105084b0 Merge branch 'ticket/nickvergessen/9605' into develop-olympus
* ticket/nickvergessen/9605:
  [ticket/9605] Wrong class added to topiclist, when there's no announcement topic.
2010-06-17 16:47:48 +02:00
Andreas Fischer
9975d24b9d Merge branch 'ticket/nickvergessen/9605' into develop-olympus
* ticket/nickvergessen/9605:
  [ticket/9605] Wrong class added to topiclist, when there's no announcement topic.
2010-06-17 16:31:38 +02:00
Andreas Fischer
84e58260ae Merge branch 'ticket/nickvergessen/9587' into develop-olympus
* ticket/nickvergessen/9587:
  [ticket/9587] Prosilver overrides reCaptcha class.
2010-06-17 16:27:25 +02:00
Andreas Fischer
8d18b98e15 Merge branch 'feature/bantu/dbal-tests' into develop-olympus
* 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: ""
2010-06-17 16:17:06 +02:00
Joas Schilling
ef69f22698 [feature/dbal-tests] Follow the coding guidelines and ...
resolved a bug caused by a missing order-by.

PHPBB3-9625
2010-06-17 16:06:17 +02:00
Joas Schilling
e3420de295 [feature/dbal-tests] Update data
PHPBB3-9625
2010-06-17 16:06:10 +02:00
Joas Schilling
d9c2e6cbcf [feature/dbal-tests] Multi insert
PHPBB3-9625
2010-06-17 16:06:10 +02:00
Joas Schilling
c4b0814c62 [feature/dbal-tests] Delete data
PHPBB3-9625
2010-06-17 16:06:10 +02:00
Joas Schilling
539ae0ffaf [feature/dbal-tests] Insert data
PHPBB3-9625
2010-06-17 16:06:10 +02:00
Joas Schilling
b03a7a2c83 [feature/dbal-tests] Fix SQL-ERROR: invalid input syntax for integer: ""
PHPBB3-9625
2010-06-17 16:06:10 +02:00
Joas Schilling
82db1c9c50 [ticket/9605] Wrong class added to topiclist, when there's no announcement topic.
Compare the topic_type on their real value, to ensure there is no MOD causing problems, because of a new topic-type.

PHPBB3-9605
2010-06-17 15:56:25 +02:00
Andreas Fischer
e66c089626 [ticket/9112] Make sure current user can see most active forum/topic.
PHPBB3-9112
2010-06-15 20:20:02 +02:00
Andreas Fischer
6c7d16894b Merge branch 'ticket/jellydoughnut/9633' into develop-olympus 2010-06-15 14:28:00 +02:00
Andreas Fischer
7c789795fb Merge branch 'ticket/jellydoughnut/9623' into develop-olympus 2010-06-15 13:41:02 +02:00
Josh Woody
d6551b1233 [ticket/9623] Proper UTF8 encoding for usernames in pruning section
The username textboxes were not being properly encoded in UTF8.

PHPBB3-9623
2010-06-15 13:39:58 +02:00
Andreas Fischer
46cae83264 [ticket/9655] Pass E_USER_WARNING, so it doesn't look like a successful action.
PHPBB3-9655
2010-06-14 22:27:23 +02:00
Josh Woody
e942af5331 [ticket/9132] Oracle CLOB support is broken, preventing storage of long strings
This reverts Oracle support to the state it was in prior to phpBB 3.0.6.  That is, storage of long strings works again (e.g. posts > 4 KB), but the database backup/restore functionality is broken.  We feel that the ability to store long strings is more important than the DB restore, since Oracle 10g itself provides tools for backing up databases.

PHPBB3-9132
2010-06-13 19:18:35 -05:00
Andreas Fischer
38fc35a497 [ticket/9167] Detect and remove any dead left over shadow topics on update.
PHPBB3-9167
2010-06-11 21:52:04 +02:00
Andreas Fischer
30891ffb46 [ticket/9167] Remove shadow topics from remaining forums when deleting a forum
including posts.

The function delete_topic_shadows() had to be reimplemented.
It was there but it was completly broken and hasn't been used at all.

PHPBB3-9167
2010-06-11 21:50:08 +02:00
Oleg Pudeyev
bb32daab63 [ticket/9589] Added sample nginx configuration file for phpbb.
PHPBB3-9589
2010-06-10 15:58:49 +02:00
Andreas Fischer
879bc89524 [ticket/9643] Only split $port from $sqlserver, if it's not an IPv6 address.
PHPBB3-9643
2010-06-08 19:27:55 +02:00
Josh Woody
b4df815547 [ticket/9633] Newly Registered Group Colour not used in "Our Newest Member"
Due to an oversight, the default group was not properly checked in the user_add function.  This fix corrects the check.  No other changes are needed because they go direct to the database, this one used an array in memory.

PHPBB3-9633
2010-06-01 00:19:43 -05:00
Nils Adermann
a5b238019b Merge branch 'feature/notify_status' into develop-olympus
* feature/notify_status:
  [ticket/9179] Remove unnecessary newline.
2010-05-30 15:20:37 +02:00
Andreas Fischer
491fc0516e [ticket/9179] Remove unnecessary newline.
cc8d22bed6 added one empty line too much.

PHPBB3-9179
2010-05-30 15:20:15 +02:00
Nils Adermann
c38cb1761c Merge branch 'ticket/nickvergessen/9147' into develop-olympus
* ticket/nickvergessen/9147:
  [ticket/9147] "Change topic type"-option "Normal" always selected.
2010-05-30 15:05:06 +02:00
Nils Adermann
8f91e6ce8b Merge branch 'ticket/nickvergessen/9135' into develop-olympus
* ticket/nickvergessen/9135:
  [ticket/9135] Fix report-icon for moderators in PM folders.
2010-05-30 14:58:30 +02:00
Nils Adermann
a6b07eef5a Merge branch 'ticket/nickvergessen/9094' into develop-olympus
* ticket/nickvergessen/9094:
  [ticket/9094] Hide "Copy permissions" message, when permissions were copied.
2010-05-30 14:54:22 +02:00
Nils Adermann
760957e7e7 Merge branch 'ticket/nickvergessen/8936' into develop-olympus
* ticket/nickvergessen/8936:
  [ticket/8936] Subsilver2 missing reply-to-all feature.
2010-05-30 14:26:17 +02:00
Nils Adermann
b7afeadd6d Merge branch 'ticket/bantu/8792' into develop-olympus
* ticket/bantu/8792:
  [ticket/8792] Add LDAP_SEARCH_FAILED string for when ldap_search() fails.
2010-05-30 14:19:58 +02:00
Nils Adermann
26c2efc083 Merge branch 'ticket/p/7782' into develop-olympus
* ticket/p/7782:
  [ticket/7782] Return 404 HTTP status code for nonexistent attachments.
  [ticket/7782] Added spaces.
  [ticket/7782] Added phpdoc comment for send_status_line function.
  [ticket/7782] Send status line using refactored download/file.php logic.
2010-05-29 23:23:08 +02:00
Joas Schilling
801a44b3f0 [ticket/9147] "Change topic type"-option "Normal" always selected.
PHPBB3-9147
2010-05-28 14:25:56 +02:00
Joas Schilling
4637709f0a [ticket/9628] _add_module 'after'-parameter does not work correctly.
The modules were grouped by left_id so num_modules is always one (hopefully), but the number of rows is the actual value we'd like to know. Removing the GROUP BY resolves the issue.

PHPBB3-9628
2010-05-28 13:13:53 +02:00
Joas Schilling
160d1bfd07 [ticket/9578] ACP Posting tab is missing "Post settings" module.
PHPBB3-9578
2010-05-28 13:03:56 +02:00
Joas Schilling
4746a60d22 [ticket/9094] Hide "Copy permissions" message, when permissions were copied.
When creating a forum, you afterwards read "Forum created successfully. Now you are able to set permissions for this forum.", also when you already copied the permissions from another forum.

PHPBB3-9094
2010-05-27 15:17:03 +02:00
Joas Schilling
9e24993855 [ticket/9135] Fix report-icon for moderators in PM folders.
There was a S_TOPIC_REPORTED switch in the template of prosilver, which should indicate whether the PM is reported. But the variable was neither filled, nor named correctly. Now it is filled with a boolean and a link to the report is displayed for permitted users.

PHPBB3-9135
2010-05-26 01:38:19 +02:00
Andreas Fischer
aaaa4f9abe [ticket/9626] Adding tests for the URL regular expression.
PHPBB3-9626
2010-05-25 12:08:52 +02:00
Andreas Fischer
646b16f5db [ticket/9626] Add missing class prefix.
PHPBB3-9626
2010-05-25 12:08:51 +02:00
Andreas Fischer
6a5ad05d8a [ticket/9626] A few tests for the email regular expression.
PHPBB3-9626
2010-05-25 12:08:51 +02:00
Andreas Fischer
12e92fc45e [ticket/9626] More IPv6 regex tests.
PHPBB3-9626
2010-05-25 12:08:51 +02:00
Andreas Fischer
1c59f3dbd0 [ticket/9626] Adding tests for the IPv4 regular expression.
PHPBB3-9626
2010-05-25 12:08:51 +02:00
Andreas Fischer
222173adae [ticket/9626] Adding tests for regular expressions.
Adding tests for the IPv6 regular expression returned by get_preg_expression()

PHPBB3-9626
2010-05-25 12:08:51 +02:00
Joas Schilling
c7a25c58b8 [ticket/9587] Prosilver overrides reCaptcha class.
PHPBB3-9587
2010-05-24 23:59:28 +02:00
Joas Schilling
b6df5bdb14 [ticket/8936] Subsilver2 missing reply-to-all feature.
PHPBB3-8936
2010-05-24 23:32:18 +02:00
Joas Schilling
877d852a52 [ticket/9605] Wrong class added to topiclist, when there's no announcement topic.
Just added a check whether the type is announcement or higher.

PHPBB3-9605
2010-05-24 20:12:34 +02:00
Oleg Pudeyev
c185e45e09 [ticket/7782] Return 404 HTTP status code for nonexistent attachments.
PHPBB3-7782
2010-05-17 14:14:53 -04:00
rxu
d819ee343a [ticket/9606] Optimize unread search option.
Get rid of redundant SQL query in search.php that should increase performance slightly.

PHPBB3-9606
2010-05-17 21:14:02 +08:00
Andreas Fischer
c2b29c317f [ticket/9612] Introduce new function gen_rand_string_friendly().
Introduce new function gen_rand_string_friendly() for user friendly random
strings like passwords and captcha codes. Strings generated by
gen_rand_string_friendly() will not contain the characters 0 and O.

By adding a new function we can increase the entropy of strings
generated by gen_rand_string() by putting 0 and O back in.

PHPBB3-9612
2010-05-17 09:44:48 +02:00
Andreas Fischer
af21e38c1d [ticket/9611] Make length of activation keys variable between 6 and 10.
PHPBB3-9611
2010-05-17 08:54:51 +02:00
Oleg Pudeyev
d721e94b88 [ticket/7782] Added spaces.
PHPBB3-7782
2010-05-17 02:01:13 -04:00
Oleg Pudeyev
691f682fc2 [ticket/7782] Added phpdoc comment for send_status_line function.
PHPBB3-7782
2010-05-16 19:52:01 -04:00
Oleg Pudeyev
c1a4cb1d01 [ticket/7782] Send status line using refactored download/file.php logic.
PHPBB3-7782
2010-05-16 18:24:26 -04:00
Andreas Fischer
327f9afbc0 [ticket/8792] Add LDAP_SEARCH_FAILED string for when ldap_search() fails.
No longer use LDAP_NO_SERVER_CONNECTION in case ldap_search() fails.
Add and use LDAP_SEARCH_FAILED instead, so users can tell the difference
between ldap_connect() failing and ldap_search() failing.

PHPBB3-8792
2010-05-16 23:05:13 +02:00
Joas Schilling
6d7e30ae99 [develop-olympus] Move rxu and nickvergessen to Developers 2010-05-16 20:06:11 +02:00
Nils Adermann
0bf2c3eed5 Merge branch 'feature/notify_status' into develop-olympus
* feature/notify_status:
  [feature/notify_status] Define'd constants for notify_status
2010-05-16 19:51:25 +02:00
Mark
cc8d22bed6 [feature/notify_status] Define'd constants for notify_status
define'd constants NOTIFY_YES, NOTIFY_NO to replace magic numbers in
forums_watch table and topics_watch table

PHPBB3-9179
2010-05-16 19:50:35 +02:00
Nils Adermann
e36da18b1c Merge branch 'ticket/p/7782' into develop-olympus
* ticket/p/7782:
  [ticket/7782] Send 404 HTTP code when a nonexistent user/forum/topic is requested.
2010-05-16 19:25:41 +02:00
Oleg Pudeyev
82ce29ac58 [ticket/7782] Send 404 HTTP code when a nonexistent user/forum/topic is requested.
PHPBB3-7782
2010-05-16 19:23:54 +02:00
Nils Adermann
321f7a9946 Merge branch 'ticket/nickvergessen/9530' into develop-olympus
* ticket/nickvergessen/9530:
  [ticket/9530] The prosilver problem in #9531 exists in subsilver2 editor.js
  [ticket/9530] Subsilver2 is missing BBCode-less quotes fallback-option when bbcodes are disabled.
2010-05-16 19:17:25 +02:00
Joas Schilling
a11fa9c738 [ticket/9530] The prosilver problem in #9531 exists in subsilver2 editor.js
PHPBB3-9530
2010-05-16 19:14:57 +02:00
Joas Schilling
d147bdcd73 [ticket/9530] Subsilver2 is missing BBCode-less quotes fallback-option when bbcodes are disabled.
PHPBB3-9530
2010-05-16 19:14:36 +02:00
Nils Adermann
b1f9b39475 Merge branch 'ticket/nickvergessen/9531' into develop-olympus
* ticket/nickvergessen/9531:
  [ticket/9531] BBCode-less quotes fallback-option is missing "Author wrote:" line when quoting from topic-review.
2010-05-16 19:13:32 +02:00
Joas Schilling
fe9c5019b6 [ticket/9531] BBCode-less quotes fallback-option is missing "Author wrote:" line when quoting from topic-review.
PHPBB3-9531
2010-05-16 19:13:22 +02:00
Nils Adermann
b308cfe5ea Merge branch 'ticket/bantu/9547' into develop-olympus
* ticket/bantu/9547:
  [ticket/9547] Use separate constants for display/enable active topics.
2010-05-16 18:58:15 +02:00
Andreas Fischer
d555e83b80 [ticket/9547] Use separate constants for display/enable active topics.
Split S_DISPLAY_ACTIVE_TOPICS into S_DISPLAY_ACTIVE_TOPICS and
S_ENABLE_ACTIVE_TOPICS so we have correct default values when changing the
forum type.

PHPBB3-9547
2010-05-16 18:54:48 +02:00
Nils Adermann
7499c7c884 Merge branch 'ticket/nickvergessen/9535' into develop-olympus
* ticket/nickvergessen/9535:
  [ticket/9535] Also fix the margin in the install_update.html
  [ticket/9535] Fix some more rtl margin issues.
  [ticket/9535] Correctly set margin of textarea in ACP > Users signature for RTL languages.
2010-05-16 18:51:09 +02:00
Joas Schilling
9fa8bb82e4 [ticket/9535] Also fix the margin in the install_update.html
PHPBB3-9535
2010-05-16 18:50:48 +02:00
Joas Schilling
0da86964d5 [ticket/9535] Fix some more rtl margin issues.
PHPBB3-9535
2010-05-16 18:50:25 +02:00
Joas Schilling
41498fe3ee [ticket/9535] Correctly set margin of textarea in ACP > Users signature for RTL languages.
PHPBB3-9535
2010-05-16 18:49:17 +02:00
Nils Adermann
8ade14a036 Merge branch 'ticket/nickvergessen/9548' into develop-olympus
* ticket/nickvergessen/9548:
  [ticket/9548] Delete user quicktool drop down should have an empty or invalid selection as the default
2010-05-16 18:42:46 +02:00
Nils Adermann
273d926b08 Merge branch 'ticket/aptx/9525' into develop-olympus
* ticket/aptx/9525:
  [ticket/9524] IPv6 regex does not match all valid IPv6 addresses starting with ::
2010-05-16 18:38:28 +02:00
Marek A. Ruszczyński
1d2b4ffc65 [ticket/9524] IPv6 regex does not match all valid IPv6 addresses starting with ::
:: can replace 1 or more groups (not 2 or more)

PHPBB3-9524
2010-05-16 18:36:21 +02:00
Josh Woody
e6b9178c44 [ticket/9510] Unable to copy permissions from and to forums you cannot see
This commit fixes the bug mentioned, plus a large number of regressions caused by changing the behavior of make_forum_select() (in svn r10427, dated Jan 18, 2010).  It also rolls back the changes from branch "bug/58415", which are no longer needed.

PHPBB3-9510
2010-05-16 18:20:54 +02:00
Josh Woody
ed0a26ab16 [ticket/9510] Unable to copy permissions from and to forums you cannot see
This commit fixes the bug mentioned, plus a large number of regressions caused by changing the behavior of make_forum_select() (in svn r10427, dated Jan 18, 2010).  It also rolls back the changes from branch "bug/58415", which are no longer needed.

PHPBB3-9510
2010-05-16 18:19:28 +02:00
Nils Adermann
63d172e379 Merge branch 'ticket/bantu/9545' into develop-olympus
* ticket/bantu/9545:
  [ticket/9545] Initial forum should display active topics by default.
2010-05-16 17:50:36 +02:00
Andreas Fischer
36c1986986 [ticket/9545] Initial forum should display active topics by default.
The initial forum 'Your first forum' should show topics
(especially the 'Welcome to phpBB3' topic) in the active topics list after
installing phpBB because this is the default setting for new forums
(but not categories).

The default database column value for forum_flags is 32 =
FORUM_FLAG_POST_REVIEW, we therefore have to explicitly set forum_flags to
FORUM_FLAG_POST_REVIEW + FORUM_FLAG_ACTIVE_TOPICS = 48 for this forum.

PHPBB3-9545
2010-05-16 17:49:06 +02:00
Nils Adermann
2a806ddbaf Merge branch 'ticket/nickvergessen/9546' into develop-olympus
* ticket/nickvergessen/9546:
  [ticket/9546] Also delete bookmarks, when a topic is deleted.
2010-05-16 17:47:38 +02:00
Joas Schilling
d8b4c0db0c [ticket/9546] Also delete bookmarks, when a topic is deleted.
PHPBB3-9546
2010-05-16 17:47:05 +02:00
Nils Adermann
ffe17fa426 Merge branch 'ticket/rxu/9567' into develop-olympus
* ticket/rxu/9567:
  [ticket/9567] Newly registered users group description rewording.
2010-05-16 17:32:46 +02:00
Nils Adermann
a625e4b48a Merge branch 'ticket/nickvergessen/9529' into develop-olympus
* ticket/nickvergessen/9529:
  [ticket/9529] Topic review is not showing all selected posts.
2010-05-16 17:11:47 +02:00
Joas Schilling
a3874c2cd6 [ticket/9529] Topic review is not showing all selected posts.
PHPBB3-9529
2010-05-16 17:09:25 +02:00
Nils Adermann
355d4b8ff8 Merge branch 'ticket/nickvergessen/9528' into develop-olympus
* ticket/nickvergessen/9528:
  [ticket/9528] Also fall back to bbcode-less quotes for PMs, when bbcodes are disabled.
2010-05-16 17:06:50 +02:00
Joas Schilling
18e0b07487 [ticket/9528] Also fall back to bbcode-less quotes for PMs, when bbcodes are disabled.
PHPBB3-9528
2010-05-16 17:06:28 +02:00
Nils Adermann
1326264823 Merge branch 'ticket/nickvergessen/9146' into develop-olympus
* ticket/nickvergessen/9146:
  [ticket/9146] Fix double occurring tabindex="6" in prosilver's QR
2010-05-16 17:00:26 +02:00
Joas Schilling
97d180ab66 [ticket/9146] Fix double occurring tabindex="6" in prosilver's QR
PHPBB3-9146
2010-05-16 16:59:48 +02:00
Nils Adermann
0f35101c49 Merge branch 'ticket/nickvergessen/9119' into develop-olympus
* ticket/nickvergessen/9119:
  [ticket/9119] Respect language selection on automated update.
2010-05-16 16:56:29 +02:00
Joas Schilling
d8b5594c14 [ticket/9119] Respect language selection on automated update.
PHPBB3-9119
2010-05-16 16:54:29 +02:00
Nils Adermann
e477b3acc8 Merge branch 'ticket/nickvergessen/8894' into develop-olympus
* ticket/nickvergessen/8894:
  [ticket/8894] Fix JavaScript-Error and hide Quote-Button on topic review if BBCodes are not allowed.
2010-05-16 16:49:39 +02:00
Joas Schilling
e3ba934cd7 [ticket/8894] Fix JavaScript-Error and hide Quote-Button on topic review if BBCodes are not allowed.
PHPBB3-8894
2010-05-16 16:49:00 +02:00
Nils Adermann
478708346e Merge branch 'ticket/bantu/9174' into develop-olympus
* ticket/bantu/9174:
  [ticket/9173] No longer limit scope of numbers we store in the config table on
2010-05-14 02:46:56 +02:00
Nils Adermann
fa5845e8c5 Merge branch 'ticket/nickvergessen/7717' into develop-olympus
* ticket/nickvergessen/7717:
  [ticket/7717] Localise default extension groups for attachments
2010-05-14 02:44:19 +02:00
Joas Schilling
58dc5a191c [ticket/7717] Localise default extension groups for attachments
PHPBB3-7717
2010-05-14 02:42:21 +02:00
Nils Adermann
be1c550344 Merge branch 'ticket/bantu/9598' into develop-olympus
* ticket/bantu/9598:
  [ticket/9598] checkdnsrr() is now available on Windows with PHP 5.3 or later. Change if block order to always call checkdnsrr() if the function is available.
2010-05-14 02:39:17 +02:00
Andreas Fischer
99482e9555 [ticket/9598] checkdnsrr() is now available on Windows with PHP 5.3 or later. Change if block order to always call checkdnsrr() if the function is available.
PHPBB3-9598
2010-05-14 02:39:04 +02:00
Nils Adermann
39770de921 Merge branch 'ticket/bantu/9536' into develop-olympus
* ticket/bantu/9536:
  [ticket/9536] Small improvement for query against user/session tables when managing users from the ACP.
2010-05-14 02:33:52 +02:00
Andreas Fischer
032a9f58f9 [ticket/9173] No longer limit scope of numbers we store in the config table on
PostgreSQL and Firebird when using set_config_count().

Since we're using a VARCHAR(255) column to store the numbers we have to CAST
the varchar string to a type we can do maths on. Using int4 or integer as the
type however limits the scope to 4-byte-integer = 32-bit. Using DECIMAL(255, 0)
allows the 'full' scope of decimals in varchar(255).

PHPBB3-9173
2010-05-14 02:33:31 +02:00
Andreas Fischer
823f2571f5 [ticket/9536] Small improvement for query against user/session tables when managing users from the ACP.
There can be multiple entries in the session table for one user_id. We only need and also only fetch one. Using LIMIT 1 should therefore increase performance slightly. This is especially true when editing the anonymous user account because the session table can have many entries for the user_id ANONYMOUS.

PHPBB3-9536
2010-05-14 02:31:44 +02:00
Nils Adermann
928fbb0126 Merge branch 'ticket/bantu/9526' into develop-olympus
* ticket/bantu/9526:
  [ticket/9526] If an admin changes a user's 'user_allow_viewonline' flag to 'hide me' the admin usually wants that user to be hidden immediately. We therefore have to update his session if one exists.
2010-05-14 02:28:59 +02:00
Andreas Fischer
cb642cff11 [ticket/9526] If an admin changes a user's 'user_allow_viewonline' flag to 'hide me' the admin usually wants that user to be hidden immediately. We therefore have to update his session if one exists.
In the UCP this is not necessary, because there is code in $user->setup() that updates the session table on the next page reload.

Since we cannot tell if the user generally wants to be hidden or the user only wants to be hidden for one session, we only update the session table when setting the flag to 'hide me', but not 'show me' - equivalent to how it works in the UCP.

If the user is a bot we however also update the session when setting the flag to 'show me' because bots cannot login at all.

PHPBB3-9526
2010-05-14 02:27:37 +02:00
Nils Adermann
c7e8e7e0bc Merge branch 'ticket/bantu/9518' into develop-olympus
* ticket/bantu/9518:
  [ticket/9518] Correctly create new connection on PostgreSQL when new connection is forced.
2010-05-14 02:23:13 +02:00
Andreas Fischer
970848409d [ticket/9518] Correctly create new connection on PostgreSQL when new connection is forced.
pg_connect() takes an integer as the second parameter, but we were passing a boolean parameter. The function especially requires passing the PGSQL_CONNECT_FORCE_NEW constant if a new connection is to be forced. Passing 0 as the second parameter for 'do not force a new connection' doesn't work as expected, hence we're calling the function without a second parameter in this case.

PHPBB3-9518
2010-05-14 02:22:24 +02:00
Nils Adermann
8196d7d711 Merge branch 'ticket/bantu/9514' into develop-olympus
* ticket/bantu/9514:
  [ticket/9514] Correctly delete big datasets when deleting a forum including topics/posts on non-MySQL databases.
2010-05-14 02:17:45 +02:00
Nils Adermann
528816dcbd Merge branch 'ticket/bantu/9176' into develop-olympus
* ticket/bantu/9176:
  [ticket/9176] Take current board timezone settings into account when setting board date format.
2010-05-14 02:14:48 +02:00
Andreas Fischer
9ce0873bd1 [ticket/9514] Correctly delete big datasets when deleting a forum including topics/posts on non-MySQL databases.
PHPBB3-9514
2010-05-14 02:10:50 +02:00
Nils Adermann
b3bbe57603 Merge branch 'ticket/p/6726' into develop-olympus
* ticket/p/6726:
  [ticket/6726] Added localhost/127.0.0.1 note to database server hostname explanation in install language.
2010-05-14 01:41:31 +02:00
Oleg Pudeyev
3a515bffb9 [ticket/6726] Added localhost/127.0.0.1 note to database server hostname explanation in install language.
When using PostgreSQL adapter and connecting to local database server,
use localhost to connect via UNIX domain socket and 127.0.0.1 to connect
via TCP.

PHPBB3-6726
2010-05-14 01:41:10 +02:00
Nils Adermann
5fb945c220 Merge branch 'feature/bantu/remote_upload-filesize' into develop-olympus
* feature/bantu/remote_upload-filesize:
  [feature/remote_upload-filesize] Also check HTTP content-length before actually starting the file transfer.
  [feature/remote_upload-filesize] When transferring files from a remote webserver, abort the transfer as soon as the allowed filesize has been exceeded.
2010-05-14 01:19:49 +02:00
Andreas Fischer
e4398ef42e [feature/remote_upload-filesize] Also check HTTP content-length before actually starting the file transfer.
PHPBB3-9517
2010-05-14 01:19:34 +02:00
Andreas Fischer
d19565756a [feature/remote_upload-filesize] When transferring files from a remote webserver, abort the transfer as soon as the allowed filesize has been exceeded.
PHPBB3-9517
2010-05-14 01:19:34 +02:00
Andreas Fischer
3e9d15a25d [ticket/9176] Take current board timezone settings into account when setting board date format.
PHPBB3-9176
2010-05-13 14:25:44 +02:00
Nils Adermann
91399fd357 Merge branch 'feature/webpi' into develop-olympus
* feature/webpi:
  [feature/webpi] Validate inline with MSSQL password policy.
2010-05-03 19:43:57 +02:00
Nils Adermann
ad93eaaaf3 Merge branch 'ticket/cs278/9582' into develop-olympus
* ticket/cs278/9582:
  [ticket/9582] MSSQL native backups can now be restored.
  [ticket/9582] Advanced search cannot be accessed using MSSQL native.
  [ticket/9582] Removing a report reason leaves reports with an unknown reason under MSSQL native.
  [ticket/9582] Unable to edit CPFs from UCP under MSSQL native driver.
  [ticket/9582] Custom profile fields cannot be created under MSSQL native.
2010-05-03 19:41:04 +02:00
Chris Smith
11d097fc1a [ticket/9582] MSSQL native backups can now be restored.
PHPBB3-9583
PHPBB3-9582
2010-05-03 19:40:45 +02:00
e95faaeb68 [ticket/9582] Advanced search cannot be accessed using MSSQL native.
PHPBB3-9562
PHPBB3-9582
2010-05-03 19:40:39 +02:00
a20576fdd4 [ticket/9582] Removing a report reason leaves reports with an unknown reason under MSSQL native.
PHPBB3-9564
PHPBB3-9582
2010-05-03 19:40:33 +02:00
5739426136 [ticket/9582] Unable to edit CPFs from UCP under MSSQL native driver.
PHPBB3-9566
PHPBB3-9582
2010-05-03 19:40:26 +02:00
171807213f [ticket/9582] Custom profile fields cannot be created under MSSQL native.
PHPBB3-9565
PHPBB3-9582
2010-05-03 19:38:42 +02:00
Nils Adermann
38ba3dcdd9 Merge branch 'ticket/cs278/9520' into develop-olympus
* ticket/cs278/9520:
  [ticket/9520] Additionally filter requests for {common,config}.php
  [ticket/9520] New web.config file as suggested by Microsoft using request filter
  [ticket/9520] Removed per directory web.config files.
  [ticket/9520] Add suggested web.config for root files as suggested by Microsoft.
  [ticket/9520] Add some default web.config files for IIS.
2010-05-03 19:36:18 +02:00
Chris Smith
43f47dba4c [ticket/9520] Additionally filter requests for {common,config}.php
PHPBB3-9520
2010-05-03 19:32:29 +02:00
Chris Smith
8612fc23d4 [ticket/9520] New web.config file as suggested by Microsoft using request filter
PHPBB3-9520
2010-05-03 19:31:54 +02:00
Chris Smith
e11e53e11b [ticket/9520] Removed per directory web.config files.
These use the IIS rewriter to reject requests, Microsoft have suggested
we just use a single web.config with the builtin request filter.

PHPBB3-9520
2010-05-03 19:31:40 +02:00
Chris Smith
9ac7c492ed [ticket/9520] Add suggested web.config for root files as suggested by Microsoft.
PHPBB3-9520
2010-05-03 19:31:18 +02:00
Chris Smith
cdd9ecdd68 [ticket/9520] Add some default web.config files for IIS.
These deny access to the various directories written to by phpBB.

PHPBB3-9520
2010-05-03 19:30:52 +02:00
Nils Adermann
fd23bccd4d [develop-olympus] Basic gitignore file for cache files and backups. 2010-05-02 23:44:42 +02:00
Nils Adermann
e09ab8a4c5 Merge branch 'ticket/bantu/9170' into develop-olympus
* ticket/bantu/9170:
  [ticket/9170] Unable to get image size in img bbcode when URL has multiple parameters.
2010-05-02 23:43:46 +02:00
Andreas Fischer
abacc2d07d [ticket/9170] Unable to get image size in img bbcode when URL has multiple parameters.
Since we htmlspecialchars() all input we have to htmlspecialchars_decode() before passing the URL along to getimagesize().

PHPBB3-9170
2010-05-02 23:43:32 +02:00
rxu
b3028567c8 [ticket/9567] Newly registered users group description rewording.
Reword 'NEW_MEMBER_GROUP_DEFAULT_EXPLAIN' language entry to make it more linguistically correct.

PHPBB3-9567
2010-05-02 14:50:33 +08:00
Nils Adermann
cb3cf71805 Merge branch 'feature/cs278/git-tools' into develop-olympus
* feature/cs278/git-tools:
  [git-tools] Use @ instead of : in sed command in pre-commit hook for wider compatibility.
  [git-tools] Adjusted pre-commit hook to run under freebsd /bin/sh.
  [git-tools] Changed pre-commit hook to use sh instead of bash
2010-04-28 12:31:24 +02:00
Joas Schilling
5f4c6e9c91 [ticket/9548] Delete user quicktool drop down should have an empty or invalid selection as the default
PHPBB3-9548
2010-04-18 15:13:53 +02:00
Chris Smith
b22a651c5c [feature/webpi] Validate inline with MSSQL password policy. 2010-04-15 23:00:27 +01:00
Chris Smith
f6dd150ed8 Merge branch 'p/git-tools' into git-tools 2010-04-13 21:46:19 +01:00
Oleg Pudeyev
9674214b2f [git-tools] Use @ instead of : in sed command in pre-commit hook for wider compatibility. 2010-04-13 21:44:18 +01:00
Oleg Pudeyev
9afe2c9b6e [git-tools] Adjusted pre-commit hook to run under freebsd /bin/sh. 2010-04-13 21:44:12 +01:00
Oleg Pudeyev
5a3ec9901d [git-tools] Changed pre-commit hook to use sh instead of bash 2010-04-13 21:44:03 +01:00
Nils Adermann
03d50a2e83 Merge branch 'feature/cs278/webpi' into develop-olympus
* feature/cs278/webpi:
  [feature/webpi] Web PI supports UNIX line endings so we'll remove them
  [feature/webpi] Hopefully finally fix this
  [feature/webpi] Fix messed up line endings
  [feature/webpi] Add WebPI support to the build script.
  [feature/webpi] Package files for Microsoft Web Platform Installer
  [feature/dbal-tests] Remove hardcoded 'mysql' from PDO DSN in DBAL test.
  [feature/dbal-tests] Fix mysql (not mysqli) dbal test.
2010-04-09 09:10:12 +02:00
Chris Smith
cc127d8217 [feature/webpi] Web PI supports UNIX line endings so we'll remove them 2010-04-08 17:23:15 +01:00
Chris Smith
a2fe71a6d3 [feature/webpi] Hopefully finally fix this 2010-04-08 17:01:10 +01:00
Chris Smith
f9946de5b3 [feature/webpi] Fix messed up line endings 2010-04-08 16:56:24 +01:00
Chris Smith
839f464b78 [feature/webpi] Add WebPI support to the build script. 2010-04-08 17:29:05 +02:00
Chris Smith
02aed4b66f [feature/webpi] Package files for Microsoft Web Platform Installer 2010-04-08 17:28:47 +02:00
Andreas Fischer
eaa591046f [feature/dbal-tests] Remove hardcoded 'mysql' from PDO DSN in DBAL test. 2010-04-08 17:26:39 +02:00
Andreas Fischer
584206b8ae [feature/dbal-tests] Fix mysql (not mysqli) dbal test.
Correctly determine MySQL version from the database.
2010-04-08 17:26:38 +02:00
Nils Adermann
925a135613 Merge branch 'bug/cs278/59465' into develop-olympus
* bug/cs278/59465:
  [bug/59465] Remove start=0 from topic pagination links.
  [bug/59465] Removes start=0 from URLs used by viewtopic and viewforum.
2010-04-04 15:32:36 +02:00
Nils Adermann
560a1b3ad4 Merge branch 'bug/nickvergessen/9047' into develop-olympus
* bug/nickvergessen/9047:
  [bug/9047] Use correct forum_id to generate the active topics list. (Bug #9047)

Conflicts:
	phpBB/docs/CHANGELOG.html
2010-04-04 15:31:38 +02:00
Nils Adermann
1af1a96501 Merge branch 'feature/nickvergessen/unapproved-posts-in-feed' into develop-olympus
* feature/nickvergessen/unapproved-posts-in-feed:
  [feature/unapproved-posts-in-feed] Little changelog correction
  [feature/unapproved-posts-in-feed] Increase performance of is_moderator_approve_forum() as per bantu
  [feature/unapproved-posts-in-feed] View note for moderators on unapproved posts/topics with unapproved posts in ATOM Feed

Conflicts:
	phpBB/docs/CHANGELOG.html
2010-04-04 15:29:45 +02:00
Nils Adermann
feb3987802 Merge branch 'bug/nickvergessen/9512' into develop-olympus
* bug/nickvergessen/9512:
  [bug/9512] Fix dead link in MCP on reports for global announcements in prosilver. (Bug #9512)

Conflicts:
	phpBB/docs/CHANGELOG.html
2010-04-04 15:26:50 +02:00
Nils Adermann
5b5463a981 Merge branch 'bug/nickvergessen/58745' into develop-olympus
* bug/nickvergessen/58745:
  [bug/58745] Correct changelog message
  [bug/58745] Correctly close user-delete-form in ACP User Overview (Bug #58745)

Conflicts:
	phpBB/docs/CHANGELOG.html
2010-04-04 15:21:27 +02:00
Nils Adermann
f07c9fab2b Merge branch 'bug/nickvergessen/58695' into develop-olympus
* bug/nickvergessen/58695:
  [bug/58695] Use method to get forums where user is moderator, thanks to bantu for the hint
  [bug/58695] Only show unapproved posts in ATOM Feeds for moderators (Bug #58695)

Conflicts:
	phpBB/docs/CHANGELOG.html
2010-04-04 15:17:48 +02:00
Nils Adermann
fa9510be23 Merge branch 'feature/evil3/git-tools' into develop-olympus
* feature/evil3/git-tools:
  [git-tools] add note about PHP_BIN using env
  [git-tools] do not display stderr
  [git-tools] Prepend the branch to the commit message for all branches.
  [git-tools] Use env to find the correct paths to binaries.
  [git-tools] Display what parse errors were found.
  [git-tools] This script requires bash to run, so point directly to bash.
  [git-tools] Improvements for the pre-commit hook
  [git-tools] Improvements on prepare-commt-msg hook
  [git-tools] Some pre-commit enhancements, abolish tempfile
  [git-tools] use mktemp in pre-commit (thanks nn-)
  [git-tools] pre-commit hook for syntax checking
2010-04-04 15:04:28 +02:00
Joas Schilling
39f26c5cfd [bug/9047] Use correct forum_id to generate the active topics list. (Bug #9047) 2010-04-04 12:23:07 +02:00
Joas Schilling
5f044a015e [bug/9512] Fix dead link in MCP on reports for global announcements in prosilver. (Bug #9512) 2010-04-04 02:03:23 +02:00
Joas Schilling
19c7ea3c16 [feature/unapproved-posts-in-feed] Little changelog correction 2010-04-04 01:49:56 +02:00
Joas Schilling
9b596faa39 [feature/unapproved-posts-in-feed] Increase performance of is_moderator_approve_forum() as per bantu 2010-04-04 01:35:55 +02:00
Joas Schilling
46f85329da [feature/unapproved-posts-in-feed] View note for moderators on unapproved posts/topics with unapproved posts in ATOM Feed 2010-04-04 01:34:47 +02:00
Igor Wiedler
11de6a46b1 [git-tools] add note about PHP_BIN using env 2010-04-03 22:06:25 +02:00
Igor Wiedler
8091e31666 [git-tools] do not display stderr 2010-04-03 21:53:09 +02:00
Joas Schilling
738914ac83 [bug/58745] Correct changelog message 2010-04-03 13:11:23 +02:00
Joas Schilling
492d86000e [bug/58745] Correctly close user-delete-form in ACP User Overview (Bug #58745) 2010-04-03 13:05:44 +02:00
Joas Schilling
0d4daeb615 [bug/58695] Use method to get forums where user is moderator, thanks to bantu for the hint 2010-04-03 12:56:52 +02:00
Joas Schilling
8d0c0dcbcd [bug/58695] Only show unapproved posts in ATOM Feeds for moderators (Bug #58695) 2010-04-03 12:55:31 +02:00
Igor Wiedler
e3ebdbd79b Merge branch 'develop-olympus' into git-tools 2010-04-03 10:47:07 +02:00
Chris Smith
3e5236dcd6 [git-tools] Prepend the branch to the commit message for all branches. 2010-04-03 02:13:48 +01:00
Chris Smith
b6920b7ca8 [git-tools] Use env to find the correct paths to binaries. 2010-04-03 02:12:21 +01:00
Chris Smith
5568b2134b [git-tools] Display what parse errors were found. 2010-04-03 01:53:12 +01:00
Chris Smith
a06ec8c7fd [git-tools] This script requires bash to run, so point directly to bash. 2010-04-03 01:51:37 +01:00
Nils Adermann
43774ef423 Merge branch 'feature/dbal-tests' into develop-olympus
* feature/dbal-tests:
  [feature/dbal-tests] Remove hardcoded 'mysql' from PDO DSN in DBAL test.
  [feature/dbal-tests] Fix mysql (not mysqli) dbal test.
2010-04-02 18:29:08 +02:00
Andreas Fischer
4a2a84d7a2 [feature/dbal-tests] Remove hardcoded 'mysql' from PDO DSN in DBAL test. 2010-04-02 18:28:40 +02:00
Andreas Fischer
e9de68f9a3 [feature/dbal-tests] Fix mysql (not mysqli) dbal test.
Correctly determine MySQL version from the database.
2010-04-02 18:28:06 +02:00
Nils Adermann
a2545d1203 Merge branch 'bug/bantu/9108' into develop-olympus
* bug/bantu/9108:
  [bug/9108] Fix table binding issues with PostgreSQL in board-wide feed. (Old Bug #58425)

Conflicts:
	phpBB/docs/CHANGELOG.html
2010-04-01 21:27:19 +02:00
Nils Adermann
6d9d2b6be6 Merge branch 'feature/dbal-tests' into develop-olympus
* feature/dbal-tests:
  [feature/dbal-tests] Only output the missing config error message once.
  [feature/dbal-tests] Make the PDO prefix depend on the dbms.
  [feature/dbal-tests] Fix whitespace and line endings.
  [feature/dbal-tests] Make some tests for build_array_data on SELECT
  [feature/dbal-tests] Make some tests for return_on_error on SELECT-queries
  [feature/dbal-tests] Tests for $db->sql_query_limit()
  [feature/dbal-tests] Load phpbb-schema after creating the connection to the database
  [feature/dbal-tests] Added tests for dbal fetchrow and fetchfield.
  [feature/dbal-tests] Added database test & refactored test framework
2010-04-01 19:16:45 +02:00
Nils Adermann
2bbfa9c29f [feature/dbal-tests] Only output the missing config error message once.
The error message was also not properly escaping the variables, thus
producing an incorrect example configuration file.
2010-04-01 19:15:34 +02:00
Nils Adermann
53ab8886b1 [feature/dbal-tests] Make the PDO prefix depend on the dbms.
The database base test will need a few more changes to run on all the
databases we support. But those really need to be made on a system where
they run and can be tested. Patches welcome!
2010-04-01 19:08:11 +02:00
Nils Adermann
23beaceadd [feature/dbal-tests] Fix whitespace and line endings. 2010-04-01 18:59:26 +02:00
Nils Adermann
f97d0e0195 Merge branch 'bug/nickvergessen/59135' into develop-olympus
* bug/nickvergessen/59135:
  [bug/59135] Fix open_basedir issues when accessing styles- and language-management. (Bug #59135)

Conflicts:
	phpBB/docs/CHANGELOG.html
2010-04-01 18:55:16 +02:00
Andreas Fischer
2b696cc632 [bug/9108] Fix table binding issues with PostgreSQL in board-wide feed. (Old Bug #58425)
The order in the FROM clause is important.
The posts table has to be the last one in the chain, so it can be correctly bound with the forums table in the LEFT JOIN.

This only affects the overall feed (board-wide feed). All the other feeds are unaffected.
2010-04-01 13:14:58 +02:00
Nils Adermann
e35392cb4f Merge branch 'bug/kellanved/59425' into develop-olympus
* bug/kellanved/59425:
  [bug/59425] Correctly check for double inclusion in captcha garbage collection
2010-03-28 15:09:09 +02:00
Nils Adermann
b111e4d927 Merge branch 'bug/kellanved/58465' into develop-olympus
* bug/kellanved/58465:
  [bug/58465] The redirect hidden field is now XHTML conform
2010-03-28 15:09:05 +02:00
U-H-PC\H
9be61f9e53 [bug/59425] Correctly check for double inclusion in captcha garbage collection
The check to avoid the double inclusion of the captcha factory class in the
garbage collection code was faulty, checking for "captcha_factory" instead of "phpbb_captcha_factory".
TerryE pointed the problem out, thanks!
2010-03-28 14:37:31 +02:00
U-H-PC\H
6cfb4c82dd [bug/58465] The redirect hidden field is now XHTML conform
The result of build_url was falsely un-entitized.
2010-03-28 14:17:42 +02:00
Igor Wiedler
472739bcbc Merge branch 'develop-olympus' into git-tools 2010-03-28 14:12:36 +02:00
Joas Schilling
53d316dc9e [feature/dbal-tests] Make some tests for build_array_data on SELECT 2010-03-27 10:42:09 +01:00
Joas Schilling
147d6fd590 [feature/dbal-tests] Make some tests for return_on_error on SELECT-queries 2010-03-26 23:27:49 +01:00
Joas Schilling
c6442ce640 [feature/dbal-tests] Tests for $db->sql_query_limit() 2010-03-26 21:02:56 +01:00
Nils Adermann
d79cff235c Merge remote branch 'github-nickvergessen/develop-olympus' into develop-olympus
* github-nickvergessen/develop-olympus:
  [develop-olympus] Make this test run on windows with backslash-paths.
2010-03-26 18:27:39 +01:00
Nils Adermann
4515a45e0c Merge branch 'bug/jellydoughnut/56965' into develop-olympus
* bug/jellydoughnut/56965:
  [bug/56965] Redirect fails with directory traversal
2010-03-26 18:24:47 +01:00
Joas Schilling
a7581085e0 [feature/dbal-tests] Load phpbb-schema after creating the connection to the database 2010-03-26 17:37:01 +01:00
Joas Schilling
af654814f6 [feature/dbal-tests] Added tests for dbal fetchrow and fetchfield. 2010-03-26 16:41:19 +01:00
Joas Schilling
94bc65e203 [feature/dbal-tests] Added database test & refactored test framework
There is now a phpbb_database_test_case which can be used as a base class for tests that require database access. You have to set up a test_config.php file in your tests/ directory containing host, user, pass etc.

Extra test functionality has been moved to phpbb_test_case_helpers to provide the same functionality in database tests and regular tests without duplicating the code. This is achieved through delegation of method calls.
2010-03-26 16:39:37 +01:00
Joas Schilling
c71b1245ec [develop-olympus] Make this test run on windows with backslash-paths. 2010-03-26 14:46:18 +01:00
Josh Woody
eca2db4afe [bug/56965] Redirect fails with directory traversal
Correct invalid r10536 with a boolean flag.  Note that this fix for the bug will not actually correct the redirects, it will only prevent phpBB from redirecting outside $phpbb_root_path when redirect()'s third argument is not provided.
2010-03-22 21:16:11 -05:00
Igor Wiedler
a5057c9f25 Merge branch 'develop-olympus' into git-tools 2010-03-22 22:54:24 +01:00
Nils Adermann
b3ff3be0dc Merge branch 'bug/cs278/58685' into develop-olympus
* bug/cs278/58685:
  [bug/58685] Correct spelling errors in append_sid() comments.
2010-03-18 22:13:25 +01:00
Nils Adermann
c6870ac3fe Merge branch 'bug/cs278/58025' into develop-olympus
* bug/cs278/58025:
  [bug/58025] Search robots are now redirected if they send a SID in the request

Conflicts:
	phpBB/docs/CHANGELOG.html
2010-03-18 22:10:31 +01:00
Chris Smith
b64686073a [bug/58685] Correct spelling errors in append_sid() comments. 2010-03-18 21:07:19 +00:00
Chris Smith
492063cec6 [bug/59465] Remove start=0 from topic pagination links.
Patch once again by nn-.
2010-03-18 20:28:59 +00:00
Chris Smith
a3a8fb989c [bug/59465] Removes start=0 from URLs used by viewtopic and viewforum.
Having start=0 makes search engines index the page twice once with and
once without the start=0 parameter. This results in duplicate results
in the search results. Patch contributed by nn-.
2010-03-18 17:22:30 +00:00
Nils Adermann
5193160546 Merge branch 'feature/arstechnica/memcache-multi-server' into develop-olympus
* feature/arstechnica/memcache-multi-server:
  [feature/arstechnica/memcache-multi-server] Add memcache-multi-server to the changelog.
2010-03-18 17:09:52 +01:00
Nils Adermann
f7c41e1db7 [feature/arstechnica/memcache-multi-server] Add memcache-multi-server to the changelog. 2010-03-18 17:09:18 +01:00
Nils Adermann
da5c36fdeb Merge branch 'feature/arstechnica/memcache-multi-server' into develop-olympus
* feature/arstechnica/memcache-multi-server:
  [feature/memcache-multi-server] Changing format for multiple memcache hosts. Fixing code style issues in changes.
  [feature/memcache-multi-server] Adding support for multiple memcache servers to acm_memcache.php
2010-03-18 17:04:14 +01:00
mrkurt
c57c1f3fc6 [feature/memcache-multi-server] Changing format for multiple memcache hosts. Fixing code style issues in changes.
Host and ports are now represented like this in config:
host1/port1,host2/port2,host3/port3
2010-03-18 17:01:50 +01:00
mrkurt
559313eda6 [feature/memcache-multi-server] Adding support for multiple memcache servers to acm_memcache.php
You can define multiple memcache servers in your config using this format:

host::port,host::port,host::port

Example:
@define(PHPBB_ACM_MEMCACHE, '127.0.0.1::11211,10.0.0.2::11211,memcache1::11211'
2010-03-18 17:01:21 +01:00
Igor Wiedler
ae48c8ee9e [git-tools] Improvements for the pre-commit hook
One major issue with the pre-hook so far was partially staged files,
because it used filenames for php lint. These changes will make the hook read the file contents from the index instead.

Great thanks to David Soria Parra.
2010-03-17 23:07:57 +01:00
Nils Adermann
10f81ee79f Merge branch 'bug/jellydoughnut/58415' into develop-olympus
* bug/jellydoughnut/58415:
  Allow setting parent forums regardless of permission settings. (Bug #58415)

Conflicts:
	phpBB/docs/CHANGELOG.html
2010-03-17 18:05:17 +01:00
Josh Woody
144effd74c Allow setting parent forums regardless of permission settings. (Bug #58415) 2010-03-17 10:04:07 -05:00
Igor Wiedler
6a9304021f [git-tools] Improvements on prepare-commt-msg hook
prepare-commit-hook now uses `git symbolic-ref HEAD` instead of reading
$GIT_DIR/HEAD directly. This seems to be a more portable solution.

Thanks to Chris (cs278/ToonArmy) for the suggestion.
2010-03-13 13:10:14 +01:00
Joas Schilling
4349bec316 [bug/59135] Fix open_basedir issues when accessing styles- and language-management. (Bug #59135)
introduced in r10496 and r10360/r10361
2010-03-13 11:37:06 +01:00
Chris Smith
d07e152ea7 [bug/58025] Search robots are now redirected if they send a SID in the request
Previously search robots could stumble upon a board link somewhere on the web
containing a SID they'd follow it and end up indexing that page with the SID
in the request URI, this fix prevents that by redirecting them to the same URI
just without the SID.
2010-03-13 02:15:39 +00:00
Igor Wiedler
f9192bed79 [git-tools] Some pre-commit enhancements, abolish tempfile 2010-03-11 19:44:21 +01:00
Igor Wiedler
6df10358aa [git-tools] use mktemp in pre-commit (thanks nn-) 2010-03-10 21:37:55 +01:00
Igor Wiedler
3dd9040cc1 Merge branch 'develop-olympus' into git-tools 2010-03-10 20:12:10 +01:00
Igor Wiedler
db8c557e4c [git-tools] pre-commit hook for syntax checking
This pre-commit hook utilises PHP's command-line -l (lint) option, which
checks for syntax errors. In case of an error the commit is rejected and
the error displayed.

Testing is welcome.
2010-03-10 20:07:10 +01:00
Nils Adermann
60bd1edcb5 [develop-olympus] Backported 3.1 unit tests to 3.0.
Start adding unit tests for bugs you fix! Tests for anything are
welcome really. We have to work on these a lot.
2010-03-10 16:24:19 +01:00
Nils Adermann
d9567f121b Merge branch 'develop-olympus' of git://github.com/evil3/phpbb3 into develop-olympus 2010-03-08 01:07:27 +01:00
Igor Wiedler
0a6db697e6 Add feature/ support to branchname hook
The previously introduced branchname hook now will also use feature/
branch names, in addition to the existing bug/.
2010-03-08 01:04:33 +01:00
Nils Adermann
9f8d258de4 Merge branch 'develop-olympus' of git://github.com/evil3/phpbb3 into develop-olympus 2010-03-08 00:50:48 +01:00
Igor Wiedler
d0d1ab5471 Adding a branchname prepare-commit-msg hook
Git supports several hooks, some of which are client-side. The
prepare-commit-msg hook is run right after a `git commit` call, before
the editor is opened. This allows the initial message to be altered.

This hook will check if the current branch name begins with `bug/`, in
which case it will prepend `[$branchname]` to the commit message. This
makes it easier to create proper commit messages.

http://wiki.phpbb.com/Git#Commit_Messages

For more information refer to the hook source.
2010-03-08 00:41:42 +01:00
Nils Adermann
23141a2c51 Merge branch 'bug/dpward/58755' into develop-olympus 2010-03-07 21:56:48 +01:00
Nils Adermann
62e0c325b4 Merge branch 'bug/evil3/12531' into develop-olympus 2010-03-07 21:56:07 +01:00
Nils Adermann
c52a7e9a08 Adding the bugfix for #58755 to the changelog. 2010-03-07 21:54:56 +01:00
David Ward
865123ffda [bug/58755] Fix a redirection bug that can occur after login
This issue affects any forum (i.e. https://myforum/phpBB3/) where:
 - the forum is located in a directory underneath the web root (i.e., NOT https://myforum/)
 - a user accesses the forum with a URI pointing to a directory rather than a script (i.e., NOT https://myforum/phpBB3/index.php)
 - the URI used ends in a slash (i.e., NOT https://myforum/phpBB3)

If these conditions are met, after successful login the user is redirected to an invalid URI (i.e., https://myforum/phpBB3/phpBB3?sid=).

This change fixes extract_current_page() to handle the case correctly where the URI ends in a slash and is not the web root. So after successful login, the redirection back to the main page will work (i.e., https://myforum/phpBB3/?sid=)
2010-03-07 13:56:24 -05:00
Igor Wiedler
5cfa354433 [bug/12531] proposed solution for bug #12531 2010-03-06 17:57:27 +01:00
Nils Adermann
568fb83373 Merge branch 'master' into develop-olympus 2010-03-06 02:29:04 +01:00
Nils Adermann
5d1d32a65b Merge branch 'bug/evil3/51555' into develop-olympus 2010-03-06 02:13:31 +01:00
Igor Wiedler
9d005973b0 [bug/51555] proposed fix for bug #51555 2010-03-06 01:39:44 +01:00
Cullen Walsh
0307d1f4aa Oops, forgot the changelog for #57105 2010-03-06 01:36:23 +01:00
Nils Adermann
c4e02a1916 Merge commit 'release-3.0.7-PL1' 2010-03-06 01:20:12 +01:00
Nils Adermann
2e1cd98a5a exclude the image file with text in the name from having newlines fixed 2010-03-05 22:22:39 +01:00
Nils Adermann
39490abfff Incrementing the version number to 3.0.7-PL1 2010-03-05 21:09:37 +01:00
Nils Adermann
c8fd9f4266 Mark the bugfix #58595 as a security fix 2010-03-05 21:00:13 +01:00
Andreas Fischer
b1ab74b043 Fix Bug #58595 - ATOM Feed exposes forum content under some circumstances. 2010-03-05 20:59:20 +01:00
Nils Adermann
07fd270530 Merge branch 'bug/bantu/58595' into develop-olympus 2010-03-05 20:56:45 +01:00
Nils Adermann
f0a82396d4 Mark the bugfix #58595 as a security fix 2010-03-05 20:56:06 +01:00
Andreas Fischer
7f991e8480 Fix Bug #58595 - ATOM Feed exposes forum content under some circumstances. 2010-03-05 18:51:30 +01:00
Nils Adermann
ac32927566 Merge remote branch 'github-ckwalsh/bug/57105' into bug/ckwalsh/57105 2010-03-02 22:27:45 +01:00
Cullen Walsh
b853845069 Oops, forgot the changelog for #57105 2010-03-02 13:01:05 -08:00
Nils Adermann
be78817d27 Merge remote branch 'github-ckwalsh/bug/57105' into bug/ckwalsh/57105 2010-03-02 21:41:24 +01:00
Cullen Walsh
965ab55394 Parse urls in signature taking into account the allow_sig_links config option introduced in phpBB 3.0.6, per bug #57105 2010-03-02 12:22:11 -08:00
Nils Adermann
f493509eb2 Merge branch 'bug/aptx/54945' into develop-olympus 2010-03-02 21:15:13 +01:00
Marek A. Ruszczyński
93a2407f65 Bug #54945 again: MySQL 4 does not support aggregation in ORDER BY.
Moved the MIN(smiley_order) to the SELECT column list now, so it can be
used for sorting on MySQL 4, but also still works on MSSQL, which the
bug was originally about.
2010-03-02 21:12:35 +01:00
Chris Smith
5003595ed6 Missed one half of bug #54855 whoops 2010-03-02 21:07:07 +01:00
Nils Adermann
72e2af08e1 Merge remote branch 'github-cs278/bug/54855' into bug/cs278/54855 2010-03-02 20:46:19 +01:00
Nils Adermann
24fda6671d Merging master after 3.0.7 release into develop-olympus to make sure there are no inconsistencies. 2010-03-02 20:33:50 +01:00
Chris Smith
2f6c8a0164 Missed one half of bug #54855 whoops 2010-03-02 19:30:37 +00:00
Nils Adermann
ca8cc03763 Merge commit 'release-3.0.7' 2010-03-02 01:09:13 +01:00
Nils Adermann
35a62ed008 Merge commit 'release-3.0.7-RC2' 2010-03-02 01:09:11 +01:00
Nils Adermann
3b46681652 Merge commit 'release-3.0.7-RC1' 2010-03-02 01:09:02 +01:00
Nils Adermann
6606e4bffe Merge commit 'release-3.0.6' 2010-03-02 01:05:41 +01:00
Nils Adermann
723e38ece2 Merge commit 'release-3.0.6-RC4' 2010-03-02 01:05:41 +01:00
Nils Adermann
6ebc26e330 Merge commit 'release-3.0.6-RC3' 2010-03-02 01:05:41 +01:00
Nils Adermann
f0eb18fffd Merge commit 'release-3.0.6-RC2' 2010-03-02 01:05:40 +01:00
Nils Adermann
021c186be9 Merge commit 'release-3.0.6-RC1' 2010-03-02 01:05:40 +01:00
Nils Adermann
4f9c3b8f5c Merge commit 'release-3.0.5' 2010-03-02 01:05:40 +01:00
Nils Adermann
a45bca7c49 Merge commit 'release-3.0.5-RC1' 2010-03-02 01:05:39 +01:00
Nils Adermann
1f3498c0d6 Merge commit 'release-3.0.4' 2010-03-02 01:05:39 +01:00
Nils Adermann
a0b5877217 Merge commit 'release-3.0.4-RC1' 2010-03-02 01:05:39 +01:00
Nils Adermann
6482e72e7c Merge commit 'release-3.0.3' 2010-03-02 01:05:39 +01:00
Nils Adermann
25052e1f67 Merge commit 'release-3.0.3-RC1' 2010-03-02 01:05:39 +01:00
Nils Adermann
4cc06650d4 Merge commit 'release-3.0.2' 2010-03-02 01:05:39 +01:00
Nils Adermann
92271af9cd Merge commit 'release-3.0.2-RC2' 2010-03-02 01:05:38 +01:00
Nils Adermann
ee781806eb Merge commit 'release-3.0.2-RC1' 2010-03-02 01:05:38 +01:00
Nils Adermann
5324afeffd Merge commit 'release-3.0.1' 2010-03-02 01:05:38 +01:00
Nils Adermann
0434ccf303 Merge commit 'release-3.0.1-RC1' 2010-03-02 01:05:38 +01:00
Nils Adermann
2ba97da524 Merge commit 'release-3.0.0' 2010-03-02 01:05:37 +01:00
Nils Adermann
aa4495b8ad Merge commit 'release-3.0-RC8' 2010-03-02 01:05:37 +01:00
Nils Adermann
8a3c323933 Merge commit 'release-3.0-RC7' 2010-03-02 01:05:37 +01:00
Nils Adermann
54f94e0d42 Merge commit 'release-3.0-RC6' 2010-03-02 01:05:37 +01:00
Nils Adermann
1a09d0e238 Merge commit 'release-3.0-RC5' 2010-03-02 01:05:36 +01:00
Nils Adermann
75e7ffc317 Merge commit 'release-3.0-RC4' 2010-03-02 01:05:36 +01:00
Nils Adermann
1ceddd9eec Merge commit 'release-3.0-RC3' 2010-03-02 01:05:36 +01:00
Nils Adermann
0e0c8d7819 Merge commit 'release-3.0-RC2' 2010-03-02 01:05:35 +01:00
Nils Adermann
bae824e818 Merge commit 'release-3.0-RC1' 2010-03-02 01:05:35 +01:00
Nils Adermann
517f253532 Merge commit 'release-3.0-B5' 2010-03-02 01:05:34 +01:00
Nils Adermann
89b37954f9 Merge commit 'release-3.0-B4' 2010-03-02 01:05:34 +01:00
Nils Adermann
07633a66e8 Merge commit 'release-3.0-B3' 2010-03-02 01:05:34 +01:00
Nils Adermann
ee82970d96 Merge commit 'release-3.0-B2' 2010-03-02 01:05:33 +01:00
Nils Adermann
f7a28642fe Tagging the "Run, bugs, run! Bertie is coming!" 3.0.7 release.
git-svn-id: file:///svn/phpbb/tags/release_3_0_7@10557 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-28 22:24:04 +00:00
Yuriy Rusko
d62068cfad #58285 - Language pack fix
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10556 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-28 21:01:16 +00:00
Nils Adermann
872ad322ec Increment version number to 3.0.7
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10555 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-28 19:30:58 +00:00
Nils Adermann
a6f2f7e9a9 Merge r10487 into 3.0.7: Make those warnings more consistent.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10554 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-28 19:20:23 +00:00
Nils Adermann
c089fe8e39 Prepare 3.0.7 release
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10553 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-28 00:41:56 +00:00
Nils Adermann
cb2d1bd4fc Merge r10551 into 3.0.7: Make the new {INTTEXT} work on pcre installations without utf8 support, it only matches ascii characters & numbers there. [Bug #58055]
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10552 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-28 00:00:39 +00:00
Nils Adermann
5bd9d461e0 Make the new {INTTEXT} work on pcre installations without utf8 support, it only matches ascii characters & numbers there. [Bug #58055]
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10551 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-27 23:57:13 +00:00
Nils Adermann
33de245e64 Merge r10549 into 3.0.7: After generating all packages go through the full installs and make sure the files do not contain any errors [Bug #58255]
3.0.7-RC2 contains an image file missing one byte (icon_textbox_search.gif) you can take it from an previous phpBB3 release, it was not changed.


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10550 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-27 22:08:43 +00:00
Nils Adermann
e5c6cac09a After generating all packages go through the full installs and make sure the files do not contain any errors [Bug #58255]
3.0.7-RC2 contains an image file missing one byte (icon_textbox_search.gif) you can take it from an previous phpBB3 release, it was not changed.


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10549 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-27 21:19:43 +00:00
Nils Adermann
bba33ead30 Updating the create_schema_files.php file to reflect the minor mssql schema change introduced in r10489 (implementing mssql native driver support - Bug #57055)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10548 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-27 18:04:32 +00:00
Henry Sudhof
1d098379d9 #58055 again
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10547 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-27 11:10:34 +00:00
Henry Sudhof
c115ad2b8f #58055 again
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10546 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-27 11:09:23 +00:00
Henry Sudhof
df3ac64083 okay, minus should work now #58055
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10545 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-26 20:43:54 +00:00
Henry Sudhof
204b5f579e okay, minus should work now #58055
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10544 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-26 20:32:00 +00:00
Henry Sudhof
9e389e8a5b possible cause of #58055
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10543 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-26 08:36:53 +00:00
Henry Sudhof
f03e986f81 possible cause of #58055
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10542 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-26 08:35:41 +00:00
Henry Sudhof
df24e4feaf only whitespaces, not newlines
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10541 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-25 21:50:00 +00:00
Henry Sudhof
c2f2bff2ae only whitespaces, not newlines
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10540 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-25 21:48:21 +00:00
Andreas Fischer
cdc96b0c7d Bug #58085 - Add terminating semicolons to JavaScript code found by JSLint. Patch by nn-
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10539 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-25 10:51:35 +00:00
Andreas Fischer
27fa1a69e8 Merge r10537 into 3.0.7. branch
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10538 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-25 10:42:25 +00:00
Andreas Fischer
e57981d1f5 Fix Bug #57875 - We have to add the paragraph tags there. Patch by HardStyle, Regression from r10096.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10537 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-25 10:33:06 +00:00
Josh Woody
9e64c3bd84 Bug #56965 - Allow redirect() to redirect across directories.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10536 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-25 00:18:30 +00:00
Nils Adermann
05b5dc3167 Tagging the 3.0.7-RC2 release.
git-svn-id: file:///svn/phpbb/tags/release_3_0_7-RC2@10535 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-24 01:21:06 +00:00
Nils Adermann
f9a01af732 prepare build script for RC2
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10534 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-24 00:45:47 +00:00
Nils Adermann
82219d51c2 Merge r10528 into 3.0.7: Update: Store expected resulting file contents in cache and do not suggest further merges if the contents match, also fixes infinite merge loop [Bug #54075]
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10533 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-24 00:08:13 +00:00
Nils Adermann
4c2421dc1e Previous version bump commit r10506 was missing schema_data.sql so that has been updated to 3.0.7-RC2 as well now
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10532 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-23 23:59:08 +00:00
Nils Adermann
775f8981f8 Merging r10514 into 3.0.7: Bugs #53925 and #52085 - Language fixes related to the quick reply settings
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10531 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-23 23:50:36 +00:00
Nils Adermann
8f5155d272 Quick reply enable button was merged into 3.0.7: r10491, r10492 and r10529
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10530 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-23 23:49:15 +00:00
Nils Adermann
3a48b03547 Merging r10491 and r10492: Add sql_bit_or() dbal method. Add ability to enable quick reply in all forums. -- Voila ;-)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10529 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-23 23:46:43 +00:00
Nils Adermann
47ce0f2a93 Update: Store expected resulting file contents in cache and do not suggest further merges if the contents match, also fixes infinite merge loop [Bug #54075]
If you were trying to update from 3.0.5 to 3.0.6 but were presented with a dialogue
suggesting to merge the same file over and over take the install/install_update.php
from 3.0.7-RC2 or current svn, and replace your 3.0.5 one with it. It works fine in
3.0.5.


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10528 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-23 23:35:48 +00:00
Andreas Fischer
d3459b3f49 Merge r10526 into 3.0.7 branch.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10527 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-23 19:07:25 +00:00
Andreas Fischer
2ec1d92388 Fix Bug #57375 - Do not delete unrelated attachments when deleting empty forums.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10526 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-23 18:52:06 +00:00
Nils Adermann
2c3c97b8ee merge r10513 into 3.0 branch: propdel
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10525 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-23 16:18:57 +00:00
Nils Adermann
63e07777cd Merge r10515 into 3.0.7 branch
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10524 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-23 16:12:51 +00:00
Nils Adermann
bffd7eb6a7 Merge r10522 into 3.0.7 branch
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10523 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-23 16:09:02 +00:00
Nils Adermann
83cf74de2b Fixing the code changes from diff building script: When an edit was detected as replacing an empty line by diff it would get dropped from the code changes
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10522 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-23 15:07:58 +00:00
Andreas Fischer
4f439593ce Merge r10520 into 3.0.7 branch.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10521 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-22 19:37:09 +00:00
Andreas Fischer
e8f01ff74b We have to use a 'snapshot' of the function there, because it might not be available yet. - Bug #57755
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10520 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-22 19:33:27 +00:00
Chris Smith
87bc1c6760 sneak attack merge r10518
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10519 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-22 00:59:27 +00:00
Chris Smith
e01171ca85 General errors can't be logged if there isn't a database connection, introduced in r9924 #57975
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10518 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-22 00:57:01 +00:00
Henry Sudhof
9aa4a822ef Enter stage left: the INTTEXT token (merge)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10517 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-21 11:35:45 +00:00
Henry Sudhof
22621e0439 Enter stage left: the INTTEXT token
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10516 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-21 11:33:29 +00:00
Nils Adermann
6b99b85c8f BBCode parser now uses the user object for all settings rather than taking some from the template object [Bug #57365]
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10515 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-21 01:31:10 +00:00
Yuriy Rusko
a4727a0f81 Bugs #53925 and #52085 - Language fixes related to the quick reply settings
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10514 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-20 22:36:22 +00:00
Henry Sudhof
aa2d9e6765 propdel
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10513 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-20 20:44:06 +00:00
Henry Sudhof
d7f4922993 merging TEXT warn from 3_0_0
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10512 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-20 16:44:00 +00:00
Henry Sudhof
14e21a1a38 warn users about TEXT
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10511 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-20 16:18:28 +00:00
Chris Smith
a63ceb28e2 merge in r10509
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10510 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-20 00:15:35 +00:00
Chris Smith
14b5aab07f Firebird based board can now access their global announcements, took a while to discover this one. #57525
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10509 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-20 00:02:56 +00:00
Josh Woody
d49806a043 #57715 - Correct behavior of "force_approved_state" when value is false.
(Merging r10507 into branches/phpBB-3_0_0)

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10508 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-18 04:57:23 +00:00
Josh Woody
fff87d544d #57715 - Correct behavior of "force_approved_state" when value is false.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10507 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-18 04:56:06 +00:00
Andreas Fischer
5ae48dd873 Bump version to 3.0.7-RC2.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10506 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-18 02:14:02 +00:00
Andreas Fischer
19da9ac065 Merge r10503, r10504 into 3.0.7 branch.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10505 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-18 02:13:15 +00:00
Andreas Fischer
576722cead Adding 3.0.7-RC2 to database updater
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10504 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-18 02:06:20 +00:00
Andreas Fischer
c02fedb6c7 Revising r10499, #57755
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10503 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-18 02:01:32 +00:00
Andreas Fischer
dccd529498 Merge r10497 and r10499 into 3.0.7 - #57755
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10502 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-18 01:40:51 +00:00
Andreas Fischer
b68d23347a Merge r10488 into 3.0.7 branch. #57505
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10501 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-18 01:31:06 +00:00
Andreas Fischer
9bcb25cd10 We can put the fix for #57505 into 3.0.7 because we have to regenerate the packages with the template changes anyway.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10500 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-18 01:23:31 +00:00
Andreas Fischer
30b83896a1 Fix Bug #57755 - Make user_email_hash() function independent from system's architecture.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10499 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-18 01:17:30 +00:00
Joas Schilling
0ddc370386 Merge r10496 - Bug #57795 - [Fix] Restrict search for language/../iso.txt to folders.
Authorised by: bantu

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10498 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-17 18:40:22 +00:00
Andreas Fischer
68cac354aa Add 3.0.7-RC1 to the updater.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10497 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-17 12:58:52 +00:00
Joas Schilling
c0e9bc5126 Bug #57795 - [Fix] Restrict search for language/../iso.txt to folders.
Authorised by: bantu


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10496 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-17 12:49:05 +00:00
Andreas Fischer
6a9e5ea78f Merge r10493, r10494 - #57825
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10495 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-17 10:03:29 +00:00
Andreas Fischer
e1ae09a787 Let's fix #57825 in 3.0.7. - r10493
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10494 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-17 09:59:04 +00:00
Andreas Fischer
68393ecc1c Fix Bug #57825 - Small language correction for the FAQ page.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10493 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-16 20:42:55 +00:00
Andreas Fischer
a0531a990b r10491 - Also in the Post Settings section. Thanks leviatan21
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10492 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-16 10:42:24 +00:00
Andreas Fischer
c6e176d88e Add sql_bit_or() dbal method. Add ability to enable quick reply in all forums. -- Voila ;-)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10491 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-15 15:04:44 +00:00
Nils Adermann
7332b3b741 Forgot to properly update the file header of mssqlnative.php, revising r10489 [Bug #57055]
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10490 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-11 00:05:32 +00:00
Nils Adermann
1802b9ff92 Support for Microsoft's Native SQL Server Driver for PHP - Patch by Chris Pucci at Microsoft [Bug #57055]
If you are using SQL Server, please try to test this new dbal so we can safely include it in 3.0.8. If you
want to try it on a current phpBB version you can apply the latest version of the patch to your board which
you can find attached to the bug tracker ticket (look in the comments for the latest version, the one in the
ticket itself is outdated): http://www.phpbb.com/bugs/phpbb3/ticket.php?ticket_id=57055



git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10489 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-11 00:02:51 +00:00
Andreas Fischer
6c321c53a1 Fix Bug #57505 - Replace button2 with btnlite, button2 doesn't exist.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10488 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-09 14:10:42 +00:00
Andreas Fischer
964e9cf3ef Make those warnings more consistent.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10487 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-08 23:58:37 +00:00
Andreas Fischer
8682f644e5 Merge r10484 and r10485 into 3.0.7 branch.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10486 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-08 16:54:39 +00:00
Andreas Fischer
e3b07a88f4 Let's adjust those to the format of the other entries.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10485 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-08 16:49:21 +00:00
Andreas Fischer
037aea067b Fix Bug #57455 - Fix problems with firebird by no longer using 'count' as a column alias.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10484 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-08 16:43:39 +00:00
Josh Woody
f631d62508 Fix #57395, a regression from r10427
(merging r10482 into branch_3_0_7)

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10483 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-07 01:06:37 +00:00
Josh Woody
d26f66703b Fix #57395, a regression from r10427
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10482 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-07 01:04:10 +00:00
Andreas Fischer
64b4a8bd44 No longer needed, as of r10480.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10481 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-07 00:50:21 +00:00
Andreas Fischer
4bb3266cc6 Bug #57345 - No longer return the character O in generated random strings and passwords.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10480 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-07 00:27:00 +00:00
Andreas Fischer
c0836e8835 Bug #13181 - Honor minimum and maximum password length in generated passwords as much as we can.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10479 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-07 00:20:46 +00:00
Andreas Fischer
aec50a4328 Fix Bug #57385
Correctly sort database backup file list by date on database restore page.
Take admin's time zone settings into account when listing database backup files.


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10478 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-06 21:19:40 +00:00
Andreas Fischer
52c13bc741 Add 'Changes since 3.0.7' section to Changelog.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10477 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-06 21:07:25 +00:00
Josh Woody
4a17abbcc4 Merge r10473 into the 3.0.7 branch.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10476 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-04 01:07:30 +00:00
Josh Woody
dec3e2f728 Merge r10472 and r10474 into the 3.0.7 branch
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10475 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-04 01:06:25 +00:00
Josh Woody
8adf583bdf Bug #38765 - Unify BBCode selection across browsers (also needs fixing in subsilver2)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10474 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-04 01:04:52 +00:00
Josh Woody
99c608e88c Bug #57265 - Convertors cannot read configuration files
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10473 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-04 00:40:19 +00:00
Josh Woody
63be6762f3 Bug #38765 - Unify BBCode selection across browsers
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10472 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-04 00:04:25 +00:00
Nils Adermann
67e8cbdd00 Tagging the 3.0.7-RC1 release.
git-svn-id: file:///svn/phpbb/tags/release_3_0_7-RC1@10471 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-02 01:32:43 +00:00
Chris Smith
6b519c8bdf Slight performance optimisation for r9624 refs #54265
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10470 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-01 22:14:04 +00:00
Nils Adermann
f90bab90c7 Change version number to 3.0.8-dev in preparation for development on next release
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10469 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-01 01:18:21 +00:00
Nils Adermann
5a429ee61e Change version numbers to 3.0.7 and 3.0.8-dev in preparation for development on next release
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10468 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-01 01:14:06 +00:00
Nils Adermann
20301d6b9f Change version numbers to 3.0.7 and 3.0.7-RC1 for a QA release
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10467 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-01 00:49:35 +00:00
Nils Adermann
f68f33780d Creating branch for 3.0.7 release.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_7@10466 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-01 00:18:01 +00:00
Nils Adermann
9487673f9c Adding the phpBB build script. This is the latest version of the script Meik has been using for releases of phpBB. I've made a few smaller changes to make its output work on the CLI and for it to work when located inside a working directory. Various notices/warnings etc. have been fixed, too. We probably want to make some more major changes to the script, at the moment it seems a little difficult to follow exactly what it does.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10465 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-02-01 00:03:26 +00:00
Nils Adermann
926d0f980e fix_files script must have been broken by svn:eol-style quite a while ago, now uses tr rather than sed to replace carriage returns
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10464 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-31 21:50:10 +00:00
Chris Smith
edd57359c8 Hopefully nobody will notice me sneaking this one in:
Fix javascript bug in the smilies ACP. #55725


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10463 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-31 14:47:34 +00:00
Andreas Fischer
2906a24122 Bug #56545 - Speed up topic move operation by adding an index for topic_id on the topics track table.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10462 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-28 23:15:25 +00:00
Nils Adermann
c0cd713f4c Updated AUTHORS file, hope I didn't get any names wrong ;-)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10461 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-28 21:19:43 +00:00
Nils Adermann
6e31ce8573 Do not store email templates in database. [Bug #54505]
To explain what this is about, first a short phpBB code history lesson: ;-)

r9823 originally introduced the usage of our template class for emails. The
messenger class uses set_custom_template() to initialise the template object
which neither disables storedb nor inheritance. These two values are set in
$user->theme rather than inside a particular template instance (quite a design
failure if I may add). Thus the html page that is displayed to the user also
determines these settings for the email templates. This obviously causes
problems because both emails and other custom templates can quite simply not
be stored in the database because the db table only stores the filename, not
the path and requires a template id.

r9839 then generally disabled storedb and template inheritance for custom
templates to fix Bug #40515. This works for custom templates, but not for
emails where lots of template objects are created. In such a situation the
last call to set(_custom)_template() would now determine the values of storedb
and inheritance in _tpl_load. So any page sending emails would neither load
its template from the database nor use template inheritance. The same revision
also introduced orig_tpl_* variables in set_template() which on their own are
very much pointless, but could allow resetting the storedb and inheritance
values if they were used to reset $user->theme just before template execution
in _tpl_load.

In r10150 these orig_tpl_* variables are correctly used to access information
about the template of the page being displayed - contrary to the last template
used - from within the bbcode, fixing Bug #51285. However r10150 also introduces
a pointless $template_mode parameter for set_custom_template(). $template_mode
is really just a boolean flag (value you can be 'template' or an arbitrary other
value) that if it set circumvents the unsetting of storedb and template
inheritance. The very code that had been added to prevent issues with emails and
custom templates. Fixing the problem introduced by r8839 but at the same time
reintroducing the much greater problem from the original implementation of email
templates.

And now an explanation of what I did:

Based on this I have now changed the set_custom_template method to always
disable storedb. It can now properly use inheritance, you simply tell it the
path where the parent template can be found, by default the path is false which
will turn inheritance off. To make this work the template class now always
overwrites $user->theme storedb and inheritance variabbles with orig_tpl_* just
before rendering a template in _tpl_load. This way they are guaranteed to always
contain the value they had at the time set_template/set_custom_template were
called. This fixes [Bug #54505].

In summary, using global state is simply a horrible idea in object oriented
programming. Always Pass values, that an object depends on, as parameters - never
through magic global variables. Following this principle will safe you from a lot
of headaches.

Please test this patch as much as possible to make sure templates still work
properly for you, focus on multiple languages, missing language files, and
custom templates in systems that make use of the template class outside of
phpBB itself.


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10460 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 16:52:46 +00:00
Henry Sudhof
81e62b4da8 okay, now the confirm_id is no longer enough to get a new row into the qa table
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10459 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 15:34:21 +00:00
Josh Woody
8fa06090c4 Add a warning for users of old PHP versions about ending support.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10458 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 15:26:07 +00:00
Henry Sudhof
62d7e3c634 erm, that wouldn't work
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10457 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 14:58:55 +00:00
Ruslan Uzdenov
5df687f820 Fix bugs #55485 and #55545 - styles adjustment to correctly display an order of rtl/ltr mixed content.
Authorised by: bantu

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10456 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 14:11:00 +00:00
Joas Schilling
283ad368eb Bug #54745 - Fix language string for PM-Reports refering to post-data.
Authorised by: jelly_doughnut

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10455 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 14:06:00 +00:00
Henry Sudhof
8a9c7c92be tuning
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10454 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 14:01:20 +00:00
Henry Sudhof
3e224cf856 debug code, begone
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10453 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 11:41:43 +00:00
Henry Sudhof
ac27e1961a doc
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10452 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 11:11:15 +00:00
Henry Sudhof
345de34ac1 tuning
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10451 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 11:07:47 +00:00
Henry Sudhof
b4c87cc504 ACP usability
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10450 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 10:57:00 +00:00
Josh Woody
b4d6b1e980 Further fixes for r10447 and r10448. Correctly account for custom language directories (caught by naderman)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10449 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 04:11:58 +00:00
Josh Woody
a314b2807f Remove needless check (revising r10447)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10448 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 03:43:02 +00:00
Josh Woody
ff1aa876b5 Fall back to board default language email template if the file does not exist user's preferred language (#35595)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10447 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 03:30:43 +00:00
Nils Adermann
870921c872 Database updater now separates ADD COLUMN from SET NOT NULL and SET DEFAULT, when using PostgreSQL <= 7.4 [Bug #54435]
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10446 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-26 02:06:37 +00:00
Andreas Fischer
5306a586b1 Revert r9564, Fix #54445, Related to #44665.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10445 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-25 18:42:04 +00:00
Cullen Walsh
bdd81806f2 Ignore that last commit message in r10443.
Update user's last visit field correctly when changing activation status (Bug #56185)

Regression introduced by r10103 for Bug #44975

Authorised by: bantu



git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10444 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-25 18:24:57 +00:00
Cullen Walsh
fe98d43bb5 [Fix] Don't send activation email when user tries to change email without permission (fix by nrohler). (Bug #56335)
Authorised by: naderman


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10443 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-25 18:19:18 +00:00
Josh Woody
4eda4855ef Deprecate $allow_reply parameter to truncate_string() (Bug #56675)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10442 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-25 18:02:37 +00:00
Joas Schilling
7a1b507fa6 Bug #52495 - [Fix] Replace hard coded "px" with translated language-string.
Authorised by: bantu


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10441 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-25 15:57:10 +00:00
Joas Schilling
c5e01c9508 Bug #49945 - [Fix] Correctly hover list menu in UCP and MCP for rtl languages.
Authorised by: bantu

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10440 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-25 15:43:05 +00:00
Joas Schilling
60e68b1b58 Bug #33745 - [Fix] Correctly orientate quoted text image on RTL languages.
Authorised by: bantu

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10439 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-25 15:36:39 +00:00
Cullen Walsh
fb96fcd90a [Fix] Don't send activation email when user tries to change email without permission (fix by nrohler). (Bug #56335)
Authorised by: naderman


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10438 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-25 09:11:16 +00:00
Joas Schilling
92e7b1e3df Fix: "typo" on r10436
Authorised by: bantu

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10437 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-24 22:35:58 +00:00
Joas Schilling
7d6718630b [Fix] Do not automatically unsubscribe users from topics, when email and jabber is disabled.
Authorised by: bantu

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10436 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-24 22:30:43 +00:00
Andreas Fischer
71366a2ad2 Let's remove this warning again, since it for example also works quite well with the topic_id.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10435 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-24 16:06:23 +00:00
Andreas Fischer
c496d2561e acl_get() of course requires the forum_id there.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10434 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-24 16:03:32 +00:00
Ruslan Uzdenov
b44288e0cf Fix bug #55045 - Do not duplicate previous/next links in pagination text of moderator logs and user notes in MCP for subsilver2.
Authorised by: bantu

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10433 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-24 16:00:18 +00:00
Andreas Fischer
04ce664604 Trigger error right away if user has exceeded login attempts instead of asking for the authentication data over and over again without accepting it even if it is correct.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10432 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-20 01:05:36 +00:00
Andreas Fischer
f98ca7ce48 Make sure captcha factory is there. Make sure language array is there.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10431 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-20 00:20:46 +00:00
Andreas Fischer
77af6caed7 [Feature] Ability to use HTTP authentication in ATOM feeds by passing the GET parameter auth=http
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10430 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-19 19:08:51 +00:00
Ruslan Uzdenov
ff0b94f238 Fix bug #56075 - "Bump Topic" link not showing when bump interval is 0
Authorised by: Jelly_Doughnut

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10429 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-19 13:33:07 +00:00
Cullen Walsh
f40418296a Bug #56285 - Properly calculate posts in a topic in the MCP
Authorised by: bantu


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10428 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-19 00:14:31 +00:00
Josh Woody
ad14664a3a - Bug #56255 - Moving topics to a forum where you are on queue
- Allow some error handling in compress class by returning false if file does not exist. 

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10427 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-18 16:41:21 +00:00
Ruslan Uzdenov
cb389894e9 Fix bug #51585 - Search loginbox or auth message differs
Authorised by: ToonArmy

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10426 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-18 15:50:13 +00:00
Chris Smith
6924580e7d Friends and foes will not show up as private message rule options if their respective UCP modules are disabled. #51155
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10425 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-18 00:11:20 +00:00
Chris Smith
53a51744c0 Minor language change #56745
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10424 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 19:14:01 +00:00
Chris Smith
e2deb29d59 Include live data in the statistics #53795
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10423 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 18:02:04 +00:00
Chris Smith
bdf60ab2c1 The easy solution to all my problems with SQLite is this. :( #56105
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10422 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 17:41:21 +00:00
Henry Sudhof
5cce7d0bae #56455 - remove extra space in template
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10421 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 17:27:19 +00:00
Chris Smith
af6c5dd41d Load reCAPTCHA over https when using a secure connection to the board. #55755
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10420 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 17:25:14 +00:00
Henry Sudhof
2fd7cd661b update log
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10419 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 17:23:47 +00:00
Henry Sudhof
0480a4e91e spaces
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10418 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 17:16:08 +00:00
Henry Sudhof
f9692abe92 Invalidate captcha after reg
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10417 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 17:04:56 +00:00
Chris Smith
b9ef9b8786 - Forgot to fix jQuery code in r10409 #54395
- Also changed using jQuery instead of the $ shortcut


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10416 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 16:58:38 +00:00
Henry Sudhof
1d0197a3dd Invalidate captcha after reg
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10415 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 16:55:17 +00:00
Ruslan Uzdenov
f7575b3a0c Fix bug #56555 - Quick reply + posting permission
Authorised by: ToonArmy

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10414 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 16:49:23 +00:00
Henry Sudhof
f7f3471e3f spaces
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10413 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 16:48:58 +00:00
Henry Sudhof
b4d8a0e538 spaces
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10412 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 16:48:46 +00:00
Henry Sudhof
ef2cd7b6c9 Always require a fresh solved captcha, don't accept a stored solution.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10411 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 16:46:41 +00:00
Henry Sudhof
9532ba3c3d Mirror login captcha option on captcha settings
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10410 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 16:37:58 +00:00
Chris Smith
1f59edf140 Don't submit when pressing enter on preview button. Regression from r10069 #54395
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10409 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 16:32:10 +00:00
Joas Schilling
f8178778f8 Bug #56235 - Do not unsubscribe users from topics replying with quickreply.
Authorised by: ToonArmy



git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10408 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 16:30:33 +00:00
Joas Schilling
9dde6d8583 Fix r10391 - Bug #56025 - Pagination of User Notes in MCP uses two different config values.
Authorised by: ToonArmy



git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10407 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-17 16:27:59 +00:00
Henry Sudhof
0139246ccb make userdata available
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10406 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-14 22:55:38 +00:00
Andreas Fischer
0f5856ce5b No longer include subforums in forum feed.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10405 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-12 21:15:32 +00:00
Andreas Fischer
7462724a24 m_approve array can be empty
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10404 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-12 01:18:33 +00:00
Andreas Fischer
35dc866cf5 Exclude moved topics.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10403 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-12 00:53:16 +00:00
Andreas Fischer
085f89e1c1 min() is actually pointless there.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10402 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-12 00:45:56 +00:00
Andreas Fischer
aa14d12abb Actually use the new method.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10401 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-12 00:24:39 +00:00
Andreas Fischer
2be2a2eb63 Improve overall feed performance
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10400 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-12 00:12:06 +00:00
Andreas Fischer
f4aa5b7ac7 Safe us some more calls to $db->sql_escape().
Authorised by: naderman :-P


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10399 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-11 23:26:56 +00:00
Andreas Fischer
e5c228d564 Make sure ORDER BY is SELECTed
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10398 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-08 22:38:02 +00:00
Andreas Fischer
fffe436914 We have to prefetch post ids from other tables where possible.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10397 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-08 22:30:30 +00:00
Chris Smith
4a80b883ab Oops thanks rxu, fixes r10309 refs #54465
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10396 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-07 09:09:39 +00:00
Andreas Fischer
9dc5c9271a Fix Bug #56125 - XHTML mistakes in Coding Guidelines. Patch by leviatan21.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10395 89ea8834-ac86-4346-8a33-228a782c2dd0
2010-01-01 23:39:31 +00:00
Andreas Fischer
a16c624d26 Small text corrections. r10393
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10394 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-31 17:32:49 +00:00
Andreas Fischer
771774f09a Remove complex query, add true sorting for viewprofile group list. Related to #31845
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10393 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-31 17:07:34 +00:00
Andreas Fischer
a096b3d981 Fix Bug #31845 - List hidden groups on viewprofile where the viewing user is also a member.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10392 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-31 16:31:57 +00:00
Joas Schilling
267692ad5c Bug #56025 - Pagination of User Notes in MCP uses two different config values.
Authorised by: bantu



git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10391 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-30 13:12:02 +00:00
Chris Smith
5c3788b9c0 Add warnings about plaintext passwords
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10390 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-30 02:25:58 +00:00
Andreas Fischer
ac94d2dea3 Reflect feed configuration parameter changes in questionnaire.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10389 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-29 14:33:22 +00:00
Andreas Fischer
4729046bf4 #54235
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10388 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-29 02:37:16 +00:00
Andreas Fischer
d67d6ed26a Fix Bug #30315 - No longer use group colours for usernames on print view. Colour could be white. Patch by Pasqualle.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10387 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-29 02:11:16 +00:00
Andreas Fischer
33fde908ee Fix Bug #55895 - Missing CSS background parameter, thanks Planet Styles.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10386 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-28 17:10:44 +00:00
Andreas Fischer
5537c3c736 Adjust case and some language.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10385 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-27 18:03:44 +00:00
Andreas Fischer
665359e929 Fix Bug #55935, r10382
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10384 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-27 16:52:27 +00:00
Andreas Fischer
ab4f3157ac Small changelog corrections.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10383 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-27 02:34:57 +00:00
Andreas Fischer
ad7e3ccf4c Integrate active topics feed. Some language adjustments and rearrangements.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10382 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-27 00:48:52 +00:00
Andreas Fischer
d7261a5425 Reduce amount of forums by selecting postable forums only.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10381 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-25 16:34:27 +00:00
Andreas Fischer
f94b24bc62 Draft for active topics feed.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10380 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-25 16:27:11 +00:00
Andreas Fischer
faf95e858f Bug #55865 - Correctly move sql_row_pointer forward when calling sql_fetchfield() on cached queries.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10379 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-25 15:55:35 +00:00
Marek A. R
f601599e63 Fix for #54945
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10378 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-24 00:47:00 +00:00
Nils Adermann
dd02aed6e1 Improved search query performance through sorting words by their occurance. [Bug #21555]
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10377 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-23 19:38:09 +00:00
Andreas Fischer
38d0f0f2d9 Fix language in r10375. #55785
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10376 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-23 15:10:45 +00:00
Andreas Fischer
409dfe5256 Fix Bug #55785 - Correct call to mysql_pconnect().
Note: As pointed out by gn#36, phpBB doesn't use persistent connections at all.


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10375 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-23 15:07:52 +00:00
Andreas Fischer
035fe74264 Let's try this. Split feed user interface into sections. This partly reverts r10366.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10374 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-23 03:26:38 +00:00
Andreas Fischer
749fe6f9d0 Turn all forums feed off by default.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10373 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-23 02:59:44 +00:00
Nils Adermann
a7ecefd89d ... wrong file, fixing previous commit r10370
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10372 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-23 02:58:53 +00:00
Andreas Fischer
736f26dea1 Reflect changes in schema data. This should also close #55775 ;-)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10371 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-23 02:55:28 +00:00
Nils Adermann
9ad40c8821 Send statistics now check for IPv6 and send private network status as a boolean
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10370 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-23 02:53:56 +00:00
Andreas Fischer
04945c5432 Also change All Topics strings for the time being.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10369 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-23 02:51:49 +00:00
Andreas Fischer
ce07fd5086 Change forums feed language strings to reflect what it is.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10368 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-23 02:41:54 +00:00
Andreas Fischer
54c97ee608 Rearrange items. Move post based feeds up.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10367 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-23 02:32:39 +00:00
Andreas Fischer
a4cee51de5 Split feed_limit into feed_limit_post and feed_limit_topic. Drop feed_overall_topics_limit.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10366 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-23 02:30:37 +00:00
Nils Adermann
42c5be5dac Just a little reminder for when we decide to update the confusables one day
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10365 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-23 01:31:19 +00:00
Andreas Fischer
cc43a90996 Forgot to add this to the commit list.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10364 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-22 19:26:25 +00:00
Andreas Fischer
d0c596a5ea Add ability to disable overall (aka board-wide) feed.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10363 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-22 19:21:41 +00:00
Andreas Fischer
bc0cc313df Bump database updater version to 3.0.7-dev
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10362 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-22 18:13:17 +00:00
Andreas Fischer
ba1d50559f Fix r10360, Bug #55665
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10361 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-22 16:56:55 +00:00
Joas Schilling
1261e21eac Bug #55665 - Restrict search for styles/../style.cfg to folders.
Authorised by: bantu

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10360 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-21 22:29:28 +00:00
Andreas Fischer
64898803af Automatically lookup num_items in the config array if it is a string.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10359 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-20 19:46:48 +00:00
Andreas Fischer
d7e8e4d9cb Cleanup. Remove unused methods and logic.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10358 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-20 19:40:13 +00:00
Andreas Fischer
757afe0b76 Abstract class for post based feeds. Separate overall, forum and topic feed.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10357 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-20 19:23:06 +00:00
Andreas Fischer
773f3727de Let forums feed use the new methods.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10356 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-20 15:18:32 +00:00
Andreas Fischer
2f0d9f7d3d Abstract class for topic based feeds.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10355 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-20 15:09:27 +00:00
Andreas Fischer
183045072f Cache forever, destroy on change.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10354 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-20 14:31:37 +00:00
Andreas Fischer
d64516057f Also improve topics feed.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10353 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-20 14:22:51 +00:00
Andreas Fischer
7ac774432e Improve news feed. It basically only runs two queries now for the main content.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10352 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-20 13:52:56 +00:00
Andreas Fischer
28c33de6d9 Provide some more generic methods.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10351 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-20 13:18:04 +00:00
Andreas Fischer
7d406a36cd All topics feed now returns newest board topics. Reduce required queries and complexity.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10350 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-20 00:05:47 +00:00
Andreas Fischer
2eb337ba41 Topic has to be approved.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10349 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-19 23:47:35 +00:00
Andreas Fischer
9d436a33f6 Some corrections for r10347 and r10345.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10348 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-17 01:06:01 +00:00
Andreas Fischer
437c66e8c8 #54275 - Let's use a method for that. Also return ->lang['GUEST'] instead of ['username'].
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10347 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-17 00:55:55 +00:00
Andreas Fischer
4e49152529 Use correct limit config parameter in the News feed.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10346 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-17 00:41:30 +00:00
Andreas Fischer
69c07b8330 News feed: Correctly handle global announcements.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10345 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-17 00:39:41 +00:00
Andreas Fischer
6cc60ee8c2 Improve 'All forums' feed: Remove limit, display all forums. Join all queries to one.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10344 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-17 00:12:51 +00:00
Andreas Fischer
d5c16e4c8f I've got to take this back. Revert r10316 partly.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10343 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-16 18:13:41 +00:00
Ruslan Uzdenov
4168104fcc Adjustment of r10337 to properly fix the bug #23935
Authorised by: naderman

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10341 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-16 08:04:41 +00:00
Chris Smith
792a1ea3a7 Alter ACP user quick tools interface to reduce confusion with the delete operation
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10340 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-14 22:28:20 +00:00
Ruslan Uzdenov
e94224ecc7 Correctly get unread status information for global announcements in search results.
Authorised by: bantu

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10339 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-14 17:43:37 +00:00
Andreas Fischer
2ac753b725 "0" is a valid title.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10338 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-14 12:59:07 +00:00
Ruslan Uzdenov
c3e65a957b Bug #23935 - help_faq , explanation of "How do I show an image below my username?" is wrong.
Authorised by: bantu

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10337 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-14 02:43:10 +00:00
Andreas Fischer
1f2f658920 title already censored lower down.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10336 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-13 23:58:51 +00:00
Henry Sudhof
4dae08997a whitespaces
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10335 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-13 15:10:06 +00:00
Henry Sudhof
67a9a7b074 #54905 - use LA for the javascript variable, remove comma
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10334 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-13 15:05:39 +00:00
Henry Sudhof
9fc3a40c5e #54145 - move redirect parameter back to POST to avoid mod_security triggers
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10333 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-13 14:59:45 +00:00
Henry Sudhof
d096696ef2 #54145 - move redirect parameter back to POST to avoid mod_security triggers
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10332 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-13 14:59:03 +00:00
Henry Sudhof
321ec3644e #54965
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10331 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-13 14:23:40 +00:00
Henry Sudhof
85977941b3 #54135
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10330 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-13 14:05:22 +00:00
Henry Sudhof
d779e1267d #50985 - fix XML export of private messages sent to deleted users
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10329 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-13 14:03:45 +00:00
Andreas Fischer
b6f9a1a6e8 Topic/Forum Feed: Also throw NO_FEED if forum has been excluded from feeds.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10328 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-13 13:02:37 +00:00
Andreas Fischer
07c990302c We don't need this anymore.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10327 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-12 21:27:05 +00:00
Chris Smith
5bdb6b733c IE6 must die, thanks Raimon. #54115
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10326 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-12 15:07:34 +00:00
Joas Schilling
f593ae1f35 [Fix] Use correct BBCode parseoptions in signatures when previewing PMs.
Authorised by: bantu



git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10325 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-12 00:06:01 +00:00
Chris Smith
d7a6e63a9a Correctly check for empty strings in custom profile fields. #55335
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10324 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-11 22:55:15 +00:00
Chris Smith
44b9dfaff5 permit current year in ACP - UCP changed in r8807 #55115
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10323 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-11 22:39:13 +00:00
Chris Smith
f150bb8281 Do not permit unauthorised users to delete private messages from folder listing. #54355
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10322 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-11 22:27:00 +00:00
Chris Smith
c9b343b2c8 #54855
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10321 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-11 21:23:36 +00:00
Chris Smith
8362c3b6b7 Missing PM report language entries added. #55095
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10320 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-11 21:01:31 +00:00
Chris Smith
e2fe61b7df Restore user language choice to compiled stylesheets. Broken by r10008 #54035
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10319 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-11 20:49:53 +00:00
Andreas Fischer
d3cd9ce01e #54345 - Passworded forums
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10318 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-11 16:41:37 +00:00
Andreas Fischer
afa8dcb42a Bug #54345 - Do not deliver topics from unreadable forums in the news feed.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10317 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-11 16:18:56 +00:00
Andreas Fischer
c207c530b7 Bring back caching.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10316 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-11 14:46:06 +00:00
Andreas Fischer
9189b8203a Add another layer of abstraction.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10315 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-11 13:42:38 +00:00
Andreas Fischer
b63cad6b89 Remove some unnecessary code and join two queries.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10314 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-10 16:59:25 +00:00
Andreas Fischer
3f35de4c63 Database input, already specialchared.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10313 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-10 03:05:33 +00:00
Andreas Fischer
56cc34602b Correctly use RFC 3339 date in ATOM feeds. Bug #55005
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10312 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-10 01:12:54 +00:00
Chris Smith
b577dece44 Tiny typo
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10311 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-09 22:55:41 +00:00
Chris Smith
aec3c26894 Log activation through inactive users ACP. #30145
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10310 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-09 22:55:10 +00:00
Chris Smith
3665540ffb Check for required eAccelerator functions #54465
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10309 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-09 22:16:53 +00:00
Andreas Fischer
25545c06b2 Let's add some more checks. #54295
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10308 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-09 21:33:25 +00:00
Chris Smith
aedff9c97a Fix potential data corruption issues with memcache ACM
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10307 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-08 22:55:33 +00:00
Chris Smith
5a2eb175bb One issue solved possily others, so not closing yet. #55245
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10306 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-08 22:45:39 +00:00
Andreas Fischer
9d5ac32d8e Add some castings there. Slightly related: Bug #55155
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10305 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-08 17:09:48 +00:00
Andreas Fischer
ccc774412e Optimize SQL queries 'a little'.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10304 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-08 03:53:41 +00:00
Andreas Fischer
57f71690e3 Meh. One whitespace too much.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10303 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-08 02:46:54 +00:00
Andreas Fischer
0fbea43f4b Fix Bug #55005 - Correctly take post time instead of topic time for the overall forum feed statistics row.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10302 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-08 01:53:26 +00:00
Andreas Fischer
b5dcc21280 Make things easier. #54295, r10296
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10301 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-08 01:23:40 +00:00
Andreas Fischer
db46647c9e Fix Bug #54815 - Only replace table prefix if table name is surrounded by whitespace.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10300 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-07 12:56:17 +00:00
Nils Adermann
fe6958d54f PHP 5.3 compatibility: Disable E_DEPRECATED on startup to keep set_magic_quotes_runtime(0) quiet. [Bug #54495]
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10299 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-06 02:30:24 +00:00
Andreas Fischer
a5c9a2f36e Since dl() is deprecated and disabled by default in PHP 5.3, calling it will result in a fatal error for an undefined function and because of the error suppression in a blank page. Checking if dl() exists should allow most boards to continue right away. - Bug #54665
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10298 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-04 11:50:03 +00:00
Andreas Fischer
57ddd53d59 #54295 - Thanks Paul.J.Murphy
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10297 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-01 12:54:25 +00:00
Andreas Fischer
1de328e2fe Fix Bug #54295 - Cleanly handle forum/topic not found in ATOM Feeds. Also related: Bug #54735
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10296 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-12-01 12:25:34 +00:00
Andreas Fischer
cf9e42ffd8 Fix Bug #53025 - Correctly show topic ATOM feed link when only post id is specified.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10295 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-30 00:06:15 +00:00
Andreas Fischer
edc475b83f Oops. #54705, r10293.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10294 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-28 21:24:40 +00:00
Andreas Fischer
85f062c7d9 Fix Bug #54705 - Tiny XHTML mistake
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10293 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-28 21:14:44 +00:00
Joas Schilling
313648f07b Bug #54325 - Fulltext-MySQL search for keywords and username at the same time. (Regression from r9931)
Authorised by: bantu


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10292 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-26 19:23:33 +00:00
Ruslan Uzdenov
5a8fb00ff9 Bug #54265 - Regression: Word Censors and Cases
Authorised by: bantu

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10291 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-26 17:41:47 +00:00
Andreas Fischer
40bc220a41 Adjust logic to what the comment says.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10290 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-25 13:12:32 +00:00
Andreas Fischer
00859fa47c We've got to use array_merge() as long as we want to be able to write to $global_vars. r10281 didn't change this, btw. ;-)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10289 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-24 18:47:42 +00:00
Joas Schilling
02235a87cd Bug #54275 - Do not link to user profile in ATOM feed entry if post has been made by the guest user.
Authorised by: bantu


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10288 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-24 18:28:46 +00:00
Joas Schilling
4f0db631d9 Bug #54285 - Correctly exclude subforums from ATOM Feeds.
Authorised by: bantu


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10287 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-24 18:26:15 +00:00
Andreas Fischer
f864e75174 Nitpicks. r10283, r10285
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10286 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-24 17:58:22 +00:00
Andreas Fischer
2d83f5be70 Bug #53565 - Use em dash instead of hyphen/minus as separator in ATOM Feeds item statistics.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10285 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-24 16:00:18 +00:00
Andreas Fischer
a019b15746 Fix Bug #54375 - Show correct HTML title when reporting private messages.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10284 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-24 14:27:17 +00:00
Henry Sudhof
efc1f8139b #54245
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10283 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-21 09:16:08 +00:00
Henry Sudhof
10bc773979 #54245
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10282 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-21 09:14:07 +00:00
Andreas Fischer
f5cbd9ea0e Implement suggestion as per Bug #53305 - Send time of last item instead of current time in ATOM Feeds.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10281 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-20 21:14:34 +00:00
Andreas Fischer
4701b446f5 Fix Bug #54055 - Typo in search synonyms list
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10280 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-19 13:22:55 +00:00
Andreas Fischer
c80f98ea10 Fix Bug #54125 - Correctly reset login keys if passed value is the current user.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10279 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-19 09:54:38 +00:00
Meik Sievertsen
338559baca Tag phpBB 3.0.6 Release
git-svn-id: file:///svn/phpbb/tags/release_3_0_6@10278 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-17 15:33:03 +00:00
Meik Sievertsen
98a2e3b938 merge focus qr code from 3_0_0
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_6@10277 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-16 17:09:15 +00:00
Meik Sievertsen
72c4b694cf only change what needs to be changed. ;)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10276 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-16 11:44:14 +00:00
Henry Sudhof
926ce5abaa weird, editor is acting up
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10275 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-16 11:21:41 +00:00
Henry Sudhof
6ad759539a weird, editor is acting up
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10274 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-16 11:05:45 +00:00
Henry Sudhof
2ef4f51b4c #53905 - thanks DavidIQ
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10273 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-16 11:02:28 +00:00
Meik Sievertsen
7bf1e08a35 merge r10271 (late-late fix. :) But good someone at least noticed)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_6@10272 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-16 10:33:51 +00:00
Andreas Fischer
f59a9221e9 Fix Bug #53965, Regression introduced in r9768 - Hardcode language for the time being.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10271 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-15 22:30:07 +00:00
Meik Sievertsen
46a07c94ba merge r10269
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_6@10270 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-14 23:00:30 +00:00
Andreas Fischer
e4d1addc2c Fix Bug #53945 - Typo in r10267.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10269 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-14 21:27:24 +00:00
Meik Sievertsen
0cdf46db0f merge r10267
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_6@10268 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-14 20:15:50 +00:00
Meik Sievertsen
46112228c0 Tag as 3.0.6
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10267 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-14 20:11:38 +00:00
Joas Schilling
978f707fd1 [Fix] Force full date for board online record date.
Authorised by: bantu

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10266 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-14 19:12:12 +00:00
Andreas Fischer
a0d7f6ebc4 Fix Bug #51095 - Allow ban reason and length to be selected and copied in ACP and subsilver2 MCP.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10265 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-10 10:23:07 +00:00
Andreas Fischer
1f5e93eab2 Add 3.0.6 to changelog.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10264 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-10 10:14:19 +00:00
Meik Sievertsen
43598d7727 merge r10262
Fix for r10255

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_6@10263 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-09 16:49:15 +00:00
Meik Sievertsen
c693127b18 Fix for r10255
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10262 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-09 16:48:13 +00:00
Meik Sievertsen
700347738c merging r10260
Fix sql error in cache_moderators() if using postgresql. (Bug #53765)

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_6@10261 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-09 16:29:30 +00:00
Meik Sievertsen
a691f4c8bc Fix sql error in cache_moderators() if using postgresql. (Bug #53765)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10260 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-09 16:23:15 +00:00
Meik Sievertsen
d5a7d20579 Branch off 3.0.6. This ensures we are able to work on the next release and also decide what will be included as late fixes in RC's.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_6@10259 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-09 14:24:06 +00:00
Meik Sievertsen
b39f618001 Fix Bug #53435 - unneccessary error on forum creation screen, actually, this code is no longer even executed since RC4
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10258 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-08 11:17:32 +00:00
Meik Sievertsen
0382b08fe2 fix whitespaces/tabs in r10256
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10257 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-07 15:11:40 +00:00
Henry Sudhof
b35b4063f4 #53655
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10256 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-07 13:33:19 +00:00
Meik Sievertsen
91721d67fa simplify the js code a bit and also detect up arrow key for auto completion
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10255 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-06 14:59:02 +00:00
Meik Sievertsen
f0ef35ce6e update to r10069 (try to detect auto completion on input fields and do not submit form if user uses enter key for auto completion instead of right arrow key)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10254 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-05 14:58:25 +00:00
Meik Sievertsen
9c7109d59e This is not perfect... i know, but at least it gives out more information than a simple "this topic/post does not exist". ;)
Related to r9971

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10253 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-03 15:03:14 +00:00
Meik Sievertsen
b8cac00366 Fix Bug #53545 - javascript error in template
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10252 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-03 14:51:07 +00:00
Meik Sievertsen
7d4a25e73f Fix Bug #53505 (related to Bug #52515 and r10208) - i fixed this the "do not break other things" way, usually the fix would be using !$submit here
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10251 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-03 14:40:25 +00:00
Meik Sievertsen
199bb13660 Tag phpBB Release Candidate 4
git-svn-id: file:///svn/phpbb/tags/release_3_0_6-RC4@10250 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-01 19:19:17 +00:00
Meik Sievertsen
b5c4dc3284 check for additional empty config variables...
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10249 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-11-01 15:33:44 +00:00
Meik Sievertsen
5553cfc2ed Several fixes:
Fix Bug #53335
Fix wrong unique index fetch for oracle and sqlite
Fix alter column definition for firebird (although the query will fail in these circumstances [primary key] because firebird (again) does not support simple things... although... mssql/oracle having the same "problems", but there you are able to do more advanced queries)

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10248 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-30 19:19:48 +00:00
Meik Sievertsen
c2832affae Fix another bug in WHERE statement rewrite for oracle. The bug(s) actually consist of not detecting correct parameters and then resulting in partial WHERE statements, where non-detected strings are simply removed. grrrrrr
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10247 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-30 17:21:20 +00:00
Meik Sievertsen
c02f276c5f saw this bug while debugging... we really really need another layer in 3.1.x (better sooner than later), but retaining backwards compatibility.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10246 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-30 16:59:48 +00:00
Meik Sievertsen
cdeca65aec Fix Jabber SASL PLAIN authentication failures. (Bug #52995)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10245 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-29 15:04:19 +00:00
Meik Sievertsen
2258d85623 Implement suggestion in ticket #52155 - Better way to generate SID-free links in feed.php
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10244 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-29 14:00:43 +00:00
Ruslan Uzdenov
3d3e673396 Fix Bug #53285 introduced in r10018 - Mark the first visible forum on index as unread if there's any unread global announcement
Authorised by: Bantu

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10243 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-28 16:49:23 +00:00
Meik Sievertsen
401ee9ce59 now we will have an RC4 we can adjust this one email file to act like all other email files
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10242 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-28 16:18:02 +00:00
Meik Sievertsen
110f81684e I am very sorry... but the changes require (a hopefully very short) RC4 phase
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10241 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-28 16:05:17 +00:00
Meik Sievertsen
87e717ae87 Fix Bug #53245 - Correct regular expression escaping and only splitting keywords on space and "|"
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10240 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-28 15:10:32 +00:00
Henry Sudhof
df5fa06035 ... and finally
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10239 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-27 13:54:03 +00:00
Henry Sudhof
d53f9a22d6 adding normalization - shouldn't change anything
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10238 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-27 12:36:55 +00:00
Henry Sudhof
44719bd041 #53235 - removing accidental commits
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10237 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-27 12:27:46 +00:00
Meik Sievertsen
b23f6c90ba fix spaces/tabs
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10236 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-27 11:17:53 +00:00
Henry Sudhof
56c8e34145 #53235
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10235 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-27 08:43:00 +00:00
Meik Sievertsen
6ca7b21dc9 Fix Bug #53185 (icon width/height adjustement for icons > 127px also applied on smilies) - related to r10088
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10234 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-26 13:59:02 +00:00
Meik Sievertsen
6d1c40f6e6 Fix Bug #53175 (forum_options cleared if editing forum) - regression from r10024
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10233 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-25 09:03:05 +00:00
Chris Smith
d7d810a586 changelog more descriptive for #45805 r9633
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10232 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-24 23:15:10 +00:00
Meik Sievertsen
b850fc4fbe fix table creation in db_tools.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10231 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-24 14:28:59 +00:00
Meik Sievertsen
131ba8c2ba two obvious mistakes (thanks Jon :))
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10230 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-24 14:28:41 +00:00
Meik Sievertsen
4e8e766ed6 revert r9910 - ticket #1309
Reason for revert: http://www.phpbb.com/bugs/phpbb3/ticket.php?ticket_id=1309&start=8#post193395

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10229 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-24 13:04:26 +00:00
Meik Sievertsen
30f3ba83e3 sneaks in and changes the version number. Seems like we see no RC4...
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10228 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-22 14:35:56 +00:00
Meik Sievertsen
ba73a77f30 adjust changelog (spelling, etc.) and removed our loved JD's from the patch lines (they are now listed within the AUTHORS file).
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10227 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-21 19:56:40 +00:00
Meik Sievertsen
98bde3441e add default_lang to statistics
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10226 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-20 11:16:30 +00:00
Meik Sievertsen
cdc780b798 fix bug #53045 the simple way. ;)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10225 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-20 11:04:00 +00:00
Henry Sudhof
69746fe683 #52875 working around php4 bug 24631 - call_user_func doesn't return references. This causes php4 to create a copy.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10224 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-15 10:52:41 +00:00
Henry Sudhof
2a0a16bca3 #52875 working around php4 bug 24631 - call_user_func doesn't return references. This causes php4 to create a copy.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10223 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-15 10:51:32 +00:00
Meik Sievertsen
8d12b40fc4 Tag phpBB 3.0.6-RC3
git-svn-id: file:///svn/phpbb/tags/release_3_0_6-RC3@10222 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-13 12:27:40 +00:00
Meik Sievertsen
cc0eadb67f remove unused closing div tag (Bug #52735)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10221 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-12 14:16:09 +00:00
Meik Sievertsen
08437d1538 update constants and schema data from RC2 to RC3
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10220 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-11 09:56:47 +00:00
Meik Sievertsen
ae88f95808 update mysql_upgrader to latest schema
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10219 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-11 09:56:11 +00:00
Meik Sievertsen
d94da30c5d correctly execute database update step (detect if the version the admin wants to update to is greater than the current version even if phpbb.com says the current version is lower than the update version) which correctly updates the database for those who forgot to enable the PHPBB_QA constant for release candidates.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10218 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-09 11:59:54 +00:00
Meik Sievertsen
9ccd209930 fix bug #52605 - regression from r9811
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10217 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-09 11:12:37 +00:00
Chris Smith
457a195797 Properly fix #40925
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10216 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-07 14:54:10 +00:00
Meik Sievertsen
aef6352a35 Bug #52525
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10214 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-05 17:54:55 +00:00
Meik Sievertsen
d5fe2e7db7 bugfix for non-existent handles and theme data (we really need to clean this up, template_files feels quite furry)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10213 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-05 16:22:21 +00:00
Meik Sievertsen
e9c1c03ca6 Fix bug #52515 (wrong bbcode uid assigned if error triggered and quote/forward PM) - still not entirely sure if this will break things, but the correct uid should also be assigned if there is an error triggered somewhere, this does not change the content or the actions assigned.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10208 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-04 18:03:19 +00:00
Meik Sievertsen
8525e97c28 Bug #52415
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10205 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-04 11:10:16 +00:00
Meik Sievertsen
53965f0085 Bug #52175
atm the "fix" with the most changes involved. We will inform style authors about these changes. We will not release RC2 to RC3 code changes, but will annnounce the style changes within the RC3 release announcement.

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10204 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-04 11:08:12 +00:00
Meik Sievertsen
a53c9abf7e it is not a post but a private message
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10203 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-04 10:35:20 +00:00
Andreas Fischer
8661541d0d Some nitpicks before we include this file in a final release.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10202 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-03 13:23:10 +00:00
Meik Sievertsen
8bae495874 revert r10079 (bug #50035) to be able to investigate other options of handling this later.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10201 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-10-03 11:35:39 +00:00
Meik Sievertsen
485576395c Revert revisions r10176 and r9647 - Bug #45975, #51505
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10200 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-30 15:07:40 +00:00
Henry Sudhof
3850de87fc #52245
Authorised by: AcydBurn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10199 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-30 15:00:44 +00:00
Meik Sievertsen
80bc2d8dc9 Disable copy forum permissions screen in forums creation/update workflow - also fixes Bug #52035
We will revisit this one later

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10198 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-30 14:51:43 +00:00
Meik Sievertsen
d47c61bbb3 update acp forums copy style to look like the rest of the ACP
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10197 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-30 14:50:49 +00:00
Meik Sievertsen
d657c05ed5 Fix Bug #52125, regression from r9678 for Bug #46225
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10196 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-29 14:51:58 +00:00
Meik Sievertsen
823cbdc2d9 Fix Bug #52055 - php notices if phpbb.com is not reachable
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10195 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-29 14:48:24 +00:00
Henry Sudhof
5e22b11be1 #52095
Authorised by: AcydBurn
That should finally fix the issue for rtl

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10194 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-28 13:31:30 +00:00
Henry Sudhof
19b417cee9 Fail without notices when no questions are provided
Authorised by: AcydBurn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10193 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-28 13:08:33 +00:00
Henry Sudhof
4208ed9c57 #52095
Authorised by: AcydBurn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10192 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-28 10:40:20 +00:00
Henry Sudhof
eb7ac464cf #52095
Authorised by: AcydBurn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10191 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-28 10:26:18 +00:00
Meik Sievertsen
ac5995551b Tag phpBB 3.0.6 Release Candidate 2
git-svn-id: file:///svn/phpbb/tags/release_3_0_6-RC2@10190 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-25 17:05:47 +00:00
Meik Sievertsen
1612be1af3 alt instead of title, fix XHTML issue reported in ticket #51945
(i will not announce this change, the code changes package for RC2 and the final release will include it though, the RC1 one will not be updated to reflect this change)

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10189 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-25 16:42:52 +00:00
Meik Sievertsen
96b3361577 add recent important additions/fixes to the changelog
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10188 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-25 10:27:19 +00:00
Meik Sievertsen
3e0bf1f8a4 prepare for RC2
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10187 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-25 09:41:49 +00:00
Joas Schilling
de25ce8724 Fix Bug #51835 - editing posts with attachments - regression from r9843 introduced in #48265
Authorised by: AcydBurn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10186 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-25 08:41:47 +00:00
Meik Sievertsen
023760c8b2 I think i need to check other DBMS more often. :/
- fix index check for sqlite, firebird and oracle
- add check for unique index
- fix changing default value for column in mssql (add constraint)

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10185 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-24 15:36:05 +00:00
Andreas Fischer
66038cde5b Fix bug #51905 - Only check whether forum image exists if forum image is specified.
Related to bug #39005.
Authorised by: acydburn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10184 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-24 12:37:39 +00:00
Meik Sievertsen
54c22ae52a remove log_time index (was not used at all)
At the same time the database updater now supports checking for existing indexes. The db tools will not have this in 3.0.6 (the db tools have a function to retrieve all indexes) and i need to test the updater on all DBMS today...

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10183 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-24 08:53:17 +00:00
Henry Sudhof
c1b898890b #51805
Authorised by: AcydBurn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10182 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-23 17:41:11 +00:00
Meik Sievertsen
1461beacf6 submit buttons in same style as other submit buttons in ACP
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10181 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-23 17:03:04 +00:00
Meik Sievertsen
35eea4539a check for m_split and m_merge permission on target topic and topic icon selection (Bug #51675)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10180 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-23 09:41:54 +00:00
Joas Schilling
87eb1d9f20 Fix Bug #51775 - Do not unlock topics with QuickReply
Authorised by: AcydBurn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10179 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-23 08:19:22 +00:00
Meik Sievertsen
782d680b54 Fix getting host for situations where the name/IP is not resolvable. Related to Bug #41025
Related revisions: r9387 and r10158

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10178 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-22 15:09:09 +00:00
Meik Sievertsen
90e1187601 Move add_log() call for captcha "configure" page to the captcha plugin, because only the plugin is able to know if the config got updated or not.
Note to captcha MOD authors: please check if you have a function acp_page() and if an add_log() call is required for your plugin.
Bug #51695

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10177 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-22 10:03:17 +00:00
Meik Sievertsen
5d52b32a63 regression in r9647 (wrong fix for bug #45975) - Bug #51505 (Patch by HardStyle)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10176 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-22 09:55:50 +00:00
Meik Sievertsen
2ba402b06d And now i feel even more dirty because i had to adjust the oracle hack to allow for queries > 4k to let it recognise concatenated strings and strings having the character ")" in it. I also added fallback code in case our regex splits too much. :/
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10175 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-21 18:02:33 +00:00
Meik Sievertsen
3d5ca6b2b7 Ok, the oracle database backup never actually worked at all. We used the wrong delimiter, did not preserve correct sequence order, did not merge primary keys and uniques... i think no one ever tried to actually restore an oracle backup.
Fix all of this.

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10174 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-21 17:59:39 +00:00
Henry Sudhof
61c6c07abc #50485
Authorised by: AcydBurn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10173 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-21 11:36:36 +00:00
Meik Sievertsen
5382eb441d remove unnecessary query parts... thanks to asinshesq for pointing it out.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10172 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-20 18:50:35 +00:00
Meik Sievertsen
0e130c107b forgot to add display active flag to forum data in r10169 for bug #19135
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10171 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-20 17:52:06 +00:00
Meik Sievertsen
8da2b69e2b note correct username if post/topic get's removed if user is anonymous
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10170 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-20 17:08:16 +00:00
Meik Sievertsen
4006def79d set "display active topics" to true by default for new forum creation... regression/addition from/to bug #19135
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10169 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-20 16:46:31 +00:00
Meik Sievertsen
97be42d31c improve code to detect and solve conflicts for code removed from one version to another.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10168 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-20 16:20:20 +00:00
Meik Sievertsen
7a244e1d2b if preserve_cr is true and the file generated no conflict but is obviously not "empty" we tag it as modified because preserve_cr is the default mode for showing modifications (else the user gets a resolvable conflict and may wonder why ;))
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10167 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-20 16:18:41 +00:00
Meik Sievertsen
1b64e41160 although we do not use force_approved_state check it nevertheless for the message displayed to the user - bug #51325
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10166 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-20 12:32:27 +00:00
Joas Schilling
2e40ba022d Fix Bug #51655 - Missing global vars phpbb_root_path & phpEx
Authorised by: AcydBurn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10165 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-19 12:21:39 +00:00
Meik Sievertsen
b53a0c8041 use existing language key for "private message not found"
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10164 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-19 10:46:19 +00:00
Meik Sievertsen
38c4bcad55 Ok, after 20+ hours i think i fixed all grave issues with the updater
- smaller memory footprint
- better checks for already updated files
- even less conflicts
- fixed automatic conflict resolving after successful merges
- no more conflicts for $Id$ changes
- fixed skip_whitespace_changes bug where code blocks were added to diff_op_add whereby the previous or next diff_op_copy already had the change
- correctly display merged files in diff view (previously it happened that the old file was used for comparision, although the new file was different/newer/merged)


git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10163 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-18 18:18:54 +00:00
Joas Schilling
9c1334cd62 fix r9814 - remove echo "aha"; - Happy birthday naderman
Authorised by: naderman

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10162 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-18 14:56:58 +00:00
Joas Schilling
bc677ae3ad Fix Bug #51375 - Do not show QR in closed topics/forums
Authorised by: AcydBurn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10161 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-18 14:28:45 +00:00
Meik Sievertsen
d1f796bf25 phpBB updater now solves common conflicts on it's own. This further reduces the chance of conflicts.
(tested with some heavily modified files who previously generated a lot of conflicts)

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10160 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-17 14:18:57 +00:00
Andreas Fischer
13e8898563 Return integers when get_forum_list() is supposed to only return IDs.
This will save us some calls to the sql escape function when used with sql_in_set().
Authorised by: acydburn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10159 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-17 13:44:50 +00:00
Meik Sievertsen
223b9ed0d6 extend r9387 - check for existance of all functions we use...
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10158 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-17 13:39:50 +00:00
Meik Sievertsen
0b0c9544a3 found a much better method to skip whitespace/tab changes. :)
This also solves even more unncessary conflicts - Bug #51365

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10157 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-17 08:14:56 +00:00
Meik Sievertsen
6b5d195a98 correctly display diff for conflicts
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10156 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-17 08:13:28 +00:00
Meik Sievertsen
8bcfd33539 Remove duplicate S_DISPLAY_GALLERY key from ucp_groups. Regression from r9757
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10155 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-17 07:52:35 +00:00
Meik Sievertsen
2f808d274b fix xhtml issue in updater - Bug #51335
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10154 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-16 14:37:17 +00:00
Meik Sievertsen
8cea32f3bf fix some XHTML issues in admin style - Bug #51405
the acp_logs one is quite nasty, i know - but at least it does not require a new css class

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10153 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-16 14:30:36 +00:00
Meik Sievertsen
c32d295d97 Bug #51385 - regression from r9252 - only spelling fix
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10152 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-16 13:02:13 +00:00
Meik Sievertsen
198989dcfd add send_statistics feature to changelog
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10151 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-16 13:01:20 +00:00
Joas Schilling
697fd5a134 Fix #51285 and more issues with template inherence on set_custom_template
Conflict introduced with r9839 and r9823

Authorised by: AcydBurn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10150 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-16 08:11:52 +00:00
Meik Sievertsen
b27e96cf62 move up the feed code because MODs often use this location which results in more unneccessary conflicts.
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10149 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-16 07:51:26 +00:00
Meik Sievertsen
c616b2b336 fix coppa setting in convertor (Bug #50735) - at the same time increase target phpBB version number for the phpBB2 convertor and convertor version number. ;)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10148 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-15 19:01:42 +00:00
Meik Sievertsen
36dc2d6e2d Fix login for passworded forums - Bug #51265
Was a regression from r10067 for Bug #50285

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10147 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-15 13:10:59 +00:00
Meik Sievertsen
1df914d80a fix uninitialised variable in functions_admin.php (Bug #51295)
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10146 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-15 12:58:23 +00:00
Joas Schilling
b4c7dbcd66 Fix #51305 - User need a_clearlog to delete warnings
Authorised by: AcydBurn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10145 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-15 09:45:05 +00:00
Henry Sudhof
ffbe4e3b82 sanity check - avoid ugly error messages
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10144 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-15 09:11:17 +00:00
Henry Sudhof
bf2133d380 #51395 - remove legacy captcha code. authorised by: acyd burn
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10143 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-15 09:08:37 +00:00
Joas Schilling
cb88671638 fix #51235 - regression from 9843 for #48265
Authorised by: AcydBurn

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10142 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-13 15:04:21 +00:00
Meik Sievertsen
3b73584430 why am i so dumb sometimes... /me hits myself with the dumbness stick...
regression from r10122

git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10141 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-09-13 14:31:32 +00:00
Meik Sievertsen
6c2760a736 Tag 3.0.5 release before we release
git-svn-id: file:///svn/phpbb/tags/release_3_0_5@9522 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-05-31 15:26:58 +00:00
Meik Sievertsen
6485d66743 3.0.5-RC1 release
git-svn-id: file:///svn/phpbb/tags/release_3_0_5-RC1@9509 89ea8834-ac86-4346-8a33-228a782c2dd0
2009-05-03 12:02:38 +00:00
Meik Sievertsen
a94c760650 Move tag 3_0_0_RC1 to 3_0_0-RC1, i tagged it wrongly
git-svn-id: file:///svn/phpbb/tags/release_3_0_4-RC1@9189 89ea8834-ac86-4346-8a33-228a782c2dd0
2008-12-13 12:03:47 +00:00
Meik Sievertsen
d78df35da9 Tag 3.0.4
git-svn-id: file:///svn/phpbb/tags/release_3_0_4@9188 89ea8834-ac86-4346-8a33-228a782c2dd0
2008-12-13 01:11:04 +00:00
Meik Sievertsen
141eeec915 Tag phpBB 3.0.4-RC1
git-svn-id: file:///svn/phpbb/tags/release_3_0_4_RC1@9183 89ea8834-ac86-4346-8a33-228a782c2dd0
2008-12-08 14:37:33 +00:00
Meik Sievertsen
615b0d4e37 3.0.3 tag
git-svn-id: file:///svn/phpbb/tags/release_3_0_3@9059 89ea8834-ac86-4346-8a33-228a782c2dd0
2008-11-12 21:06:22 +00:00
Meik Sievertsen
b0e185e7db Tag 3.0.3-RC1 release
git-svn-id: file:///svn/phpbb/tags/release_3_0_3-RC1@9047 89ea8834-ac86-4346-8a33-228a782c2dd0
2008-11-02 22:13:35 +00:00
Meik Sievertsen
b21ca5be71 Tagging 3.0.2 release
git-svn-id: file:///svn/phpbb/tags/release_3_0_2@8679 89ea8834-ac86-4346-8a33-228a782c2dd0
2008-07-10 21:19:26 +00:00
Meik Sievertsen
7e97da5285 3.0.2-RC2 released
git-svn-id: file:///svn/phpbb/tags/release_3_0_2-RC2@8676 89ea8834-ac86-4346-8a33-228a782c2dd0
2008-06-29 10:39:19 +00:00
Meik Sievertsen
e2ef990121 Tag 3.0.2 RC1
git-svn-id: file:///svn/phpbb/tags/release_3_0_2-RC1@8658 89ea8834-ac86-4346-8a33-228a782c2dd0
2008-06-14 15:20:12 +00:00
Meik Sievertsen
4ff33f5d49 tag release 3.0.1
git-svn-id: file:///svn/phpbb/tags/release_3.0.1@8498 89ea8834-ac86-4346-8a33-228a782c2dd0
2008-04-08 12:21:52 +00:00
Meik Sievertsen
21ce021519 Creating Tag for 3.0.1-RC1
git-svn-id: file:///svn/phpbb/tags/release_3_0_1-RC1@8470 89ea8834-ac86-4346-8a33-228a782c2dd0
2008-03-26 11:47:33 +00:00
(no author)
7ecd17a993 This commit was manufactured by cvs2svn to create tag
'release_3_0_0'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_0@8279 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-12-12 16:46:54 +00:00
(no author)
0aef1e57a7 This commit was manufactured by cvs2svn to create tag
'release_3_0_RC8'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_RC8@8260 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-12-01 13:16:37 +00:00
(no author)
438f31326a This commit was manufactured by cvs2svn to create tag
'release_3_0_RC7'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_RC7@8195 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-10-14 23:10:22 +00:00
(no author)
b5535db081 This commit was manufactured by cvs2svn to create tag
'release_3_0_RC6'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_RC6@8175 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-10-13 12:30:53 +00:00
(no author)
f1e54d97fc This commit was manufactured by cvs2svn to create tag
'release_3_0_RC5'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_RC5@8071 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-08-24 18:26:15 +00:00
(no author)
e02e530204 This commit was manufactured by cvs2svn to create tag
'release_3_0_RC4'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_RC4@7975 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-07-28 16:40:59 +00:00
(no author)
aadda93973 This commit was manufactured by cvs2svn to create tag
'release_3_0_RC3'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_RC3@7843 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-07-08 16:39:48 +00:00
(no author)
4319ebbaf6 This commit was manufactured by cvs2svn to create tag
'release_3_0_RC2'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_RC2@7793 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-06-24 16:38:12 +00:00
(no author)
19c923cf1b This commit was manufactured by cvs2svn to create tag
'release_3_0_RC1'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_RC1@7657 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-05-20 14:59:17 +00:00
(no author)
7068d8b462 This commit was manufactured by cvs2svn to create tag
'release_3_0_B5'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_B5@6949 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-28 17:00:03 +00:00
(no author)
80d429a02d This commit was manufactured by cvs2svn to create tag
'release_3_0_B4'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_B4@6680 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 21:41:56 +00:00
(no author)
5cfa0ec0c3 This commit was manufactured by cvs2svn to create tag
'release_3_0_B3'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_B3@6579 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-12 19:45:36 +00:00
(no author)
108312d52a This commit was manufactured by cvs2svn to create tag
'release_3_0_B2'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_B2@6288 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 20:24:25 +00:00
(no author)
c9f68f0b5c This commit was manufactured by cvs2svn to create tag
'release_3_0_B1'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_B1@6094 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 20:30:41 +00:00
309 changed files with 14757 additions and 2562 deletions

8
.gitignore vendored Normal file
View File

@@ -0,0 +1,8 @@
*~
phpBB/cache/*.php
phpBB/config.php
phpBB/files/*
phpBB/images/avatars/upload/*
phpBB/store/*
tests/phpbb_unit_tests.sqlite2
tests/test_config.php

149
build/build.xml Normal file
View File

@@ -0,0 +1,149 @@
<?xml version="1.0" encoding="UTF-8"?>
<project name="phpBB" description="The phpBB forum software" default="all" basedir="../">
<!-- a few settings for the build -->
<property name="newversion" value="3.0.8" />
<property name="prevversion" value="3.0.8-RC1" />
<property name="olderversions" value="3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.0.6, 3.0.7-PL1" />
<!-- no configuration should be needed beyond this point -->
<property name="oldversions" value="${olderversions}, ${prevversion}" />
<property name="versions" value="${oldversions}, ${newversion}" />
<!-- These are the main targets which you will probably want to use -->
<target name="package" depends="clean,prepare,create-package" />
<target name="all" depends="clean,prepare,test,create-package" />
<target name="prepare">
<mkdir dir="build/logs" />
<mkdir dir="build/api" />
<mkdir dir="build/codebrowser" />
<mkdir dir="build/coverage" />
<mkdir dir="build/cpd" />
<mkdir dir="build/dependencies" />
<mkdir dir="build/new_version" />
<mkdir dir="build/new_version/files" />
<mkdir dir="build/new_version/patches" />
<mkdir dir="build/new_version/release_files" />
<mkdir dir="build/new_version/update" />
<mkdir dir="build/old_versions" />
<mkdir dir="build/save" />
</target>
<target name="clean">
<delete dir="build/logs" />
<delete dir="build/api" />
<delete dir="build/codebrowser" />
<delete dir="build/coverage" />
<delete dir="build/cpd" />
<delete dir="build/dependencies" />
<delete dir="build/new_version" />
<delete dir="build/old_versions" />
<delete dir="build/save" />
</target>
<target name="test">
<exec dir="tests"
command="phpunit --log-junit ../build/logs/phpunit.xml
--coverage-clover ../build/logs/clover.xml
--coverage-html ../build/coverage
phpbb_all_tests all_tests.php"
passthru="true" />
<!-- Does not allow changing the working directory to tests/
so this approach does not work for us unfortunately
<phpunit codecoverage="true" haltonfailure="true">
<formatter todir="build/logs" type="xml"/>
<batchtest>
<fileset dir="tests">
<include name="all_tests.php"/>
</fileset>
</batchtest>
</phpunit>
-->
</target>
<target name="old-version-diffs">
<foreach list="${oldversions}" param="version" target="old-version-diff" />
</target>
<!-- This target retrieves an old version from the git tag release-${version}
and creates a diff between that release and the new one -->
<target name="old-version-diff">
<echo msg="Retrieving version ${version}" />
<mkdir dir="build/old_versions/release-${version}" />
<phingcall target="export">
<property name="revision" value="release-${version}" />
<property name="dir" value="build/old_versions/release-${version}" />
</phingcall>
<phingcall target="clean-diff-dir">
<property name="dir" value="build/old_versions/release-${version}" />
</phingcall>
<exec dir="build/old_versions" command="diff -crNEBwd release-${version} release-${newversion} >
../new_version/patches/phpBB-${version}_to_${newversion}.patch" escape="false" />
</target>
<target name="prepare-new-version">
<!-- select the currently checked out commit (HEAD) for packaging -->
<mkdir dir="build/new_version/phpBB3" />
<phingcall target="export">
<property name="revision" value="HEAD" />
<property name="dir" value="build/new_version/phpBB3" />
</phingcall>
<!-- copy into directory for diffs -->
<exec dir="build" command="cp -rp new_version/phpBB3 old_versions/release-${newversion}" />
<!-- and clean up -->
<phingcall target="clean-diff-dir">
<property name="dir" value="build/old_versions/release-${newversion}" />
</phingcall>
<!-- create an empty config.php file (not for diffs) -->
<touch file="build/new_version/phpBB3/config.php" />
</target>
<target name="create-package" depends="prepare-new-version,old-version-diffs">
<exec dir="build" command="php -f package.php '${versions}' > logs/package.log" escape="false" />
<exec dir="build" command="php -f build_diff.php '${prevversion}' '${newversion}' > logs/build_diff.log" escape="false" />
</target>
<!--
This target can be called using phingcall to retrieve a clean
checkout of a commit from git. It will only export the phpBB directory.
The properties revision and dir are required.
This target will remove directories that are not needed in distribution
and set correct permissions.
-->
<target name="export">
<exec dir="phpBB"
command="git archive ${revision} | tar -x -C ../${dir}"
checkreturn="true" />
<delete file="${dir}/config.php" />
<delete dir="${dir}/develop" />
<delete dir="${dir}/install/data" />
<echo msg="Setting permissions for checkout of ${revision} in ${dir}" />
<!-- set permissions of all files to 644, directories to 755 -->
<exec dir="${dir}" command="find -type f|xargs chmod 644" escape="false" />
<exec dir="${dir}" command="find -type d|xargs chmod 755" escape="false" />
<!-- set permissions of some directories to 777 -->
<chmod mode="0777" file="${dir}/cache" />
<chmod mode="0777" file="${dir}/store" />
<chmod mode="0777" file="${dir}/files" />
<chmod mode="0777" file="${dir}/images/avatars/upload" />
</target>
<target name="clean-diff-dir">
<delete dir="${dir}/cache" />
<delete dir="${dir}/docs" />
<delete dir="${dir}/files" />
<delete dir="${dir}/install" />
<delete dir="${dir}/store" />
</target>
</project>

415
build/build_diff.php Executable file
View File

@@ -0,0 +1,415 @@
#!/usr/bin/env php
<?php
/**
*
* @package build
* @version $Id$
* @copyright (c) 2010 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
if ($_SERVER['argc'] != 3)
{
die("Please specify the previous and current version as arguments (e.g. build_diff.php '1.0.2' '1.0.3').");
}
$old_version = trim($_SERVER['argv'][1]);
$new_version = trim($_SERVER['argv'][2]);
$substitute_old = $old_version;
$substitute_new = $new_version;
$simple_name_old = 'release-' . $old_version;
$simple_name_new = 'release-' . $new_version;
$echo_changes = false;
// DO NOT EVER USE THE FOLLOWING! Fix the script to generate proper changes,
// do NOT manually create them.
// Set this to true to just compress the changes and do not build them again
// This should be used for building custom modified txt file. ;)
$package_changed_files = false;
//$debug_file = 'includes/functions_user.php'; //'styles/prosilver/style.cfg';
$debug_file = false;
if ($debug_file !== false)
{
$echo_changes = false;
}
$s_name = 'save_' . $substitute_old . '_to_' . $substitute_new;
$location = dirname(__FILE__);
if (!$package_changed_files)
{
if (!$echo_changes)
{
// Create directory...
run_command("mkdir $location/save/{$s_name}");
run_command("mkdir $location/save/{$s_name}/language");
run_command("mkdir $location/save/{$s_name}/prosilver");
run_command("mkdir $location/save/{$s_name}/subsilver2");
}
}
// Build code changes and place them into 'save'
if (!$package_changed_files)
{
build_code_changes('language');
build_code_changes('prosilver');
build_code_changes('subsilver2');
}
// Package code changes
$code_changes_filename = 'phpBB-' . $substitute_old . '_to_' . $substitute_new . '-codechanges';
if (!$echo_changes)
{
// Now compress the files...
// Build Main phpBB Release
$compress_programs = array(
// 'tar.gz' => 'tar -czf',
'tar.bz2' => 'tar -cjf',
'zip' => 'zip -r'
);
chdir($location . '/save/' . $s_name);
foreach ($compress_programs as $extension => $compress_command)
{
echo "Packaging code changes for $extension\n";
run_command("rm ./../../new_version/release_files/{$code_changes_filename}.{$extension}");
flush();
// Build Package
run_command("$compress_command ./../../new_version/release_files/{$code_changes_filename}.{$extension} *");
// Build MD5 Sum
run_command("md5sum ./../../new_version/release_files/{$code_changes_filename}.{$extension} > ./../../new_version/release_files/{$code_changes_filename}.{$extension}.md5");
flush();
}
}
/**
* $output_format can be: language, prosilver and subsilver2
*/
function build_code_changes($output_format)
{
global $substitute_new, $substitute_old, $simple_name_old, $simple_name_new, $echo_changes, $package_changed_files, $location, $debug_file, $s_name;
// Global array holding the data entries
$data = array(
'header' => array(),
'diff' => array(),
);
// Read diff file and prepare the output filedata...
//$patch_filename = '../new_version/patches/phpBB-' . $substitute_old . '_to_' . $substitute_new . '.patch';
$release_filename = 'phpbb-' . $substitute_old . '_to_' . $substitute_new . '_' . $output_format . '.txt';
if (!$package_changed_files)
{
if (!$echo_changes)
{
$fp = fopen('save/' . $s_name . '/' . $output_format . '/' . $release_filename, 'wb');
if (!$fp)
{
die('Unable to create ' . $release_filename);
}
}
}
include_once($location . '/build_helper.php');
$package = new build_package(array($substitute_old, $substitute_new), false);
$titles = array(
'language' => 'phpBB ' . $substitute_old . ' to phpBB ' . $substitute_new . ' Language Pack Changes',
'prosilver' => 'phpBB ' . $substitute_old . ' to phpBB ' . $substitute_new . ' prosilver Changes',
'subsilver2' => 'phpBB ' . $substitute_old . ' to phpBB ' . $substitute_new . ' subsilver2 Changes',
);
$data['header'] = array(
'title' => $titles[$output_format],
'intro' => '
These are the ' . $titles[$output_format] . ' summed up into a little Mod. These changes are only partial and do not include any code changes, therefore not meant for updating phpBB.
',
'included_files' => array(),
);
// We collect the files we want to diff first (ironically we grab this from a diff file)
if (!$echo_changes)
{
echo "\n\nCollecting Filenames:";
}
// We re-create the patch file
foreach ($package->old_packages as $_package_name => $dest_package_filename)
{
chdir($package->locations['old_versions']);
if (!$echo_changes)
{
echo "\n\n" . 'Creating patch/diff files for phpBB-' . $dest_package_filename . $package->get('new_version_number');
}
$dest_package_filename = $location . '/save/' . $s_name . '/phpBB-' . $dest_package_filename . $package->get('new_version_number') . '.patch';
$package->run_command('diff ' . $package->diff_options . ' ' . $_package_name . ' ' . $package->get('simple_name') . ' > ' . $dest_package_filename);
// Parse this diff to determine file changes from the checked versions and save them
$result = $package->collect_diff_files($dest_package_filename, $_package_name);
$package->run_command('rm ' . $dest_package_filename);
}
chdir($location);
$filenames = array();
foreach ($result['files'] as $filename)
{
if ($debug_file !== false && $filename != $debug_file)
{
continue;
}
// Decide which files to compare...
switch ($output_format)
{
case 'language':
if (strpos($filename, 'language/en/') !== 0)
{
continue 2;
}
break;
case 'prosilver':
if (strpos($filename, 'styles/prosilver/') !== 0)
{
continue 2;
}
break;
case 'subsilver2':
if (strpos($filename, 'styles/subsilver2/') !== 0)
{
continue 2;
}
break;
}
if (!file_exists($location . '/old_versions/' . $simple_name_old . '/' . $filename))
{
// New file... include it
$data['header']['included_files'][] = array(
'old' => $location . '/old_versions/' . $simple_name_old . '/' . $filename,
'new' => $location . '/old_versions/' . $simple_name_new . '/' . $filename,
'phpbb_filename' => $filename,
);
continue;
}
$filenames[] = array(
'old' => $location . '/old_versions/' . $simple_name_old . '/' . $filename,
'new' => $location . '/old_versions/' . $simple_name_new . '/' . $filename,
'phpbb_filename' => $filename,
);
}
// Now let us go through the filenames list and create a more comprehensive diff
if (!$echo_changes)
{
fwrite($fp, build_header($output_format, $filenames, $data['header']));
}
else
{
//echo build_header('text', $filenames, $data['header']);
}
// Copy files...
$files_to_copy = array();
foreach ($data['header']['included_files'] as $filename)
{
$files_to_copy[] = $filename['phpbb_filename'];
}
// First step is to copy the new version over (clean structure)
if (!$echo_changes && sizeof($files_to_copy))
{
foreach ($files_to_copy as $file)
{
// Create directory?
$dirname = dirname($file);
if ($dirname)
{
$dirname = explode('/', $dirname);
$__dir = array();
foreach ($dirname as $i => $dir)
{
$__dir[] = $dir;
run_command("mkdir -p $location/save/" . $s_name . '/' . $output_format . '/' . implode('/', $__dir));
}
}
$source_file = $location . '/new_version/phpBB3/' . $file;
$dest_file = $location . '/save/' . $s_name . '/' . $output_format . '/';
$dest_file .= $file;
$command = "cp -p $source_file $dest_file";
$result = trim(`$command`);
echo "- Copied File: " . $source_file . " -> " . $dest_file . "\n";
}
}
include_once('diff_class.php');
if (!$echo_changes)
{
echo "\n\nDiffing Codebases:";
}
foreach ($filenames as $file_ary)
{
if (!file_exists($file_ary['old']))
{
$lines1 = array();
}
else
{
$lines1 = file($file_ary['old']);
}
$lines2 = file($file_ary['new']);
if (!sizeof($lines1))
{
// New File
}
else
{
$diff = new Diff($lines1, $lines2);
$fmt = new BBCodeDiffFormatter(false, 5, $debug_file);
if (!$echo_changes)
{
fwrite($fp, $fmt->format_open($file_ary['phpbb_filename']));
fwrite($fp, $fmt->format($diff, $lines1));
fwrite($fp, $fmt->format_close($file_ary['phpbb_filename']));
}
else
{
echo $fmt->format_open($file_ary['phpbb_filename']);
echo $fmt->format($diff, $lines1);
echo $fmt->format_close($file_ary['phpbb_filename']);
}
if ($debug_file !== false)
{
echo $fmt->format_open($file_ary['phpbb_filename']);
echo $fmt->format($diff, $lines1);
echo $fmt->format_close($file_ary['phpbb_filename']);
exit;
}
}
}
if (!$echo_changes)
{
fwrite($fp, build_footer($output_format));
// Close file
fclose($fp);
chmod('save/' . $s_name . '/' . $output_format . '/' . $release_filename, 0666);
}
else
{
echo build_footer($output_format);
}
}
/**
* Build Footer
*/
function build_footer($mode)
{
$html = '';
$html .= "# \n";
$html .= "#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ \n";
$html .= "# \n";
$html .= "# EoM";
return $html;
}
/**
* Build Header
*/
function build_header($mode, $filenames, $header)
{
global $substitute_old;
$html = '';
$html .= "############################################################## \n";
$html .= "## Title: " . $header['title'] . "\n";
$html .= "## Author: naderman < naderman@phpbb.com > (Nils Adermann) http://www.phpbb.com \n";
$html .= "## Description: \n";
$intr = explode("\n", $header['intro']);
$introduction = '';
foreach ($intr as $_line)
{
$introduction .= wordwrap($_line, 80) . "\n";
}
$intr = explode("\n", $introduction);
foreach ($intr as $_line)
{
$html .= "## " . $_line . "\n";
}
$html .= "## \n";
$html .= "## Files To Edit: \n";
foreach ($filenames as $file_ary)
{
$html .= "## " . $file_ary['phpbb_filename'] . "\n";
}
$html .= "##\n";
if (sizeof($header['included_files']))
{
$html .= "## Included Files: \n";
foreach ($header['included_files'] as $filename)
{
$html .= "## {$filename['phpbb_filename']}\n";
}
}
$html .= "## License: http://opensource.org/licenses/gpl-license.php GNU General Public License v2 \n";
$html .= "############################################################## \n";
$html .= "\n";
// COPY Statement?
if (sizeof($header['included_files']))
{
$html .= "#\n#-----[ COPY ]------------------------------------------\n#\n";
foreach ($header['included_files'] as $filename)
{
$html .= "copy {$filename['phpbb_filename']} to {$filename['phpbb_filename']}\n";
}
$html .= "\n";
}
return $html;
}
function run_command($command)
{
$result = trim(`$command`);
echo "\n- Command Run: " . $command . "\n";
}
?>

316
build/build_helper.php Normal file
View File

@@ -0,0 +1,316 @@
<?php
/**
*
* @package build
* @version $Id$
* @copyright (c) 2010 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
class build_package
{
var $package_infos;
var $old_packages;
var $versions;
var $locations;
// -c - context diff
// -r - compare recursive
// -N - Treat missing files as empty
// -E - Ignore tab expansions
// not used: -b - Ignore space changes.
// -w - Ignore all whitespace
// -B - Ignore blank lines
// -d - Try to find smaller set of changes
var $diff_options = '-crNEBwd';
var $diff_options_long = '-x images -crNEB'; // -x fonts -x imageset //imageset not used here, because it includes the imageset.cfg file. ;)
var $verbose = false;
var $status_begun = false;
var $num_dots = 0;
function build_package($versions, $verbose = false)
{
$this->versions = $versions;
$this->verbose = $verbose;
// Get last two entries
$_latest = $this->versions[sizeof($this->versions) - 1];
$_before = $this->versions[sizeof($this->versions) - 2];
$this->locations = array(
'new_version' => dirname(dirname(__FILE__)) . '/phpBB/',
'old_versions' => dirname(__FILE__) . '/old_versions/',
'root' => dirname(__FILE__) . '/',
'package_dir' => dirname(__FILE__) . '/new_version/'
);
$this->package_infos = array(
'package_name' => 'phpBB3',
'name_prefix' => 'phpbb',
'simple_name' => 'release-' . $_latest,
'new_version_number' => $_latest,
'short_version_number' => str_replace('.', '', $_latest),
'release_filename' => 'phpBB-' . $_latest,
'last_version' => 'release-' . $_before,
'last_version_number' => $_before,
);
$this->package_infos['dest_dir'] = $this->locations['package_dir'] . $this->package_infos['package_name'];
$this->package_infos['diff_dir'] = $this->locations['old_versions'] . $this->package_infos['simple_name'];
$this->package_infos['patch_directory'] = $this->locations['package_dir'] . 'patches';
$this->package_infos['files_directory'] = $this->locations['package_dir'] . 'files';
$this->package_infos['update_directory'] = $this->locations['package_dir'] . 'update';
$this->package_infos['release_directory'] = $this->locations['package_dir'] . 'release_files';
// Old packages always exclude the latest version. ;)
$this->old_packages = array();
foreach ($this->versions as $package_version)
{
if ($package_version == $_latest)
{
continue;
}
$this->old_packages['release-' . $package_version] = $package_version . '_to_';
}
}
function get($var)
{
return $this->package_infos[$var];
}
function begin_status($headline)
{
if ($this->status_begun)
{
echo "\nDone.\n\n";
}
$this->num_dots = 0;
echo $headline . "\n ";
$this->status_begun = true;
}
function run_command($command)
{
$result = trim(`$command`);
if ($this->verbose)
{
echo " command : " . getcwd() . '$ ' . $command . "\n";
echo " result : " . $result . "\n";
}
else
{
if ($this->num_dots > 70)
{
echo "\n";
$this->num_dots = 0;
}
echo '.';
$this->num_dots++;
}
flush();
}
function create_directory($directory, $dir_struct)
{
if (!file_exists($directory))
{
$this->run_command("mkdir $directory");
}
if (is_array($dir_struct))
{
foreach ($dir_struct as $_dir => $_dir_struct)
{
$this->create_directory($directory . '/' . $_dir, $_dir_struct);
}
}
}
function collect_diff_files($diff_filename, $package_name)
{
$diff_result = $binary = array();
$diff_contents = file($diff_filename);
$special_diff_contents = array();
foreach ($diff_contents as $num => $line)
{
$line = trim($line);
if (!$line)
{
continue;
}
// Special diff content?
if (strpos($line, 'diff ' . $this->diff_options . ' ') === 0 || strpos($line, '*** ') === 0 || strpos($line, '--- ') === 0 || (strpos($line, ' Exp $') !== false && strpos($line, '$Id:') !== false))
{
$special_diff_contents[] = $line;
}
else if (strpos($line, 'diff ' . $this->diff_options . ' ') === 0 || strpos($line, '*** ') === 0 || strpos($line, '--- ') === 0 || (strpos($line, ' Exp $') !== false && strpos($line, '$Id:') !== false) || (strpos($line, ' $') !== false && strpos($line, '$Id:') !== false))
{
$special_diff_contents[] = $line;
}
// Is diffing line?
if (strstr($line, 'diff ' . $this->diff_options . ' '))
{
$next_line = $diff_contents[$num+1];
if (strpos($next_line, '***') === 0)
{
// *** phpbb208/admin/admin_board.php Sat Jul 10 20:16:26 2004
$next_line = explode("\t", $next_line);
$next_line = trim($next_line[0]);
$next_line = str_replace('*** ' . $package_name . '/', '', $next_line);
$diff_result[] = $next_line;
}
}
// Is binary?
if (preg_match('/^Binary files ' . $package_name . '\/(.*) and [a-z0-9_-]+\/\1 differ/i', $line, $match))
{
$binary[] = trim($match[1]);
}
}
// Now go through the list again and find out which files have how many changes...
$num_changes = array();
/* [1070] => diff -crN phpbb200/includes/usercp_avatar.php phpbb2023/includes/usercp_avatar.php
[1071] => *** phpbb200/includes/usercp_avatar.php Sat Jul 10 20:16:13 2004
[1072] => --- phpbb2023/includes/usercp_avatar.php Wed Feb 6 22:28:04 2008
[1073] => *** 6,12 ****
[1074] => ! * $Id$
[1075] => --- 6,12 ----
[1076] => *** 51,59 ****
[1077] => --- 51,60 ----
[1078] => *** 62,80 ****
[1079] => --- 63,108 ----
[1080] => *** 87,97 ****
*/
while (($line = array_shift($special_diff_contents)) !== NULL)
{
$line = trim($line);
if (!$line)
{
continue;
}
// Is diffing line?
if (strstr($line, 'diff ' . $this->diff_options . ' '))
{
$next_line = array_shift($special_diff_contents);
if (strpos($next_line, '*** ') === 0)
{
// *** phpbb208/admin/admin_board.php Sat Jul 10 20:16:26 2004
$next_line = explode("\t", $next_line);
$next_line = trim($next_line[0]);
$next_line = str_replace('*** ' . $package_name . '/', '', $next_line);
$is_reached = false;
$prev_line = '';
while (!$is_reached)
{
$line = array_shift($special_diff_contents);
if (strpos($line, 'diff ' . $this->diff_options) === 0 || empty($special_diff_contents))
{
$is_reached = true;
array_unshift($special_diff_contents, $line);
continue;
}
if (strpos($line, '*** ') === 0 && strpos($line, ' ****') !== false)
{
$is_comment = false;
while (!(strpos($line, '--- ') === 0 && strpos($line, ' ----') !== false))
{
$line = array_shift($special_diff_contents);
if (strpos($line, ' Exp $') !== false || strpos($line, '$Id:') !== false)
{
$is_comment = true;
}
}
if (!$is_comment)
{
if (!isset($num_changes[$next_line]))
{
$num_changes[$next_line] = 1;
}
else
{
$num_changes[$next_line]++;
}
}
}
}
}
}
}
// Now remove those results not having changes
$return = array();
foreach ($diff_result as $key => $value)
{
if (isset($num_changes[$value]))
{
$return[] = $value;
}
}
foreach ($binary as $value)
{
$return[] = $value;
}
$diff_result = $return;
unset($return);
unset($special_diff_contents);
$result = array(
'files' => array(),
'binary' => array(),
'all' => $diff_result,
);
$binary_extensions = array('gif', 'jpg', 'jpeg', 'png', 'ttf');
// Split into file and binary
foreach ($diff_result as $filename)
{
if (strpos($filename, '.') === false)
{
$result['files'][] = $filename;
continue;
}
$extension = explode('.', $filename);
$extension = array_pop($extension);
if (in_array($extension, $binary_extensions))
{
$result['binary'][] = $filename;
}
else
{
$result['files'][] = $filename;
}
}
return $result;
}
}

39
build/compare.sh Executable file
View File

@@ -0,0 +1,39 @@
#!/usr/bin/env bash
orig_dir="../../phpBB"
rm -rf test_release_files
mkdir test_release_files
cd test_release_files
for ext in "tar.bz2" "zip"
do
cp "../new_version/release_files/$1.$ext" ./
if [ "$ext" = "tar.bz2" ]
then
command="tar -xjf"
else
command="unzip -q"
fi
$command "$1.$ext"
for file in `find phpBB3 -name '.svn' -prune -o -type f -print`
do
orig_file="${file/#phpBB3/$orig_dir}"
diff_result=`diff $orig_file $file`
if [ -n "$diff_result" ]
then
echo "Difference in package $1.$ext"
echo $diff_result
fi
done
rm -rf phpBB3
done
cd ..
rm -rf test_release_files

1711
build/diff_class.php Normal file

File diff suppressed because it is too large Load Diff

409
build/package.php Executable file
View File

@@ -0,0 +1,409 @@
#!/usr/bin/env php
<?php
/**
*
* @package build
* @version $Id$
* @copyright (c) 2010 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
//$versions = array('3.0.2', '3.0.3', '3.0.4', '3.0.5', '3.0.6', '3.0.7-RC1', '3.0.7-RC2', '3.0.7', '3.0.7-PL1');
if ($_SERVER['argc'] < 2)
{
die("Please specify a list of versions as the first argument (e.g. package.php '1.0.0, 1.0.1, 1.0.2').");
}
$versions = explode(',', $_SERVER['argv'][1]);
$versions = array_map('trim', $versions);
$verbose = true;
require('build_helper.php');
$package = new build_package($versions, $verbose);
echo "Building Release Packages\n";
echo "Now all three package types (patch, files, release) are built as well as the update package (update).\n";
// Go trough all versions making a diff if we even have old versions
// For phpBB 3.0.x we might choose a different update method, rendering the things below useless...
if (sizeof($package->old_packages))
{
chdir($package->locations['old_versions']);
// This array is for holding the filenames change
$diff_file_changes = array();
foreach ($package->old_packages as $_package_name => $dest_package_filename)
{
$package->begin_status('Parsing patch/diff files for phpBB-' . $dest_package_filename . $package->get('new_version_number'));
// Parse this diff to determine file changes from the checked versions and save them
$diff_file_changes[$_package_name] = $package->collect_diff_files(
$package->get('patch_directory') . '/phpBB-' . $dest_package_filename . $package->get('new_version_number') . '.patch',
$_package_name
);
}
// Now put those files determined within the correct directories
foreach ($diff_file_changes as $_package_name => $file_contents)
{
$package->begin_status('Creating files-only informations for ' . $package->old_packages[$_package_name] . $package->get('new_version_number'));
$dest_filename_dir = $package->get('files_directory') . '/' . $package->old_packages[$_package_name] . $package->get('new_version_number');
if (!file_exists($dest_filename_dir))
{
$package->run_command('mkdir ' . $dest_filename_dir);
}
// Now copy the file contents
foreach ($file_contents['all'] as $file)
{
$source_filename = $package->get('dest_dir') . '/' . $file;
$dest_filename = $dest_filename_dir . '/' . $file;
// Create Directories along the way?
$file = explode('/', $file);
// Remove filename portion
$file[sizeof($file)-1] = '';
chdir($dest_filename_dir);
foreach ($file as $entry)
{
$entry = trim($entry);
if ($entry)
{
if (!file_exists('./' . $entry))
{
$package->run_command('mkdir ' . $entry);
}
chdir('./' . $entry);
}
}
$package->run_command('cp ' . $source_filename . ' ' . $dest_filename);
}
}
// Because there might be binary changes, we re-create the patch files... without parsing file differences.
$package->run_command('rm -Rv ' . $package->get('patch_directory'));
if (!file_exists($package->get('patch_directory')))
{
$package->run_command('mkdir ' . $package->get('patch_directory'));
}
chdir($package->locations['old_versions']);
foreach ($package->old_packages as $_package_name => $dest_package_filename)
{
$package->begin_status('Creating patch/diff files for phpBB-' . $dest_package_filename . $package->get('new_version_number'));
$dest_package_filename = $package->get('patch_directory') . '/phpBB-' . $dest_package_filename . $package->get('new_version_number') . '.patch';
$package->run_command('diff ' . $package->diff_options_long . ' ' . $_package_name . ' ' . $package->get('simple_name') . ' > ' . $dest_package_filename);
}
$packages = $diff_file_changes;
foreach ($packages as $_package_name => $file_contents)
{
$package->begin_status('Building specific update files for ' . $package->old_packages[$_package_name] . $package->get('new_version_number'));
$dest_filename_dir = $package->get('update_directory') . '/' . $package->old_packages[$_package_name] . $package->get('new_version_number');
if (!file_exists($dest_filename_dir))
{
$package->run_command('mkdir ' . $dest_filename_dir);
}
$package->run_command('cp -Rp ' . $package->get('dest_dir') . '/docs ' . $dest_filename_dir);
$package->run_command('cp -Rp ' . $package->get('dest_dir') . '/install ' . $dest_filename_dir);
$package->run_command('mkdir ' . $dest_filename_dir . '/install/update');
$package->run_command('mkdir ' . $dest_filename_dir . '/install/update/old');
$package->run_command('mkdir ' . $dest_filename_dir . '/install/update/new');
// Remove some files
$package->run_command('rm -v ' . $dest_filename_dir . '/install/install_install.php');
$package->run_command('rm -v ' . $dest_filename_dir . '/install/install_convert.php');
$package->run_command('rm -Rv ' . $dest_filename_dir . '/install/schemas');
$package->run_command('rm -Rv ' . $dest_filename_dir . '/install/convertors');
foreach ($file_contents['all'] as $index => $file)
{
if (strpos($file, 'recode_cjk') !== false)
{
unset($file_contents['all'][$index]);
}
}
// First of all, fill the 'old' directory
foreach ($file_contents['all'] as $file)
{
$source_filename = $package->locations['old_versions'] . $_package_name . '/' . $file;
$dest_filename = $dest_filename_dir . '/install/update/old/' . $file;
if (!file_exists($source_filename))
{
continue;
}
// Create Directories along the way?
$file = explode('/', $file);
// Remove filename portion
$file[sizeof($file)-1] = '';
chdir($dest_filename_dir . '/install/update/old');
foreach ($file as $entry)
{
$entry = trim($entry);
if ($entry)
{
if (!file_exists('./' . $entry))
{
$package->run_command('mkdir ' . $entry);
}
chdir('./' . $entry);
}
}
$package->run_command('cp ' . $source_filename . ' ' . $dest_filename);
}
// Then fill the 'new' directory
foreach ($file_contents['all'] as $file)
{
$source_filename = $package->locations['old_versions'] . $package->get('simple_name') . '/' . $file;
$dest_filename = $dest_filename_dir . '/install/update/new/' . $file;
if (!file_exists($source_filename))
{
continue;
}
// Create Directories along the way?
$file = explode('/', $file);
// Remove filename portion
$file[sizeof($file)-1] = '';
chdir($dest_filename_dir . '/install/update/new');
foreach ($file as $entry)
{
$entry = trim($entry);
if ($entry)
{
if (!file_exists('./' . $entry))
{
$package->run_command('mkdir ' . $entry);
}
chdir('./' . $entry);
}
}
$package->run_command('cp ' . $source_filename . ' ' . $dest_filename);
}
// Build index.php file for holding the file structure
$index_contents = '<?php
if (!defined(\'IN_PHPBB\'))
{
exit;
}
// Set update info with file structure to update
$update_info = array(
\'version\' => array(\'from\' => \'' . str_replace('_to_', '', $package->old_packages[$_package_name]) . '\', \'to\' => \'' . $package->get('new_version_number') . '\'),
';
if (sizeof($file_contents['all']))
{
$index_contents .= '\'files\' => array(\'' . implode("',\n\t'", $file_contents['all']) . '\'),
';
}
else
{
$index_contents .= '\'files\' => array(),
';
}
if (sizeof($file_contents['binary']))
{
$index_contents .= '\'binary\' => array(\'' . implode("',\n\t'", $file_contents['binary']) . '\'),
';
}
else
{
$index_contents .= '\'binary\' => array(),
';
}
$index_contents .= ');
?' . '>';
$fp = fopen($dest_filename_dir . '/install/update/index.php', 'wt');
fwrite($fp, $index_contents);
fclose($fp);
}
unset($diff_file_changes);
$package->begin_status('Clean up all install files');
// Copy the install files to their respective locations
$package->run_command('cp -Rp ' . $package->get('dest_dir') . '/docs ' . $package->get('patch_directory'));
$package->run_command('cp -Rp ' . $package->get('dest_dir') . '/install ' . $package->get('patch_directory'));
// Remove some files
chdir($package->get('patch_directory') . '/install');
$package->run_command('rm -v install_install.php');
$package->run_command('rm -v install_update.php');
$package->run_command('rm -v install_convert.php');
$package->run_command('rm -Rv schemas');
$package->run_command('rm -Rv convertors');
}
// Build Main phpBB Release
$compress_programs = array(
// 'tar.gz' => 'tar -czf',
'tar.bz2' => 'tar -cjf',
'zip' => 'zip -r'
);
if (sizeof($package->old_packages))
{
// Build Patch Files
chdir($package->get('patch_directory'));
foreach ($compress_programs as $extension => $compress_command)
{
$package->begin_status('Packaging phpBB Patch Files for ' . $extension);
// Build Package
$package->run_command($compress_command . ' ../release_files/' . $package->get('release_filename') . '-patch.' . $extension . ' *');
// Build MD5 Sum
$package->run_command('md5sum ../release_files/' . $package->get('release_filename') . '-patch.' . $extension . ' > ../release_files/' . $package->get('release_filename') . '-patch.' . $extension . '.md5');
}
// Build Files Package
chdir($package->get('files_directory'));
foreach ($compress_programs as $extension => $compress_command)
{
$package->begin_status('Packaging phpBB Files for ' . $extension);
$package->run_command('mkdir ' . $package->get('files_directory') . '/release');
$package->run_command('cp -Rp ' . $package->get('dest_dir') . '/docs ' . $package->get('files_directory') . '/release');
$package->run_command('cp -Rp ' . $package->get('dest_dir') . '/install ' . $package->get('files_directory') . '/release');
$package->run_command('rm -v ' . $package->get('files_directory') . '/release/install/install_install.php');
$package->run_command('rm -v ' . $package->get('files_directory') . '/release/install/install_update.php');
$package->run_command('rm -v ' . $package->get('files_directory') . '/release/install/install_convert.php');
$package->run_command('rm -Rv ' . $package->get('files_directory') . '/release/install/schemas');
$package->run_command('rm -Rv ' . $package->get('files_directory') . '/release/install/convertors');
// Pack files
foreach ($package->old_packages as $_package_name => $package_path)
{
chdir($package_path . $package->get('new_version_number'));
$command = ($extension == 'zip') ? 'zip -r' : 'tar cf';
$_ext = ($extension == 'zip') ? 'zip' : 'tar';
$package->run_command("$command ../release/phpBB-$package_path" . $package->get('new_version_number') . ".$_ext *");
chdir('..');
}
chdir('./release');
$package->run_command("$compress_command ../../release_files/" . $package->get('release_filename') . '-files.' . $extension . ' *');
// Build MD5 Sum
$package->run_command('md5sum ../../release_files/' . $package->get('release_filename') . '-files.' . $extension . ' > ../../release_files/' . $package->get('release_filename') . '-files.' . $extension . '.md5');
chdir('..');
$package->run_command('rm -Rv ' . $package->get('files_directory') . '/release');
}
// Build Update Package
foreach ($compress_programs as $extension => $compress_command)
{
chdir($package->get('update_directory'));
$package->begin_status('Packaging phpBB Update for ' . $extension);
$package->run_command('mkdir ' . $package->get('update_directory') . '/release');
// Pack update files
$packages = $package->old_packages;
foreach ($packages as $_package_name => $package_path)
{
chdir($package_path . $package->get('new_version_number'));
$package->run_command('rm -v install/install_install.php');
$package->run_command('rm -v install/install_convert.php');
$package->run_command('rm -v includes/utf/data/recode_cjk.php');
$package->run_command('rm -Rv install/schemas');
$package->run_command('rm -Rv install/convertors');
$command = ($extension == 'zip') ? 'zip -r' : 'tar cf';
$_ext = ($extension == 'zip') ? 'zip' : 'tar';
$package->run_command("$command ../release/$package_path" . $package->get('new_version_number') . ".$_ext *");
chdir('..');
$last_version = $package_path . $package->get('new_version_number');
// chdir('./release');
// $package->run_command("$compress_command ../../release_files/" . $package->get('release_filename') . '-update.' . $extension . ' *');
// chdir('..');
chdir('./' . $last_version);
// Copy last package over...
$package->run_command('rm -v ../release_files/phpBB-' . $last_version . ".$extension");
$package->run_command("$compress_command ../../release_files/phpBB-$last_version.$extension *");
// Build MD5 Sum
$package->run_command("md5sum ../../release_files/phpBB-$last_version.$extension > ../../release_files/phpBB-$last_version.$extension.md5");
chdir('..');
}
$package->run_command('rm -Rv ' . $package->get('update_directory') . '/release');
}
}
// Delete updater and convertor from main archive
chdir($package->get('dest_dir') . '/install');
// $package->run_command('rm -v database_update.php');
$package->run_command('rm -v install_update.php');
chdir($package->locations['package_dir']);
foreach ($compress_programs as $extension => $compress_command)
{
$package->begin_status('Packaging phpBB for ' . $extension);
$package->run_command('rm -v ./release_files/' . $package->get('release_filename') . ".{$extension}");
// Build Package
$package->run_command("$compress_command ./release_files/" . $package->get('release_filename') . '.' . $extension . ' ' . $package->get('package_name'));
// Build MD5 Sum
$package->run_command('md5sum ./release_files/' . $package->get('release_filename') . '.' . $extension . ' > ./release_files/' . $package->get('release_filename') . '.' . $extension . '.md5');
}
// Microsoft Web PI packaging
$package->begin_status('Packaging phpBB for Microsoft WebPI');
$file = './release_files/' . $package->get('release_filename') . '.webpi.zip';
$package->run_command('cp -p ./release_files/' . $package->get('release_filename') . ".zip $file");
$package->run_command('cd ./../webpi && ' . $compress_programs['zip'] . " ./../new_version/$file *");
$package->run_command("md5sum $file > $file.md5");
// verify results
chdir($package->locations['root']);
$package->begin_status('********** Verifying packages **********');
$package->run_command('./compare.sh ' . $package->package_infos['release_filename']);
echo "Done.\n";

View File

@@ -0,0 +1,39 @@
/**********************************************************************/
/* Install.SQL */
/* Creates a login and makes the user a member of db roles */
/* */
/**********************************************************************/
-- Declare variables for database name, username and password
DECLARE @dbName sysname,
@dbUser sysname,
@dbPwd nvarchar(max);
-- Set variables for database name, username and password
SET @dbName = 'PlaceHolderForDb';
SET @dbUser = 'PlaceHolderForUser';
SET @dbPwd = 'PlaceHolderForPassword';
DECLARE @cmd nvarchar(max)
-- Create login
IF( SUSER_SID(@dbUser) is null )
BEGIN
print '-- Creating login '
SET @cmd = N'CREATE LOGIN ' + quotename(@dbUser) + N' WITH PASSWORD ='''+ replace(@dbPwd, '''', '''''') + N''''
EXEC(@cmd)
END
-- Create database user and map to login
-- and add user to the datareader, datawriter, ddladmin and securityadmin roles
--
SET @cmd = N'USE ' + quotename(@DBName) + N';
IF( NOT EXISTS (SELECT * FROM sys.database_principals WHERE name = ''' + replace(@dbUser, '''', '''''') + N'''))
BEGIN
print ''-- Creating user'';
CREATE USER ' + quotename(@dbUser) + N' FOR LOGIN ' + quotename(@dbUser) + N';
print ''-- Adding user'';
EXEC sp_addrolemember ''db_owner'', ''' + replace(@dbUser, '''', '''''') + N''';
END'
EXEC(@cmd)
GO

View File

@@ -0,0 +1,15 @@
USE PlaceHolderForDb$$
DROP PROCEDURE IF EXISTS add_user $$
CREATE PROCEDURE add_user()
BEGIN
DECLARE EXIT HANDLER FOR 1044 BEGIN END;
GRANT ALL PRIVILEGES ON PlaceHolderForDb.* to 'PlaceHolderForUser'@'PlaceHolderForServer' IDENTIFIED BY 'PlaceHolderForPassword';
FLUSH PRIVILEGES;
END
$$
CALL add_user() $$
DROP PROCEDURE IF EXISTS add_user $$

13
build/webpi/manifest.xml Normal file
View File

@@ -0,0 +1,13 @@
<msdeploy.iisapp>
<iisapp path="phpBB3" />
<dbmysql path="install/mysql.sql" commandDelimiter="$$" removeCommandDelimiter="true" />
<dbfullsql path="install/mssql.sql" />
<setAcl path="phpBB3/cache" setAclAccess="Modify" setAclUser="anonymousAuthenticationUser" />
<setAcl path="phpBB3/files" setAclAccess="Modify" setAclUser="anonymousAuthenticationUser" />
<setAcl path="phpBB3/store" setAclAccess="Modify" setAclUser="anonymousAuthenticationUser" />
<setAcl path="phpBB3/images/avatars/upload" setAclAccess="Modify" setAclUser="anonymousAuthenticationUser" />
<setAcl path="phpBB3/config.php" setAclAccess="Modify" setAclUser="anonymousAuthenticationUser" setAclResourceType="File" />
</msdeploy.iisapp>

256
build/webpi/parameters.xml Normal file
View File

@@ -0,0 +1,256 @@
<parameters>
<parameter
name="AppPath"
defaultValue="Default Web Site/phpBB3"
tags="iisapp">
<parameterEntry
type="ProviderPath"
scope="iisapp"
match="phpBB3" />
</parameter>
<!--ACLs-->
<parameter
name="aclCache"
description="Sets the ACL on the cache/ folder"
defaultValue="{AppPath}/cache"
tags="Hidden">
<parameterEntry
type="ProviderPath"
scope="setAcl"
match="phpBB3/cache$" />
</parameter>
<parameter
name="aclFiles"
description="Sets the ACL on the files/ folder"
defaultValue="{AppPath}/files"
tags="Hidden">
<parameterEntry
type="ProviderPath"
scope="setAcl"
match="phpBB3/files$" />
</parameter>
<parameter
name="aclStore"
description="Sets the ACL on the store/ folder"
defaultValue="{AppPath}/store"
tags="Hidden">
<parameterEntry
type="ProviderPath"
scope="setAcl"
match="phpBB3/store$" />
</parameter>
<parameter
name="aclAvatarUpload"
description="Sets the ACL on the avatars/upload/ folder"
defaultValue="{AppPath}/images/avatars/upload"
tags="Hidden">
<parameterEntry
type="ProviderPath"
scope="setAcl"
match="phpBB3/images/avatars/upload$" />
</parameter>
<parameter
name="aclConfig"
description="Sets the ACL on the config.php file"
defaultValue="{AppPath}/config.php"
tags="Hidden">
<parameterEntry
type="ProviderPath"
scope="setAcl"
match="phpBB3/config.php$" />
</parameter>
<!-- SQL parameters -->
<parameter name="SQL Database Server" description="Enter the database server (usually machine name ) " defaultValue="." tags="SQL">
</parameter>
<parameter name="SQL DatabaseServer Instance" description="Enter the database instance name" defaultValue="SQLExpress" tags="SQL">
</parameter>
<!-- Read database server from config.php . Update 'dbhost' in config.php on publish -->
<parameter name="SQL Automatic DatabaseServer" defaultValue="dbhost = '{SQL Database Server}\\{SQL DatabaseServer Instance}';" tags="Hidden,SQL">
<parameterEntry kind="TextFile" scope="\\config\.php$" match="dbhost\s*=\s*'([^']*)'\s*;" />
</parameter>
<parameter
name="SQL DatabaseName" description="Database name for your application." defaultValue="phpbb" tags="SQL, dbName">
<parameterEntry type="TextFile" scope="install/mssql.sql" match="PlaceHolderForDb" />
</parameter>
<!-- Read database name from config.php . Update 'dbname' in config.php on publish -->
<parameter name="SQL Automatic DatabaseName" defaultValue="dbname = '{SQL DatabaseName}';" tags="Hidden,SQL">
<parameterEntry kind="TextFile" scope="\\config\.php$" match="dbname\s*=\s*'([^']*)'\s*;" />
</parameter>
<parameter
name="SQL DatabaseAdministrator"
description="Database server administartor username."
defaultValue="sa"
tags="SQL, DbAdminUsername" >
</parameter>
<parameter
name="SQL DatabaseAdministratorPassword"
description="Database server administrator password."
tags="Password,SQL,DbAdminPassword">
</parameter>
<parameter
name="SQL Database Username"
description="Username to access your database."
defaultValue="phpbb"
tags="SQL, DbUsername">
<parameterEntry
type="TextFile"
scope="install/mssql.sql"
match="PlaceHolderForUser" />
</parameter>
<!-- Read database user from config.php . Update 'dbuser' in config.php on publish -->
<parameter name="SQL Automatic Database User" defaultValue="dbuser = '{SQL Database Username}';" tags="Hidden,SQL">
<parameterEntry kind="TextFile" scope="\\config\.php$" match="dbuser\s*=\s*'([^']*)'\s*;" />
</parameter>
<parameter
name="SQL Database Password"
description="Password for your phpBB database. (Must be at least 8 characters, contain at least one lower case letter, one upper case letter and one digit)"
tags="New, Password,SQL, DbUserPassword">
<parameterValidation
type = "RegularExpression"
validationString = "^.*(?=.{8,})(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).*$" />
<parameterEntry
type="TextFile"
scope="install/mssql.sql"
match="PlaceHolderForPassword" />
</parameter>
<!-- Read database user password from config.php . Update 'dbpasswd' in config.php on publish -->
<parameter name="SQL Automatic Database Password" defaultValue="dbpasswd = '{SQL Database Password}';" tags="Hidden,SQL">
<parameterEntry kind="TextFile" scope="\\config\.php$" match="dbpasswd\s*=\s*'([^']*)'\s*;" />
</parameter>
<!-- SQL Connection string -->
<parameter
name="SQL ConnectionString"
description="Automatically sets the connection string for the connection request."
defaultValue="Server={SQL Database Server}\{SQL DatabaseServer Instance};Database={SQL DatabaseName};uid={SQL DatabaseAdministrator};Pwd={SQL DatabaseAdministratorPassword};"
tags="Hidden,SQLConnectionString,Validate">
<parameterEntry
type="ProviderPath"
scope="dbfullsql"
match="install/mssql.sql" />
</parameter>
<parameter
name="SQL Database type"
description="SQL database type"
defaultValue="mssql"
tags="SQL,Hidden">
</parameter>
<!-- MYSQL parameters -->
<parameter
name="MySQL Database Server"
description="Enter the hostname"
defaultValue="localhost"
tags="MySQL, dbServer">
<parameterEntry
type="TextFile"
scope="install/mysql.sql"
match="PlaceHolderForServer" />
</parameter>
<!-- Read database server from config.php . Update 'dbhost' in config.php on publish -->
<parameter name="Automatic MySQL DatabaseServer" defaultValue="dbhost = '{MySQL Database Server}';" tags="Hidden,MySQL">
<parameterEntry kind="TextFile" scope="\\config\.php$" match="dbhost\s*=\s*'([^']*)'\s*;" />
</parameter>
<parameter
name="MySQL Database Name"
description="Database Name for your application."
defaultValue="phpbb"
tags="MySQL, dbName">
<parameterEntry
type="TextFile"
scope="install/mysql.sql"
match="PlaceHolderForDb" />
</parameter>
<!-- Read database name from config.php . Update 'dbname' in config.php on publish -->
<parameter name="Automatic MySQL Database Name" defaultValue="dbname = '{MySQL Database Name}';" tags="Hidden,MySQL">
<parameterEntry kind="TextFile" scope="\\config\.php$" match="dbname\s*=\s*'([^']*)'\s*;" />
</parameter>
<parameter
name="MySQL Database Username"
description="Username to access your phpBB database."
defaultValue="phpbb"
tags="MySQL, DbUsername">
<parameterEntry
type="TextFile"
scope="install/mysql.sql"
match="PlaceHolderForUser" />
</parameter>
<!-- Read database user from config.php . Update 'dbuser' in config.php on publish -->
<parameter name="Automatic MySQL Database User" defaultValue="dbuser = '{MySQL Database Username}';" tags="Hidden,MySQL">
<parameterEntry kind="TextFile" scope="\\config\.php$" match="dbuser\s*=\s*'([^']*)'\s*;" />
</parameter>
<parameter
name="MySQL Database Password"
description="Password for your phpBB database. (Minimum 4 characters)"
tags="New, Password,MySQL,DbUserPassword">
<parameterValidation
type = "RegularExpression"
validationString = "^.{4,}$" />
<parameterEntry
type="TextFile"
scope="install/mysql.sql"
match="PlaceHolderForPassword" />
</parameter>
<!-- Read database password from config.php . Update 'dbpasswd' in config.php on publish -->
<parameter name="MySQL Automatic Database Password" defaultValue="dbpasswd = '{MySQL Database Password}';" tags="Hidden,MySQL">
<parameterEntry kind="TextFile" scope="\\config\.php$" match="dbpasswd\s*=\s*'([^']*)'\s*;" />
</parameter>
<!-- MySQL admin credentials -->
<parameter
name="MySQL Database Administrator"
description="Database administrator username."
defaultValue="root"
tags="MySQL, DbAdminUsername" >
</parameter>
<parameter
name="MySQL Database Administrator Password"
description="Database administrator password."
tags="Password,MySQL,DbAdminPassword" >
</parameter>
<!-- MySQL Connectionstring -->
<parameter
name="MySQLConnectionString"
description="Automatically sets the connection string for the connection request."
defaultValue="Server={MySQL Database Server};Database={MySQL Database Name};uid={MySQL Database Administrator};Pwd={MySQL Database Administrator Password};"
tags="Hidden,MySQLConnectionString,Validate">
<parameterEntry
type="ProviderPath"
scope="dbmysql"
match="install/mysql.sql" />
</parameter>
</parameters>

258
git-tools/hooks/commit-msg Executable file
View File

@@ -0,0 +1,258 @@
#!/bin/sh
#
# A hook to check syntax of a phpBB3 commit message, per:
# * <http://wiki.phpbb.com/display/DEV/Git>
# * <http://area51.phpbb.com/phpBB/viewtopic.php?p=209919#p209919>
#
# This is a commit-msg hook.
#
# To install this you can either copy or symlink it to
# $GIT_DIR/hooks, example:
#
# ln -s ../../git-tools/hooks/commit-msg \\
# .git/hooks/commit-msg
config_ns="phpbb.hooks.commit-msg";
if [ "$(git config --bool $config_ns.fatal)" = "false" ]
then
fatal=0;
else
fatal=1;
fi
debug_level=$(git config --int $config_ns.debug || echo 0);
# Error codes
ERR_LENGTH=1;
ERR_HEADER=2;
ERR_EMPTY=3;
ERR_DESCRIPTION=4;
ERR_FOOTER=5;
ERR_EOF=6;
ERR_UNKNOWN=42;
debug()
{
local level;
level=$1;
shift;
if [ $debug_level -ge $level ]
then
echo $@;
fi
}
quit()
{
if [ $1 -gt 0 ] && [ $1 -ne $ERR_UNKNOWN ] && [ $fatal -eq 0 ]
then
exit 0;
else
exit $1;
fi
}
msg=$(grep -nE '.{81,}' "$1");
if [ $? -eq 0 ]
then
echo "The following lines are greater than 80 characters long:\n" >&2;
echo $msg >&2;
quit $ERR_LENGTH;
fi
lines=$(wc -l "$1" | awk '{ print $1; }');
expecting=header;
in_description=0;
in_empty=0;
ticket=0;
branch_regex="[a-z]+[a-z0-9-]*[a-z0-9]+";
i=1;
tickets="";
while [ $i -le $lines ]
do
# Grab the line we are studying
line=$(head -n$i "$1" | tail -n1);
debug 1 "==> [$i] $line (description: $in_description, empty: $in_empty)";
err=$ERR_UNKNOWN;
if [ -z "$expecting" ]
then
quit $err;
fi
if [ "${expecting#comment}" = "$expecting" ]
then
# Prefix comments to the expected tokens list
expecting="comment $expecting";
fi
debug 2 "Expecting: $expecting";
# Loop over each of the expected line formats
for expect in $expecting
do
# Reset the error code each iteration
err=$ERR_UNKNOWN;
# Test for validity of each line format
# This is done first so $? contains the result
case $expect in
"header")
err=$ERR_HEADER;
echo "$line" | grep -Eq "^\[(ticket/[0-9]+|feature/$branch_regex|task/$branch_regex)\] [A-Z].+$"
;;
"empty")
err=$ERR_EMPTY;
echo "$line" | grep -Eq "^$"
;;
"description")
err=$ERR_DESCRIPTION;
# Free flow text, the line length was constrained by the initial check
echo "$line" | grep -Eq "^.+$";
;;
"footer")
err=$ERR_FOOTER;
# Each ticket is on its own line
echo "$line" | grep -Eq "^PHPBB3-[0-9]+$";
;;
"eof")
err=$ERR_EOF;
# Should not end up here
false
;;
"comment")
echo "$line" | grep -Eq "^#";
;;
*)
echo "Unrecognised token $expect" >&2;
quit $err;
;;
esac
# Preserve the result of the line check
result=$?;
debug 2 "$expect - '$line' - $result";
if [ $result -eq 0 ]
then
# Break out the loop on success
# otherwise roll on round and keep looking for a match
break;
fi
done
if [ $result -eq 0 ]
then
# Have we switched out of description mode?
if [ $in_description -eq 1 ] && [ "$expect" != "description" ] && [ "$expect" != "empty" ] && [ "$expect" != "comment" ]
then
# Yes, okay we need to backtrace one line and reanalyse
in_description=0;
i=$(( $i - $in_empty ));
# Reset the empty counter
in_empty=0;
continue;
fi
# Successful match, but on which line format
case $expect in
"header")
expecting="empty";
echo "$line" | grep -Eq "^\[ticket/[0-9]+\]$" && (
ticket=$(echo "$line" | sed 's,\[ticket/\([0-9]*\)\].*,\1,');
)
;;
"empty")
# Description might have empty lines as spacing
expecting="footer description";
in_empty=$(($in_empty + 1));
if [ $in_description -eq 1 ]
then
expecting="$expecting empty";
fi
;;
"description")
expecting="description empty";
in_description=1;
;;
"footer")
expecting="footer eof";
if [ "$tickets" = "" ]
then
tickets="$line";
else
tickets="$tickets $line";
fi
;;
"comment")
# Comments should expect the same thing again
;;
*)
echo "Unrecognised token $expect" >&2;
quit 254;
;;
esac
if [ "$expect" != "empty" ]
then
in_empty=0;
fi
debug 3 "Now expecting: $expecting";
else
# None of the expected line formats matched
# Guess we'll call it a day here then
echo "Syntax error on line $i:" >&2;
echo ">> $line" >&2;
echo -n "Expecting: " >&2;
echo "$expecting" | sed 's/ /, /g' >&2;
exit $err;
fi
i=$(( $i + 1 ));
done
# If EOF is expected exit cleanly
echo "$expecting" | grep -q "eof" || (
# Unexpected EOF, error
echo "Unexpected EOF encountered" >&2;
quit $ERR_EOF;
) && (
# Do post scan checks
if [ ! -z "$tickets" ]
then
# Check for duplicate tickets
dupes=$(echo "$tickets" | sed 's/ /\n/g' | sort | uniq -d);
if [ ! -z "$dupes" ]
then
echo "The following tickets are repeated:" >&2;
echo "$dupes" | sed 's/ /\n/g;s/^/* /g' >&2;
quit $ERR_FOOTER;
fi
fi
# Check the branch ticket is mentioned, doesn't make sense otherwise
if [ $ticket -gt 0 ]
then
echo "$tickets" | grep -Eq "\bPHPBB3-$ticket\b" || (
echo "Ticket ID [$ticket] of branch missing from list of tickets:" >&2;
echo "$tickets" | sed 's/ /\n/g;s/^/* /g' >&2;
quit $ERR_FOOTER;
) || exit $?;
fi
# Got here okay exit to reality
exit 0;
);
exit $?;

17
git-tools/hooks/install Executable file
View File

@@ -0,0 +1,17 @@
#!/bin/sh
#
# Script to install the git hooks
# by symlinking them into the .git/hooks directory
#
# Usage (from within git-tools/hooks):
# ./install
dir=$(dirname $0)
for file in $(ls $dir)
do
if [ $file != "install" ] && [ $file != "uninstall" ]
then
ln -s "../../git-tools/hooks/$file" "$dir/../../.git/hooks/$file"
fi
done

82
git-tools/hooks/pre-commit Executable file
View File

@@ -0,0 +1,82 @@
#!/bin/sh
#
# A hook to disallow php syntax errors to be committed
# by running php -l (lint) on them. It requires php-cli
# to be installed.
#
# This is a pre-commit hook.
#
# To install this you can either copy or symlink it to
# $GIT_DIR/hooks, example:
#
# ln -s ../../git-tools/hooks/pre-commit \\
# .git/hooks/pre-commit
# NOTE: this is run through /usr/bin/env
PHP_BIN=php
# necessary check for initial commit
if git rev-parse --verify HEAD >/dev/null 2>&1
then
against=HEAD
else
# Initial commit: diff against an empty tree object
against=4b825dc642cb6eb9a060e54bf8d69288fbee4904
fi
error=0
errors=""
if ! which $PHP_BIN >/dev/null 2>&1
then
echo "PHP Syntax check failed:"
echo "PHP binary does not exist or is not in path: $PHP_BIN"
exit 1
fi
# dash does not support $'\n':
# http://forum.soft32.com/linux2/Bug-409179-DASH-Settings-IFS-work-properly-ftopict70039.html
IFS='
'
# get a list of staged files
for line in $(git diff-index --cached --full-index $against)
do
# split needed values
sha=$(echo $line | cut -d' ' -f4)
temp=$(echo $line | cut -d' ' -f5)
status=$(echo $temp | cut -d' ' -f1)
filename=$(echo $temp | cut -d' ' -f2)
# file extension
ext=$(echo $filename | sed 's/^.*\.//')
# only check files with php extension
if [ $ext != "php" ]
then
continue
fi
# do not check deleted files
if [ $status = "D" ]
then
continue
fi
# check the staged file content for syntax errors
# using php -l (lint)
result=$(git cat-file -p $sha | /usr/bin/env $PHP_BIN -l 2>/dev/null)
if [ $? -ne 0 ]
then
error=1
# Swap back in correct filenames
errors=$(echo "$errors"; echo "$result" |sed -e "s@in - on@in $filename on@g")
fi
done
unset IFS
if [ $error -eq 1 ]
then
echo -e "PHP Syntax check failed:";
echo -e "$errors" | grep "^Parse error:"
exit 1
fi

View File

@@ -0,0 +1,42 @@
#!/bin/sh
#
# A hook to add [$branch] to the beginning of a commit message
# if certain conditions are met.
#
# This is a prepare-commit-msg hook.
#
# To install this you can either copy or symlink it to
# $GIT_DIR/hooks, example:
#
# ln -s ../../git-tools/hooks/prepare-commit-msg \\
# .git/hooks/prepare-commit-msg
# get branch name
branch="$(git symbolic-ref HEAD)"
# exit if no branch name is present
# (eg. detached HEAD)
if [ $? -ne 0 ]
then
exit
fi
# strip off refs/heads/
branch="$(echo "$branch" | sed "s/refs\/heads\///g")"
# add [branchname] to commit message
# * only run when normal commit is made (without -m or -F;
# not a merge, etc.)
# * also make sure the branch name begins with bug/ or feature/
if [ "$2" = "" ]
then
tail="";
# Branch is prefixed with 'ticket/', append ticket ID to message
if [ "$branch" != "${branch##ticket/}" ];
then
tail="\n\nPHPBB3-${branch##ticket/}";
fi
echo "[$branch]$tail $(cat "$1")" > "$1"
fi

16
git-tools/hooks/uninstall Executable file
View File

@@ -0,0 +1,16 @@
#!/bin/sh
#
# Script to uninstall the git hooks
#
# Usage (from within git-tools/hooks):
# ./uninstall
dir=$(dirname $0)
for file in $(ls $dir)
do
if [ $file != "install" ] && [ $file != "uninstall" ]
then
rm -f "$dir/../../.git/hooks/$file"
fi
done

View File

@@ -1,3 +1,13 @@
#
# Uncomment the statement below if you want to make use of
# HTTP authentication and it does not already work.
# This could be required if you are for example using PHP via Apache CGI.
#
#<IfModule mod_rewrite.c>
#RewriteEngine on
#RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#</IfModule>
<Files "config.php">
Order Allow,Deny
Deny from All

View File

@@ -246,7 +246,7 @@ function h_radio($name, &$input_ary, $input_default = false, $id = false, $key =
foreach ($input_ary as $value => $title)
{
$selected = ($input_default !== false && $value == $input_default) ? ' checked="checked"' : '';
$html .= '<label><input type="radio" name="' . $name . '"' . (($id && !$id_assigned) ? ' id="' . $id . '"' : '') . ' value="' . $value . '"' . $selected . (($key) ? ' accesskey="' . $key . '"' : '') . ' class="radio" /> ' . $user->lang[$title] . '</label> ';
$html .= '<label><input type="radio" name="' . $name . '"' . (($id && !$id_assigned) ? ' id="' . $id . '"' : '') . ' value="' . $value . '"' . $selected . (($key) ? ' accesskey="' . $key . '"' : '') . ' class="radio" /> ' . $user->lang[$title] . '</label>';
$id_assigned = true;
}
@@ -432,6 +432,20 @@ function validate_config_vars($config_vars, &$cfg_array, &$error)
{
$error[] = sprintf($user->lang['SETTING_TOO_BIG'], $user->lang[$config_definition['lang']], $validator[$max]);
}
if (strpos($config_name, '_max') !== false)
{
// Min/max pairs of settings should ensure that min <= max
// Replace _max with _min to find the name of the minimum
// corresponding configuration variable
$min_name = str_replace('_max', '_min', $config_name);
if (isset($cfg_array[$min_name]) && is_numeric($cfg_array[$min_name]) && $cfg_array[$config_name] < $cfg_array[$min_name])
{
// A minimum value exists and the maximum value is less than it
$error[] = sprintf($user->lang['SETTING_TOO_LOW'], $user->lang[$config_definition['lang']], (int) $cfg_array[$min_name]);
}
}
break;
// Absolute path
@@ -533,7 +547,7 @@ function validate_config_vars($config_vars, &$cfg_array, &$error)
// Check if the path is writable
if ($config_definition['validate'] == 'wpath' || $config_definition['validate'] == 'rwpath')
{
if (file_exists($phpbb_root_path . $cfg_array[$config_name]) && !@is_writable($phpbb_root_path . $cfg_array[$config_name]))
if (file_exists($phpbb_root_path . $cfg_array[$config_name]) && !phpbb_is_writable($phpbb_root_path . $cfg_array[$config_name]))
{
$error[] = sprintf($user->lang['DIRECTORY_NOT_WRITABLE'], $cfg_array[$config_name]);
}

View File

@@ -31,9 +31,9 @@
function display_details(option)
{
document.getElementById('acp_unban').unbangivereason.value = ban_give_reason[option];
document.getElementById('acp_unban').unbanreason.value = ban_reason[option];
document.getElementById('acp_unban').unbanlength.value = ban_length[option];
document.getElementById('acp_unban').unbangivereason.innerHTML = ban_give_reason[option];
document.getElementById('acp_unban').unbanreason.innerHTML = ban_reason[option];
document.getElementById('acp_unban').unbanlength.innerHTML = ban_length[option];
}
// ]]>
@@ -93,15 +93,15 @@
</dl>
<dl>
<dt><label for="unbanlength">{L_BAN_LENGTH}:</label></dt>
<dd><input style="border: 0;" type="text" class="text full" disabled="disabled" name="unbanlength" id="unbanlength" /></dd>
<dd><input style="border: 0;" type="text" class="text full" readonly="readonly" name="unbanlength" id="unbanlength" /></dd>
</dl>
<dl>
<dt><label for="unbanreason">{L_BAN_REASON}:</label></dt>
<dd><textarea style="border: 0;" class="text full" disabled="disabled" name="unbanreason" id="unbanreason" rows="5" cols="80">&nbsp;</textarea></dd>
<dd><textarea style="border: 0;" class="text full" readonly="readonly" name="unbanreason" id="unbanreason" rows="5" cols="80">&nbsp;</textarea></dd>
</dl>
<dl>
<dt><label for="unbangivereason">{L_BAN_GIVE_REASON}:</label></dt>
<dd><textarea style="border: 0;" class="text full" disabled="disabled" name="unbangivereason" id="unbangivereason" rows="5" cols="80">&nbsp;</textarea></dd>
<dd><textarea style="border: 0;" class="text full" readonly="readonly" name="unbangivereason" id="unbangivereason" rows="5" cols="80">&nbsp;</textarea></dd>
</dl>
<p class="submit-buttons">

View File

@@ -21,6 +21,10 @@
<dt><label for="max_reg_attempts">{L_REG_LIMIT}:</label><br /><span>{L_REG_LIMIT_EXPLAIN}</span></dt>
<dd><input id="max_reg_attempts" type="text" size="4" maxlength="4" name="max_reg_attempts" value="{REG_LIMIT}" /></dd>
</dl>
<dl>
<dt><label for="max_login_attempts">{L_MAX_LOGIN_ATTEMPTS}:</label><br /><span>{L_MAX_LOGIN_ATTEMPTS_EXPLAIN}</span></dt>
<dd><input id="max_login_attempts" type="text" size="4" maxlength="4" name="max_login_attempts" value="{MAX_LOGIN_ATTEMPTS}" /></dd>
</dl>
<dl>
<dt><label for="enable_post_confirm">{L_VISUAL_CONFIRM_POST}:</label><br /><span>{L_VISUAL_CONFIRM_POST_EXPLAIN}</span></dt>
<dd><label><input type="radio" class="radio" id="enable_post_confirm" name="enable_post_confirm" value="1"<!-- IF POST_ENABLE --> checked="checked"<!-- ENDIF --> /> {L_ENABLED}</label>
@@ -54,10 +58,12 @@
</fieldset>
<!-- ENDIF -->
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
<input class="button1" type="submit" id="main_submit" name="main_submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="form_reset" name="reset" value="{L_RESET}" />&nbsp;
<fieldset>
<legend>{L_ACP_SUBMIT_CHANGES}</legend>
<p class="submit-buttons">
<input class="button1" type="submit" id="main_submit" name="main_submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="form_reset" name="reset" value="{L_RESET}" />&nbsp;
</p>
{S_FORM_TOKEN}
</fieldset>
</form>

View File

@@ -71,8 +71,9 @@
<dl>
<dt><label for="where">{L_ACTION}:</label></dt>
<dd>
<label><input type="radio" class="radio" name="where" value="store" checked="checked" /> {L_STORE_LOCAL}</label>
<label><input type="radio" class="radio" name="where" value="download" /> {L_DOWNLOAD}</label></dd>
<label><input id="where" type="radio" class="radio" name="where" value="store" checked="checked" /> {L_STORE_LOCAL}</label>
<label><input type="radio" class="radio" name="where" value="download" /> {L_DOWNLOAD}</label>
</dd>
</dl>
<dl>
<dt><label for="table">{L_TABLE_SELECT}:</label></dt>

View File

@@ -189,8 +189,8 @@
<legend>{L_GENERAL_FORUM_SETTINGS}</legend>
<dl>
<dt><label for="display_active">{L_DISPLAY_ACTIVE_TOPICS}:</label><br /><span>{L_DISPLAY_ACTIVE_TOPICS_EXPLAIN}</span></dt>
<dd><label><input type="radio" class="radio" name="display_active" value="1"<!-- IF S_DISPLAY_ACTIVE_TOPICS --> id="display_active" checked="checked"<!-- ENDIF --> /> {L_YES}</label>
<label><input type="radio" class="radio" name="display_active" value="0"<!-- IF not S_DISPLAY_ACTIVE_TOPICS --> id="display_active" checked="checked"<!-- ENDIF --> /> {L_NO}</label></dd>
<dd><label><input type="radio" class="radio" name="display_active" value="1"<!-- IF S_ENABLE_ACTIVE_TOPICS --> id="display_active" checked="checked"<!-- ENDIF --> /> {L_YES}</label>
<label><input type="radio" class="radio" name="display_active" value="0"<!-- IF not S_ENABLE_ACTIVE_TOPICS --> id="display_active" checked="checked"<!-- ENDIF --> /> {L_NO}</label></dd>
</dl>
</fieldset>
</div>

View File

@@ -1,21 +1,22 @@
<!-- INCLUDE overall_header.html -->
<h1>{L_COPY_PERMISSIONS}</h1>
<p>{L_COPY_PERMISSIONS_EXPLAIN}</p>
<p>{L_ACL_LINK}</p>
<form id="confirm" method="post" action="{S_COPY_ACTION}">
<fieldset>
<h1>{L_COPY_PERMISSIONS}</h1>
<p>{L_COPY_PERMISSIONS_EXPLAIN}</p>
<p>{L_ACL_LINK}</p>
<dl>
<dt><label for="forum_perm_from">{L_COPY_PERMISSIONS}:</label><br /><span>{L_COPY_PERMISSIONS_EXPLAIN}</span></dt>
<dd><select id="forum_perm_from" name="forum_perm_from"><option value="0">{L_NO_PERMISSIONS}</option>{S_FORUM_OPTIONS}</select></dd>
</dl>
<div style="text-align: center;">{S_FORM_TOKEN}{S_HIDDEN_FIELDS}
<input type="submit" name="update" value="{L_CONTINUE}" class="button2" />&nbsp;
<input type="submit" name="update" value="{L_CONTINUE}" class="button2" />&nbsp;
</div>
</fieldset>
</form>
<!-- INCLUDE overall_footer.html -->

View File

@@ -120,7 +120,7 @@
</dl>
<dl>
<dt><label for="width">{L_LINK_REMOTE_SIZE}:</label><br /><span>{L_LINK_REMOTE_SIZE_EXPLAIN}</span></dt>
<dd><input name="width" type="text" id="width" size="3" value="{AVATAR_WIDTH}" /> <span>px X </span> <input type="text" name="height" size="3" value="{AVATAR_HEIGHT}" /> <span>px</span></dd>
<dd><input name="width" type="text" id="width" size="3" value="{AVATAR_WIDTH}" /> <span>{L_PIXEL} &times; </span> <input type="text" name="height" size="3" value="{AVATAR_HEIGHT}" /> <span>{L_PIXEL}</span></dd>
</dl>
<!-- IF S_DISPLAY_GALLERY -->
<dl>

View File

@@ -139,9 +139,9 @@
<td><input class="text post" type="text" size="3" name="add_width" id="add_width" value="{WIDTH}" /></td>
<td><input class="text post" type="text" size="3" name="add_height" id="add_height" value="{HEIGHT}" /></td>
<td><input type="checkbox" class="radio" name="add_display_on_posting" checked="checked" onclick="toggle_select('add', this.checked, 'add_order');"/></td>
<td><select id="add_order" name="add_order">
<optgroup id="order_disp[add]" label="{L_DISPLAY_POSTING}">{S_ADD_ORDER_LIST_DISPLAY}</optgroup>
<optgroup id="order_no_disp[add]" label="{L_DISPLAY_POSTING_NO}" disabled="disabled" class="disabled-options" >{S_ADD_ORDER_LIST_UNDISPLAY}</optgroup>
<td><select id="order_add_order" name="add_order">
<optgroup id="order_disp_add_order" label="{L_DISPLAY_POSTING}">{S_ADD_ORDER_LIST_DISPLAY}</optgroup>
<optgroup id="order_no_disp_add_order" label="{L_DISPLAY_POSTING_NO}" disabled="disabled" class="disabled-options" >{S_ADD_ORDER_LIST_UNDISPLAY}</optgroup>
</select></td>
<td><input type="checkbox" class="radio" name="add_additional_code" value="1" /></td>
</tr>

View File

@@ -41,6 +41,7 @@
<td style="vertical-align: top;">
{inactive.REASON}
<!-- IF inactive.REMINDED --><br />{inactive.REMINDED_EXPLAIN}<!-- ENDIF -->
</td>
<td>&nbsp;<input type="checkbox" class="radio" name="mark[]" value="{inactive.USER_ID}" />&nbsp;</td>
</tr>
<!-- BEGINELSE -->
@@ -67,7 +68,7 @@
<fieldset class="quick">
<select name="action">{S_INACTIVE_OPTIONS}</select>
<input class="button2" type="submit" name="submit" value="{L_SUBMIT}" />
<p class="small"><a href="#" onclick="marklist('inactive', 'mark', true); return false;">{L_MARK_ALL}</a> &bull; <a href="#" onclick="marklist('inactive', 'mark', false); return false;">{L_UNMARK_ALL}</a></p>
<p class="small"><a href="#" onclick="marklist('inactive', 'mark', true); return false;">{L_MARK_ALL}</a> &bull; <a href="#" onclick="marklist('inactive', 'mark', false); return false;">{L_UNMARK_ALL}</a></p>
{S_FORM_TOKEN}
</fieldset>

View File

@@ -38,7 +38,7 @@
<dd><input type="text" id="jab_username" name="jab_username" value="{JAB_USERNAME}" /></dd>
</dl>
<dl>
<dt><label for="jab_password">{L_JAB_PASSWORD}:</label></dt>
<dt><label for="jab_password">{L_JAB_PASSWORD}:</label><br /><span>{L_JAB_PASSWORD_EXPLAIN}</span></dt>
<dd><input type="password" id="jab_password" name="jab_password" value="{JAB_PASSWORD}" /></dd>
</dl>
<!-- IF S_CAN_USE_SSL -->

View File

@@ -14,11 +14,12 @@
<!-- IF PAGINATION -->
<div class="pagination" style="float: right; margin: 15px 0 2px 0">
<a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
<a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
</div>
<!-- ENDIF -->
<div class="clearfix">&nbsp;</div><br style="clear: both;" />
<div class="clearfix">&nbsp;</div>
<div><br style="clear: both;" /></div>
<!-- IF .log -->
<table cellspacing="1">

View File

@@ -40,6 +40,12 @@
</div>
<!-- ENDIF -->
<!-- IF S_PHP_VERSION_OLD -->
<div class="errorbox notice">
<p>{L_PHP_VERSION_OLD}</p>
</div>
<!-- ENDIF -->
<table cellspacing="1">
<caption>{L_FORUM_STATS}</caption>
<col class="col1" /><col class="col2" /><col class="col1" /><col class="col2" />
@@ -232,6 +238,7 @@
<td style="vertical-align: top;">
{inactive.REASON}
<!-- IF inactive.REMINDED --><br />{inactive.REMINDED_EXPLAIN}<!-- ENDIF -->
</td>
</tr>
<!-- BEGINELSE -->
<tr>

View File

@@ -20,7 +20,7 @@
</dl>
<dl>
<dt><label for="new_id">{L_REPLACE}:</label><br /><span>{L_REPLACE_EXPLAIN}</span></dt>
<dd><select name="new_id">{S_REPLACE_OPTIONS}</select></dd>
<dd><select id="new_id" name="new_id">{S_REPLACE_OPTIONS}</select></dd>
</dl>
<p class="quick">
@@ -135,11 +135,11 @@
<div id="img_dimensions">
<dl>
<dt><label for="imgwidth">{L_IMAGE_WIDTH}:</label><br /><span>{L_AUTOMATIC_EXPLAIN}</span></dt>
<dd><input type="text" name="imgwidth" value="{IMAGE_SIZE}" /></dd>
<dd><input id="imgwidth" type="text" name="imgwidth" value="{IMAGE_SIZE}" /></dd>
</dl>
<dl>
<dt><label for="imgheight">{L_IMAGE_HEIGHT}:</label><br /><span>{L_AUTOMATIC_EXPLAIN}</span></dt>
<dd><input type="text" name="imgheight" value="{IMAGE_HEIGHT}" /></dd>
<dd><input id="imgheight" type="text" name="imgheight" value="{IMAGE_HEIGHT}" /></dd>
</dl>
</div>
</fieldset>
@@ -266,7 +266,7 @@
<p>{L_TEMPLATE_CACHE_EXPLAIN}</p>
<form name="acp_styles" method="post" action="{U_ACTION}">
<form id="acp_styles" method="post" action="{U_ACTION}">
<fieldset class="tabulated">
<legend>{L_TEMPLATE_CACHE}</legend>

View File

@@ -18,6 +18,12 @@
</div>
<!-- ENDIF -->
<!-- IF NEXT_FEATURE_VERSION -->
<div class="errorbox">
<p>{UPGRADE_INSTRUCTIONS}</p>
</div>
<!-- ENDIF -->
<fieldset>
<legend></legend>
<dl>

View File

@@ -27,7 +27,7 @@
</dl>
<dl>
<dt><label for="width">{L_LINK_REMOTE_SIZE}:</label><br /><span>{L_LINK_REMOTE_SIZE_EXPLAIN}</span></dt>
<dd><input name="width" type="text" id="width" size="3" value="{USER_AVATAR_WIDTH}" /> <span>px X </span> <input type="text" name="height" size="3" value="{USER_AVATAR_HEIGHT}" /> <span>px</span></dd>
<dd><input name="width" type="text" id="width" size="3" value="{USER_AVATAR_WIDTH}" /> <span>{L_PIXEL} &times; </span> <input type="text" name="height" size="3" value="{USER_AVATAR_HEIGHT}" /> <span>{L_PIXEL}</span></dd>
</dl>
<!-- ENDIF -->
<!-- IF S_DISPLAY_GALLERY -->

View File

@@ -124,13 +124,6 @@
<dd><input name="ban_give_reason" type="text" class="text medium" maxlength="3000" id="ban_give_reason" /></dd>
</dl>
</div>
<!-- IF not S_OWN_ACCOUNT -->
<dl>
<dt><label for="delete_user">{L_DELETE_USER}:</label><br /><span>{L_DELETE_USER_EXPLAIN}</span></dt>
<dd><input type="checkbox" class="radio" name="delete" value="1" /></dd>
<dd><select id="delete_user" name="delete_type"><option value="retain">{L_RETAIN_POSTS}</option><option value="remove">{L_DELETE_POSTS}</option></select></dd>
</dl>
<!-- ENDIF -->
<p class="quick">
<input class="button1" type="submit" name="update" value="{L_SUBMIT}" />
@@ -141,4 +134,20 @@
</form>
<!-- IF not S_OWN_ACCOUNT -->
<form id="user_delete" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_DELETE_USER}</legend>
<dl>
<dt><label for="delete_type">{L_DELETE_USER}:</label><br /><span>{L_DELETE_USER_EXPLAIN}</span></dt>
<dd><select id="delete_type" name="delete_type"><option class="sep" value="">{L_SELECT_OPTION}</option><option value="retain">{L_RETAIN_POSTS}</option><option value="remove">{L_DELETE_POSTS}</option></select></dd>
</dl>
<p class="quick">
<input class="button1" type="submit" name="update" value="{L_SUBMIT}" />
<input type="hidden" name="delete" value="1" />
{S_FORM_TOKEN}
</p>
</fieldset>
</form>
<!-- ENDIF -->
<!-- ENDIF -->

View File

@@ -56,7 +56,7 @@
<input type="button" class="button2" accesskey="c" name="addbbcode8" value="Code" style="width: 40px" onclick="bbstyle(8)" onmouseover="helpline('c')" onmouseout="helpline('tip')" />
<input type="button" class="button2" accesskey="l" name="addbbcode10" value="List" style="width: 40px" onclick="bbstyle(10)" onmouseover="helpline('l')" onmouseout="helpline('tip')" />
<input type="button" class="button2" accesskey="o" name="addbbcode12" value="List=" style="width: 40px" onclick="bbstyle(12)" onmouseover="helpline('o')" onmouseout="helpline('tip')" />
<input type="button" class="button2" accesskey="t" name="addlitsitem" value="[*]" style="width: 40px" onclick="bbstyle(-1)" onmouseover="helpline('e')" onmouseout="helpline('tip')" />
<input type="button" class="button2" accesskey="y" name="addlitsitem" value="[*]" style="width: 40px" onclick="bbstyle(-1)" onmouseover="helpline('e')" onmouseout="helpline('tip')" />
<!-- IF S_BBCODE_IMG -->
<input type="button" class="button2" accesskey="p" name="addbbcode14" value="Img" style="width: 40px" onclick="bbstyle(14)" onmouseover="helpline('p')" onmouseout="helpline('tip')" />
<!-- ENDIF -->
@@ -93,8 +93,8 @@
// ]]>
</script>
</dt>
<dd style="margin-left: 90px;"><textarea name="signature" rows="10" cols="60" style="width: 95%;" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);" onfocus="initInsertions();">{SIGNATURE}</textarea></dd>
<dd style="margin-left: 90px; margin-top: 5px;">
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 90px;"><textarea name="signature" rows="10" cols="60" style="width: 95%;" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);" onfocus="initInsertions();">{SIGNATURE}</textarea></dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 90px; margin-top: 5px;">
<!-- IF S_BBCODE_ALLOWED -->
<label><input type="checkbox" class="radio" name="disable_bbcode"{S_BBCODE_CHECKED} /> {L_DISABLE_BBCODE}</label>
<!-- ENDIF -->
@@ -105,7 +105,7 @@
<label><input type="checkbox" class="radio" name="disable_magic_url"{S_MAGIC_URL_CHECKED} /> {L_DISABLE_MAGIC_URL}</label>
<!-- ENDIF -->
</dd>
<dd style="margin-left: 90px; margin-top: 10px;"><strong>{L_OPTIONS}: </strong>{BBCODE_STATUS} :: {IMG_STATUS} :: {FLASH_STATUS} :: {URL_STATUS} :: {SMILIES_STATUS}</dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 90px; margin-top: 10px;"><strong>{L_OPTIONS}: </strong>{BBCODE_STATUS} :: {IMG_STATUS} :: {FLASH_STATUS} :: {URL_STATUS} :: {SMILIES_STATUS}</dd>
</dl>
</fieldset>

View File

@@ -7,17 +7,16 @@
<th>{L_REPORT_BY}</th>
<th>{L_TIME}</th>
<th>{L_FEEDBACK}</th>
<!-- IF S_CLEARLOGS --><th>{L_MARK}</th><!-- ENDIF -->
<th>{L_MARK}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN warn -->
<!-- IF warn.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td>{warn.USERNAME}</td>
<td style="text-align: center; nowrap: nowrap;">{warn.DATE}</td>
<td>{warn.ACTION}</td>
<!-- IF S_CLEARLOGS --><td style="text-align: center;"><input type="checkbox" class="radio" name="mark[]" value="{warn.ID}" /></td><!-- ENDIF -->
<td style="text-align: center;"><input type="checkbox" class="radio" name="mark[]" value="{warn.ID}" /></td>
</tr>
<!-- END warn -->
</tbody>
@@ -28,12 +27,10 @@
</div>
<!-- ENDIF -->
<!-- IF S_CLEARLOGS -->
<fieldset class="quick">
<input class="button2" type="submit" name="delall" value="{L_DELETE_ALL}" />&nbsp;
<input class="button2" type="submit" name="delmarked" value="{L_DELETE_MARKED}" />
<p class="small"><a href="#" onclick="marklist('list', 'mark', true);">{L_MARK_ALL}</a> &bull; <a href="#" onclick="marklist('list', 'mark', false);">{L_UNMARK_ALL}</a></p>
</fieldset>
<!-- ENDIF -->
<fieldset class="quick">
<input class="button2" type="submit" name="delall" value="{L_DELETE_ALL}" />&nbsp;
<input class="button2" type="submit" name="delmarked" value="{L_DELETE_MARKED}" />
<p class="small"><a href="#" onclick="marklist('list', 'mark', true);">{L_MARK_ALL}</a> &bull; <a href="#" onclick="marklist('list', 'mark', false);">{L_UNMARK_ALL}</a></p>
</fieldset>
{S_FORM_TOKEN}
</form>

View File

@@ -69,8 +69,8 @@ h2, caption {
h3, h4 {
font-family: "Trebuchet MS", Helvetica, sans-serif;
font-size: 1.20em;
text-decoration: none;
line-height: 1.20em;
text-decoration: none;
line-height: 1.20em;
margin-top: 25px;
}
@@ -97,8 +97,8 @@ hr {
height: 1px;
}
.small {
font-size: 0.85em;
.small {
font-size: 0.85em;
}
/* General links */
@@ -195,7 +195,6 @@ li {
width: 76%;
margin: 0 0 0 3%;
min-height: 350px;
overflow-y: auto;
}
.rtl #main {
@@ -203,8 +202,8 @@ li {
margin: 0 3% 0 0;
}
* html #main {
height: 350px;
* html #main {
height: 350px;
}
#page-body.simple-page-body {
@@ -316,7 +315,7 @@ li {
padding: 0;
}
span.corners-top, span.corners-bottom,
span.corners-top, span.corners-bottom,
span.corners-top span, span.corners-bottom span {
font-size: 1px;
line-height: 1px;
@@ -671,14 +670,10 @@ legend {
position: relative;
text-transform: none;
line-height: 1.2em;
top: 0;
top: -.2em;
vertical-align: middle;
}
/* Hide from macIE \*/
legend { top: -1.2em; }
/* end */
* html legend {
margin: 0 0 -10px -7px;
line-height: 1em;
@@ -795,7 +790,7 @@ label img {
fieldset.quick, p.quick {
margin: 0 0 5px;
padding: 5px 0 0;
padding: 5px 0 0;
border: none;
background-color: transparent;
text-align: right;
@@ -848,7 +843,7 @@ select option.disabled {
}
/* Special case inputs */
select#board_timezone,
select#board_timezone,
select#full_folder_action {
width: 95%;
}
@@ -1245,12 +1240,12 @@ input.disabled {
}
/* Nice method for clearing floated blocks without having to insert any extra markup
From http://www.positioniseverything.net/easyclearing.html
From http://www.positioniseverything.net/easyclearing.html
.clearfix:after, #tabs:after, .row:after, #content:after, fieldset dl:after, #page-body:after {
content: ".";
display: block;
height: 0;
clear: both;
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}*/
@@ -1317,7 +1312,7 @@ fieldset.permissions legend input{
height: 1.1em;
}
/* Permission sections */
/* Permission sections */
fieldset.permissions .permissions-simple {
text-align: left;
padding-top: 3px;
@@ -1528,7 +1523,7 @@ fieldset.permissions .padding {
background-image: url("../images/corners_right2.gif");
}
.permissions-panel span.corners-top, .permissions-panel span.corners-bottom,
.permissions-panel span.corners-top, .permissions-panel span.corners-bottom,
.permissions-panel span.corners-top span, .permissions-panel span.corners-bottom span {
font-size: 1px;
line-height: 1px;
@@ -1606,7 +1601,7 @@ fieldset.permissions .padding {
}
.permissions-panel th.row4 {
background-image: none;
background-image: none;
background-color: #E4E8EB;
color: #536482;
border: none;
@@ -1614,8 +1609,8 @@ fieldset.permissions .padding {
.permissions-panel th a:link, .permissions-panel th a:hover, .permissions-panel th a:visited {
display: block;
color: #FFFFFF;
text-decoration: underline;
color: #FFFFFF;
text-decoration: underline;
}
.permissions-panel td.permissions-yes label:hover {

View File

@@ -56,11 +56,13 @@
</fieldset>
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />&nbsp;
<input class="button2" type="submit" id="preview" name="preview" value="{L_PREVIEW}" />&nbsp;
<fieldset>
<legend>{L_ACP_SUBMIT_CHANGES}</legend>
<p class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />&nbsp;
<input class="button2" type="submit" id="preview" name="preview" value="{L_PREVIEW}" />&nbsp;
</p>
<input type="hidden" name="select_captcha" value="{CAPTCHA_NAME}" />
<input type="hidden" name="configure" value="1" />

View File

@@ -1,5 +1,5 @@
<dl>
<dt><label for="answer">{L_CONFIRM_QUESTION}:</label><br /><span>{L_CONFIRM_QUESTION_EXPLAIN}</span></dt>
<dt><label for="answer"><!-- IF QA_CONFIRM_QUESTION --> {QA_CONFIRM_QUESTION} <!-- ELSE --> {L_CONFIRM_QUESTION} <!-- ENDIF -->:</label><br /><span>{L_CONFIRM_QUESTION_EXPLAIN}</span></dt>
<dd>
<input type="text" tabindex="10" name="answer" id="answer" size="45" class="inputbox autowidth" title="{L_ANSWER}" />

View File

@@ -1,13 +1,22 @@
<!-- IF S_RECAPTCHA_AVAILABLE -->
<dl>
<dd>
<script type="text/javascript" src="{RECAPTCHA_SERVER}/challenge?k={RECAPTCHA_PUBKEY}{RECAPTCHA_ERRORGET}">
<script type="text/javascript">
// <![CDATA[
var RecaptchaOptions = {
lang : {L_RECAPTCHA_LANG}
lang : '{LA_RECAPTCHA_LANG}',
theme : 'clean',
};
// ]]>
</script>
<script type="text/javascript" src="{RECAPTCHA_SERVER}/challenge?k={RECAPTCHA_PUBKEY}{RECAPTCHA_ERRORGET}"></script>
<script type="text/javascript">
// <![CDATA[
<!-- IF S_CONTENT_DIRECTION eq 'rtl' -->
document.getElementById('recaptcha_table').style.direction = 'ltr';
<!-- ENDIF -->
// ]]>
</script>
<noscript>

View File

@@ -34,10 +34,12 @@
<!-- INCLUDE {CAPTCHA_PREVIEW} -->
</fieldset>
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />&nbsp;
<fieldset>
<legend>{L_ACP_SUBMIT_CHANGES}</legend>
<p class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />&nbsp;
</p>
<input type="hidden" name="select_captcha" value="{CAPTCHA_NAME}" />
<input type="hidden" name="configure" value="1" />

View File

@@ -0,0 +1,22 @@
<!-- INCLUDE overall_header.html -->
<form id="confirm" method="post" action="{S_CONFIRM_ACTION}">
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{MESSAGE_TEXT}</p>
</div>
<fieldset>
{S_HIDDEN_FIELDS}
<div style="text-align: center;">
<input type="submit" name="confirm" value="{L_YES}" class="button2" />&nbsp;
<input type="submit" name="cancel" value="{L_CANCEL}" class="button2" />
</div>
</fieldset>
</form>
<!-- INCLUDE overall_footer.html -->

View File

@@ -46,7 +46,11 @@ function initInsertions()
{
textarea.focus();
baseHeight = doc.selection.createRange().duplicate().boundingHeight;
// document.body.focus();
if (!document.forms[form_name])
{
document.body.focus();
}
}
}
@@ -152,7 +156,7 @@ function insert_text(text, spaces, popup)
var sel_start = textarea.selectionStart;
var sel_end = textarea.selectionEnd;
mozWrap(textarea, text, '')
mozWrap(textarea, text, '');
textarea.selectionStart = sel_start + text.length;
textarea.selectionEnd = sel_end + text.length;
}
@@ -230,6 +234,7 @@ function addquote(post_id, username)
theSelection = theSelection.replace(/&lt\;/ig, '<');
theSelection = theSelection.replace(/&gt\;/ig, '>');
theSelection = theSelection.replace(/&amp\;/ig, '&');
theSelection = theSelection.replace(/&nbsp\;/ig, ' ');
}
else if (document.all)
{
@@ -269,12 +274,12 @@ function mozWrap(txtarea, open, close)
}
var s1 = (txtarea.value).substring(0,selStart);
var s2 = (txtarea.value).substring(selStart, selEnd)
var s2 = (txtarea.value).substring(selStart, selEnd);
var s3 = (txtarea.value).substring(selEnd, selLength);
txtarea.value = s1 + open + s2 + close + s3;
txtarea.selectionStart = selEnd + open.length + close.length;
txtarea.selectionEnd = txtarea.selectionStart;
txtarea.selectionStart = selStart + open.length;
txtarea.selectionEnd = selEnd + open.length;
txtarea.focus();
txtarea.scrollTop = scrollTop;
@@ -327,8 +332,8 @@ function colorPalette(dir, width, height)
for (b = 0; b < 5; b++)
{
color = String(numberList[r]) + String(numberList[g]) + String(numberList[b]);
document.write('<td bgcolor="#' + color + '">');
document.write('<a href="#" onclick="bbfontstyle(\'[color=#' + color + ']\', \'[/color]\'); return false;" onmouseover="helpline(\'s\');" onmouseout="helpline(\'tip\');"><img src="images/spacer.gif" width="' + width + '" height="' + height + '" alt="#' + color + '" title="#' + color + '" /></a>');
document.write('<td bgcolor="#' + color + '" style="width: ' + width + 'px; height: ' + height + 'px;">');
document.write('<a href="#" onclick="bbfontstyle(\'[color=#' + color + ']\', \'[/color]\'); return false;"><img src="images/spacer.gif" width="' + width + '" height="' + height + '" alt="#' + color + '" title="#' + color + '" /></a>');
document.writeln('</td>');
}

View File

@@ -200,7 +200,7 @@
<legend><img src="{T_IMAGE_PATH}file_up_to_date.gif" alt="{L_STATUS_UP_TO_DATE}" /></legend>
<!-- BEGIN up_to_date -->
<dl>
<dd class="full" style="text-align: left;"><strong>{up_to_date.FILENAME}</strong></dd>
<dd class="full" style="text-align: {S_CONTENT_FLOW_BEGIN};"><strong>{up_to_date.FILENAME}</strong></dd>
</dl>
<!-- END up_to_date -->
</fieldset>
@@ -218,11 +218,11 @@
<dt style="width: 60%;"><strong><!-- IF new.DIR_PART -->{new.DIR_PART}<br /><!-- ENDIF -->{new.FILE_PART}</strong>
<!-- IF new.S_CUSTOM --><br /><span><em>{L_FILE_USED}: </em>{new.CUSTOM_ORIGINAL}</span><!-- ENDIF -->
</dt>
<dd style="margin-left: 60%;">
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;">
<!-- IF not new.S_BINARY -->[<a href="{new.U_SHOW_DIFF}" onclick="diff_popup(this.href); return false;">{new.L_SHOW_DIFF}</a>]<!-- ELSE -->{L_BINARY_FILE}<!-- ENDIF -->
</dd>
<!-- IF new.S_CUSTOM -->
<dd style="margin-left: 60%;"><label><input type="checkbox" name="no_update[]" value="{new.FILENAME}" class="radio" /> {L_DO_NOT_UPDATE}</label></dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;"><label><input type="checkbox" name="no_update[]" value="{new.FILENAME}" class="radio" /> {L_DO_NOT_UPDATE}</label></dd>
<!-- ENDIF -->
</dl>
<!-- END new -->
@@ -242,9 +242,9 @@
<dt style="width: 60%;"><strong><!-- IF not_modified.DIR_PART -->{not_modified.DIR_PART}<br /><!-- ENDIF -->{not_modified.FILE_PART}</strong>
<!-- IF not_modified.S_CUSTOM --><br /><span><em>{L_FILE_USED}: </em>{not_modified.CUSTOM_ORIGINAL}</span><!-- ENDIF -->
</dt>
<dd style="margin-left: 60%;"><!-- IF not not_modified.S_BINARY -->[<a href="{not_modified.U_SHOW_DIFF}" onclick="diff_popup(this.href); return false;">{not_modified.L_SHOW_DIFF}</a>]<!-- ELSE -->{L_BINARY_FILE}<!-- ENDIF --></dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;"><!-- IF not not_modified.S_BINARY -->[<a href="{not_modified.U_SHOW_DIFF}" onclick="diff_popup(this.href); return false;">{not_modified.L_SHOW_DIFF}</a>]<!-- ELSE -->{L_BINARY_FILE}<!-- ENDIF --></dd>
<!-- IF not_modified.S_CUSTOM -->
<dd style="margin-left: 60%;"><label><input type="checkbox" name="no_update[]" value="{not_modified.FILENAME}" class="radio" /> {L_DO_NOT_UPDATE}</label></dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;"><label><input type="checkbox" name="no_update[]" value="{not_modified.FILENAME}" class="radio" /> {L_DO_NOT_UPDATE}</label></dd>
<!-- ENDIF -->
</dl>
<!-- END not_modified -->
@@ -263,22 +263,22 @@
<dt style="width: 60%;"><strong><!-- IF modified.DIR_PART -->{modified.DIR_PART}<br /><!-- ENDIF -->{modified.FILE_PART}</strong>
<!-- IF modified.S_CUSTOM --><br /><span><em>{L_FILE_USED}: </em>{modified.CUSTOM_ORIGINAL}</span><!-- ENDIF -->
</dt>
<dd style="margin-left: 60%;">&nbsp;</dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;">&nbsp;</dd>
<!-- IF modified.S_CUSTOM -->
<dd style="margin-left: 60%;"><label><input type="checkbox" name="no_update[]" value="{modified.FILENAME}" class="radio" /> {L_DO_NOT_UPDATE}</label></dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;"><label><input type="checkbox" name="no_update[]" value="{modified.FILENAME}" class="radio" /> {L_DO_NOT_UPDATE}</label></dd>
<!-- ENDIF -->
</dl>
<dl>
<dt style="width: 60%"><label><input type="radio" class="radio" name="modified[{modified.FILENAME}]" value="0" checked="checked" /> {L_MERGE_MODIFICATIONS_OPTION}</label></dt>
<dd style="margin-left: 60%;"><!-- IF not modified.S_BINARY -->[<a href="{modified.U_SHOW_DIFF}" onclick="diff_popup(this.href); return false;">{modified.L_SHOW_DIFF}</a>]<!-- ELSE -->{L_BINARY_FILE}<!-- ENDIF --></dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;"><!-- IF not modified.S_BINARY -->[<a href="{modified.U_SHOW_DIFF}" onclick="diff_popup(this.href); return false;">{modified.L_SHOW_DIFF}</a>]<!-- ELSE -->{L_BINARY_FILE}<!-- ENDIF --></dd>
</dl>
<dl>
<dt style="width: 60%"><label><input type="radio" class="radio" name="modified[{modified.FILENAME}]" value="1" /> {L_MERGE_NO_MERGE_NEW_OPTION}</label></dt>
<dd style="margin-left: 60%;"><!-- IF not modified.S_BINARY -->[<a href="{modified.U_VIEW_NO_MERGE_NEW}" onclick="diff_popup(this.href); return false;">{L_SHOW_DIFF_FINAL}</a>]<!-- ELSE -->&nbsp;<!-- ENDIF --></dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;"><!-- IF not modified.S_BINARY -->[<a href="{modified.U_VIEW_NO_MERGE_NEW}" onclick="diff_popup(this.href); return false;">{L_SHOW_DIFF_FINAL}</a>]<!-- ELSE -->&nbsp;<!-- ENDIF --></dd>
</dl>
<dl>
<dt style="width: 60%"><label><input type="radio" class="radio" name="modified[{modified.FILENAME}]" value="2" /> {L_MERGE_NO_MERGE_MOD_OPTION}</label></dt>
<dd style="margin-left: 60%;"><!-- IF not modified.S_BINARY -->[<a href="{modified.U_VIEW_NO_MERGE_MOD}" onclick="diff_popup(this.href); return false;">{L_SHOW_DIFF_FINAL}</a>]<!-- ELSE -->&nbsp;<!-- ENDIF --></dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;"><!-- IF not modified.S_BINARY -->[<a href="{modified.U_VIEW_NO_MERGE_MOD}" onclick="diff_popup(this.href); return false;">{L_SHOW_DIFF_FINAL}</a>]<!-- ELSE -->&nbsp;<!-- ENDIF --></dd>
</dl>
</fieldset>
<!-- END modified -->
@@ -296,11 +296,11 @@
<dt style="width: 60%;"><strong><!-- IF new_conflict.DIR_PART -->{new_conflict.DIR_PART}<br /><!-- ENDIF -->{new_conflict.FILE_PART}</strong>
<!-- IF new_conflict.S_CUSTOM --><br /><span><em>{L_FILE_USED}: </em>{new_conflict.CUSTOM_ORIGINAL}</span><!-- ENDIF -->
</dt>
<dd style="margin-left: 60%;">
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;">
<!-- IF not new_conflict.S_BINARY -->[<a href="{new_conflict.U_SHOW_DIFF}" onclick="diff_popup(this.href); return false;">{new_conflict.L_SHOW_DIFF}</a>]<!-- ELSE -->{L_BINARY_FILE}<!-- ENDIF -->
</dd>
<!-- IF new_conflict.S_CUSTOM -->
<dd style="margin-left: 60%;"><label><input type="checkbox" name="no_update[]" value="{new_conflict.FILENAME}" class="radio" /> {L_DO_NOT_UPDATE}</label></dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;"><label><input type="checkbox" name="no_update[]" value="{new_conflict.FILENAME}" class="radio" /> {L_DO_NOT_UPDATE}</label></dd>
<!-- ENDIF -->
</dl>
<!-- END new_conflict -->
@@ -320,35 +320,35 @@
<!-- IF conflict.S_CUSTOM --><br /><span><em>{L_FILE_USED}: </em>{conflict.CUSTOM_ORIGINAL}</span><!-- ENDIF -->
<!-- IF conflict.NUM_CONFLICTS --><br /><span>{L_NUM_CONFLICTS}: {conflict.NUM_CONFLICTS}</span><!-- ENDIF -->
</dt>
<dd style="margin-left: 60%;">
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;">
<!-- IF not conflict.S_BINARY -->[<a href="{conflict.U_SHOW_DIFF}">{L_DOWNLOAD_CONFLICTS}</a>]<br />{L_DOWNLOAD_CONFLICTS_EXPLAIN}
<!-- ELSE -->{L_BINARY_FILE}<!-- ENDIF -->
</dd>
<!-- IF conflict.S_CUSTOM -->
<dd style="margin-left: 60%;"><label><input type="checkbox" name="no_update[]" value="{conflict.FILENAME}" class="radio" /> {L_DO_NOT_UPDATE}</label></dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;"><label><input type="checkbox" name="no_update[]" value="{conflict.FILENAME}" class="radio" /> {L_DO_NOT_UPDATE}</label></dd>
<!-- ENDIF -->
</dl>
<!-- IF conflict.S_BINARY -->
<dl>
<dt style="width: 60%"><label><input type="radio" class="radio" name="conflict[{conflict.FILENAME}]" value="1" checked="checked" /> {L_MERGE_NO_MERGE_NEW_OPTION}</label></dt>
<dd style="margin-left: 60%;">&nbsp;</dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;">&nbsp;</dd>
</dl>
<!-- ELSE -->
<dl>
<dt style="width: 60%"><label><input type="radio" class="radio" name="conflict[{conflict.FILENAME}]" value="3" checked="checked" /> {L_MERGE_NEW_FILE_OPTION}</label></dt>
<dd style="margin-left: 60%;">[<a href="{conflict.U_VIEW_NEW_FILE}" onclick="diff_popup(this.href); return false;">{L_SHOW_DIFF_MODIFIED}</a>]</dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;">[<a href="{conflict.U_VIEW_NEW_FILE}" onclick="diff_popup(this.href); return false;">{L_SHOW_DIFF_MODIFIED}</a>]</dd>
</dl>
<dl>
<dt style="width: 60%"><label><input type="radio" class="radio" name="conflict[{conflict.FILENAME}]" value="4" /> {L_MERGE_MOD_FILE_OPTION}</label></dt>
<dd style="margin-left: 60%;">[<a href="{conflict.U_VIEW_MOD_FILE}" onclick="diff_popup(this.href); return false;">{L_SHOW_DIFF_MODIFIED}</a>]</dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;">[<a href="{conflict.U_VIEW_MOD_FILE}" onclick="diff_popup(this.href); return false;">{L_SHOW_DIFF_MODIFIED}</a>]</dd>
</dl>
<dl>
<dt style="width: 60%"><label><input type="radio" class="radio" name="conflict[{conflict.FILENAME}]" value="1" /> {L_MERGE_NO_MERGE_NEW_OPTION}</label></dt>
<dd style="margin-left: 60%;">[<a href="{conflict.U_VIEW_NO_MERGE_NEW}" onclick="diff_popup(this.href); return false;">{L_SHOW_DIFF_FINAL}</a>]</dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;">[<a href="{conflict.U_VIEW_NO_MERGE_NEW}" onclick="diff_popup(this.href); return false;">{L_SHOW_DIFF_FINAL}</a>]</dd>
</dl>
<dl>
<dt style="width: 60%"><label><input type="radio" class="radio" name="conflict[{conflict.FILENAME}]" value="2" /> {L_MERGE_NO_MERGE_MOD_OPTION}</label></dt>
<dd style="margin-left: 60%;">[<a href="{conflict.U_VIEW_NO_MERGE_MOD}" onclick="diff_popup(this.href); return false;">{L_SHOW_DIFF_FINAL}</a>]</dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 60%;">[<a href="{conflict.U_VIEW_NO_MERGE_MOD}" onclick="diff_popup(this.href); return false;">{L_SHOW_DIFF_FINAL}</a>]</dd>
</dl>
<!-- ENDIF -->
</fieldset>

View File

@@ -15,9 +15,9 @@
// <![CDATA[
function resize_panel()
{
var block = document.getElementById('codepanel');
var block = document.getElementById('codepanel');
var height;
if (window.innerHeight)
{
height = window.innerHeight - 150;
@@ -26,7 +26,7 @@ function resize_panel()
else
{
//whatever IE needs to do this
}
}
}
window.onresize = resize_panel;
@@ -54,7 +54,7 @@ div#codepanel {
width: 100%;
}
<!-- ELSE -->
div#codepanel {
div#codepanel {
background-color: #eee;
}
<!-- ENDIF -->
@@ -149,10 +149,10 @@ table.hrdiff tbody th {
table.hrdiff tbody td.old {
border-left: 1px solid #999;
border-right: 1px solid #999;
border-right: 1px solid #999;
}
table.hrdiff tbody td.new {
border-right: 1px solid #999;
border-right: 1px solid #999;
}
table.hrdiff td pre {
@@ -237,19 +237,19 @@ table.hrdiff caption span {
<input class="button1" type="submit" id="submit" name="submit" value="{L_CHANGE}" />
</fieldset>
</form>
<!-- ENDIF -->
<!-- IF S_DIFF_CONFLICT_FILE -->
<div style="float: {S_CONTENT_FLOW_BEGIN};"><strong>{L_NUM_CONFLICTS}: {NUM_CONFLICTS}</strong></div>
<br style="clear: both;" />
<!-- ENDIF -->
</div>
<div id="page-body">
<div id="acp">
<div class="panel" id="codepanel">
<span class="corners-top"><span></span></span>
<div id="diff_content">
<div id="main">
<!-- IF S_DIFF_CONFLICT_FILE -->
<div style="float: {S_CONTENT_FLOW_END};"><strong>{L_NUM_CONFLICTS}: {NUM_CONFLICTS}</strong></div>
<!-- ENDIF -->
{DIFF_CONTENT}
</div>
</div>
@@ -257,6 +257,6 @@ table.hrdiff caption span {
</div>
</div>
</div>
<!-- INCLUDE simple_footer.html -->

View File

@@ -40,7 +40,7 @@
<dl class="permissions-simple">
<dt style="width: 20%"><label for="role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}">{L_ROLE}:</label></dt>
<!-- IF p_mask.f_mask.S_ROLE_OPTIONS -->
<dd style="margin-left: 20%"><select id="role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" name="role[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]" onchange="set_role_settings(this.options[selectedIndex].value, 'advanced{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); init_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}')">{p_mask.f_mask.S_ROLE_OPTIONS}</select></dd>
<dd style="margin-{S_CONTENT_FLOW_BEGIN}: 20%"><select id="role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" name="role[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]" onchange="set_role_settings(this.options[selectedIndex].value, 'advanced{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); init_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}')">{p_mask.f_mask.S_ROLE_OPTIONS}</select></dd>
<!-- ELSE -->
<dd>{L_NO_ROLE_AVAILABLE}</dd>
<!-- ENDIF -->
@@ -118,7 +118,7 @@
</div>
<!-- IF not p_mask.S_VIEW -->
<fieldset class="quick" style="margin-right: 11px;">
<fieldset class="quick" style="margin-{S_CONTENT_FLOW_END}: 11px;">
<p class="small">{L_APPLY_PERMISSIONS_EXPLAIN}</p>
<input class="button1" type="submit" name="psubmit[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]" value="{L_APPLY_PERMISSIONS}" />
<!-- IF .p_mask.f_mask gt 1 or .p_mask gt 1 -->

View File

@@ -19,8 +19,12 @@ if (!defined('IN_PHPBB'))
$starttime = explode(' ', microtime());
$starttime = $starttime[1] + $starttime[0];
// Report all errors, except notices
error_reporting(E_ALL ^ E_NOTICE);
// Report all errors, except notices and deprecation messages
if (!defined('E_DEPRECATED'))
{
define('E_DEPRECATED', 8192);
}
error_reporting(E_ALL ^ E_NOTICE ^ E_DEPRECATED);
/*
* Remove variables created by register_globals from the global scope
@@ -119,13 +123,11 @@ if (defined('IN_CRON'))
$phpbb_root_path = dirname(__FILE__) . DIRECTORY_SEPARATOR;
}
if (!file_exists($phpbb_root_path . 'config.' . $phpEx))
if (file_exists($phpbb_root_path . 'config.' . $phpEx))
{
die("<p>The config.$phpEx file could not be found.</p><p><a href=\"{$phpbb_root_path}install/index.$phpEx\">Click here to install phpBB</a></p>");
require($phpbb_root_path . 'config.' . $phpEx);
}
require($phpbb_root_path . 'config.' . $phpEx);
if (!defined('PHPBB_INSTALLED'))
{
// Redirect the user to the installer
@@ -172,7 +174,8 @@ if (defined('DEBUG_EXTRA'))
}
// Load Extensions
if (!empty($load_extensions))
// dl() is deprecated and disabled by default as of PHP 5.3.
if (!empty($load_extensions) && function_exists('dl'))
{
$load_extensions = explode(',', $load_extensions);

View File

View File

@@ -0,0 +1,163 @@
<?php
/**
*
* @package phpBB3
* @version $Id$
* @copyright (c) 2009, 2010 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
/**
* This script will check your database for potentially dangerous flash BBCode tags
*/
//
// Security message:
//
// This script is potentially dangerous.
// Remove or comment the next line (die(".... ) to enable this script.
// Do NOT FORGET to either remove this script or disable it after you have used it.
//
die("Please read the first lines of this script for instructions on how to enable it\n");
/**
*/
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
if (php_sapi_name() != 'cli')
{
header('Content-Type: text/plain');
}
check_table_flash_bbcodes(POSTS_TABLE, 'post_id', 'post_text', 'bbcode_uid', 'bbcode_bitfield');
check_table_flash_bbcodes(PRIVMSGS_TABLE, 'msg_id', 'message_text', 'bbcode_uid', 'bbcode_bitfield');
check_table_flash_bbcodes(USERS_TABLE, 'user_id', 'user_sig', 'user_sig_bbcode_uid', 'user_sig_bbcode_bitfield');
check_table_flash_bbcodes(FORUMS_TABLE, 'forum_id', 'forum_desc', 'forum_desc_uid', 'forum_desc_bitfield');
check_table_flash_bbcodes(FORUMS_TABLE, 'forum_id', 'forum_rules', 'forum_rules_uid', 'forum_rules_bitfield');
check_table_flash_bbcodes(GROUPS_TABLE, 'group_id', 'group_desc', 'group_desc_uid', 'group_desc_bitfield');
echo "If potentially dangerous flash bbcodes were found, please reparse the posts using the Support Toolkit (http://www.phpbb.com/support/stk/) and/or file a ticket in the Incident Tracker (http://www.phpbb.com/incidents/).\n";
function check_table_flash_bbcodes($table_name, $id_field, $content_field, $uid_field, $bitfield_field)
{
echo "Checking $content_field on $table_name\n";
$ids = get_table_flash_bbcode_pkids($table_name, $id_field, $content_field, $uid_field, $bitfield_field);
$size = sizeof($ids);
if ($size)
{
echo "Found $size potentially dangerous flash bbcodes.\n";
echo "$id_field: " . implode(', ', $ids) . "\n";
}
else
{
echo "No potentially dangerous flash bbcodes found.\n";
}
echo "\n";
}
function get_table_flash_bbcode_pkids($table_name, $id_field, $content_field, $uid_field, $bitfield_field)
{
global $db;
$ids = array();
$sql = "SELECT $id_field, $content_field, $uid_field, $bitfield_field
FROM $table_name
WHERE $content_field LIKE '%[/flash:%'
AND $bitfield_field <> ''";
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$uid = $row[$uid_field];
// thanks support toolkit
$content = html_entity_decode_utf8($row[$content_field]);
set_var($content, $content, 'string', true);
$content = utf8_normalize_nfc($content);
$bitfield_data = $row[$bitfield_field];
if (!is_valid_flash_bbcode($content, $uid) && has_flash_enabled($bitfield_data))
{
$ids[] = (int) $row[$id_field];
}
}
$db->sql_freeresult($result);
return $ids;
}
function get_flash_regex($uid)
{
return "#\[flash=([0-9]+),([0-9]+):$uid\](.*?)\[/flash:$uid\]#";
}
// extract all valid flash bbcodes
// check if the bbcode content is a valid URL for each match
function is_valid_flash_bbcode($cleaned_content, $uid)
{
$regex = get_flash_regex($uid);
$url_regex = get_preg_expression('url');
$www_url_regex = get_preg_expression('www_url');
if (preg_match_all($regex, $cleaned_content, $matches))
{
foreach ($matches[3] as $flash_url)
{
if (!preg_match("#^($url_regex|$www_url_regex)$#i", $flash_url))
{
return false;
}
}
}
return true;
}
// check if a bitfield includes flash
// 11 = flash bit
function has_flash_enabled($bitfield_data)
{
$bitfield = new bitfield($bitfield_data);
return $bitfield->get(11);
}
// taken from support toolkit
function html_entity_decode_utf8($string)
{
static $trans_tbl;
// replace numeric entities
$string = preg_replace('~&#x([0-9a-f]+);~ei', 'code2utf8(hexdec("\\1"))', $string);
$string = preg_replace('~&#([0-9]+);~e', 'code2utf8(\\1)', $string);
// replace literal entities
if (!isset($trans_tbl))
{
$trans_tbl = array();
foreach (get_html_translation_table(HTML_ENTITIES) as $val=>$key)
$trans_tbl[$key] = utf8_encode($val);
}
return strtr($string, $trans_tbl);
}
// taken from support toolkit
// Returns the utf string corresponding to the unicode value (from php.net, courtesy - romans@void.lv)
function code2utf8($num)
{
if ($num < 128) return chr($num);
if ($num < 2048) return chr(($num >> 6) + 192) . chr(($num & 63) + 128);
if ($num < 65536) return chr(($num >> 12) + 224) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128);
if ($num < 2097152) return chr(($num >> 18) + 240) . chr((($num >> 12) & 63) + 128) . chr((($num >> 6) & 63) + 128) . chr(($num & 63) + 128);
return '';
}

View File

@@ -266,7 +266,8 @@ foreach ($supported_dbms as $dbms)
case 'mssql':
$line = "/*\n\n \$I" . "d: $\n\n*/\n\n";
$line .= "BEGIN TRANSACTION\nGO\n\n";
// no need to do this, no transaction support for schema changes
//$line .= "BEGIN TRANSACTION\nGO\n\n";
break;
case 'oracle':
@@ -749,7 +750,8 @@ foreach ($supported_dbms as $dbms)
switch ($dbms)
{
case 'mssql':
$line = "\nCOMMIT\nGO\n\n";
// No need to do this, no transaction support for schema changes
//$line = "\nCOMMIT\nGO\n\n";
break;
case 'sqlite':
@@ -1198,7 +1200,6 @@ function get_schema_struct()
'PRIMARY_KEY' => 'log_id',
'KEYS' => array(
'log_type' => array('INDEX', 'log_type'),
'log_time' => array('INDEX', 'log_time'),
'forum_id' => array('INDEX', 'forum_id'),
'topic_id' => array('INDEX', 'topic_id'),
'reportee_id' => array('INDEX', 'reportee_id'),
@@ -1747,6 +1748,7 @@ function get_schema_struct()
),
'PRIMARY_KEY' => array('user_id', 'topic_id'),
'KEYS' => array(
'topic_id' => array('INDEX', 'topic_id'),
'forum_id' => array('INDEX', 'forum_id'),
),
);

View File

@@ -14,16 +14,16 @@ find . > FILELIST.$$
grep -sv FILELIST FILELIST.$$ > FILELIST2.$$
grep -sv $(basename $0) FILELIST2.$$ > FILELIST.$$
grep -sv "^\.$" FILELIST.$$ > FILELIST2.$$
file -f FILELIST2.$$ |grep text | sed -e 's/^\([^\:]*\)\:.*$/\1/' > FILELIST
file -f FILELIST2.$$ |grep text | grep -v icon_textbox_search.gif | sed -e 's/^\([^\:]*\)\:.*$/\1/' > FILELIST
file -f FILELIST2.$$ |grep -sv text | sed -e 's/^\([^\:]*\)\:.*$/Not Modifying file: \1/'
rm FILELIST2.$$
rm FILELIST.$$
for i in $(cat FILELIST); do
if [ -f $i ]; then
sed -e s/
//g $i > $i.tmp
mv $i.tmp $i
cat $i | tr -d '\r' > $i.tmp
mv $i.tmp $i
fi
done
rm FILELIST

View File

@@ -114,10 +114,14 @@ $uniarray = array(
$copy = $uniarray;
/**
* @todo we need to check that the $uniarray does not reverse any of the mappings defined in the unicode definition
*/
foreach ($array as $value)
{
$temp_hold = implode(array_map('utf8_chr', array_map('hexdec', explode(' ', trim($value[2])))));
if (isset($copy[utf8_chr(hexdec((string)$value[1]))]))
{
$num = '';

View File

@@ -688,7 +688,6 @@ function get_schema_struct()
'PRIMARY_KEY' => 'log_id',
'KEYS' => array(
'log_type' => array('INDEX', 'log_type'),
'log_time' => array('INDEX', 'log_time'),
'forum_id' => array('INDEX', 'forum_id'),
'topic_id' => array('INDEX', 'topic_id'),
'reportee_id' => array('INDEX', 'reportee_id'),
@@ -796,6 +795,7 @@ function get_schema_struct()
'poster_ip' => array('INDEX', 'poster_ip'),
'poster_id' => array('INDEX', 'poster_id'),
'post_approved' => array('INDEX', 'post_approved'),
'post_username' => array('INDEX', 'post_username'),
'tid_post_time' => array('INDEX', array('topic_id', 'post_time')),
),
);
@@ -1236,6 +1236,7 @@ function get_schema_struct()
),
'PRIMARY_KEY' => array('user_id', 'topic_id'),
'KEYS' => array(
'topic_id' => array('INDEX', 'topic_id'),
'forum_id' => array('INDEX', 'forum_id'),
),
);

View File

@@ -18,14 +18,15 @@ $ls32 = "(?:$h16:$h16|$ipv4)";
$ipv6_construct = array(
array(false, '', '{6}', $ls32),
array(false, '::', '{5}', $ls32),
array(false, '::', '{0,5}', "(?:$h16(?::$h16)?|$ipv4)"),
array('', ':', '{4}', $ls32),
array('{1,2}', ':', '{3}', $ls32),
array('{1,3}', ':', '{2}', $ls32),
array('{1,4}', ':', '', $ls32),
array('{1,5}', ':', false, $ls32),
array('{1,6}', ':', false, $h16),
array('{1,7}', ':', false, '')
array('{1,7}', ':', false, ''),
array(false, '::', false, '')
);
$ipv6 = '(?:';

View File

@@ -0,0 +1,9 @@
#!/bin/sh
# set permissions required for installation
dir=$(dirname $0)
for file in cache files store config.php images/avatars/upload
do
chmod a+w $dir/../$file
done

View File

@@ -1,6 +1,6 @@
/**
*
* phpBB3 <EFBFBD> Copyright 2000, 2002, 2005, 2007 phpBB Group
* phpBB3 © Copyright 2000, 2002, 2005, 2007 phpBB Group
* http://www.phpbb.com
*
* This program is free software: you can redistribute it and/or modify
@@ -20,39 +20,42 @@
Please see: http://www.phpbb.com/about/team/ for a list of all the people currently
involved in phpBB.
phpBB Lead Developer : Acyd Burn (Meik Sievertsen)
phpBB Lead Developer: naderman (Nils Adermann)
phpBB Developers : APTX (Marek A. R.)
bantu (Andreas Fischer)
DavidMJ (David M.)
dhn (Dominik Dr<44>scher)
kellanved (Henry Sudhof)
naderman (Nils Adermann)
Terrafrost (Jim Wigginton)
ToonArmy (Chris Smith)
phpBB Developers: A_Jelly_Doughnut (Josh Woody)
Acyd Burn (Meik Sievertsen) [Lead 09/2005 - 01/2010]
APTX (Marek A. R.)
bantu (Andreas Fischer)
dhn (Dominik Dröscher)
igorw (Igor Wiedler)
kellanved (Henry Sudhof)
nickvergessen (Joas Schilling)
rxu (Ruslan Uzdenov)
Terrafrost (Jim Wigginton)
ToonArmy (Chris Smith)
Contributions by : leviatan21 (Gabriel Vazquez)
nickvergessen (Joas Schilling)
Raimon (Raimon Meuldijk)
rxu (Ruslan Uzdenov)
Xore (Robert Hetzler)
Contributions by: Brainy (Cullen Walsh)
leviatan21 (Gabriel Vazquez)
Raimon (Raimon Meuldijk)
Xore (Robert Hetzler)
-- Previous Contributors --
-- Former Contributors --
phpBB Project Manager : theFinn (James Atkinson) [Founder - 04/2007]
SHS` (Jonathan Stanley)
phpBB Project Manager: theFinn (James Atkinson) [Founder - 04/2007]
SHS` (Jonathan Stanley)
phpBB Lead Developer : psoTFX (Paul S. Owen) [2001 - 09/2005]
phpBB Lead Developer: psoTFX (Paul S. Owen) [2001 - 09/2005]
phpBB Developers : Ashe (Ludovic Arnaud) [10/2002 - 11/2003, 06/2006 - 10/2006]
BartVB (Bart van Bragt) [11/2000 - 03/2006]
GrahamJE (Graham Eames) [09/2005 - 11/2006]
Vic D'Elfant (Vic D'Elfant) [04/2007 - 04/2009]
phpBB Developers: Ashe (Ludovic Arnaud) [10/2002 - 11/2003, 06/2006 - 10/2006]
BartVB (Bart van Bragt) [11/2000 - 03/2006]
DavidMJ (David M.) [12/2005 - 08/2009]
GrahamJE (Graham Eames) [09/2005 - 11/2006]
Vic D'Elfant (Vic D'Elfant) [04/2007 - 04/2009]
-- Copyrights --
Visual Confirmation : Xore (Robert Hetzler)
Visual Confirmation: Xore (Robert Hetzler)
Original subSilver by subBlue Design, Tom Beddard, (c) 2001 phpBB Group
prosilver by subBlue Design, Tom Beddard, (c) 2004 phpBB Group

File diff suppressed because it is too large Load Diff

View File

@@ -273,7 +273,7 @@
<p>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.</p>
<p>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 <samp>3.0.5</samp> you should select the phpBB-3.0.5_to_3.0.6.zip/tar.gz file.</p>
<p>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 <samp>3.0.7-PL1</samp> you should select the phpBB-3.0.7-PL1_to_3.0.8.zip/tar.gz file.</p>
<p>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.</p>
@@ -285,7 +285,7 @@
<p>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 <strong>patch</strong> application. If you do not have access to such an application but still want to use this update approach, we strongly recommend the <a href="#update_auto">Automatic update package</a> explained below. It is also the recommended update method.</p>
<p>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.5 you need the phpBB-3.0.5_to_3.0.6.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: <strong>patch -cl -d [PHPBB DIRECTORY] -p1 &lt; [PATCH NAME]</strong> (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.</p>
<p>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.5 you need the phpBB-3.0.7-PL1_to_3.0.8.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: <strong>patch -cl -d [PHPBB DIRECTORY] -p1 &lt; [PATCH NAME]</strong> (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.</p>
<p>If you do get failures you should look at using the <a href="#update_files">Changed files only</a> 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.</p>

View File

@@ -242,7 +242,7 @@
<p>The phpBB Group uses a bug tracking system to store, list and manage all reported bugs, it can be found at the location listed below. Please <strong>DO NOT</strong> post bug reports to our forums, they will be locked. In addition please <strong>DO NOT</strong> use the bug tracker for support requests. Posting such a request will only see you directed to the support forums (while taking time away from working on real bugs).</p>
<p><a href="http://www.phpbb.com/bugs/">http://www.phpbb.com/bugs/</a></p>
<p><a href="http://tracker.phpbb.com/">http://tracker.phpbb.com/</a></p>
<p>While we very much appreciate receiving bug reports (the more reports the more stable phpBB will be) we ask you carry out a few steps before adding new entries:</p>

View File

@@ -61,6 +61,9 @@
<li><a href="#acl_getf">acl_getf</a></li>
<li><a href="#acl_getf_global">acl_getf_global</a></li>
<li><a href="#acl_cache">acl_cache</a></li>
<li><a href="#acl_clear_prefetch">acl_clear_prefetch</a></li>
<li><a href="#acl_get_list">acl_get_list</a></li>
<li><a href="#misc">Miscellaneous</a></li>
</ol>
</li>
<li><a href="#admin_related">Admin related functions</a></li>
@@ -176,7 +179,7 @@ array(<em>forum_id1</em> =&gt; array(<em>option</em> =&gt; <em>integer</em>), <e
<p>This method is used to find out whether a user has a permission in at least one forum or globally. This method is similar to checking whether <code>acl_getf(option, true)</code> returned one or more forums but it's faster. It should be called in the following way:</p>
<div class="codebox"><pre>
$result = acl_getf_global(<code>option</code>)
$result = $auth-&gt;acl_getf_global(<code>option</code>)
</pre></div>
<p>As with the previous methods option is a string specifying the permission which has to be checked.</p>
@@ -187,6 +190,49 @@ $result = acl_getf_global(<code>option</code>)
<p>This should be considered a private method and not be called externally. It handles the generation of the user_permissions data from the basic user and group authorisation data. When necessary this method is called automatically by <code>acl</code>.</p>
<a name="acl_clear_prefetch"></a><h3>2.vii. acl_clear_prefetch</h3>
<p>This method clears the user_permissions column in the users table for the given user. If the user ID passed is zero, the permissions cache is cleared for all users. This method should be called whenever permissions are set.</p>
<div class="codebox"><pre>
// clear stored permissions for user 2
$user_id = 2;
$auth->acl_clear_prefetch($user_id);
</pre></div>
<p>This method returns void.</p>
<a name="acl_get_list"></a><h3>2.viii. acl_get_list</h3>
<p>This method returns an an array describing which users have permissions in given fora. The resultant array contains an entry for permission that every user has in every forum when no arguments are passed.</p>
<div class="codebox"><pre>
$user_id = array(2, 53);
$permissions = array('f_list', 'f_read');
$forum_id = array(1, 2, 3);
$result = $auth-&gt;acl_get_list($user_id, $permissions, $forum_id);
</pre></div>
<p>The parameters may be of the following legal types:</p>
<ul>
<li><strong>$user_id</strong>: <code>false</code>, int, array(int, int, int, ...)</li>
<li><strong>$permissions</strong>: <code>false</code>, string, array(string, string, ...)</li>
<li><strong>$forum_id</strong>: <code>false</code>, int, array(int, int, int, ...)</li>
</ul>
<a name="misc"></a><h3>2.ix. Miscellaneous</h3>
<p>There are other methods defined in the auth class which serve mostly as private methods, but are available for use if needed. Each of them is used to pull data directly from the database tables. They are:</p>
<ul>
<li><pre>function acl_group_raw_data($group_id = false, $opts = false, $forum_id = false)</pre></li>
<li><pre>function acl_user_raw_data($user_id = false, $opts = false, $forum_id = false)</pre></li>
<li><pre>function acl_raw_data_single_user($user_id)</pre></li>
<li><pre>function acl_raw_data($user_id = false, $opts = false, $forum_id = false)</pre></li>
<li><pre>function acl_role_data($user_type, $role_type, $ug_id = false, $forum_id = false)</pre></li>
</ul>
<p>Of these, <code>acl_raw_data</code> is the most general, but the others will be faster if you need a smaller amount of data.</p>
</div>
<div class="back2top"><a href="#wrap" class="top">Back to Top</a></div>
@@ -241,7 +287,7 @@ $auth_admin = new auth_admin();
<!-- END DOCUMENT -->
<div id="page-footer">
<div class="version"> $Id$ </div>
<div class="version">&nbsp;</div>
</div>
</div></div>

View File

@@ -69,7 +69,7 @@
<li><a href="#general">General Guidelines</a></li>
</ol>
</li>
<li><a href="#styling">Styling</a></li>
<li><a href="#styling">Styling</a>
<ol style="list-style-type: lower-roman;">
<li><a href="#cfgfiles">Style Config Files</a></li>
<li><a href="#genstyling">General Styling Rules</a></li>
@@ -90,10 +90,9 @@
<li><a href="#vcs">VCS Guidelines</a>
<ol style="list-style-type: lower-roman;">
<li><a href="#repostruct">Repository structure</a></li>
<li><a href="#commitmessage">Commit messages</a></li>
<li><a href="#commitmessage">Commit Messages and Repository Rules</a></li>
</ol>
</li>
<li><a href="#changes">Guidelines Changelog</a></li>
<li><a href="#disclaimer">Copyright and disclaimer</a></li>
</ol>
@@ -125,7 +124,7 @@
<p>If entered with tabs (replace the {TAB}) both equal signs need to be on the same column.</p>
<h3>Linefeeds:</h3>
<p>Ensure that your editor is saving files in the UNIX (LF) line ending format. This means that lines are terminated with a newline, not with Windows Line endings (CR/LF combo) as they are on Win32 or Classic Mac (CR) Line endings. Any decent editor should be able to do this, but it might not always be the default setting. Know your editor. If you want advice for an editor for your Operating System, just ask one of the developers. Some of them do their editing on Win32.
<p>Ensure that your editor is saving files in the UNIX (LF) line ending format. This means that lines are terminated with a newline, not with Windows Line endings (CR/LF combo) as they are on Win32 or Classic Mac (CR) Line endings. Any decent editor should be able to do this, but it might not always be the default setting. Know your editor. If you want advice for an editor for your Operating System, just ask one of the developers. Some of them do their editing on Win32.</p>
<a name="fileheader"></a><h3>1.ii. File Header</h3>
@@ -203,7 +202,7 @@ class ...
<li><code>/includes/db/firebird.php</code><br />Firebird/Interbase Database Abstraction Layer</li>
<li><code>/includes/db/msssql.php</code><br />MSSQL Database Abstraction Layer</li>
<li><code>/includes/db/mssql_odbc.php</code><br />MSSQL ODBC Database Abstraction Layer for MSSQL</li>
<li><code>/includes/db/mysql.php</code><br />MySQL Database Abstraction Layer for MySQL 3.x/4.0.x/4.1.x/5.x
<li><code>/includes/db/mysql.php</code><br />MySQL Database Abstraction Layer for MySQL 3.x/4.0.x/4.1.x/5.x</li>
<li><code>/includes/db/mysqli.php</code><br />MySQLi Database Abstraction Layer</li>
<li><code>/includes/db/oracle.php</code><br />Oracle Database Abstraction Layer</li>
<li><code>/includes/db/postgres.php</code><br />PostgreSQL Database Abstraction Layer</li>
@@ -224,7 +223,7 @@ class ...
<li><strong>styles</strong><br /><code>/styles</code>, <code>style.php</code><br />phpBB Styles/Templates/Themes/Imagesets</li>
</ul>
<a name="constants"></a></h3>1.iv. Special Constants</h3>
<a name="constants"></a><h3>1.iv. Special Constants</h3>
<p>There are some special constants application developers are able to utilize to bend some of phpBB's internal functionality to suit their needs.</p>
@@ -288,7 +287,7 @@ PHPBB_QA (Set board to QA-Mode, which means the updater also c
<div class="content">
<p>Please note that these Guidelines applies to all php, html, javascript and css files.</p>
<p>Please note that these guidelines apply to all php, html, javascript and css files.</p>
<a name="namingvars"></a><h3>2.i. Variable/Function Naming</h3>
@@ -1170,24 +1169,13 @@ append_sid(&quot;{$phpbb_root_path}memberlist.$phpEx&quot;, 'mode=group&amp;amp;
<span class="comment">&lt;!-- INCLUDE {FILE_VAR} --&gt;</span>
</pre></div>
<p>Template defined variables can also be utilised.
<p>Template defined variables can also be utilised.</p>
<div class="codebox"><pre>
<span class="comment">&lt;!-- DEFINE $SOME_VAR = 'my_file.html' --&gt;</span>
<span class="comment">&lt;!-- INCLUDE {$SOME_VAR} --&gt;</span>
</pre></div>
<!-- no longer added in 3.0.6
<p>Also added in <strong>3.0.6</strong> is the ability to increment or decrement a variable on use. This can be used for instances like tabindexes, where the amount of entries is not statically known.
The INC (for incrementing) and DEC (for decrementing) commands will print the <strong>current</strong> state of a defined var and then increment/decrement it by one (postincrement/postdecrement).</p>
<div class="codebox"><pre>
<span class="comment">&lt;!-- DEFINE $SOME_VAR = 1 --&gt;</span>
<span class="comment">&lt;!-- INC $SOME_VAR --&gt;</span>
Result: 1<br />
<span class="comment">{$SOME_VAR}</span>
Result: 2<br />
</pre></div>
//-->
<h4>PHP</h4>
<p>A contentious decision has seen the ability to include PHP within the template introduced. This is achieved by enclosing the PHP within relevant tags:</p>
@@ -1541,11 +1529,11 @@ div
&lt;form method=&quot;post&quot; id=&quot;mcp&quot; action=&quot;{U_POST_ACTION}&quot;&gt;
&lt;fieldset class="submit-buttons"&gt;
&lt;input type=&quot;reset&quot; value=&quot;{L_RESET}&quot; name=&quot;reset&quot; class=&quot;button2&quot; /&gt&nbsp;
&lt;input type=&quot;submit&quot; name=&quot;action[add_warning]&quot; value=&quot;{L_SUBMIT}&quot; class=&quot;button1&quot; /&gt
&lt;input type=&quot;reset&quot; value=&quot;{L_RESET}&quot; name=&quot;reset&quot; class=&quot;button2&quot; /&gt;&nbsp;
&lt;input type=&quot;submit&quot; name=&quot;action[add_warning]&quot; value=&quot;{L_SUBMIT}&quot; class=&quot;button1&quot; /&gt;
{S_FORM_TOKEN}
&lt;/fieldset&gt
&lt;/form&gt
&lt;/fieldset&gt;
&lt;/form&gt;
</pre></div><br />
<a name="inheritance"></a><h3>4.ii. Template Inheritance</h3>
@@ -2337,126 +2325,33 @@ if (utf8_case_fold_nfc($string1) == utf8_case_fold_nfc($string2))
<div class="content">
<p>The version control system for phpBB3 is subversion. The repository is available at <a href="http://code.phpbb.com/svn/phpbb" title="repository">http://code.phpbb.com/svn/phpbb</a>.
<p>The version control system for phpBB3 is git. The repository is available at <a href="http://github.com/phpbb/phpbb3" title="repository">http://github.com/phpbb/phpbb3</a>.</p>
<a name="repostruct"></a><h3>7.i. Repository Structure</h3>
<ul>
<li><strong>trunk</strong><br />The latest unstable development version with new features etc. Contains the actual board in <code>/trunk/phpBB</code></li>
<li><strong>branches</strong><br />Development branches of stable phpBB releases. Copied from <code>/trunk</code> at the time of release.
<li><strong>develop</strong><br />The latest unstable development version with new features etc.</li>
<li><strong>develop-*</strong><br />Development branches of stable phpBB releases. Branched off of <code>develop</code> at the time of feature freeze.
<ul>
<li><strong>phpBB3.0</strong><code>/branches/phpBB-3_0_0/phpBB</code><br />Development branch of the stable 3.0 line. Bug fixes are applied here.</li>
<li><strong>phpBB2</strong><code>/branches/phpBB-2_0_0/phpBB</code><br />Old phpBB2 development branch.</li>
<li><strong>phpBB3.0</strong><code>develop-olympus</code><br />Development branch of the stable 3.0 line. Bug fixes are applied here.</li>
<li><strong>phpBB3.1</strong><code>develop-ascraeus</code><br />Development branch of the stable 3.1 line. Bug fixes are applied here.</li>
</ul>
</li>
<li><strong>tags</strong><br />Released versions. Copies of trunk or the respective branch, made at the time of release.
<li><strong>master</strong><br />A branch containing all stable phpBB3 release points</li>
<li><strong>tags</strong><br />Released versions. Stable ones get merged into the master branch.
<ul>
<li><code>/tags/release_3_0_BX</code><br />Beta release X of the 3.0 line.</li>
<li><code>/tags/release_3_0_RCX</code><br />Release candidate X of the 3.0 line.</li>
<li><code>/tags/release_3_0_X-RCY</code><br />Release candidate Y of the stable 3.0.X release.</li>
<li><code>/tags/release_3_0_X</code><br />Stable <strong>3.0.X</strong> release.</li>
<li><code>/tags/release_2_0_X</code><br />Old stable 2.0.X release.</li>
<li><code>release-3.Y-BX</code><br />Beta release X of the 3.Y line.</li>
<li><code>release-3.Y-RCX</code><br />Release candidate X of the 3.Y line.</li>
<li><code>release-3.Y.Z-RCX</code><br />Release candidate X of the stable 3.Y.Z release.</li>
<li><code>release-3.0.X</code><br />Stable <strong>3.0.X</strong> release.</li>
<li><code>release-2.0.X</code><br />Old stable 2.0.X release.</li>
</ul>
</li>
</ul>
<a name="commitmessage"></a><h3>7.ii. Commit Messages</h3>
<p>The commit message should contain a brief explanation of all changes made within the commit. Often identical to the changelog entry. A bug ticket can be referenced by specifying the ticket ID with a hash, e.g. #12345. A reference to another revision should simply be prefixed with r, e.g. r12345.</p>
<p>Junior Developers need to have their patches approved by a development team member first. The commit message must end in a line with the following format:</p>
<div class="codebox"><pre>
Authorised by: developer1[, developer2[, ...]]
</pre></div>
</div>
<div class="back2top"><a href="#wrap" class="top">Back to Top</a></div>
<span class="corners-bottom"><span></span></span></div>
</div>
<hr />
<a name="changes"></a><h2>8. Guidelines Changelog</h2>
<div class="paragraph">
<div class="inner"><span class="corners-top"><span></span></span>
<div class="content">
<h3>Revision 10007</h3>
<ul>
<li>Added <a href="#constants">Special Constants</a> section.</li>
</ul>
<h3>Revision 9817</h3>
<ul>
<li>Added VCS section.</li>
</ul>
<h3>Revision 8732</h3>
<ul>
<li>Added cfg files.</li>
<li>Added template <a href="#inheritance">inheritance</a>.</li>
</ul>
<h3>Revision 8596+</h3>
<ul>
<li>Removed sql_build_array('MULTI_INSERT'... statements.</li>
<li>Added sql_multi_insert() explanation.</li>
</ul>
<h3>Revision 1.31</h3>
<ul>
<li>Added add_form_key and check_form_key. </li>
</ul>
<h3>Revision 1.24</h3>
<ul>
<li>Added <a href="#translation">5. Character Sets and Encodings</a> section to explain the recommended treatment of strings in phpBB.</li>
</ul>
<h3>Revision 1.16</h3>
<ul>
<li>Added <a href="#translation">6. Translation (<abbr title="Internationalisation">i18n</abbr>/<abbr title="Localisation">L10n</abbr>) Guidelines</a> section to explain expected format and authoring considerations for language packs that are to be created for phpBB.</li>
</ul>
<h3>Revision 1.11-1.15</h3>
<ul>
<li>Various document formatting, spelling, punctuation, grammar bugs.</li>
</ul>
<h3>Revision 1.9-1.10</h3>
<ul>
<li>Added sql_query_limit to <a href="#sql">2.iii. SQL/SQL Layout</a>.</li>
</ul>
<h3>Revision 1.8</h3>
<ul>
<li>Some adjustements to wordings</li>
<li>Updated paragraph <a href="#locations">1.iii. File Locations</a> to reflect recent changes</li>
<li>Extended paragraph <a href="#codelayout">2.ii. Code Layout</a>.</li>
<li>Added sql_in_set and sql_build_query explanation to <a href="#sql">2.iii. SQL/SQL Layout</a>.</li>
<li>Updated paragraph <a href="#styling">3. Styling</a>.</li>
<li>Updated paragraph <a href="#templating">4. Templating</a> to explain loop checking, loop breaking and other changes we recently made.</li>
</ul>
<h3>Revision 1.5</h3>
<ul>
<li>Changed General function usage paragraph in <a href="#general">2.v. General Guidelines</a></li>
</ul>
<a name="commitmessage"></a><h3>7.ii. Commit Messages and Repository Rules</h3>
<p>Information on repository rules, such as commit messages can be found at <a href="http://wiki.phpbb.com/display/DEV/Git" title="phpBB Git Information">http://wiki.phpbb.com/display/DEV/Git</a>.</p>
</div>
@@ -2486,7 +2381,7 @@ Authorised by: developer1[, developer2[, ...]]
<!-- END DOCUMENT -->
<div id="page-footer">
<div class="version"> $Id$ </div>
<div class="version">&nbsp;</div>
</div>
</div></div>

View File

@@ -875,7 +875,7 @@ function phpbb_hook_register(&amp;$hook)
</div>
<div id="page-footer">
<div class="version">$Id$</div>
<div class="version">&nbsp;</div>
</div>
</div></div>

View File

@@ -0,0 +1,70 @@
# Sample nginx configuration file for phpBB.
# Global settings have been removed, copy them
# from your system's nginx.conf.
# Tested with nginx 0.8.35.
http {
# Compression - requires gzip and gzip static modules.
gzip on;
gzip_static on;
gzip_vary on;
gzip_http_version 1.1;
gzip_min_length 700;
gzip_comp_level 6;
gzip_disable "MSIE [1-6]\.";
# Catch-all server for requests to invalid hosts.
# Also catches vulnerability scanners probing IP addresses.
# Should be first.
server {
listen 80;
server_name bogus;
return 444;
root /var/empty;
}
# If you have domains with and without www prefix,
# redirect one to the other.
server {
listen 80;
server_name myforums.com;
rewrite ^(.*)$ http://www.myforums.com$1 permanent;
}
# The actual board domain.
server {
listen 80;
server_name www.myforums.com;
root /path/to/phpbb;
location / {
# phpbb uses index.htm
index index.php index.html index.htm;
}
# Deny access to internal phpbb files.
location ~ /(config\.php|common\.php|includes|cache|files|store|images/avatars/upload) {
deny all;
}
# Pass the php scripts to fastcgi server specified in upstream declaration.
location ~ \.php$ {
fastcgi_pass php;
# Necessary for php.
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
# Unmodified fastcgi_params from nginx distribution.
include fastcgi_params;
}
# Deny access to version control system directories.
location ~ /\.svn|/\.git {
deny all;
}
}
# If running php as fastcgi, specify php upstream.
upstream php {
server unix:/tmp/php.sock;
}
}

View File

@@ -31,6 +31,12 @@ else if (isset($_SERVER['HTTP_USER_AGENT']) && strpos($_SERVER['HTTP_USER_AGENT'
if (isset($_GET['avatar']))
{
if (!defined('E_DEPRECATED'))
{
define('E_DEPRECATED', 8192);
}
error_reporting(E_ALL ^ E_NOTICE ^ E_DEPRECATED);
require($phpbb_root_path . 'config.' . $phpEx);
if (!defined('PHPBB_INSTALLED') || empty($dbms) || empty($acm_type))
@@ -42,6 +48,7 @@ if (isset($_GET['avatar']))
require($phpbb_root_path . 'includes/cache.' . $phpEx);
require($phpbb_root_path . 'includes/db/' . $dbms . '.' . $phpEx);
require($phpbb_root_path . 'includes/constants.' . $phpEx);
require($phpbb_root_path . 'includes/functions.' . $phpEx);
$db = new $sql_db();
$cache = new cache();
@@ -61,7 +68,7 @@ if (isset($_GET['avatar']))
$avatar_group = false;
$exit = false;
if ($filename[0] === 'g')
if (isset($filename[0]) && $filename[0] === 'g')
{
$avatar_group = true;
$filename = substr($filename, 1);
@@ -70,7 +77,7 @@ if (isset($_GET['avatar']))
// '==' is not a bug - . as the first char is as bad as no dot at all
if (strpos($filename, '.') == false)
{
header('HTTP/1.0 403 Forbidden');
send_status_line(403, 'Forbidden');
$exit = true;
}
@@ -84,7 +91,7 @@ if (isset($_GET['avatar']))
if (!$exit && !in_array($ext, array('png', 'gif', 'jpg', 'jpeg')))
{
// no way such an avatar could exist. They are not following the rules, stop the show.
header("HTTP/1.0 403 Forbidden");
send_status_line(403, 'Forbidden');
$exit = true;
}
@@ -94,7 +101,7 @@ if (isset($_GET['avatar']))
if (!$filename)
{
// no way such an avatar could exist. They are not following the rules, stop the show.
header("HTTP/1.0 403 Forbidden");
send_status_line(403, 'Forbidden');
}
else
{
@@ -192,7 +199,7 @@ else
$row['forum_id'] = false;
if (!$auth->acl_get('u_pm_download'))
{
header('HTTP/1.0 403 Forbidden');
send_status_line(403, 'Forbidden');
trigger_error('SORRY_AUTH_VIEW_ATTACH');
}
@@ -215,7 +222,7 @@ else
if (!$allowed)
{
header('HTTP/1.0 403 Forbidden');
send_status_line(403, 'Forbidden');
trigger_error('ERROR_NO_ATTACHMENT');
}
}
@@ -230,7 +237,7 @@ else
if (!download_allowed())
{
header('HTTP/1.0 403 Forbidden');
send_status_line(403, 'Forbidden');
trigger_error($user->lang['LINKAGE_FORBIDDEN']);
}
@@ -376,7 +383,7 @@ function send_avatar_to_browser($file, $browser)
}
else
{
header('HTTP/1.0 404 Not Found');
send_status_line(404, 'Not Found');
}
}
@@ -668,17 +675,9 @@ function set_modified_headers($stamp, $browser)
$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 ($last_load !== false && $last_load <= $stamp)
if ($last_load !== false && $last_load >= $stamp)
{
if (substr(strtolower(@php_sapi_name()),0,3) === 'cgi')
{
// in theory, we shouldn't need that due to php doing it. Reality offers a differing opinion, though
header('Status: 304 Not Modified', true, 304);
}
else
{
header('HTTP/1.0 304 Not Modified', true, 304);
}
send_status_line(304, 'Not Modified');
// seems that we need those too ... browsers
header('Pragma: public');
header('Expires: ' . gmdate('D, d M Y H:i:s \G\M\T', time() + 31536000));

File diff suppressed because it is too large Load Diff

4
phpBB/includes/.htaccess Normal file
View File

@@ -0,0 +1,4 @@
<Files *>
Order Allow,Deny
Deny from All
</Files>

View File

@@ -30,6 +30,7 @@ if (!class_exists('acm_memory'))
class acm extends acm_memory
{
var $extension = 'eaccelerator';
var $function = 'eaccelerator_get';
var $serialize_header = '#phpbb-serialized#';

View File

@@ -78,8 +78,14 @@ class acm
if (!$this->_write('data_global'))
{
if (!function_exists('phpbb_is_writable'))
{
global $phpbb_root_path;
include($phpbb_root_path . 'includes/functions.' . $phpEx);
}
// Now, this occurred how often? ... phew, just tell the user then...
if (!@is_writable($this->cache_dir))
if (!phpbb_is_writable($this->cache_dir))
{
// We need to use die() here, because else we may encounter an infinite loop (the message handler calls $cache->unload())
die($this->cache_dir . ' is NOT writable.');
@@ -410,7 +416,7 @@ class acm
{
if ($this->sql_row_pointer[$query_id] < sizeof($this->sql_rowset[$query_id]))
{
return (isset($this->sql_rowset[$query_id][$this->sql_row_pointer[$query_id]][$field])) ? $this->sql_rowset[$query_id][$this->sql_row_pointer[$query_id]][$field] : false;
return (isset($this->sql_rowset[$query_id][$this->sql_row_pointer[$query_id]][$field])) ? $this->sql_rowset[$query_id][$this->sql_row_pointer[$query_id]++][$field] : false;
}
return false;
@@ -707,7 +713,13 @@ class acm
*/
function remove_file($filename, $check = false)
{
if ($check && !@is_writable($this->cache_dir))
if (!function_exists('phpbb_is_writable'))
{
global $phpbb_root_path, $phpEx;
include($phpbb_root_path . 'includes/functions.' . $phpEx);
}
if ($check && !phpbb_is_writable($this->cache_dir))
{
// E_USER_ERROR - not using language entry - intended.
trigger_error('Unable to remove files within ' . $this->cache_dir . '. Please check directory permissions.', E_USER_ERROR);

View File

@@ -37,6 +37,12 @@ if (!defined('PHPBB_ACM_MEMCACHE_HOST'))
define('PHPBB_ACM_MEMCACHE_HOST', 'localhost');
}
if (!defined('PHPBB_ACM_MEMCACHE'))
{
//can define multiple servers with host1/port1,host2/port2 format
define('PHPBB_ACM_MEMCACHE', PHPBB_ACM_MEMCACHE_HOST . '/' . PHPBB_ACM_MEMCACHE_PORT);
}
/**
* ACM for Memcached
* @package acm
@@ -54,7 +60,11 @@ class acm extends acm_memory
parent::acm_memory();
$this->memcache = new Memcache;
$this->memcache->connect(PHPBB_ACM_MEMCACHE_HOST, PHPBB_ACM_MEMCACHE_PORT);
foreach(explode(',', PHPBB_ACM_MEMCACHE) as $u)
{
$parts = explode('/', $u);
$this->memcache->addServer(trim($parts[0]), trim($parts[1]));
}
$this->flags = (PHPBB_ACM_MEMCACHE_COMPRESS) ? MEMCACHE_COMPRESSED : 0;
}
@@ -105,7 +115,11 @@ class acm extends acm_memory
*/
function _write($var, $data, $ttl = 2592000)
{
return $this->memcache->set($this->key_prefix . $var, $data, $this->flags, $ttl);
if (!$this->memcache->replace($this->key_prefix . $var, $data, $this->flags, $ttl))
{
return $this->memcache->set($this->key_prefix . $var, $data, $this->flags, $ttl);
}
return true;
}
/**
@@ -121,4 +135,4 @@ class acm extends acm_memory
}
}
?>
?>

View File

@@ -47,6 +47,13 @@ class acm_memory
trigger_error("Could not find required extension [{$this->extension}] for the ACM module $acm_type.", E_USER_ERROR);
}
if (isset($this->function) && !function_exists($this->function))
{
global $acm_type;
trigger_error("The required function [{$this->function}] is not available for the ACM module $acm_type.", E_USER_ERROR);
}
}
/**
@@ -359,7 +366,7 @@ class acm_memory
{
if ($this->sql_row_pointer[$query_id] < sizeof($this->sql_rowset[$query_id]))
{
return (isset($this->sql_rowset[$query_id][$this->sql_row_pointer[$query_id]][$field])) ? $this->sql_rowset[$query_id][$this->sql_row_pointer[$query_id]][$field] : false;
return (isset($this->sql_rowset[$query_id][$this->sql_row_pointer[$query_id]][$field])) ? $this->sql_rowset[$query_id][$this->sql_row_pointer[$query_id]++][$field] : false;
}
return false;
@@ -400,7 +407,13 @@ class acm_memory
*/
function remove_file($filename, $check = false)
{
if ($check && !@is_writable($this->cache_dir))
if (!function_exists('phpbb_is_writable'))
{
global $phpbb_root_path, $phpEx;
include($phpbb_root_path . 'includes/functions.' . $phpEx);
}
if ($check && !phpbb_is_writable($this->cache_dir))
{
// E_USER_ERROR - not using language entry - intended.
trigger_error('Unable to remove files within ' . $this->cache_dir . '. Please check directory permissions.', E_USER_ERROR);

View File

@@ -90,6 +90,7 @@ class acp_attachments
$s_assigned_groups = array();
while ($row = $db->sql_fetchrow($result))
{
$row['group_name'] = (isset($user->lang['EXT_GROUP_' . $row['group_name']])) ? $user->lang['EXT_GROUP_' . $row['group_name']] : $row['group_name'];
$s_assigned_groups[$row['cat_id']][] = $row['group_name'];
}
$db->sql_freeresult($result);
@@ -124,11 +125,11 @@ class acp_attachments
'legend2' => $l_legend_cat_images,
'img_display_inlined' => array('lang' => 'DISPLAY_INLINED', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'img_create_thumbnail' => array('lang' => 'CREATE_THUMBNAIL', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'img_max_thumb_width' => array('lang' => 'MAX_THUMB_WIDTH', 'validate' => 'int', 'type' => 'text:7:15', 'explain' => true, 'append' => ' px'),
'img_max_thumb_width' => array('lang' => 'MAX_THUMB_WIDTH', 'validate' => 'int', 'type' => 'text:7:15', 'explain' => true, 'append' => ' ' . $user->lang['PIXEL']),
'img_min_thumb_filesize' => array('lang' => 'MIN_THUMB_FILESIZE', 'validate' => 'int', 'type' => 'text:7:15', 'explain' => true, 'append' => ' ' . $user->lang['BYTES']),
'img_imagick' => array('lang' => 'IMAGICK_PATH', 'validate' => 'string', 'type' => 'text:20:200', 'explain' => true, 'append' => '&nbsp;&nbsp;<span>[ <a href="' . $this->u_action . '&amp;action=imgmagick">' . $user->lang['SEARCH_IMAGICK'] . '</a> ]</span>'),
'img_max' => array('lang' => 'MAX_IMAGE_SIZE', 'validate' => 'int', 'type' => 'dimension:3:4', 'explain' => true, 'append' => ' px'),
'img_link' => array('lang' => 'IMAGE_LINK_SIZE', 'validate' => 'int', 'type' => 'dimension:3:4', 'explain' => true, 'append' => ' px'),
'img_max' => array('lang' => 'MAX_IMAGE_SIZE', 'validate' => 'int', 'type' => 'dimension:3:4', 'explain' => true, 'append' => ' ' . $user->lang['PIXEL']),
'img_link' => array('lang' => 'IMAGE_LINK_SIZE', 'validate' => 'int', 'type' => 'dimension:3:4', 'explain' => true, 'append' => ' ' . $user->lang['PIXEL']),
)
);
@@ -494,6 +495,10 @@ class acp_attachments
$sql = 'SELECT group_id
FROM ' . EXTENSION_GROUPS_TABLE . "
WHERE LOWER(group_name) = '" . $db->sql_escape(utf8_strtolower($new_group_name)) . "'";
if ($group_id)
{
$sql .= ' AND group_id <> ' . $group_id;
}
$result = $db->sql_query($sql);
if ($db->sql_fetchrow($result))
@@ -551,6 +556,7 @@ class acp_attachments
$group_id = $db->sql_nextid();
}
$group_name = (isset($user->lang['EXT_GROUP_' . $group_name])) ? $user->lang['EXT_GROUP_' . $group_name] : $group_name;
add_log('admin', 'LOG_ATTACH_EXTGROUP_' . strtoupper($action), $group_name);
}
@@ -858,7 +864,7 @@ class acp_attachments
'U_EDIT' => $this->u_action . "&amp;action=edit&amp;g={$row['group_id']}",
'U_DELETE' => $this->u_action . "&amp;action=delete&amp;g={$row['group_id']}",
'GROUP_NAME' => $row['group_name'],
'GROUP_NAME' => (isset($user->lang['EXT_GROUP_' . $row['group_name']])) ? $user->lang['EXT_GROUP_' . $row['group_name']] : $row['group_name'],
'CATEGORY' => $cat_lang[$row['cat_id']],
)
);
@@ -1118,6 +1124,7 @@ class acp_attachments
$group_name = array();
while ($row = $db->sql_fetchrow($result))
{
$row['group_name'] = (isset($user->lang['EXT_GROUP_' . $row['group_name']])) ? $user->lang['EXT_GROUP_' . $row['group_name']] : $row['group_name'];
$group_name[] = $row;
}
$db->sql_freeresult($result);
@@ -1215,7 +1222,7 @@ class acp_attachments
return;
}
if (!is_writable($phpbb_root_path . $upload_dir))
if (!phpbb_is_writable($phpbb_root_path . $upload_dir))
{
$error[] = sprintf($user->lang['NO_WRITE_UPLOAD'], $upload_dir);
return;

View File

@@ -224,7 +224,7 @@ class acp_ban
$template->assign_block_vars('ban_reason', array(
'BAN_ID' => $ban_id,
'REASON' => $reason,
'A_REASON' => addslashes(htmlspecialchars_decode($reason)),
'A_REASON' => addslashes($reason),
));
}
}
@@ -236,7 +236,7 @@ class acp_ban
$template->assign_block_vars('ban_give_reason', array(
'BAN_ID' => $ban_id,
'REASON' => $reason,
'A_REASON' => addslashes(htmlspecialchars_decode($reason)),
'A_REASON' => addslashes($reason),
));
}
}

View File

@@ -124,121 +124,137 @@ class acp_bbcodes
case 'modify':
case 'create':
$data = $this->build_regexp($bbcode_match, $bbcode_tpl);
// Make sure the user didn't pick a "bad" name for the BBCode tag.
$hard_coded = array('code', 'quote', 'quote=', 'attachment', 'attachment=', 'b', 'i', 'url', 'url=', 'img', 'size', 'size=', 'color', 'color=', 'u', 'list', 'list=', 'email', 'email=', 'flash', 'flash=');
if (($action == 'modify' && strtolower($data['bbcode_tag']) !== strtolower($row['bbcode_tag'])) || ($action == 'create'))
$warn_text = preg_match('%<[^>]*\{text[\d]*\}[^>]*>%i', $bbcode_tpl);
if (!$warn_text || confirm_box(true))
{
$sql = 'SELECT 1 as test
FROM ' . BBCODES_TABLE . "
WHERE LOWER(bbcode_tag) = '" . $db->sql_escape(strtolower($data['bbcode_tag'])) . "'";
$result = $db->sql_query($sql);
$info = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
$data = $this->build_regexp($bbcode_match, $bbcode_tpl);
// Grab the end, interrogate the last closing tag
if ($info['test'] === '1' || in_array(strtolower($data['bbcode_tag']), $hard_coded) || (preg_match('#\[/([^[]*)]$#', $bbcode_match, $regs) && in_array(strtolower($regs[1]), $hard_coded)))
// Make sure the user didn't pick a "bad" name for the BBCode tag.
$hard_coded = array('code', 'quote', 'quote=', 'attachment', 'attachment=', 'b', 'i', 'url', 'url=', 'img', 'size', 'size=', 'color', 'color=', 'u', 'list', 'list=', 'email', 'email=', 'flash', 'flash=');
if (($action == 'modify' && strtolower($data['bbcode_tag']) !== strtolower($row['bbcode_tag'])) || ($action == 'create'))
{
trigger_error($user->lang['BBCODE_INVALID_TAG_NAME'] . adm_back_link($this->u_action), E_USER_WARNING);
}
}
$sql = 'SELECT 1 as test
FROM ' . BBCODES_TABLE . "
WHERE LOWER(bbcode_tag) = '" . $db->sql_escape(strtolower($data['bbcode_tag'])) . "'";
$result = $db->sql_query($sql);
$info = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
if (substr($data['bbcode_tag'], -1) === '=')
{
$test = substr($data['bbcode_tag'], 0, -1);
}
else
{
$test = $data['bbcode_tag'];
}
if (!preg_match('%\\[' . $test . '[^]]*].*?\\[/' . $test . ']%s', $bbcode_match))
{
trigger_error($user->lang['BBCODE_OPEN_ENDED_TAG'] . adm_back_link($this->u_action), E_USER_WARNING);
}
if (strlen($data['bbcode_tag']) > 16)
{
trigger_error($user->lang['BBCODE_TAG_TOO_LONG'] . adm_back_link($this->u_action), E_USER_WARNING);
}
if (strlen($bbcode_match) > 4000)
{
trigger_error($user->lang['BBCODE_TAG_DEF_TOO_LONG'] . adm_back_link($this->u_action), E_USER_WARNING);
}
if (strlen($bbcode_helpline) > 255)
{
trigger_error($user->lang['BBCODE_HELPLINE_TOO_LONG'] . adm_back_link($this->u_action), E_USER_WARNING);
}
$sql_ary = array(
'bbcode_tag' => $data['bbcode_tag'],
'bbcode_match' => $bbcode_match,
'bbcode_tpl' => $bbcode_tpl,
'display_on_posting' => $display_on_posting,
'bbcode_helpline' => $bbcode_helpline,
'first_pass_match' => $data['first_pass_match'],
'first_pass_replace' => $data['first_pass_replace'],
'second_pass_match' => $data['second_pass_match'],
'second_pass_replace' => $data['second_pass_replace']
);
if ($action == 'create')
{
$sql = 'SELECT MAX(bbcode_id) as max_bbcode_id
FROM ' . BBCODES_TABLE;
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
if ($row)
{
$bbcode_id = $row['max_bbcode_id'] + 1;
// Make sure it is greater than the core bbcode ids...
if ($bbcode_id <= NUM_CORE_BBCODES)
// Grab the end, interrogate the last closing tag
if ($info['test'] === '1' || in_array(strtolower($data['bbcode_tag']), $hard_coded) || (preg_match('#\[/([^[]*)]$#', $bbcode_match, $regs) && in_array(strtolower($regs[1]), $hard_coded)))
{
$bbcode_id = NUM_CORE_BBCODES + 1;
trigger_error($user->lang['BBCODE_INVALID_TAG_NAME'] . adm_back_link($this->u_action), E_USER_WARNING);
}
}
if (substr($data['bbcode_tag'], -1) === '=')
{
$test = substr($data['bbcode_tag'], 0, -1);
}
else
{
$bbcode_id = NUM_CORE_BBCODES + 1;
$test = $data['bbcode_tag'];
}
if ($bbcode_id > 1511)
if (!preg_match('%\\[' . $test . '[^]]*].*?\\[/' . $test . ']%s', $bbcode_match))
{
trigger_error($user->lang['TOO_MANY_BBCODES'] . adm_back_link($this->u_action), E_USER_WARNING);
trigger_error($user->lang['BBCODE_OPEN_ENDED_TAG'] . adm_back_link($this->u_action), E_USER_WARNING);
}
$sql_ary['bbcode_id'] = (int) $bbcode_id;
if (strlen($data['bbcode_tag']) > 16)
{
trigger_error($user->lang['BBCODE_TAG_TOO_LONG'] . adm_back_link($this->u_action), E_USER_WARNING);
}
$db->sql_query('INSERT INTO ' . BBCODES_TABLE . $db->sql_build_array('INSERT', $sql_ary));
$cache->destroy('sql', BBCODES_TABLE);
if (strlen($bbcode_match) > 4000)
{
trigger_error($user->lang['BBCODE_TAG_DEF_TOO_LONG'] . adm_back_link($this->u_action), E_USER_WARNING);
}
$lang = 'BBCODE_ADDED';
$log_action = 'LOG_BBCODE_ADD';
if (strlen($bbcode_helpline) > 255)
{
trigger_error($user->lang['BBCODE_HELPLINE_TOO_LONG'] . adm_back_link($this->u_action), E_USER_WARNING);
}
$sql_ary = array(
'bbcode_tag' => $data['bbcode_tag'],
'bbcode_match' => $bbcode_match,
'bbcode_tpl' => $bbcode_tpl,
'display_on_posting' => $display_on_posting,
'bbcode_helpline' => $bbcode_helpline,
'first_pass_match' => $data['first_pass_match'],
'first_pass_replace' => $data['first_pass_replace'],
'second_pass_match' => $data['second_pass_match'],
'second_pass_replace' => $data['second_pass_replace']
);
if ($action == 'create')
{
$sql = 'SELECT MAX(bbcode_id) as max_bbcode_id
FROM ' . BBCODES_TABLE;
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
if ($row)
{
$bbcode_id = $row['max_bbcode_id'] + 1;
// Make sure it is greater than the core bbcode ids...
if ($bbcode_id <= NUM_CORE_BBCODES)
{
$bbcode_id = NUM_CORE_BBCODES + 1;
}
}
else
{
$bbcode_id = NUM_CORE_BBCODES + 1;
}
if ($bbcode_id > 1511)
{
trigger_error($user->lang['TOO_MANY_BBCODES'] . adm_back_link($this->u_action), E_USER_WARNING);
}
$sql_ary['bbcode_id'] = (int) $bbcode_id;
$db->sql_query('INSERT INTO ' . BBCODES_TABLE . $db->sql_build_array('INSERT', $sql_ary));
$cache->destroy('sql', BBCODES_TABLE);
$lang = 'BBCODE_ADDED';
$log_action = 'LOG_BBCODE_ADD';
}
else
{
$sql = 'UPDATE ' . BBCODES_TABLE . '
SET ' . $db->sql_build_array('UPDATE', $sql_ary) . '
WHERE bbcode_id = ' . $bbcode_id;
$db->sql_query($sql);
$cache->destroy('sql', BBCODES_TABLE);
$lang = 'BBCODE_EDITED';
$log_action = 'LOG_BBCODE_EDIT';
}
add_log('admin', $log_action, $data['bbcode_tag']);
trigger_error($user->lang[$lang] . adm_back_link($this->u_action));
}
else
{
$sql = 'UPDATE ' . BBCODES_TABLE . '
SET ' . $db->sql_build_array('UPDATE', $sql_ary) . '
WHERE bbcode_id = ' . $bbcode_id;
$db->sql_query($sql);
$cache->destroy('sql', BBCODES_TABLE);
$lang = 'BBCODE_EDITED';
$log_action = 'LOG_BBCODE_EDIT';
confirm_box(false, $user->lang['BBCODE_DANGER'], build_hidden_fields(array(
'action' => $action,
'bbcode' => $bbcode_id,
'bbcode_match' => $bbcode_match,
'bbcode_tpl' => htmlspecialchars($bbcode_tpl),
'bbcode_helpline' => $bbcode_helpline,
'display_on_posting' => $display_on_posting,
))
, 'confirm_bbcode.html');
}
add_log('admin', $log_action, $data['bbcode_tag']);
trigger_error($user->lang[$lang] . adm_back_link($this->u_action));
break;
case 'delete':
@@ -299,6 +315,18 @@ class acp_bbcodes
{
$bbcode_match = trim($bbcode_match);
$bbcode_tpl = trim($bbcode_tpl);
$utf8 = strpos($bbcode_match, 'INTTEXT') !== false;
// make sure we have utf8 support
$utf8_pcre_properties = false;
if (version_compare(PHP_VERSION, '5.1.0', '>=') || (version_compare(PHP_VERSION, '5.0.0-dev', '<=') && version_compare(PHP_VERSION, '4.4.0', '>=')))
{
// While this is the proper range of PHP versions, PHP may not be linked with the bundled PCRE lib and instead with an older version
if (@preg_match('/\p{L}/u', 'a') !== false)
{
$utf8_pcre_properties = true;
}
}
$fp_match = preg_quote($bbcode_match, '!');
$fp_replace = preg_replace('#^\[(.*?)\]#', '[$1:$uid]', $bbcode_match);
@@ -326,6 +354,9 @@ class acp_bbcodes
'SIMPLETEXT' => array(
'!([a-zA-Z0-9-+.,_ ]+)!' => "$1"
),
'INTTEXT' => array(
($utf8_pcre_properties) ? '!([\p{L}\p{N}\-+,_. ]+)!u' : '!([a-zA-Z0-9\-+,_. ]+)!u' => "$1"
),
'IDENTIFIER' => array(
'!([a-zA-Z0-9-_]+)!' => "$1"
),
@@ -343,6 +374,7 @@ class acp_bbcodes
'EMAIL' => '(' . get_preg_expression('email') . ')',
'TEXT' => '(.*?)',
'SIMPLETEXT' => '([a-zA-Z0-9-+.,_ ]+)',
'INTTEXT' => ($utf8_pcre_properties) ? '([\p{L}\p{N}\-+,_. ]+)' : '([a-zA-Z0-9\-+,_. ]+)',
'IDENTIFIER' => '([a-zA-Z0-9-_]+)',
'COLOR' => '([a-zA-Z]+|#[0-9abcdefABCDEF]+)',
'NUMBER' => '([0-9]+)',
@@ -350,6 +382,7 @@ class acp_bbcodes
$pad = 0;
$modifiers = 'i';
$modifiers .= ($utf8 && $utf8_pcre_properties) ? 'u' : '';
if (preg_match_all('/\{(' . implode('|', array_keys($tokens)) . ')[0-9]*\}/i', $bbcode_match, $m))
{
@@ -398,7 +431,7 @@ class acp_bbcodes
}
$fp_match = '!' . $fp_match . '!' . $modifiers;
$sp_match = '!' . $sp_match . '!s';
$sp_match = '!' . $sp_match . '!s' . (($utf8) ? 'u' : '');
if (strpos($fp_match, 'e') !== false)
{

View File

@@ -29,11 +29,12 @@ class acp_board
{
global $db, $user, $auth, $template;
global $config, $phpbb_root_path, $phpbb_admin_path, $phpEx;
global $cache;
$user->add_lang('acp/board');
$action = request_var('action', '');
$submit = (isset($_POST['submit'])) ? true : false;
$submit = (isset($_POST['submit']) || isset($_POST['allow_quick_reply_enable'])) ? true : false;
$form_key = 'acp_board';
add_form_key($form_key);
@@ -57,7 +58,7 @@ class acp_board
'board_disable_msg' => false,
'default_lang' => array('lang' => 'DEFAULT_LANGUAGE', 'validate' => 'lang', 'type' => 'select', 'function' => 'language_select', 'params' => array('{CONFIG_VALUE}'), 'explain' => false),
'default_dateformat' => array('lang' => 'DEFAULT_DATE_FORMAT', 'validate' => 'string', 'type' => 'custom', 'method' => 'dateformat_select', 'explain' => true),
'board_timezone' => array('lang' => 'SYSTEM_TIMEZONE', 'validate' => 'string', 'type' => 'select', 'function' => 'tz_select', 'params' => array('{CONFIG_VALUE}', 1), 'explain' => false),
'board_timezone' => array('lang' => 'SYSTEM_TIMEZONE', 'validate' => 'string', 'type' => 'select', 'function' => 'tz_select', 'params' => array('{CONFIG_VALUE}', 1), 'explain' => true),
'board_dst' => array('lang' => 'SYSTEM_DST', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => false),
'default_style' => array('lang' => 'DEFAULT_STYLE', 'validate' => 'int', 'type' => 'select', 'function' => 'style_select', 'params' => array('{CONFIG_VALUE}', false), 'explain' => false),
'override_user_style' => array('lang' => 'OVERRIDE_STYLE', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
@@ -88,7 +89,7 @@ class acp_board
'allow_nocensors' => array('lang' => 'ALLOW_NO_CENSORS', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'allow_bookmarks' => array('lang' => 'ALLOW_BOOKMARKS', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'allow_birthdays' => array('lang' => 'ALLOW_BIRTHDAYS', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'allow_quick_reply' => array('lang' => 'ALLOW_QUICK_REPLY', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'allow_quick_reply' => array('lang' => 'ALLOW_QUICK_REPLY', 'validate' => 'bool', 'type' => 'custom', 'method' => 'quick_reply', 'explain' => true),
'legend2' => 'ACP_LOAD_SETTINGS',
'load_birthdays' => array('lang' => 'YES_BIRTHDAYS', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
@@ -172,7 +173,7 @@ class acp_board
'allow_nocensors' => array('lang' => 'ALLOW_NO_CENSORS', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'allow_bookmarks' => array('lang' => 'ALLOW_BOOKMARKS', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'enable_post_confirm' => array('lang' => 'VISUAL_CONFIRM_POST', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'allow_quick_reply' => array('lang' => 'ALLOW_QUICK_REPLY', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'allow_quick_reply' => array('lang' => 'ALLOW_QUICK_REPLY', 'validate' => 'bool', 'type' => 'custom', 'method' => 'quick_reply', 'explain' => true),
'legend2' => 'POSTING',
'bump_type' => false,
@@ -266,14 +267,22 @@ class acp_board
'legend1' => 'ACP_FEED_GENERAL',
'feed_enable' => array('lang' => 'ACP_FEED_ENABLE', 'validate' => 'bool', 'type' => 'radio:enabled_disabled', 'explain' => true ),
'feed_item_statistics' => array('lang' => 'ACP_FEED_ITEM_STATISTICS', 'validate' => 'bool', 'type' => 'radio:enabled_disabled', 'explain' => true),
'feed_limit' => array('lang' => 'ACP_FEED_LIMIT', 'validate' => 'int:5', 'type' => 'text:3:4', 'explain' => true),
'feed_overall_forums' => array('lang' => 'ACP_FEED_OVERALL_FORUMS', 'validate' => 'bool', 'type' => 'radio:enabled_disabled', 'explain' => true ),
'feed_overall_forums_limit' => array('lang' => 'ACP_FEED_OVERALL_FORUMS_LIMIT', 'validate' => 'int:5', 'type' => 'text:3:4', 'explain' => false),
'feed_overall_topics' => array('lang' => 'ACP_FEED_OVERALL_TOPIC', 'validate' => 'bool', 'type' => 'radio:enabled_disabled', 'explain' => true ),
'feed_overall_topics_limit' => array('lang' => 'ACP_FEED_OVERALL_TOPIC_LIMIT', 'validate' => 'int:5', 'type' => 'text:3:4', 'explain' => false),
'feed_http_auth' => array('lang' => 'ACP_FEED_HTTP_AUTH', 'validate' => 'bool', 'type' => 'radio:enabled_disabled', 'explain' => true),
'legend2' => 'ACP_FEED_POST_BASED',
'feed_limit_post' => array('lang' => 'ACP_FEED_LIMIT', 'validate' => 'int:5', 'type' => 'text:3:4', 'explain' => true),
'feed_overall' => array('lang' => 'ACP_FEED_OVERALL', 'validate' => 'bool', 'type' => 'radio:enabled_disabled', 'explain' => true ),
'feed_forum' => array('lang' => 'ACP_FEED_FORUM', 'validate' => 'bool', 'type' => 'radio:enabled_disabled', 'explain' => true ),
'feed_topic' => array('lang' => 'ACP_FEED_TOPIC', 'validate' => 'bool', 'type' => 'radio:enabled_disabled', 'explain' => true ),
'legend3' => 'ACP_FEED_TOPIC_BASED',
'feed_limit_topic' => array('lang' => 'ACP_FEED_LIMIT', 'validate' => 'int:5', 'type' => 'text:3:4', 'explain' => true),
'feed_topics_new' => array('lang' => 'ACP_FEED_TOPICS_NEW', 'validate' => 'bool', 'type' => 'radio:enabled_disabled', 'explain' => true ),
'feed_topics_active' => array('lang' => 'ACP_FEED_TOPICS_ACTIVE', 'validate' => 'bool', 'type' => 'radio:enabled_disabled', 'explain' => true ),
'feed_news_id' => array('lang' => 'ACP_FEED_NEWS', 'validate' => 'string', 'type' => 'custom', 'method' => 'select_news_forums', 'explain' => true),
'legend4' => 'ACP_FEED_SETTINGS_OTHER',
'feed_overall_forums' => array('lang' => 'ACP_FEED_OVERALL_FORUMS', 'validate' => 'bool', 'type' => 'radio:enabled_disabled', 'explain' => true ),
'feed_exclude_id' => array('lang' => 'ACP_FEED_EXCLUDE_ID', 'validate' => 'string', 'type' => 'custom', 'method' => 'select_exclude_forums', 'explain' => true),
)
);
@@ -310,6 +319,7 @@ class acp_board
'load_online_guests' => array('lang' => 'YES_ONLINE_GUESTS', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'load_onlinetrack' => array('lang' => 'YES_ONLINE_TRACK', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'load_birthdays' => array('lang' => 'YES_BIRTHDAYS', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
'load_unreads_search' => array('lang' => 'YES_UNREAD_SEARCH', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => false),
'load_moderators' => array('lang' => 'YES_MODERATORS', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => false),
'load_jumpbox' => array('lang' => 'YES_JUMPBOX', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => false),
'load_user_activity' => array('lang' => 'LOAD_USER_ACTIVITY', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
@@ -463,12 +473,20 @@ class acp_board
if ($submit)
{
set_config($config_name, $config_value);
if ($config_name == 'allow_quick_reply' && isset($_POST['allow_quick_reply_enable']))
{
enable_bitfield_column_flag(FORUMS_TABLE, 'forum_flags', log(FORUM_FLAG_QUICK_REPLY, 2));
}
}
}
// Store news and exclude ids
if ($mode == 'feed' && $submit)
{
$cache->destroy('_feed_news_forum_ids');
$cache->destroy('_feed_excluded_forum_ids');
$this->store_feed_forums(FORUM_OPTION_FEED_NEWS, 'feed_news_id');
$this->store_feed_forums(FORUM_OPTION_FEED_EXCLUDE, 'feed_exclude_id');
}
@@ -846,6 +864,20 @@ class acp_board
return h_radio('config[board_disable]', $radio_ary, $value) . '<br /><input id="' . $key . '" type="text" name="config[board_disable_msg]" maxlength="255" size="40" value="' . $this->new_config['board_disable_msg'] . '" />';
}
/**
* Global quick reply enable/disable setting and button to enable in all forums
*/
function quick_reply($value, $key)
{
global $user;
$radio_ary = array(1 => 'YES', 0 => 'NO');
return h_radio('config[allow_quick_reply]', $radio_ary, $value) .
'<br /><br /><input class="button2" type="submit" id="' . $key . '_enable" name="' . $key . '_enable" value="' . $user->lang['ALLOW_QUICK_REPLY_BUTTON'] . '" />';
}
/**
* Select default dateformat
*/
@@ -857,8 +889,8 @@ class acp_board
$old_tz = $user->timezone;
$old_dst = $user->dst;
$user->timezone = $config['board_timezone'];
$user->dst = $config['board_dst'];
$user->timezone = $config['board_timezone'] * 3600;
$user->dst = $config['board_dst'] * 3600;
$dateformat_options = '';
@@ -910,7 +942,7 @@ class acp_board
{
global $user, $config;
$forum_list = make_forum_select(false, false, true, false, false, false, true);
$forum_list = make_forum_select(false, false, true, true, true, false, true);
// Build forum options
$s_forum_options = '<select id="' . $key . '" name="' . $key . '[]" multiple="multiple">';

View File

@@ -30,10 +30,13 @@ class acp_captcha
$user->add_lang('acp/board');
include($phpbb_root_path . 'includes/captcha/captcha_factory.' . $phpEx);
$captchas = phpbb_captcha_factory::get_captcha_types();
$selected = request_var('select_captcha', $config['captcha_plugin']);
$selected = (isset($captchas['available'][$selected]) || isset($captchas['unavailable'][$selected])) ? $selected : $config['captcha_plugin'];
$configure = request_var('configure', false);
// Oh, they are just here for the view
if (isset($_GET['captcha_demo']))
{
@@ -45,17 +48,15 @@ class acp_captcha
{
$config_captcha =& phpbb_captcha_factory::get_instance($selected);
$config_captcha->acp_page($id, $this);
add_log('admin', 'LOG_CONFIG_VISUAL');
}
else
{
$captchas = phpbb_captcha_factory::get_captcha_types();
$config_vars = array(
'enable_confirm' => array('tpl' => 'REG_ENABLE', 'default' => false),
'enable_post_confirm' => array('tpl' => 'POST_ENABLE', 'default' => false),
'confirm_refresh' => array('tpl' => 'CONFIRM_REFRESH', 'default' => false),
'max_reg_attempts' => array('tpl' => 'REG_LIMIT', 'default' => 0),
'max_login_attempts' => array('tpl' => 'MAX_LOGIN_ATTEMPTS', 'default' => 0),
);
$this->tpl_name = 'acp_captcha';
@@ -88,14 +89,14 @@ class acp_captcha
}
else
{
trigger_error($user->lang['CAPTCHA_UNAVAILABLE'] . adm_back_link($this->u_action));
trigger_error($user->lang['CAPTCHA_UNAVAILABLE'] . adm_back_link($this->u_action), E_USER_WARNING);
}
}
trigger_error($user->lang['CONFIG_UPDATED'] . adm_back_link($this->u_action));
}
else if ($submit)
{
trigger_error($user->lang['FORM_INVALID'] . adm_back_link());
trigger_error($user->lang['FORM_INVALID'] . adm_back_link(), E_USER_WARNING);
}
else
{

View File

@@ -109,6 +109,7 @@ class acp_database
case 'mssql':
case 'mssql_odbc':
case 'mssqlnative':
$extractor = new mssql_extractor($download, $store, $format, $filename, $time);
break;
@@ -138,11 +139,12 @@ class acp_database
case 'mssql':
case 'mssql_odbc':
case 'mssqlnative':
$extractor->flush('TRUNCATE TABLE ' . $table_name . "GO\n");
break;
case 'oracle':
$extractor->flush('TRUNCATE TABLE ' . $table_name . "\\\n");
$extractor->flush('TRUNCATE TABLE ' . $table_name . "/\n");
break;
default:
@@ -392,6 +394,7 @@ class acp_database
case 'mssql':
case 'mssql_odbc':
case 'mssqlnative':
while (($sql = $fgetd($fp, "GO\n", $read, $seek, $eof)) !== false)
{
$db->sql_query($sql);
@@ -435,7 +438,7 @@ class acp_database
{
if (in_array($matches[2], $methods))
{
$backup_files[gmdate("d-m-Y H:i:s", $matches[1])] = $file;
$backup_files[(int) $matches[1]] = $file;
}
}
}
@@ -450,7 +453,7 @@ class acp_database
{
$template->assign_block_vars('files', array(
'FILE' => $file,
'NAME' => $name,
'NAME' => $user->format_date($name, 'd-m-Y H:i:s', true),
'SUPPORTED' => true,
));
}
@@ -1509,6 +1512,10 @@ class mssql_extractor extends base_extractor
{
$this->write_data_mssql($table_name);
}
else if($db->sql_layer === 'mssqlnative')
{
$this->write_data_mssqlnative($table_name);
}
else
{
$this->write_data_odbc($table_name);
@@ -1608,7 +1615,111 @@ class mssql_extractor extends base_extractor
}
$this->flush($sql_data);
}
function write_data_mssqlnative($table_name)
{
global $db;
$ary_type = $ary_name = array();
$ident_set = false;
$sql_data = '';
// Grab all of the data from current table.
$sql = "SELECT * FROM $table_name";
$db->mssqlnative_set_query_options(array('Scrollable' => SQLSRV_CURSOR_STATIC));
$result = $db->sql_query($sql);
$retrieved_data = $db->mssqlnative_num_rows($result);
if (!$retrieved_data)
{
$db->sql_freeresult($result);
return;
}
$sql = "SELECT * FROM $table_name";
$result_fields = $db->sql_query_limit($sql, 1);
$row = new result_mssqlnative($result_fields);
$i_num_fields = $row->num_fields();
for ($i = 0; $i < $i_num_fields; $i++)
{
$ary_type[$i] = $row->field_type($i);
$ary_name[$i] = $row->field_name($i);
}
$db->sql_freeresult($result_fields);
$sql = "SELECT 1 as has_identity
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMNPROPERTY(object_id('$table_name'), COLUMN_NAME, 'IsIdentity') = 1";
$result2 = $db->sql_query($sql);
$row2 = $db->sql_fetchrow($result2);
if (!empty($row2['has_identity']))
{
$sql_data .= "\nSET IDENTITY_INSERT $table_name ON\nGO\n";
$ident_set = true;
}
$db->sql_freeresult($result2);
while ($row = $db->sql_fetchrow($result))
{
$schema_vals = $schema_fields = array();
// Build the SQL statement to recreate the data.
for ($i = 0; $i < $i_num_fields; $i++)
{
$str_val = $row[$ary_name[$i]];
// defaults to type number - better quote just to be safe, so check for is_int too
if (is_int($ary_type[$i]) || preg_match('#char|text|bool|varbinary#i', $ary_type[$i]))
{
$str_quote = '';
$str_empty = "''";
$str_val = sanitize_data_mssql(str_replace("'", "''", $str_val));
}
else if (preg_match('#date|timestamp#i', $ary_type[$i]))
{
if (empty($str_val))
{
$str_quote = '';
}
else
{
$str_quote = "'";
}
}
else
{
$str_quote = '';
$str_empty = 'NULL';
}
if (empty($str_val) && $str_val !== '0' && !(is_int($str_val) || is_float($str_val)))
{
$str_val = $str_empty;
}
$schema_vals[$i] = $str_quote . $str_val . $str_quote;
$schema_fields[$i] = $ary_name[$i];
}
// Take the ordered fields and their associated data and build it
// into a valid sql statement to recreate that field in the data.
$sql_data .= "INSERT INTO $table_name (" . implode(', ', $schema_fields) . ') VALUES (' . implode(', ', $schema_vals) . ");\nGO\n";
$this->flush($sql_data);
$sql_data = '';
}
$db->sql_freeresult($result);
if ($ident_set)
{
$sql_data .= "\nSET IDENTITY_INSERT $table_name OFF\nGO\n";
}
$this->flush($sql_data);
}
function write_data_odbc($table_name)
{
global $db;
@@ -1716,8 +1827,7 @@ class oracle_extractor extends base_extractor
{
global $db;
$sql_data = '-- Table: ' . $table_name . "\n";
$sql_data .= "DROP TABLE $table_name;\n";
$sql_data .= '\\' . "\n";
$sql_data .= "DROP TABLE $table_name\n/\n";
$sql_data .= "\nCREATE TABLE $table_name (\n";
$sql = "SELECT COLUMN_NAME, DATA_TYPE, DATA_PRECISION, DATA_LENGTH, NULLABLE, DATA_DEFAULT
@@ -1732,7 +1842,7 @@ class oracle_extractor extends base_extractor
if ($row['data_type'] !== 'CLOB')
{
if ($row['data_type'] !== 'VARCHAR2')
if ($row['data_type'] !== 'VARCHAR2' && $row['data_type'] !== 'CHAR')
{
$line .= '(' . $row['data_precision'] . ')';
}
@@ -1762,12 +1872,20 @@ class oracle_extractor extends base_extractor
AND A.TABLE_NAME = '{$table_name}'";
$result = $db->sql_query($sql);
$primary_key = array();
$contraint_name = '';
while ($row = $db->sql_fetchrow($result))
{
$rows[] = " CONSTRAINT {$row['constraint_name']} PRIMARY KEY ({$row['column_name']})";
$constraint_name = '"' . $row['constraint_name'] . '"';
$primary_key[] = '"' . $row['column_name'] . '"';
}
$db->sql_freeresult($result);
if (sizeof($primary_key))
{
$rows[] = " CONSTRAINT {$constraint_name} PRIMARY KEY (" . implode(', ', $primary_key) . ')';
}
$sql = "SELECT A.CONSTRAINT_NAME, A.COLUMN_NAME
FROM USER_CONS_COLUMNS A, USER_CONSTRAINTS B
WHERE A.CONSTRAINT_NAME = B.CONSTRAINT_NAME
@@ -1775,24 +1893,44 @@ class oracle_extractor extends base_extractor
AND A.TABLE_NAME = '{$table_name}'";
$result = $db->sql_query($sql);
$unique = array();
$contraint_name = '';
while ($row = $db->sql_fetchrow($result))
{
$rows[] = " CONSTRAINT {$row['constraint_name']} UNIQUE ({$row['column_name']})";
$constraint_name = '"' . $row['constraint_name'] . '"';
$unique[] = '"' . $row['column_name'] . '"';
}
$db->sql_freeresult($result);
$sql_data .= implode(",\n", $rows);
$sql_data .= "\n)\n\\";
if (sizeof($unique))
{
$rows[] = " CONSTRAINT {$constraint_name} UNIQUE (" . implode(', ', $unique) . ')';
}
$sql = "SELECT A.REFERENCED_NAME
FROM USER_DEPENDENCIES A, USER_TRIGGERS B
$sql_data .= implode(",\n", $rows);
$sql_data .= "\n)\n/\n";
$sql = "SELECT A.REFERENCED_NAME, C.*
FROM USER_DEPENDENCIES A, USER_TRIGGERS B, USER_SEQUENCES C
WHERE A.REFERENCED_TYPE = 'SEQUENCE'
AND A.NAME = B.TRIGGER_NAME
AND B. TABLE_NAME = '{$table_name}'";
AND B.TABLE_NAME = '{$table_name}'
AND C.SEQUENCE_NAME = A.REFERENCED_NAME";
$result = $db->sql_query($sql);
$type = request_var('type', '');
while ($row = $db->sql_fetchrow($result))
{
$sql_data .= "\nCREATE SEQUENCE {$row['referenced_name']}\\\n";
$sql_data .= "\nDROP SEQUENCE \"{$row['referenced_name']}\"\n/\n";
$sql_data .= "\nCREATE SEQUENCE \"{$row['referenced_name']}\"";
if ($type == 'full')
{
$sql_data .= ' START WITH ' . $row['last_number'];
}
$sql_data .= "\n/\n";
}
$db->sql_freeresult($result);
@@ -1802,7 +1940,7 @@ class oracle_extractor extends base_extractor
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$sql_data .= "\nCREATE OR REPLACE TRIGGER {$row['description']}WHEN ({$row['when_clause']})\n{$row['trigger_body']}\\";
$sql_data .= "\nCREATE OR REPLACE TRIGGER {$row['description']}WHEN ({$row['when_clause']})\n{$row['trigger_body']}\n/\n";
}
$db->sql_freeresult($result);
@@ -1822,7 +1960,7 @@ class oracle_extractor extends base_extractor
foreach ($index as $index_name => $column_names)
{
$sql_data .= "\nCREATE INDEX $index_name ON $table_name(" . implode(', ', $column_names) . ")\n\\";
$sql_data .= "\nCREATE INDEX $index_name ON $table_name(" . implode(', ', $column_names) . ")\n/\n";
}
$db->sql_freeresult($result);
$this->flush($sql_data);
@@ -1858,7 +1996,7 @@ class oracle_extractor extends base_extractor
// Oracle uses uppercase - we use lowercase
$str_val = $row[strtolower($ary_name[$i])];
if (preg_match('#char|text|bool|raw#i', $ary_type[$i]))
if (preg_match('#char|text|bool|raw|clob#i', $ary_type[$i]))
{
$str_quote = '';
$str_empty = "''";
@@ -1892,7 +2030,7 @@ class oracle_extractor extends base_extractor
// Take the ordered fields and their associated data and build it
// into a valid sql statement to recreate that field in the data.
$sql_data = "INSERT INTO $table_name (" . implode(', ', $schema_fields) . ') VALUES (' . implode(', ', $schema_vals) . ");\n";
$sql_data = "INSERT INTO $table_name (" . implode(', ', $schema_fields) . ') VALUES (' . implode(', ', $schema_vals) . ")\n/\n";
$this->flush($sql_data);
}
@@ -2211,8 +2349,10 @@ function sanitize_data_mssql($text)
function sanitize_data_oracle($text)
{
$data = preg_split('/[\0\n\t\r\b\f\'"\\\]/', $text);
preg_match_all('/[\0\n\t\r\b\f\'"\\\]/', $text, $matches);
// $data = preg_split('/[\0\n\t\r\b\f\'"\/\\\]/', $text);
// preg_match_all('/[\0\n\t\r\b\f\'"\/\\\]/', $text, $matches);
$data = preg_split('/[\0\b\f\'\/]/', $text);
preg_match_all('/[\0\r\b\f\'\/]/', $text, $matches);
$val = array();

View File

@@ -75,13 +75,6 @@ class acp_forums
trigger_error($user->lang['NO_PERMISSION_FORUM_ADD'] . adm_back_link($this->u_action . '&amp;parent_id=' . $this->parent_id), E_USER_WARNING);
}
case 'copy_perm':
if (!(($auth->acl_get('a_fauth') && $auth->acl_get('a_authusers') && $auth->acl_get('a_authgroups') && $auth->acl_get('a_mauth'))))
{
trigger_error($user->lang['NO_PERMISSION_COPY'] . adm_back_link($this->u_action . '&amp;parent_id=' . $this->parent_id), E_USER_WARNING);
}
break;
}
@@ -125,7 +118,6 @@ class acp_forums
'type_action' => request_var('type_action', ''),
'forum_status' => request_var('forum_status', ITEM_UNLOCKED),
'forum_parents' => '',
'forum_options' => 0,
'forum_name' => utf8_normalize_nfc(request_var('forum_name', '', true)),
'forum_link' => request_var('forum_link', ''),
'forum_link_track' => request_var('forum_link_track', false),
@@ -159,6 +151,12 @@ class acp_forums
'forum_password_unset' => request_var('forum_password_unset', false),
);
// On add, add empty forum_options... else do not consider it (not updating it)
if ($action == 'add')
{
$forum_data['forum_options'] = 0;
}
// Use link_display_on_index setting if forum type is link
if ($forum_data['forum_type'] == FORUM_LINK)
{
@@ -171,7 +169,7 @@ class acp_forums
$forum_data['forum_status'] = ITEM_UNLOCKED;
}
$forum_data['show_active'] = ($forum_data['forum_type'] == FORUM_POST) ? request_var('display_recent', false) : request_var('display_active', false);
$forum_data['show_active'] = ($forum_data['forum_type'] == FORUM_POST) ? request_var('display_recent', true) : request_var('display_active', false);
// Get data for forum rules if specified...
if ($forum_data['forum_rules'])
@@ -192,19 +190,22 @@ class acp_forums
$forum_perm_from = request_var('forum_perm_from', 0);
$cache->destroy('sql', FORUMS_TABLE);
$copied_permissions = false;
// Copy permissions?
if (!empty($forum_perm_from) && $forum_perm_from != $forum_data['forum_id'] &&
(($action != 'edit') || empty($forum_id) || ($auth->acl_get('a_fauth') && $auth->acl_get('a_authusers') && $auth->acl_get('a_authgroups') && $auth->acl_get('a_mauth'))))
if ($forum_perm_from && $forum_perm_from != $forum_data['forum_id'] &&
($action != 'edit' || empty($forum_id) || ($auth->acl_get('a_fauth') && $auth->acl_get('a_authusers') && $auth->acl_get('a_authgroups') && $auth->acl_get('a_mauth'))))
{
copy_forum_permissions($forum_perm_from, $forum_data['forum_id'], ($action == 'edit') ? true : false);
cache_moderators();
$copied_permissions = true;
}
else if (($action != 'edit') && $auth->acl_get('a_fauth') && $auth->acl_get('a_authusers') && $auth->acl_get('a_authgroups') && $auth->acl_get('a_mauth'))
/* Commented out because of questionable UI workflow - re-visit for 3.0.7
else if (!$this->parent_id && $action != 'edit' && $auth->acl_get('a_fauth') && $auth->acl_get('a_authusers') && $auth->acl_get('a_authgroups') && $auth->acl_get('a_mauth'))
{
$this->copy_permission_page($forum_data);
return;
}
*/
$auth->acl_clear_prefetch();
$acl_url = '&amp;mode=setting_forum_local&amp;forum_id[]=' . $forum_data['forum_id'];
@@ -212,13 +213,13 @@ class acp_forums
$message = ($action == 'add') ? $user->lang['FORUM_CREATED'] : $user->lang['FORUM_UPDATED'];
// Redirect to permissions
if ($auth->acl_get('a_fauth'))
if ($auth->acl_get('a_fauth') && !$copied_permissions)
{
$message .= '<br /><br />' . sprintf($user->lang['REDIRECT_ACL'], '<a href="' . append_sid("{$phpbb_admin_path}index.$phpEx", 'i=permissions' . $acl_url) . '">', '</a>');
}
// redirect directly to permission settings screen if authed
if ($action == 'add' && !$forum_perm_from && $auth->acl_get('a_fauth'))
if ($action == 'add' && !$copied_permissions && $auth->acl_get('a_fauth'))
{
meta_refresh(4, append_sid("{$phpbb_admin_path}index.$phpEx", 'i=permissions' . $acl_url));
}
@@ -443,7 +444,7 @@ class acp_forums
'prune_days' => 7,
'prune_viewed' => 7,
'prune_freq' => 1,
'forum_flags' => FORUM_FLAG_POST_REVIEW,
'forum_flags' => FORUM_FLAG_POST_REVIEW + FORUM_FLAG_ACTIVE_TOPICS,
'forum_options' => 0,
'forum_password' => '',
'forum_password_confirm'=> '',
@@ -640,7 +641,8 @@ class acp_forums
'S_PRUNE_OLD_POLLS' => ($forum_data['forum_flags'] & FORUM_FLAG_PRUNE_POLL) ? true : false,
'S_PRUNE_ANNOUNCE' => ($forum_data['forum_flags'] & FORUM_FLAG_PRUNE_ANNOUNCE) ? true : false,
'S_PRUNE_STICKY' => ($forum_data['forum_flags'] & FORUM_FLAG_PRUNE_STICKY) ? true : false,
'S_DISPLAY_ACTIVE_TOPICS' => ($forum_data['forum_flags'] & FORUM_FLAG_ACTIVE_TOPICS) ? true : false,
'S_DISPLAY_ACTIVE_TOPICS' => ($forum_data['forum_type'] == FORUM_POST) ? ($forum_data['forum_flags'] & FORUM_FLAG_ACTIVE_TOPICS) : true,
'S_ENABLE_ACTIVE_TOPICS' => ($forum_data['forum_type'] == FORUM_CAT) ? ($forum_data['forum_flags'] & FORUM_FLAG_ACTIVE_TOPICS) : false,
'S_ENABLE_POST_REVIEW' => ($forum_data['forum_flags'] & FORUM_FLAG_POST_REVIEW) ? true : false,
'S_ENABLE_QUICK_REPLY' => ($forum_data['forum_flags'] & FORUM_FLAG_QUICK_REPLY) ? true : false,
'S_CAN_COPY_PERMISSIONS' => ($action != 'edit' || empty($forum_id) || ($auth->acl_get('a_fauth') && $auth->acl_get('a_authusers') && $auth->acl_get('a_authgroups') && $auth->acl_get('a_mauth'))) ? true : false,
@@ -907,7 +909,7 @@ class acp_forums
array('lang' => 'FORUM_TOPICS_PAGE', 'value' => $forum_data['forum_topics_per_page'], 'column_type' => 'TINT:0'),
);
if (!file_exists($phpbb_root_path . $forum_data['forum_image']))
if (!empty($forum_data['forum_image']) && !file_exists($phpbb_root_path . $forum_data['forum_image']))
{
$errors[] = $user->lang['FORUM_IMAGE_NO_EXIST'];
}
@@ -981,7 +983,7 @@ class acp_forums
if (!$row)
{
trigger_error($user->lang['PARENT_NOT_EXIST'] . adm_back_link($this->u_action . '&amp;' . $this->parent_id), E_USER_WARNING);
trigger_error($user->lang['PARENT_NOT_EXIST'] . adm_back_link($this->u_action . '&amp;parent_id=' . $this->parent_id), E_USER_WARNING);
}
if ($row['forum_type'] == FORUM_LINK)
@@ -1640,6 +1642,9 @@ class acp_forums
delete_attachments('topic', $topic_ids, false);
// Delete shadow topics pointing to topics in this forum
delete_topic_shadows($forum_id);
// Before we remove anything we make sure we are able to adjust the post counts later. ;)
$sql = 'SELECT poster_id
FROM ' . POSTS_TABLE . '
@@ -1706,6 +1711,9 @@ class acp_forums
)
);
// Amount of rows we select and delete in one iteration.
$batch_size = 500;
foreach ($tables_ary as $field => $tables)
{
$start = 0;
@@ -1715,7 +1723,7 @@ class acp_forums
$sql = "SELECT $field
FROM " . POSTS_TABLE . '
WHERE forum_id = ' . $forum_id;
$result = $db->sql_query_limit($sql, 500, $start);
$result = $db->sql_query_limit($sql, $batch_size, $start);
$ids = array();
while ($row = $db->sql_fetchrow($result))
@@ -1734,7 +1742,7 @@ class acp_forums
}
}
}
while ($row);
while (sizeof($ids) == $batch_size);
}
unset($ids);
@@ -1919,6 +1927,7 @@ class acp_forums
/**
* Display copy permission page
* Not used at the moment - we will have a look at it for 3.0.7
*/
function copy_permission_page($forum_data)
{

View File

@@ -49,7 +49,7 @@ class acp_groups
// Clear some vars
$can_upload = (file_exists($phpbb_root_path . $config['avatar_path']) && @is_writable($phpbb_root_path . $config['avatar_path']) && $file_uploads) ? true : false;
$can_upload = (file_exists($phpbb_root_path . $config['avatar_path']) && phpbb_is_writable($phpbb_root_path . $config['avatar_path']) && $file_uploads) ? true : false;
$group_row = array();
// Grab basic data for group, if group_id is set and exists
@@ -394,6 +394,15 @@ 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))))
{
// Replace "error" string with its real, localised form
$error = array_merge($error, array_map(array(&$user, 'lang'), $max_recipients_error));
}
if (!sizeof($error))
{
// Only set the rank, colour, etc. if it's changed or if we're adding a new

View File

@@ -89,16 +89,19 @@ class acp_icons
continue;
}
// adjust the width and height to be lower than 128px while perserving the aspect ratio
if ($img_size[0] > 127 && $img_size[0] > $img_size[1])
// adjust the width and height to be lower than 128px while perserving the aspect ratio (for icons)
if ($mode == 'icons')
{
$img_size[1] = (int) ($img_size[1] * (127 / $img_size[0]));
$img_size[0] = 127;
}
else if ($img_size[1] > 127)
{
$img_size[0] = (int) ($img_size[0] * (127 / $img_size[1]));
$img_size[1] = 127;
if ($img_size[0] > 127 && $img_size[0] > $img_size[1])
{
$img_size[1] = (int) ($img_size[1] * (127 / $img_size[0]));
$img_size[0] = 127;
}
else if ($img_size[1] > 127)
{
$img_size[0] = (int) ($img_size[0] * (127 / $img_size[1]));
$img_size[1] = 127;
}
}
$_images[$path . $img]['file'] = $path . $img;
@@ -363,7 +366,7 @@ class acp_icons
if ($mode == 'smilies' && $action == 'create')
{
$smiley_count = $this->item_count($table);
$addable_smileys_count = sizeof($images);
foreach ($images as $image)
{
@@ -372,7 +375,7 @@ class acp_icons
--$addable_smileys_count;
}
}
if ($smiley_count + $addable_smileys_count > SMILEY_LIMIT)
{
trigger_error(sprintf($user->lang['TOO_MANY_SMILIES'], SMILEY_LIMIT) . adm_back_link($this->u_action), E_USER_WARNING);
@@ -400,15 +403,19 @@ class acp_icons
$image_height[$image] = $img_size[1];
}
if ($image_width[$image] > 127 && $image_width[$image] > $image_height[$image])
// Adjust image width/height for icons
if ($mode == 'icons')
{
$image_height[$image] = (int) ($image_height[$image] * (127 / $image_width[$image]));
$image_width[$image] = 127;
}
else if ($image_height[$image] > 127)
{
$image_width[$image] = (int) ($image_width[$image] * (127 / $image_height[$image]));
$image_height[$image] = 127;
if ($image_width[$image] > 127 && $image_width[$image] > $image_height[$image])
{
$image_height[$image] = (int) ($image_height[$image] * (127 / $image_width[$image]));
$image_width[$image] = 127;
}
else if ($image_height[$image] > 127)
{
$image_width[$image] = (int) ($image_width[$image] * (127 / $image_height[$image]));
$image_height[$image] = 127;
}
}
$img_sql = array(
@@ -923,7 +930,7 @@ class acp_icons
generate_pagination($this->u_action, $item_count, $config['smilies_per_page'], $pagination_start, true)
);
}
/**
* Returns the count of smilies or icons in the database
*
@@ -934,11 +941,12 @@ class acp_icons
{
global $db;
$sql = "SELECT COUNT(*) AS count
$sql = "SELECT COUNT(*) AS item_count
FROM $table";
$result = $db->sql_query($sql);
$item_count = (int) $db->sql_fetchfield('count');
$item_count = (int) $db->sql_fetchfield('item_count');
$db->sql_freeresult($result);
return $item_count;
}
}

View File

@@ -90,22 +90,19 @@ class acp_inactive
if ($action == 'activate')
{
if ($config['require_activation'] == USER_ACTIVATION_ADMIN)
{
// Get those 'being activated'...
$sql = 'SELECT user_id, username, user_email, user_lang
FROM ' . USERS_TABLE . '
WHERE ' . $db->sql_in_set('user_id', $mark) . '
AND user_type = ' . USER_INACTIVE;
$result = $db->sql_query($sql);
// Get those 'being activated'...
$sql = 'SELECT user_id, username' . (($config['require_activation'] == USER_ACTIVATION_ADMIN) ? ', user_email, user_lang' : '') . '
FROM ' . USERS_TABLE . '
WHERE ' . $db->sql_in_set('user_id', $mark) . '
AND user_type = ' . USER_INACTIVE;
$result = $db->sql_query($sql);
$inactive_users = array();
while ($row = $db->sql_fetchrow($result))
{
$inactive_users[] = $row;
}
$db->sql_freeresult($result);
$inactive_users = array();
while ($row = $db->sql_fetchrow($result))
{
$inactive_users[] = $row;
}
$db->sql_freeresult($result);
user_active_flip('activate', $mark);
@@ -136,6 +133,15 @@ class acp_inactive
$messenger->save_queue();
}
if (!empty($inactive_users))
{
foreach ($inactive_users as $row)
{
add_log('admin', 'LOG_USER_ACTIVE', $row['username']);
add_log('user', $row['user_id'], 'LOG_USER_ACTIVE_USER');
}
}
// For activate we really need to redirect, else a refresh can result in users being deactivated again
$u_action = $this->u_action . "&amp;$u_sort_param&amp;start=$start";
$u_action .= ($per_page != $config['topics_per_page']) ? "&amp;users_per_page=$per_page" : '';

View File

@@ -44,13 +44,13 @@ class acp_jabber
$this->tpl_name = 'acp_jabber';
$this->page_title = 'ACP_JABBER_SETTINGS';
$jab_enable = request_var('jab_enable', $config['jab_enable']);
$jab_host = request_var('jab_host', $config['jab_host']);
$jab_port = request_var('jab_port', $config['jab_port']);
$jab_username = request_var('jab_username', $config['jab_username']);
$jab_password = request_var('jab_password', $config['jab_password']);
$jab_package_size = request_var('jab_package_size', $config['jab_package_size']);
$jab_use_ssl = request_var('jab_use_ssl', $config['jab_use_ssl']);
$jab_enable = request_var('jab_enable', (bool) $config['jab_enable']);
$jab_host = request_var('jab_host', (string) $config['jab_host']);
$jab_port = request_var('jab_port', (int) $config['jab_port']);
$jab_username = request_var('jab_username', (string) $config['jab_username']);
$jab_password = request_var('jab_password', (string) $config['jab_password']);
$jab_package_size = request_var('jab_package_size', (int) $config['jab_package_size']);
$jab_use_ssl = request_var('jab_use_ssl', (bool) $config['jab_use_ssl']);
$form_name = 'acp_jabber';
add_form_key($form_name);
@@ -117,7 +117,7 @@ class acp_jabber
'JAB_ENABLE' => $jab_enable,
'L_JAB_SERVER_EXPLAIN' => sprintf($user->lang['JAB_SERVER_EXPLAIN'], '<a href="http://www.jabber.org/">', '</a>'),
'JAB_HOST' => $jab_host,
'JAB_PORT' => $jab_port,
'JAB_PORT' => ($jab_port) ? $jab_port : '',
'JAB_USERNAME' => $jab_username,
'JAB_PASSWORD' => $jab_password,
'JAB_PACKAGE_SIZE' => $jab_package_size,

View File

@@ -1120,7 +1120,12 @@ class acp_language
{
while (($file = readdir($dp)) !== false)
{
if ($file[0] != '.' && file_exists("{$phpbb_root_path}language/$file/iso.txt"))
if ($file[0] == '.' || !is_dir($phpbb_root_path . 'language/' . $file))
{
continue;
}
if (file_exists("{$phpbb_root_path}language/$file/iso.txt"))
{
if (!in_array($file, $installed))
{

View File

@@ -398,6 +398,14 @@ class acp_main
// Version check
$user->add_lang('install');
if ($auth->acl_get('a_server') && version_compare(PHP_VERSION, '5.2.0', '<'))
{
$template->assign_vars(array(
'S_PHP_VERSION_OLD' => true,
'L_PHP_VERSION_OLD' => sprintf($user->lang['PHP_VERSION_OLD'], '<a href="http://www.phpbb.com/community/viewtopic.php?f=14&amp;t=1958605">', '</a>'),
));
}
$latest_version_info = false;
if (($latest_version_info = obtain_latest_version_info(request_var('versioncheck_force', false))) === false)
{

View File

@@ -35,9 +35,9 @@ class acp_php_info
$this->tpl_name = 'acp_php_info';
$this->page_title = 'ACP_PHP_INFO';
ob_start();
@phpinfo(INFO_GENERAL | INFO_CONFIGURATION | INFO_MODULES | INFO_VARIABLES);
phpinfo(INFO_GENERAL | INFO_CONFIGURATION | INFO_MODULES | INFO_VARIABLES);
$phpinfo = ob_get_clean();
$phpinfo = trim($phpinfo);

View File

@@ -509,6 +509,14 @@ class acp_profile
// Get the number of options if this key is 'field_maxlen'
$var = request_var('field_default_value', 0);
}*/
else if ($field_type == FIELD_INT && $key == 'field_default_value')
{
// Permit an empty string
if (request_var('field_default_value', '') === '')
{
$var = '';
}
}
$cp->vars[$key] = $var;
}
@@ -1472,6 +1480,7 @@ class acp_profile
case 'mssql':
case 'mssql_odbc':
case 'mssqlnative':
// We are defining the biggest common value, because of the possibility to edit the min/max values of each field.
$sql = 'ALTER TABLE [' . PROFILE_FIELDS_DATA_TABLE . "] ADD [$field_ident] ";

View File

@@ -315,8 +315,8 @@ class acp_prune
'mode' => $mode,
'prune' => 1,
'users' => request_var('users', '', true),
'username' => request_var('username', '', true),
'users' => utf8_normalize_nfc(request_var('users', '', true)),
'username' => utf8_normalize_nfc(request_var('username', '', true)),
'email' => request_var('email', ''),
'joined_select' => request_var('joined_select', ''),
'joined' => request_var('joined', ''),
@@ -369,7 +369,7 @@ class acp_prune
{
global $user, $db;
$users = request_var('users', '', true);
$users = utf8_normalize_nfc(request_var('users', '', true));
if ($users)
{
@@ -378,7 +378,7 @@ class acp_prune
}
else
{
$username = request_var('username', '', true);
$username = utf8_normalize_nfc(request_var('username', '', true));
$email = request_var('email', '');
$joined_select = request_var('joined_select', 'lt');

View File

@@ -233,6 +233,7 @@ class acp_reasons
// Standard? What's that?
case 'mssql':
case 'mssql_odbc':
case 'mssqlnative':
// Change the reports using this reason to 'other'
$sql = "DECLARE @ptrval binary(16)

View File

@@ -643,8 +643,13 @@ parse_css_file = {PARSE_CSS_FILE}
{
while (($file = readdir($dp)) !== false)
{
if ($file[0] == '.' || !is_dir($phpbb_root_path . 'styles/' . $file))
{
continue;
}
$subpath = ($mode != 'style') ? "$mode/" : '';
if ($file[0] != '.' && file_exists("{$phpbb_root_path}styles/$file/$subpath$mode.cfg"))
if (file_exists("{$phpbb_root_path}styles/$file/$subpath$mode.cfg"))
{
if ($cfg = file("{$phpbb_root_path}styles/$file/$subpath$mode.cfg"))
{
@@ -743,7 +748,7 @@ parse_css_file = {PARSE_CSS_FILE}
$additional = '';
// If the template is stored on the filesystem try to write the file else store it in the database
if (!$safe_mode && !$template_info['template_storedb'] && file_exists($file) && @is_writable($file))
if (!$safe_mode && !$template_info['template_storedb'] && file_exists($file) && phpbb_is_writable($file))
{
if (!($fp = @fopen($file, 'wb')))
{
@@ -1150,7 +1155,7 @@ parse_css_file = {PARSE_CSS_FILE}
$message = $user->lang['THEME_UPDATED'];
// If the theme is stored on the filesystem try to write the file else store it in the database
if (!$safe_mode && !$theme_info['theme_storedb'] && file_exists($file) && @is_writable($file))
if (!$safe_mode && !$theme_info['theme_storedb'] && file_exists($file) && phpbb_is_writable($file))
{
if (!($fp = @fopen($file, 'wb')))
{
@@ -2035,23 +2040,18 @@ parse_css_file = {PARSE_CSS_FILE}
{
case 'tar':
$ext = '.tar';
$mimetype = 'x-tar';
$compress = 'compress_tar';
break;
case 'zip':
$ext = '.zip';
$mimetype = 'zip';
break;
case 'tar.gz':
$ext = '.tar.gz';
$mimetype = 'x-gzip';
break;
case 'tar.bz2':
$ext = '.tar.bz2';
$mimetype = 'x-bzip2';
break;
default:
@@ -2241,7 +2241,7 @@ parse_css_file = {PARSE_CSS_FILE}
{
// a rather elaborate check we have to do here once to avoid trouble later
$check = "{$phpbb_root_path}styles/" . $style_row["{$mode}_path"] . (($mode === 'theme') ? '/theme/stylesheet.css' : '/template');
if (($style_row["{$mode}_storedb"] != $store_db) && !$store_db && ($safe_mode || !@is_writable($check)))
if (($style_row["{$mode}_storedb"] != $store_db) && !$store_db && ($safe_mode || !phpbb_is_writable($check)))
{
$error[] = $user->lang['EDIT_' . strtoupper($mode) . '_STORED_DB'];
$store_db = 1;
@@ -2321,7 +2321,7 @@ parse_css_file = {PARSE_CSS_FILE}
{
$theme_data = $this->db_theme_data($style_row);
}
else if (!$store_db && !$safe_mode && @is_writable("{$phpbb_root_path}styles/{$style_row['theme_path']}/theme/stylesheet.css"))
else if (!$store_db && !$safe_mode && phpbb_is_writable("{$phpbb_root_path}styles/{$style_row['theme_path']}/theme/stylesheet.css"))
{
$store_db = 1;
$theme_data = $style_row['theme_data'];
@@ -2352,7 +2352,7 @@ parse_css_file = {PARSE_CSS_FILE}
}
else
{
if (!$store_db && !$safe_mode && @is_writable("{$phpbb_root_path}styles/{$style_row['template_path']}/template"))
if (!$store_db && !$safe_mode && phpbb_is_writable("{$phpbb_root_path}styles/{$style_row['template_path']}/template"))
{
$err = $this->store_in_fs('template', $style_row['template_id']);
if ($err)
@@ -2526,13 +2526,21 @@ parse_css_file = {PARSE_CSS_FILE}
// Match CSS imports
$matches = array();
preg_match_all('/@import url\(["\'](.*)["\']\);/i', $stylesheet, $matches);
preg_match_all('/@import url\((["\'])(.*)\1\);/i', $stylesheet, $matches);
// remove commented stylesheets (very simple parser, allows only whitespace
// around an @import statement)
preg_match_all('#/\*\s*@import url\((["\'])(.*)\1\);\s\*/#i', $stylesheet, $commented);
$matches[2] = array_diff($matches[2], $commented[2]);
if (sizeof($matches))
{
foreach ($matches[0] as $idx => $match)
{
$stylesheet = str_replace($match, acp_styles::load_css_file($theme_row['theme_path'], $matches[1][$idx]), $stylesheet);
if (isset($matches[2][$idx]))
{
$stylesheet = str_replace($match, acp_styles::load_css_file($theme_row['theme_path'], $matches[2][$idx]), $stylesheet);
}
}
}
@@ -3723,7 +3731,7 @@ parse_css_file = {PARSE_CSS_FILE}
$store_db = 0;
$error = array();
if (!$safe_mode && @is_writable("{$phpbb_root_path}styles/{$path}/template"))
if (!$safe_mode && phpbb_is_writable("{$phpbb_root_path}styles/{$path}/template"))
{
$sql = 'SELECT *
FROM ' . STYLES_TEMPLATE_DATA_TABLE . "

View File

@@ -39,12 +39,26 @@ class acp_update
$info = obtain_latest_version_info(request_var('versioncheck_force', false), true);
if ($info === false)
{
trigger_error('VERSIONCHECK_FAIL', E_USER_WARNING);
}
$info = explode("\n", $info);
$latest_version = trim($info[0]);
$announcement_url = trim($info[1]);
$announcement_url = (strpos($announcement_url, '&amp;') === false) ? str_replace('&', '&amp;', $announcement_url) : $announcement_url;
$update_link = append_sid($phpbb_root_path . 'install/index.' . $phpEx, 'mode=update');
// next feature release
$next_feature_version = $next_feature_announcement_url = false;
if (isset($info[2]) && trim($info[2]) !== '')
{
$next_feature_version = trim($info[2]);
$next_feature_announcement_url = trim($info[3]);
}
// Determine automatic update...
$sql = 'SELECT config_value
FROM ' . CONFIG_TABLE . "
@@ -68,8 +82,10 @@ class acp_update
'LATEST_VERSION' => $latest_version,
'CURRENT_VERSION' => $config['version'],
'AUTO_VERSION' => $version_update_from,
'NEXT_FEATURE_VERSION' => $next_feature_version,
'UPDATE_INSTRUCTIONS' => sprintf($user->lang['UPDATE_INSTRUCTIONS'], $announcement_url, $update_link),
'UPGRADE_INSTRUCTIONS' => $next_feature_version ? $user->lang('UPGRADE_INSTRUCTIONS', $next_feature_version, $next_feature_announcement_url) : false,
));
}
}

View File

@@ -105,7 +105,7 @@ class acp_users
LEFT JOIN ' . SESSIONS_TABLE . ' s ON (s.session_user_id = u.user_id)
WHERE u.user_id = ' . $user_id . '
ORDER BY s.session_time DESC';
$result = $db->sql_query($sql);
$result = $db->sql_query_limit($sql, 1);
$user_row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
@@ -191,24 +191,31 @@ class acp_users
trigger_error($user->lang['CANNOT_REMOVE_YOURSELF'] . adm_back_link($this->u_action . '&amp;u=' . $user_id), E_USER_WARNING);
}
if (confirm_box(true))
if ($delete_type)
{
user_delete($delete_type, $user_id, $user_row['username']);
if (confirm_box(true))
{
user_delete($delete_type, $user_id, $user_row['username']);
add_log('admin', 'LOG_USER_DELETED', $user_row['username']);
trigger_error($user->lang['USER_DELETED'] . adm_back_link($this->u_action));
add_log('admin', 'LOG_USER_DELETED', $user_row['username']);
trigger_error($user->lang['USER_DELETED'] . adm_back_link($this->u_action));
}
else
{
confirm_box(false, $user->lang['CONFIRM_OPERATION'], build_hidden_fields(array(
'u' => $user_id,
'i' => $id,
'mode' => $mode,
'action' => $action,
'update' => true,
'delete' => 1,
'delete_type' => $delete_type))
);
}
}
else
{
confirm_box(false, $user->lang['CONFIRM_OPERATION'], build_hidden_fields(array(
'u' => $user_id,
'i' => $id,
'mode' => $mode,
'action' => $action,
'update' => true,
'delete' => 1,
'delete_type' => $delete_type))
);
trigger_error($user->lang['NO_MODE'] . adm_back_link($this->u_action . '&amp;u=' . $user_id), E_USER_WARNING);
}
}
@@ -224,6 +231,11 @@ class acp_users
trigger_error($user->lang['CANNOT_BAN_YOURSELF'] . adm_back_link($this->u_action . '&amp;u=' . $user_id), E_USER_WARNING);
}
if ($user_id == ANONYMOUS)
{
trigger_error($user->lang['CANNOT_BAN_ANONYMOUS'] . adm_back_link($this->u_action . '&amp;u=' . $user_id), E_USER_WARNING);
}
if ($user_row['user_type'] == USER_FOUNDER)
{
trigger_error($user->lang['CANNOT_BAN_FOUNDER'] . adm_back_link($this->u_action . '&amp;u=' . $user_id), E_USER_WARNING);
@@ -307,10 +319,7 @@ class acp_users
$server_url = generate_board_url();
$user_actkey = gen_rand_string(10);
$key_len = 54 - (strlen($server_url));
$key_len = ($key_len > 6) ? $key_len : 6;
$user_actkey = substr($user_actkey, 0, $key_len);
$user_actkey = gen_rand_string(mt_rand(6, 10));
$email_template = ($user_row['user_type'] == USER_NORMAL) ? 'user_reactivate_account' : 'user_resend_inactive';
if ($user_row['user_type'] == USER_NORMAL)
@@ -1023,7 +1032,7 @@ class acp_users
'U_WHOIS' => $this->u_action . "&amp;action=whois&amp;user_ip={$user_row['user_ip']}",
'U_MCP_QUEUE' => ($auth->acl_getf_global('m_approve')) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=queue', true, $user->session_id) : '',
'U_SWITCH_PERMISSIONS' => ($auth->acl_get('a_switchperm') && $user->data['user_id'] != $user_row['user_id']) ? append_sid("{$phpbb_root_path}ucp.$phpEx", "mode=switch_perm&amp;u={$user_row['user_id']}") : '',
'U_SWITCH_PERMISSIONS' => ($auth->acl_get('a_switchperm') && $user->data['user_id'] != $user_row['user_id']) ? append_sid("{$phpbb_root_path}ucp.$phpEx", "mode=switch_perm&amp;u={$user_row['user_id']}&amp;hash=" . generate_link_hash('switchperm')) : '',
'POSTS_IN_QUEUE' => $user_row['posts_in_queue'],
'USER' => $user_row['username'],
@@ -1167,13 +1176,7 @@ class acp_users
$deleteall = request_var('delall', 0);
if ($deletemark && $marked)
{
$sql_in = array();
foreach ($marked as $mark)
{
$sql_in[] = $mark;
}
$where_sql = ' AND ' . $db->sql_in_set('warning_id', $sql_in);
unset($sql_in);
$where_sql = ' AND ' . $db->sql_in_set('warning_id', array_values($marked));
}
if ($where_sql || $deleteall)
@@ -1291,7 +1294,6 @@ class acp_users
$template->assign_vars(array(
'S_WARNINGS' => true,
'S_CLEARLOGS' => $auth->acl_get('a_clearlogs'),
));
break;
@@ -1423,7 +1425,7 @@ class acp_users
$now = getdate();
$s_birthday_year_options = '<option value="0"' . ((!$data['bday_year']) ? ' selected="selected"' : '') . '>--</option>';
for ($i = $now['year'] - 100; $i < $now['year']; $i++)
for ($i = $now['year'] - 100; $i <= $now['year']; $i++)
{
$selected = ($i == $data['bday_year']) ? ' selected="selected"' : '';
$s_birthday_year_options .= "<option value=\"$i\"$selected>$i</option>";
@@ -1557,6 +1559,31 @@ class acp_users
WHERE user_id = $user_id";
$db->sql_query($sql);
// Check if user has an active session
if ($user_row['session_id'])
{
// We'll update the session if user_allow_viewonline has changed and the user is a bot
// Or if it's a regular user and the admin set it to hide the session
if ($user_row['user_allow_viewonline'] != $sql_ary['user_allow_viewonline'] && $user_row['user_type'] == USER_IGNORE
|| $user_row['user_allow_viewonline'] && !$sql_ary['user_allow_viewonline'])
{
// We also need to check if the user has the permission to cloak.
$user_auth = new auth();
$user_auth->acl($user_row);
$session_sql_ary = array(
'session_viewonline' => ($user_auth->acl_get('u_hideonline')) ? $sql_ary['user_allow_viewonline'] : true,
);
$sql = 'UPDATE ' . SESSIONS_TABLE . '
SET ' . $db->sql_build_array('UPDATE', $session_sql_ary) . "
WHERE session_user_id = $user_id";
$db->sql_query($sql);
unset($user_auth);
}
}
trigger_error($user->lang['USER_PREFS_UPDATED'] . adm_back_link($this->u_action . '&amp;u=' . $user_id));
}
@@ -1671,7 +1698,7 @@ class acp_users
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
include($phpbb_root_path . 'includes/functions_user.' . $phpEx);
$can_upload = (file_exists($phpbb_root_path . $config['avatar_path']) && @is_writable($phpbb_root_path . $config['avatar_path']) && $file_uploads) ? true : false;
$can_upload = (file_exists($phpbb_root_path . $config['avatar_path']) && phpbb_is_writable($phpbb_root_path . $config['avatar_path']) && $file_uploads) ? true : false;
if ($submit)
{
@@ -1681,7 +1708,7 @@ class acp_users
trigger_error($user->lang['FORM_INVALID'] . adm_back_link($this->u_action . '&amp;u=' . $user_id), E_USER_WARNING);
}
if (avatar_process_user($error, $user_row))
if (avatar_process_user($error, $user_row, $can_upload))
{
trigger_error($user->lang['USER_AVATAR_UPDATED'] . adm_back_link($this->u_action . '&amp;u=' . $user_row['user_id']));
}
@@ -1715,6 +1742,7 @@ class acp_users
$template->assign_vars(array(
'S_AVATAR' => true,
'S_CAN_UPLOAD' => $can_upload,
'S_UPLOAD_FILE' => ($config['allow_avatar'] && $can_upload && $config['allow_avatar_upload']) ? true : false,
'S_REMOTE_UPLOAD' => ($config['allow_avatar'] && $can_upload && $config['allow_avatar_remote_upload']) ? true : false,
'S_ALLOW_REMOTE' => ($config['allow_avatar'] && $config['allow_avatar_remote']) ? true : false,
@@ -2090,7 +2118,7 @@ class acp_users
LEFT JOIN ' . SESSIONS_TABLE . ' s ON (s.session_user_id = u.user_id)
WHERE u.user_id = ' . $user_id . '
ORDER BY s.session_time DESC';
$result = $db->sql_query($sql);
$result = $db->sql_query_limit($sql, 1);
$user_row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
}

View File

@@ -24,7 +24,7 @@ class acp_board_info
'features' => array('title' => 'ACP_BOARD_FEATURES', 'auth' => 'acl_a_board', 'cat' => array('ACP_BOARD_CONFIGURATION')),
'avatar' => array('title' => 'ACP_AVATAR_SETTINGS', 'auth' => 'acl_a_board', 'cat' => array('ACP_BOARD_CONFIGURATION')),
'message' => array('title' => 'ACP_MESSAGE_SETTINGS', 'auth' => 'acl_a_board', 'cat' => array('ACP_BOARD_CONFIGURATION', 'ACP_MESSAGES')),
'post' => array('title' => 'ACP_POST_SETTINGS', 'auth' => 'acl_a_board', 'cat' => array('ACP_BOARD_CONFIGURATION')),
'post' => array('title' => 'ACP_POST_SETTINGS', 'auth' => 'acl_a_board', 'cat' => array('ACP_BOARD_CONFIGURATION', 'ACP_MESSAGES')),
'signature' => array('title' => 'ACP_SIGNATURE_SETTINGS', 'auth' => 'acl_a_board', 'cat' => array('ACP_BOARD_CONFIGURATION')),
'feed' => array('title' => 'ACP_FEED_SETTINGS', 'auth' => 'acl_a_board', 'cat' => array('ACP_BOARD_CONFIGURATION')),
'registration' => array('title' => 'ACP_REGISTER_SETTINGS', 'auth' => 'acl_a_board', 'cat' => array('ACP_BOARD_CONFIGURATION')),

View File

@@ -62,15 +62,23 @@ function login_db(&$username, &$password)
'user_row' => array('user_id' => ANONYMOUS),
);
}
$show_captcha = $config['max_login_attempts'] && $row['user_login_attempts'] >= $config['max_login_attempts'];
// If there are too much login attempts, we need to check for an confirm image
// Every auth module is able to define what to do by itself...
if ($config['max_login_attempts'] && $row['user_login_attempts'] >= $config['max_login_attempts'])
if ($show_captcha)
{
$confirm_id = request_var('confirm_id', '');
// Visual Confirmation handling
if (!$confirm_id)
if (!class_exists('phpbb_captcha_factory'))
{
global $phpbb_root_path, $phpEx;
include ($phpbb_root_path . 'includes/captcha/captcha_factory.' . $phpEx);
}
$captcha =& phpbb_captcha_factory::get_instance($config['captcha_plugin']);
$captcha->init(CONFIRM_LOGIN);
$vc_response = $captcha->validate($row);
if ($vc_response)
{
return array(
'status' => LOGIN_ERROR_ATTEMPTS,
@@ -80,19 +88,9 @@ function login_db(&$username, &$password)
}
else
{
$captcha =& phpbb_captcha_factory::get_instance($config['captcha_plugin']);
$captcha->init(CONFIRM_LOGIN);
$vc_response = $captcha->validate();
if ($vc_response)
{
return array(
'status' => LOGIN_ERROR_ATTEMPTS,
'error_msg' => 'LOGIN_ERROR_ATTEMPTS',
'user_row' => $row,
);
}
$captcha->reset();
}
}
// If the password convert flag is set we need to convert it
@@ -136,7 +134,8 @@ function login_db(&$username, &$password)
// increase login attempt count to make sure this cannot be exploited
$sql = 'UPDATE ' . USERS_TABLE . '
SET user_login_attempts = user_login_attempts + 1
WHERE user_id = ' . $row['user_id'];
WHERE user_id = ' . (int) $row['user_id'] . '
AND user_login_attempts < ' . LOGIN_ATTEMPTS_MAX;
$db->sql_query($sql);
return array(
@@ -196,13 +195,14 @@ function login_db(&$username, &$password)
// Password incorrect - increase login attempts
$sql = 'UPDATE ' . USERS_TABLE . '
SET user_login_attempts = user_login_attempts + 1
WHERE user_id = ' . $row['user_id'];
WHERE user_id = ' . (int) $row['user_id'] . '
AND user_login_attempts < ' . LOGIN_ATTEMPTS_MAX;
$db->sql_query($sql);
// Give status about wrong password...
return array(
'status' => LOGIN_ERROR_PASSWORD,
'error_msg' => 'LOGIN_ERROR_PASSWORD',
'status' => ($show_captcha) ? LOGIN_ERROR_ATTEMPTS : LOGIN_ERROR_PASSWORD,
'error_msg' => ($show_captcha) ? 'LOGIN_ERROR_ATTEMPTS' : 'LOGIN_ERROR_PASSWORD',
'user_row' => $row,
);
}

View File

@@ -74,7 +74,7 @@ function init_ldap()
if ($search === false)
{
return $user->lang['LDAP_NO_SERVER_CONNECTION'];
return $user->lang['LDAP_SEARCH_FAILED'];
}
$result = @ldap_get_entries($ldap, $search);

View File

@@ -128,7 +128,7 @@ class bbcode
*/
function bbcode_cache_init()
{
global $user, $phpbb_root_path;
global $phpbb_root_path, $template, $user;
if (empty($this->template_filename))
{
@@ -360,7 +360,7 @@ class bbcode
// In order to use templates with custom bbcodes we need
// to replace all {VARS} to corresponding backreferences
// Note that backreferences are numbered from bbcode_match
if (preg_match_all('/\{(URL|LOCAL_URL|EMAIL|TEXT|SIMPLETEXT|IDENTIFIER|COLOR|NUMBER)[0-9]*\}/', $rowset[$bbcode_id]['bbcode_match'], $m))
if (preg_match_all('/\{(URL|LOCAL_URL|EMAIL|TEXT|SIMPLETEXT|INTTEXT|IDENTIFIER|COLOR|NUMBER)[0-9]*\}/', $rowset[$bbcode_id]['bbcode_match'], $m))
{
foreach ($m[0] as $i => $tok)
{

View File

@@ -82,11 +82,20 @@ class cache extends acm
$result = $db->sql_query($sql);
$censors = array();
$unicode = ((version_compare(PHP_VERSION, '5.1.0', '>=') || (version_compare(PHP_VERSION, '5.0.0-dev', '<=') && version_compare(PHP_VERSION, '4.4.0', '>='))) && @preg_match('/\p{L}/u', 'a') !== false) ? true : false;
while ($row = $db->sql_fetchrow($result))
{
if ((version_compare(PHP_VERSION, '5.1.0', '>=') || (version_compare(PHP_VERSION, '5.0.0-dev', '<=') && version_compare(PHP_VERSION, '4.4.0', '>='))) && @preg_match('/\p{L}/u', 'a') !== false)
if ($unicode)
{
$censors['match'][] = '#(?<![\p{Nd}\p{L}_])(' . str_replace('\*', '[\p{Nd}\p{L}_]*?', preg_quote($row['word'], '#')) . ')(?![\p{Nd}\p{L}_])#u';
// Unescape the asterisk to simplify further conversions
$row['word'] = str_replace('\*', '*', preg_quote($row['word'], '#'));
// Replace the asterisk inside the pattern, at the start and at the end of it with regexes
$row['word'] = preg_replace(array('#(?<=[\p{Nd}\p{L}_])\*(?=[\p{Nd}\p{L}_])#iu', '#^\*#', '#\*$#'), array('([\x20]*?|[\p{Nd}\p{L}_-]*?)', '[\p{Nd}\p{L}_-]*?', '[\p{Nd}\p{L}_-]*?'), $row['word']);
// Generate the final substitution
$censors['match'][] = '#(?<![\p{Nd}\p{L}_-])(' . $row['word'] . ')(?![\p{Nd}\p{L}_-])#iu';
}
else
{
@@ -297,6 +306,7 @@ class cache extends acm
{
case 'mssql':
case 'mssql_odbc':
case 'mssqlnative':
$sql = 'SELECT user_id, bot_agent, bot_ip
FROM ' . BOTS_TABLE . '
WHERE bot_active = 1

View File

@@ -35,7 +35,7 @@ class phpbb_captcha_factory
{
include($phpbb_root_path . "includes/captcha/plugins/{$name}_plugin." . $phpEx);
}
$instance =& call_user_func(array($name, 'get_instance'));
$instance = call_user_func(array($name, 'get_instance'));
return $instance;
}

View File

@@ -59,7 +59,7 @@ class phpbb_default_captcha
{
global $user;
$this->code = gen_rand_string(mt_rand(CAPTCHA_MIN_CHARS, CAPTCHA_MAX_CHARS));
$this->code = gen_rand_string_friendly(mt_rand(CAPTCHA_MIN_CHARS, CAPTCHA_MAX_CHARS));
$this->seed = hexdec(substr(unique_id(), 4, 10));
// compute $seed % 0x7fffffff
@@ -193,6 +193,11 @@ class phpbb_default_captcha
{
global $config, $db, $user;
if (empty($user->lang))
{
$user->setup();
}
$error = '';
if (!$this->confirm_id)
{
@@ -230,7 +235,7 @@ class phpbb_default_captcha
{
global $db, $user;
$this->code = gen_rand_string(mt_rand(CAPTCHA_MIN_CHARS, CAPTCHA_MAX_CHARS));
$this->code = gen_rand_string_friendly(mt_rand(CAPTCHA_MIN_CHARS, CAPTCHA_MAX_CHARS));
$this->confirm_id = md5(unique_id($user->ip));
$this->seed = hexdec(substr(unique_id(), 4, 10));
$this->solved = 0;
@@ -254,7 +259,7 @@ class phpbb_default_captcha
{
global $db, $user;
$this->code = gen_rand_string(mt_rand(CAPTCHA_MIN_CHARS, CAPTCHA_MAX_CHARS));
$this->code = gen_rand_string_friendly(mt_rand(CAPTCHA_MIN_CHARS, CAPTCHA_MAX_CHARS));
$this->seed = hexdec(substr(unique_id(), 4, 10));
$this->solved = 0;
// compute $seed % 0x7fffffff
@@ -276,7 +281,7 @@ class phpbb_default_captcha
{
global $db, $user;
$this->code = gen_rand_string(mt_rand(CAPTCHA_MIN_CHARS, CAPTCHA_MAX_CHARS));
$this->code = gen_rand_string_friendly(mt_rand(CAPTCHA_MIN_CHARS, CAPTCHA_MAX_CHARS));
$this->seed = hexdec(substr(unique_id(), 4, 10));
$this->solved = 0;
// compute $seed % 0x7fffffff

View File

@@ -80,7 +80,7 @@ class phpbb_captcha_gd extends phpbb_default_captcha
{
return true;
}
function get_name()
{
return 'CAPTCHA_GD';
@@ -123,6 +123,8 @@ class phpbb_captcha_gd extends phpbb_default_captcha
set_config($captcha_var, $value);
}
}
add_log('admin', 'LOG_CONFIG_VISUAL');
trigger_error($user->lang['CONFIG_UPDATED'] . adm_back_link($module->u_action));
}
else if ($submit)
@@ -148,7 +150,7 @@ class phpbb_captcha_gd extends phpbb_default_captcha
function execute_demo()
{
global $config;
$config_old = $config;
foreach ($this->captcha_vars as $captcha_var => $template_var)
{

View File

@@ -53,16 +53,16 @@ class phpbb_captcha_qa
// read input
$this->confirm_id = request_var('qa_confirm_id', '');
$this->answer = request_var('qa_answer', '', true);
$this->answer = utf8_normalize_nfc(request_var('qa_answer', '', true));
$this->type = (int) $type;
$this->question_lang = $user->data['user_lang'];
$this->question_lang = $user->lang_name;
// we need all defined questions - shouldn't be too many, so we can just grab them
// try the user's lang first
$sql = 'SELECT question_id
FROM ' . CAPTCHA_QUESTIONS_TABLE . "
WHERE lang_iso = '" . $db->sql_escape($user->data['user_lang']) . "'";
WHERE lang_iso = '" . $db->sql_escape($user->lang_name) . "'";
$result = $db->sql_query($sql, 3600);
while ($row = $db->sql_fetchrow($result))
@@ -87,9 +87,9 @@ class phpbb_captcha_qa
}
$db->sql_freeresult($result);
}
// okay, if there is a confirm_id, we try to load that confirm's state
if (!strlen($this->confirm_id) || !$this->load_answer())
// okay, if there is a confirm_id, we try to load that confirm's state. If not, we try to find one
if (!$this->load_answer() && (!$this->load_confirm_id() || !$this->load_answer()))
{
// we have no valid confirm ID, better get ready to ask something
$this->select_question();
@@ -137,14 +137,14 @@ class phpbb_captcha_qa
return false;
}
$sql = 'SELECT COUNT(question_id) as count
$sql = 'SELECT COUNT(question_id) AS question_count
FROM ' . CAPTCHA_QUESTIONS_TABLE . "
WHERE lang_iso = '" . $db->sql_escape($config['default_lang']) . "'";
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
return ((bool) $row['count']);
return ((bool) $row['question_count']);
}
/**
@@ -214,6 +214,22 @@ class phpbb_captcha_qa
*/
function get_demo_template()
{
global $config, $db, $template;
if ($this->is_available())
{
$sql = 'SELECT question_text
FROM ' . CAPTCHA_QUESTIONS_TABLE . "
WHERE lang_iso = '" . $db->sql_escape($config['default_lang']) . "'";
$result = $db->sql_query_limit($sql, 1);
if ($row = $db->sql_fetchrow($result))
{
$template->assign_vars(array(
'QA_CONFIRM_QUESTION' => $row['question_text'],
));
}
$db->sql_freeresult($result);
}
return 'captcha_qa_acp_demo.html';
}
@@ -237,11 +253,11 @@ class phpbb_captcha_qa
/**
* API function
*/
function garbage_collect($type)
function garbage_collect($type = 0)
{
global $db, $config;
$sql = 'SELECT DISTINCT c.session_id
$sql = 'SELECT c.confirm_id
FROM ' . CAPTCHA_QA_CONFIRM_TABLE . ' c
LEFT JOIN ' . SESSIONS_TABLE . ' s
ON (c.session_id = s.session_id)
@@ -255,14 +271,14 @@ class phpbb_captcha_qa
do
{
$sql_in[] = (string) $row['session_id'];
$sql_in[] = (string) $row['confirm_id'];
}
while ($row = $db->sql_fetchrow($result));
if (sizeof($sql_in))
{
$sql = 'DELETE FROM ' . CAPTCHA_QA_CONFIRM_TABLE . '
WHERE ' . $db->sql_in_set('session_id', $sql_in);
WHERE ' . $db->sql_in_set('confirm_id', $sql_in);
$db->sql_query($sql);
}
}
@@ -349,7 +365,12 @@ class phpbb_captcha_qa
global $config, $db, $user;
$error = '';
if (!sizeof($this->question_ids))
{
return false;
}
if (!$this->confirm_id)
{
$error = $user->lang['CONFIRM_QUESTION_WRONG'];
@@ -388,6 +409,10 @@ class phpbb_captcha_qa
{
global $db, $user;
if (!sizeof($this->question_ids))
{
return false;
}
$this->confirm_id = md5(unique_id($user->ip));
$this->question = (int) array_rand($this->question_ids);
@@ -409,6 +434,11 @@ class phpbb_captcha_qa
function reselect_question()
{
global $db, $user;
if (!sizeof($this->question_ids))
{
return false;
}
$this->question = (int) array_rand($this->question_ids);
$this->solved = 0;
@@ -443,12 +473,43 @@ class phpbb_captcha_qa
$this->load_answer();
}
/**
* See if there is already an entry for the current session.
*/
function load_confirm_id()
{
global $db, $user;
$sql = 'SELECT confirm_id
FROM ' . CAPTCHA_QA_CONFIRM_TABLE . "
WHERE
session_id = '" . $db->sql_escape($user->session_id) . "'
AND lang_iso = '" . $db->sql_escape($this->question_lang) . "'
AND confirm_type = " . $this->type;
$result = $db->sql_query_limit($sql, 1);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
if ($row)
{
$this->confirm_id = $row['confirm_id'];
return true;
}
return false;
}
/**
* Look up everything we need and populate the instance variables.
*/
function load_answer()
{
global $db, $user;
if (!strlen($this->confirm_id) || !sizeof($this->question_ids))
{
return false;
}
$sql = 'SELECT con.question_id, attempts, question_text, strict
FROM ' . CAPTCHA_QA_CONFIRM_TABLE . ' con, ' . CAPTCHA_QUESTIONS_TABLE . " qes
@@ -482,7 +543,7 @@ class phpbb_captcha_qa
{
global $db;
$answer = ($this->question_strict) ? request_var('qa_answer', '', true) : utf8_clean_string(request_var('qa_answer', '', true));
$answer = ($this->question_strict) ? utf8_normalize_nfc(request_var('qa_answer', '', true)) : utf8_clean_string(utf8_normalize_nfc(request_var('qa_answer', '', true)));
$sql = 'SELECT answer_text
FROM ' . CAPTCHA_ANSWERS_TABLE . '
@@ -597,21 +658,28 @@ class phpbb_captcha_qa
}
else if ($question_id && $action == 'delete')
{
if (confirm_box(true))
if ($this->get_class_name() !== $config['captcha_plugin'] || !$this->acp_is_last($question_id))
{
$this->acp_delete_question($question_id);
if (confirm_box(true))
{
$this->acp_delete_question($question_id);
trigger_error($user->lang['QUESTION_DELETED'] . adm_back_link($list_url));
trigger_error($user->lang['QUESTION_DELETED'] . adm_back_link($list_url));
}
else
{
confirm_box(false, $user->lang['CONFIRM_OPERATION'], build_hidden_fields(array(
'question_id' => $question_id,
'action' => $action,
'configure' => 1,
'select_captcha' => $this->get_class_name(),
))
);
}
}
else
{
confirm_box(false, $user->lang['CONFIRM_OPERATION'], build_hidden_fields(array(
'question_id' => $question_id,
'action' => $action,
'configure' => 1,
'select_captcha' => $this->get_class_name(),
))
);
trigger_error($user->lang['QA_LAST_QUESTION'] . adm_back_link($list_url), E_USER_WARNING);
}
}
else
@@ -685,12 +753,13 @@ class phpbb_captcha_qa
$this->acp_add_question($data);
}
add_log('admin', 'LOG_CONFIG_VISUAL');
trigger_error($user->lang['CONFIG_UPDATED'] . adm_back_link($list_url));
}
}
else if ($submit)
{
trigger_error($user->lang['FORM_INVALID'] . adm_back_link($list_url));
trigger_error($user->lang['FORM_INVALID'] . adm_back_link($list_url), E_USER_WARNING);
}
}
}
@@ -768,11 +837,12 @@ class phpbb_captcha_qa
*/
function acp_get_question_input()
{
$answers = utf8_normalize_nfc(request_var('answers', '', true));
$question = array(
'question_text' => request_var('question_text', '', true),
'strict' => request_var('strict', false),
'lang_iso' => request_var('lang_iso', ''),
'answers' => explode("\n", request_var('answers', '', true)),
'answers' => (strlen($answers)) ? explode("\n", $answers) : '',
);
return $question;
@@ -887,8 +957,9 @@ class phpbb_captcha_qa
}
if (!isset($langs[$question_data['lang_iso']]) ||
!$question_data['question_text'] ||
!sizeof($question_data['answers']))
!strlen($question_data['question_text']) ||
!sizeof($question_data['answers']) ||
!is_array($question_data['answers']))
{
return false;
}
@@ -919,6 +990,33 @@ class phpbb_captcha_qa
return $langs;
}
/**
* See if there is a question other than the one we have
*/
function acp_is_last($question_id)
{
global $config, $db;
if ($question_id)
{
$sql = 'SELECT question_id
FROM ' . CAPTCHA_QUESTIONS_TABLE . "
WHERE lang_iso = '" . $db->sql_escape($config['default_lang']) . "'
AND question_id <> " . (int) $question_id;
$result = $db->sql_query_limit($sql, 1);
$question = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
if (!$question)
{
return true;
}
return false;
}
}
}
?>

View File

@@ -28,10 +28,17 @@ if (!class_exists('phpbb_default_captcha'))
class phpbb_recaptcha extends phpbb_default_captcha
{
var $recaptcha_server = 'http://api.recaptcha.net';
var $recaptcha_server_secure = 'https://api-secure.recaptcha.net'; // class constants :(
var $recaptcha_verify_server = 'api-verify.recaptcha.net';
var $challenge;
var $response;
// PHP4 Constructor
function phpbb_recaptcha()
{
$this->recaptcha_server = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? $this->recaptcha_server_secure : $this->recaptcha_server;
}
function init($type)
{
global $config, $db, $user;
@@ -100,6 +107,8 @@ class phpbb_recaptcha extends phpbb_default_captcha
set_config($captcha_var, $value);
}
}
add_log('admin', 'LOG_CONFIG_VISUAL');
trigger_error($user->lang['CONFIG_UPDATED'] . adm_back_link($module->u_action));
}
else if ($submit)
@@ -305,10 +314,7 @@ class phpbb_recaptcha extends phpbb_default_captcha
}
else
{
if ($answers[1] === 'incorrect-captcha-sol')
{
return $user->lang['RECAPTCHA_INCORRECT'];
}
return $user->lang['RECAPTCHA_INCORRECT'];
}
}

View File

@@ -25,7 +25,7 @@ if (!defined('IN_PHPBB'))
*/
// phpBB Version
define('PHPBB_VERSION', '3.0.6-RC1');
define('PHPBB_VERSION', '3.0.8');
// QA-related
// define('PHPBB_QA', 1);
@@ -69,6 +69,10 @@ define('LOGIN_ERROR_ATTEMPTS', 13);
define('LOGIN_ERROR_EXTERNAL_AUTH', 14);
define('LOGIN_ERROR_PASSWORD_CONVERT', 15);
// Maximum login attempts
// The value is arbitrary, but it has to fit into the user_login_attempts field.
define('LOGIN_ATTEMPTS_MAX', 100);
// Group settings
define('GROUP_OPEN', 0);
define('GROUP_CLOSED', 1);
@@ -117,6 +121,10 @@ define('NOTIFY_EMAIL', 0);
define('NOTIFY_IM', 1);
define('NOTIFY_BOTH', 2);
// Notify status
define('NOTIFY_YES', 0);
define('NOTIFY_NO', 1);
// Email Priority Settings
define('MAIL_LOW_PRIORITY', 4);
define('MAIL_NORMAL_PRIORITY', 3);

Some files were not shown because too many files have changed in this diff Show More