mirror of
https://github.com/phpbb/phpbb.git
synced 2025-09-19 20:43:40 +02:00
Compare commits
575 Commits
release-3.
...
release-3.
Author | SHA1 | Date | |
---|---|---|---|
|
e8c6a3aa0a | ||
|
7cbb049572 | ||
|
6145f46bd1 | ||
|
2eb8a97f47 | ||
|
1f42da7ba5 | ||
|
83f737a30a | ||
|
79d6d53296 | ||
|
6764bea40c | ||
|
6a73188e6a | ||
|
8d3716ab91 | ||
|
cff2895599 | ||
|
516670225d | ||
|
256730c76a | ||
|
cddf80c2e6 | ||
|
d316927225 | ||
|
ef1e163180 | ||
|
cf2b96def7 | ||
|
a9beed3ad0 | ||
|
9d88238f89 | ||
|
b2141fd1a8 | ||
|
ff8b5058e0 | ||
|
82649b37e4 | ||
|
08acf2acba | ||
|
4fdbd6217d | ||
|
b63c61d099 | ||
|
72248cab45 | ||
|
73073ac8c3 | ||
|
50227dbc75 | ||
|
0a512b2695 | ||
|
80db259ab9 | ||
|
e30518461c | ||
|
9bea18b5db | ||
|
be5ea21706 | ||
|
191b80a750 | ||
|
c103c42857 | ||
|
dcf90a8d8b | ||
|
a8fb33218c | ||
|
e578450077 | ||
|
7a8455baa7 | ||
|
548357e14c | ||
|
2576993564 | ||
|
3e88ea9c06 | ||
|
7e6371ea8e | ||
|
283a039647 | ||
|
c3fd07a5f0 | ||
|
1a68504174 | ||
|
3bafbc81ef | ||
|
06507f9fa6 | ||
|
90cefcf0f4 | ||
|
7a28b7514a | ||
|
2a95f545c3 | ||
|
94d2be725a | ||
|
e7262e2d39 | ||
|
40a00bd4e5 | ||
|
9c34594bc3 | ||
|
bf37cdf878 | ||
|
961ffee684 | ||
|
734972cc3d | ||
|
03348087d8 | ||
|
f57f09f814 | ||
|
3572f4c92e | ||
|
c7bbcd7b84 | ||
|
1629e6aaf3 | ||
|
c0f3463819 | ||
|
c3b30144e3 | ||
|
aa3c5286cd | ||
|
8e1102b1da | ||
|
ef226138c8 | ||
|
43c16ca4c3 | ||
|
e9b7cb1324 | ||
|
6eda942a7f | ||
|
c941041963 | ||
|
829a8ac15a | ||
|
39c4590f01 | ||
|
ead261e6db | ||
|
877188c114 | ||
|
29bb1ab72d | ||
|
4cdec74e94 | ||
|
1b01667c7b | ||
|
fdcedb262f | ||
|
1b0b78dabc | ||
|
4614cc972f | ||
|
68645d38ef | ||
|
ed378a2ec3 | ||
|
4c257d47a6 | ||
|
96bdcedacd | ||
|
d713ce94ff | ||
|
560bee1be4 | ||
|
336f5b49a7 | ||
|
972255247b | ||
|
f41c7bd2b1 | ||
|
9163cc2864 | ||
|
d89b75bd36 | ||
|
58dfff38fa | ||
|
c4ef83e4d2 | ||
|
e7043dc044 | ||
|
5ee6c216e5 | ||
|
15e22af266 | ||
|
45a3e4d04f | ||
|
2ae17d6caf | ||
|
ebbedf29e0 | ||
|
4e8981ee37 | ||
|
901f36e982 | ||
|
9ad5c577f5 | ||
|
c53eae7abc | ||
|
cdc7f1722d | ||
|
12f5c0405e | ||
|
7bf8006b67 | ||
|
68eba86309 | ||
|
a319d58d03 | ||
|
d0f5b39f11 | ||
|
f929db6190 | ||
|
02469d4691 | ||
|
d747ac146e | ||
|
5754cbfec4 | ||
|
6d2acb5ba3 | ||
|
bffd963c50 | ||
|
663e3bc642 | ||
|
4070d1e06f | ||
|
5cdbef860d | ||
|
e8762ce3cb | ||
|
8769e765a2 | ||
|
a2f517fb38 | ||
|
5ba5128ae6 | ||
|
753d6dfcae | ||
|
3281826a51 | ||
|
2505aaa9d6 | ||
|
9dad16c5a6 | ||
|
a895640245 | ||
|
bd91925fe7 | ||
|
ccdf8e7ee1 | ||
|
28ba2d4494 | ||
|
79a8d48c3c | ||
|
d603d66eaa | ||
|
0a9c049f76 | ||
|
83b56f7855 | ||
|
2653b98e09 | ||
|
5b61ac06cb | ||
|
1819b64046 | ||
|
01d5667388 | ||
|
91045879df | ||
|
3f4cf72872 | ||
|
ada90d3b0a | ||
|
621b958b1c | ||
|
1641fd18c1 | ||
|
2b90591a31 | ||
|
e81bf76dea | ||
|
afb69d7cd2 | ||
|
4b789c0418 | ||
|
ed0f151d86 | ||
|
aee3eec439 | ||
|
13f365916c | ||
|
6291bfaca9 | ||
|
16f9b4630c | ||
|
91f1116e04 | ||
|
8a9429efa4 | ||
|
f9b6086302 | ||
|
65113f222e | ||
|
14e8113fcf | ||
|
48283d7c62 | ||
|
c9ffef2c57 | ||
|
3f5a873e4c | ||
|
ff9632261e | ||
|
842d6f7815 | ||
|
bfc09e2b39 | ||
|
dfc2168d31 | ||
|
2387fdd599 | ||
|
7a1cf2a280 | ||
|
a643d04b05 | ||
|
9fc01a42e6 | ||
|
27df46040f | ||
|
b22fbc91d1 | ||
|
a5f1ff8563 | ||
|
00dcbb3992 | ||
|
4205450c9d | ||
|
0647eea742 | ||
|
0b1ed8dbbb | ||
|
1a5fbd4bd0 | ||
|
39de59e65f | ||
|
b8dd3ef43a | ||
|
4fa47d301f | ||
|
a9242bbf7b | ||
|
28705b54a5 | ||
|
478c90cb00 | ||
|
fae305073a | ||
|
9a5f420ce8 | ||
|
c44a01fd9d | ||
|
99196a42f2 | ||
|
3278ff03e7 | ||
|
7830ac2c9a | ||
|
0ca32c41b5 | ||
|
5a9e9029e8 | ||
|
a9090ecb0e | ||
|
2bfbc07b7d | ||
|
386d31ec63 | ||
|
5442a25967 | ||
|
4a14eb8488 | ||
|
7d5a853b21 | ||
|
a7950bd8ce | ||
|
50737da051 | ||
|
465eabbc65 | ||
|
5e96738ca1 | ||
|
1600d82b77 | ||
|
4db229ff6c | ||
|
1f962dacaf | ||
|
fac6e5206f | ||
|
9ef5b126ec | ||
|
dedfb317f2 | ||
|
640070e133 | ||
|
ebe5eb8342 | ||
|
18a4505b23 | ||
|
c3bc504b70 | ||
|
9f3ee58595 | ||
|
2a7c514cd0 | ||
|
7f9ba9849b | ||
|
3eb6f7176a | ||
|
6774c5077d | ||
|
e873ed6944 | ||
|
8d98981012 | ||
|
9b94eaa0e4 | ||
|
f29ebb1846 | ||
|
2168cb7f8e | ||
|
28f0c3457c | ||
|
53a9131db6 | ||
|
4212c304ab | ||
|
f6cc30cbfe | ||
|
23be4d8af2 | ||
|
0ff4a6b6a4 | ||
|
826b338275 | ||
|
d2ecbfcc1b | ||
|
a9b6a537c5 | ||
|
3a23068d89 | ||
|
7e2c8f1885 | ||
|
dcb6154be7 | ||
|
51c243f76b | ||
|
1721965c38 | ||
|
d817da6049 | ||
|
2e3f89444a | ||
|
244d171cb0 | ||
|
a5790597ca | ||
|
ed21921c58 | ||
|
a4fac6da2a | ||
|
78bf53587a | ||
|
2a6e8f3668 | ||
|
1bb4e3621e | ||
|
d8bcf479bf | ||
|
200bcae2ae | ||
|
c36892f2fa | ||
|
a66ec6eccf | ||
|
c5ef29a6f1 | ||
|
56c2caf6c0 | ||
|
d9ad14e4c5 | ||
|
c003611f05 | ||
|
8f396673fe | ||
|
a18c59317f | ||
|
827f11cf83 | ||
|
1e0cda3e8a | ||
|
10d4093561 | ||
|
dc097221d8 | ||
|
8a8428d002 | ||
|
5b3b0edd80 | ||
|
00c2efca60 | ||
|
f77142c0b6 | ||
|
15a0013193 | ||
|
4dc8841e33 | ||
|
933938a1d8 | ||
|
0f7d08c121 | ||
|
46c79bbe90 | ||
|
04450e1fae | ||
|
eca4726f3c | ||
|
0194c78d19 | ||
|
e610b23916 | ||
|
1c61fd54d4 | ||
|
d8e7f865d8 | ||
|
a03470ac75 | ||
|
f1874ec416 | ||
|
a92ce812e7 | ||
|
67d58aa7b8 | ||
|
681836a84d | ||
|
365c99a787 | ||
|
5c2ef741a6 | ||
|
04fbbbe1ed | ||
|
36d2ed3121 | ||
|
cc212f680d | ||
|
186c5f4f83 | ||
|
48bdab88de | ||
|
17b8e93a53 | ||
|
dad531e4b2 | ||
|
58678ff21c | ||
|
3e278bcf0a | ||
|
215fad420f | ||
|
ebbc730c73 | ||
|
b0fe454163 | ||
|
5dd11735fb | ||
|
eef7a4dbf4 | ||
|
d142bebdd6 | ||
|
2337d9dd27 | ||
|
4c5c289f75 | ||
|
2c28138329 | ||
|
18fea1b286 | ||
|
9288a50bcf | ||
|
6a90172e1a | ||
|
ad8363ae57 | ||
|
1f25f710ea | ||
|
f22bd4e511 | ||
|
795ce6ccf1 | ||
|
b0bedce662 | ||
|
8058967e7f | ||
|
8a6c82a0ef | ||
|
0e84856a45 | ||
|
9bcf8df5d0 | ||
|
b758c098d3 | ||
|
5917a8e72e | ||
|
693664f278 | ||
|
a9df243772 | ||
|
2c813e6e5e | ||
|
61e0247f22 | ||
|
0a983d219a | ||
|
5d0f02ce7f | ||
|
0e49dc4409 | ||
|
98ea7252d3 | ||
|
0251a02896 | ||
|
5e84d47a03 | ||
|
6c814ef641 | ||
|
a01e3a0ffa | ||
|
7c45ed0733 | ||
|
a0fa396901 | ||
|
05ccbc512d | ||
|
00bf1ef8b8 | ||
|
dd115d1896 | ||
|
10004c4032 | ||
|
9fcd0b116b | ||
|
0f8790dd2e | ||
|
0c1e7c2f9c | ||
|
d461ee4f5c | ||
|
e6e87ab214 | ||
|
9d7b6260bd | ||
|
a1b7a5aedc | ||
|
c00e45d30e | ||
|
f55a61d067 | ||
|
62a2619300 | ||
|
b77856a903 | ||
|
3d7d0c40b8 | ||
|
f1772ce7e5 | ||
|
1e10664739 | ||
|
4e717c1725 | ||
|
5fc3177395 | ||
|
cc941e6e05 | ||
|
8c5d6efad5 | ||
|
293a42e7c5 | ||
|
e5344ae135 | ||
|
f53a27e891 | ||
|
ad23b2330c | ||
|
480a1be94c | ||
|
97bf5e8a8d | ||
|
517c1f8825 | ||
|
83fd8e88d6 | ||
|
20dd65ff1a | ||
|
0e6bcd166c | ||
|
942383d743 | ||
|
fa2ae3a14b | ||
|
65ce507dda | ||
|
43ffffca5f | ||
|
a38a6ec7f5 | ||
|
7b0452e53a | ||
|
07b8c0663d | ||
|
b17f9fc81c | ||
|
0ca4484525 | ||
|
e905c6226d | ||
|
97c6cce687 | ||
|
a84f77bf25 | ||
|
fe31060fca | ||
|
b1a136e7bd | ||
|
637b02690d | ||
|
b324cf1907 | ||
|
b80cb8e796 | ||
|
f32b4c0547 | ||
|
d373428180 | ||
|
6fe084a2fd | ||
|
52dffef03c | ||
|
d17a8ab523 | ||
|
8f7aba6582 | ||
|
df4a620ba1 | ||
|
50761104ba | ||
|
0102fa3f2d | ||
|
dacbf09227 | ||
|
8993fef9c0 | ||
|
8ec1a60156 | ||
|
72bdbf52cc | ||
|
f0a33dca72 | ||
|
062358f8b1 | ||
|
f65207b935 | ||
|
f259a451bb | ||
|
b490be1f81 | ||
|
a4040e53b7 | ||
|
40bd4c8b72 | ||
|
5d579631d7 | ||
|
276d48ed4f | ||
|
af99569432 | ||
|
cb6ae863f5 | ||
|
747a70964e | ||
|
a21d1680d2 | ||
|
7c41be4f51 | ||
|
ee7cba5df7 | ||
|
47f70a4cfd | ||
|
a937e38bd5 | ||
|
34389df1ae | ||
|
e8f29d9fb6 | ||
|
24fd031648 | ||
|
3a6e6b997a | ||
|
8e6a21955a | ||
|
cd3b93b9e2 | ||
|
2076280947 | ||
|
673acc7313 | ||
|
119d0e60e8 | ||
|
30db51a86e | ||
|
ec70ec96e7 | ||
|
db1b73a3f4 | ||
|
b6cf2d7284 | ||
|
5bdfc6167b | ||
|
37b2791837 | ||
|
f249c52af6 | ||
|
294f926bfc | ||
|
68996e527e | ||
|
49d42e2881 | ||
|
d17257c346 | ||
|
58e3c06a24 | ||
|
c5c2f7f7d0 | ||
|
43e87e3e63 | ||
|
811f1573de | ||
|
078116e189 | ||
|
632418ad6e | ||
|
ae22160243 | ||
|
ec00fc85e0 | ||
|
b7deef46ac | ||
|
6e4ab6509b | ||
|
c485312d38 | ||
|
f6fd819764 | ||
|
269e958532 | ||
|
028191e7c2 | ||
|
bd12427fd4 | ||
|
9d1d8813fe | ||
|
ab6e0bbef9 | ||
|
fc66f00236 | ||
|
9745d8d80e | ||
|
6fc7fc1c75 | ||
|
6eb6c000c2 | ||
|
58359b1587 | ||
|
08a11dbe32 | ||
|
97bbf2d2b8 | ||
|
99ace63e62 | ||
|
f7c5098c60 | ||
|
f253a853b8 | ||
|
d34ffda9c1 | ||
|
4b4584bcd4 | ||
|
4364629919 | ||
|
dcc80f4709 | ||
|
1007dea154 | ||
|
7d41fe0136 | ||
|
7c96d0abcd | ||
|
a75885bd85 | ||
|
620a862266 | ||
|
d429fd03bf | ||
|
845639ba37 | ||
|
6f41fcb3d6 | ||
|
32815faa33 | ||
|
0a1604a536 | ||
|
4cfba8f3a4 | ||
|
eab1b1ad11 | ||
|
4973632288 | ||
|
9eedf29021 | ||
|
8d1eee0e01 | ||
|
d0ce6a18df | ||
|
1f0b6c8123 | ||
|
00d71d854c | ||
|
f872af464e | ||
|
d4c7f25e04 | ||
|
9a7f2c08f6 | ||
|
f983684fdb | ||
|
accf8f8625 | ||
|
6debd9a1be | ||
|
469f200821 | ||
|
d330ef8c1b | ||
|
2084404d2a | ||
|
b6f9a2e1aa | ||
|
c3370201ba | ||
|
8663edce76 | ||
|
17e21d5140 | ||
|
c2ea2a3e18 | ||
|
cafd165bd0 | ||
|
9590ff3c18 | ||
|
4f07a0bafb | ||
|
1bd4895d7a | ||
|
6d57136264 | ||
|
b9f5c03099 | ||
|
e63493115a | ||
|
a1a84c9930 | ||
|
3e8a62f309 | ||
|
2efceffaeb | ||
|
97d128a7e4 | ||
|
7c0fb563ec | ||
|
90710ffe98 | ||
|
d63b5a1315 | ||
|
68091561ab | ||
|
955b9ede33 | ||
|
05fec8c642 | ||
|
971fe13a28 | ||
|
5557760ecc | ||
|
c9e5d308f2 | ||
|
aa6dd6d4ff | ||
|
0210a6298d | ||
|
ad5d4f6bc3 | ||
|
147f929713 | ||
|
8cf086ef9b | ||
|
fffbbbdcc4 | ||
|
f258aebc59 | ||
|
20d85433fc | ||
|
39f5aaa526 | ||
|
663ee34f66 | ||
|
3479f95090 | ||
|
a705405717 | ||
|
6a2d041c3d | ||
|
01b29b8464 | ||
|
da08a6e3cb | ||
|
37705353c5 | ||
|
df505d772d | ||
|
8a2f564f3d | ||
|
408ba75321 | ||
|
dab282e664 | ||
|
123422d1ef | ||
|
3e0aa1b3a4 | ||
|
b40f9ce6e1 | ||
|
7e0878bedb | ||
|
379634a102 | ||
|
e2440bad17 | ||
|
6b19928463 | ||
|
3846b6a6e3 | ||
|
7cdeb70bcf | ||
|
ad7b3ed178 | ||
|
2f6f9a05eb | ||
|
fd9c05309d | ||
|
7ec6dd75f3 | ||
|
b39b3da5af | ||
|
9a5b2d5e66 | ||
|
dacbc767f1 | ||
|
9ce4ceb9c1 | ||
|
c83db45f55 | ||
|
b9df08e97f | ||
|
5ee559d524 | ||
|
49dd9f0219 | ||
|
cec63974c3 | ||
|
013d4d4633 | ||
|
f2f9ce544f | ||
|
366a92c36a | ||
|
a35314c6ea | ||
|
93a25893d5 | ||
|
fdd5a18763 | ||
|
610048cc6d | ||
|
8d8f5783c6 | ||
|
575468931f | ||
|
5f052ec8dc | ||
|
e030f0ca09 | ||
|
8e8fac17ff | ||
|
c9541e0795 | ||
|
f3c2c497d8 | ||
|
805b084607 | ||
|
74ec6f4e9a | ||
|
fb78fc7ae0 | ||
|
561344da53 | ||
|
7705017f63 | ||
|
c99386e155 | ||
|
685449bfe3 | ||
|
be5a40f6a9 | ||
|
aca6e64669 | ||
|
9a5de3fc1e |
2
CONTRIBUTING.md → .github/CONTRIBUTING.md
vendored
2
CONTRIBUTING.md → .github/CONTRIBUTING.md
vendored
@@ -2,5 +2,5 @@
|
||||
|
||||
1. [Create an account on phpBB.com](http://www.phpbb.com/community/ucp.php?mode=register)
|
||||
2. [Create a ticket (unless there already is one)](http://tracker.phpbb.com/secure/CreateIssue!default.jspa)
|
||||
3. Read our [Coding guidelines](https://wiki.phpbb.com/Coding_guidelines) and [Git Contribution Guidelines](http://wiki.phpbb.com/Git); if you're new to git, also read [the introduction guide](http://wiki.phpbb.com/display/DEV/Working+with+Git)
|
||||
3. Read our [Coding guidelines](https://wiki.phpbb.com/Coding_guidelines) and [Git Contribution Guidelines](http://wiki.phpbb.com/Git)
|
||||
4. Send us a pull request
|
10
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
10
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
Checklist:
|
||||
|
||||
- [ ] Correct branch: master for new features; 3.2.x, 3.1.x for fixes
|
||||
- [ ] Tests pass
|
||||
- [ ] Code follows coding guidelines: [master / 3.2.x](https://area51.phpbb.com/docs/master/coding-guidelines.html), [3.1.x](https://area51.phpbb.com/docs/31x/coding-guidelines.html)
|
||||
- [ ] Commit follows commit message [format](https://wiki.phpbb.com/Git#Commit_Messages)
|
||||
|
||||
Tracker ticket (set the ticket ID to **your ticket ID**):
|
||||
|
||||
https://tracker.phpbb.com/browse/PHPBB3-12345
|
12
README.md
12
README.md
@@ -2,34 +2,34 @@
|
||||
|
||||
## ABOUT
|
||||
|
||||
phpBB is a free bulletin board written in PHP.
|
||||
phpBB is a free open-source bulletin board written in PHP.
|
||||
|
||||
## COMMUNITY
|
||||
|
||||
Find support and lots more on [phpBB.com](http://www.phpbb.com)! Discuss the development on [area51](http://area51.phpbb.com/phpBB/index.php).
|
||||
Get your copy of phpBB, find support and lots more on [phpBB.com](http://www.phpbb.com)! Discuss the development on [area51](http://area51.phpbb.com/phpBB/index.php).
|
||||
|
||||
## INSTALLING DEPENDENCIES
|
||||
|
||||
To be able to run an installation from the repo (and not from a pre-built package) you need to run the following commands to install phpBB's dependencies.
|
||||
|
||||
cd phpBB
|
||||
php ../composer.phar install --dev
|
||||
php ../composer.phar install
|
||||
|
||||
|
||||
## CONTRIBUTE
|
||||
|
||||
1. [Create an account on phpBB.com](http://www.phpbb.com/community/ucp.php?mode=register)
|
||||
2. [Create a ticket (unless there already is one)](http://tracker.phpbb.com/secure/CreateIssue!default.jspa)
|
||||
3. [Read our Git Contribution Guidelines](http://wiki.phpbb.com/Git); if you're new to git, also read [the introduction guide](http://wiki.phpbb.com/display/DEV/Working+with+Git)
|
||||
3. Read our [Coding guidelines](https://wiki.phpbb.com/Coding_guidelines) and [Git Contribution Guidelines](http://wiki.phpbb.com/Git)
|
||||
4. Send us a pull request
|
||||
|
||||
## AUTOMATED TESTING
|
||||
|
||||
We have unit and functional tests in order to prevent regressions. You can view the bamboo continuous integration [here](http://bamboo.phpbb.com) or check our travis build below:
|
||||
We have unit and functional tests in order to prevent regressions. You can view the bamboo continuous integration [here](http://bamboo.phpbb.com) or check our travis builds below:
|
||||
|
||||
* [](http://travis-ci.org/phpbb/phpbb) **master** - Latest development version
|
||||
* [](http://travis-ci.org/phpbb/phpbb) **3.2.x** - Development of version 3.2.x
|
||||
* [](http://travis-ci.org/phpbb/phpbb) **3.1.x** - Development of version 3.1.x
|
||||
* [](http://travis-ci.org/phpbb/phpbb) **3.0.x** - Development of version 3.0.x
|
||||
|
||||
## LICENSE
|
||||
|
||||
|
@@ -2,9 +2,9 @@
|
||||
|
||||
<project name="phpBB" description="The phpBB forum software" default="all" basedir="../">
|
||||
<!-- a few settings for the build -->
|
||||
<property name="newversion" value="3.2.0-b1" />
|
||||
<property name="prevversion" value="3.2.0-a2" />
|
||||
<property name="olderversions" value="3.0.14, 3.1.0, 3.1.1, 3.1.2, 3.1.3, 3.1.4, 3.1.5, 3.1.6, 3.1.7, 3.1.7-pl1, 3.2.0-a1" />
|
||||
<property name="newversion" value="3.2.0-RC1" />
|
||||
<property name="prevversion" value="3.2.0-b2" />
|
||||
<property name="olderversions" value="3.0.14, 3.1.0, 3.1.1, 3.1.2, 3.1.3, 3.1.4, 3.1.5, 3.1.6, 3.1.7, 3.1.7-pl1, 3.1.8, 3.1.9, 3.2.0-a1, 3.2.0-a2, 3.2.0-b1" />
|
||||
<!-- no configuration should be needed beyond this point -->
|
||||
|
||||
<property name="oldversions" value="${olderversions}, ${prevversion}" />
|
||||
@@ -318,6 +318,35 @@
|
||||
<delete file="${dir}/vendor/google/recaptcha/phpunit.xml.dist" />
|
||||
<delete file="${dir}/vendor/google/recaptcha/README.md" />
|
||||
|
||||
<delete dir="${dir}/vendor/guzzlehttp/guzzle/build" />
|
||||
<delete dir="${dir}/vendor/guzzlehttp/guzzle/docs" />
|
||||
<delete dir="${dir}/vendor/guzzlehttp/guzzle/tests" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/guzzle/CHANGELOG.md" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/guzzle/.editorconfig" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/guzzle/.gitignore" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/guzzle/Makefile" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/guzzle/phpunit.xml.dist" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/guzzle/README.md" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/guzzle/.travis.yml" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/guzzle/UPGRADING.md" />
|
||||
|
||||
<delete dir="${dir}/vendor/guzzlehttp/ringphp/docs" />
|
||||
<delete dir="${dir}/vendor/guzzlehttp/ringphp/tests" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/ringphp/CHANGELOG.md" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/ringphp/.gitignore" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/ringphp/Makefile" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/ringphp/phpunit.xml.dist" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/ringphp/README.rst" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/ringphp/.travis.yml" />
|
||||
|
||||
<delete dir="${dir}/vendor/guzzlehttp/streams/tests" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/streams/CHANGELOG.rst" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/streams/.gitignore" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/streams/Makefile" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/streams/phpunit.xml.dist" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/streams/README.rst" />
|
||||
<delete file="${dir}/vendor/guzzlehttp/streams/.travis.yml" />
|
||||
|
||||
<delete dir="${dir}/vendor/lusitanian/oauth/examples" />
|
||||
<delete dir="${dir}/vendor/lusitanian/oauth/tests" />
|
||||
<delete file="${dir}/vendor/lusitanian/oauth/.gitignore" />
|
||||
@@ -326,6 +355,13 @@
|
||||
<delete file="${dir}/vendor/lusitanian/oauth/phpunit.xml.dist" />
|
||||
<delete file="${dir}/vendor/lusitanian/oauth/README.md" />
|
||||
|
||||
<delete dir="${dir}/vendor/paragonie/random_compat/dist" />
|
||||
<delete dir="${dir}/vendor/paragonie/random_compat/other" />
|
||||
<delete file="${dir}/vendor/paragonie/random_compat/CHANGELOG.md" />
|
||||
<delete file="${dir}/vendor/paragonie/random_compat/ERRATA.md" />
|
||||
<delete file="${dir}/vendor/paragonie/random_compat/README.md" />
|
||||
<delete file="${dir}/vendor/paragonie/random_compat/SECURITY.md" />
|
||||
|
||||
<delete file="${dir}/vendor/patchwork/utf8/.travis.yml" />
|
||||
<delete file="${dir}/vendor/patchwork/utf8/CHANGELOG.md" />
|
||||
<delete file="${dir}/vendor/patchwork/utf8/phpunit.xml.dist" />
|
||||
@@ -335,6 +371,13 @@
|
||||
<delete file="${dir}/vendor/psr/log/.gitignore" />
|
||||
<delete file="${dir}/vendor/psr/log/README.md" />
|
||||
|
||||
<delete dir="${dir}/vendor/react/promise/tests" />
|
||||
<delete file="${dir}/vendor/react/promise/CHANGELOG.md" />
|
||||
<delete file="${dir}/vendor/react/promise/.gitignore" />
|
||||
<delete file="${dir}/vendor/react/promise/phpunit.xml.dist" />
|
||||
<delete file="${dir}/vendor/react/promise/README.md" />
|
||||
<delete file="${dir}/vendor/react/promise/.travis.yml" />
|
||||
|
||||
<delete dir="${dir}/vendor/s9e/text-formatter/.git" />
|
||||
|
||||
<delete dir="${dir}/vendor/symfony/config/.git" />
|
||||
@@ -400,6 +443,13 @@
|
||||
<delete file="${dir}/vendor/symfony/http-kernel/README.md" />
|
||||
<delete file="${dir}/vendor/symfony/http-kernel/phpunit.xml.dist" />
|
||||
|
||||
<delete dir="${dir}/vendor/symfony/proxy-manager-bridge/.git" />
|
||||
<delete dir="${dir}/vendor/symfony/proxy-manager-bridge/Tests" />
|
||||
<delete file="${dir}/vendor/symfony/proxy-manager-bridge/.gitignore" />
|
||||
<delete file="${dir}/vendor/symfony/proxy-manager-bridge/CHANGELOG.md" />
|
||||
<delete file="${dir}/vendor/symfony/proxy-manager-bridge/README.md" />
|
||||
<delete file="${dir}/vendor/symfony/proxy-manager-bridge/phpunit.xml.dist" />
|
||||
|
||||
<delete dir="${dir}/vendor/symfony/routing/.git" />
|
||||
<delete dir="${dir}/vendor/symfony/routing/Tests" />
|
||||
<delete file="${dir}/vendor/symfony/routing/.gitignore" />
|
||||
@@ -430,6 +480,15 @@
|
||||
<delete file="${dir}/vendor/twig/twig/CHANGELOG" />
|
||||
<delete file="${dir}/vendor/twig/twig/phpunit.xml.dist" />
|
||||
<delete file="${dir}/vendor/twig/twig/README.rst" />
|
||||
|
||||
<delete file="${dir}/vendor/zendframework/zend-code/CONTRIBUTING.md" />
|
||||
<delete file="${dir}/vendor/zendframework/zend-code/README.md" />
|
||||
|
||||
<delete file="${dir}/vendor/zendframework/zend-eventmanager/CONTRIBUTING.md" />
|
||||
<delete file="${dir}/vendor/zendframework/zend-eventmanager/README.md" />
|
||||
|
||||
<delete file="${dir}/vendor/zendframework/zend-stdlib/CONTRIBUTING.md" />
|
||||
<delete file="${dir}/vendor/zendframework/zend-stdlib/README.md" />
|
||||
</target>
|
||||
|
||||
<target name="clean-diff-dir">
|
||||
|
@@ -134,53 +134,19 @@ class phpbb_Sniffs_Namespaces_UnusedUseSniff implements PHP_CodeSniffer_Sniff
|
||||
}
|
||||
}
|
||||
|
||||
$old_docblock = $stackPtr;
|
||||
while (($docblock = $phpcsFile->findNext(T_DOC_COMMENT_CLOSE_TAG, ($old_docblock + 1))) !== false)
|
||||
{
|
||||
$old_docblock = $docblock;
|
||||
$ok = $this->checkDocblock($phpcsFile, $docblock, $tokens, $class_name_full, $class_name_short) ? true : $ok;
|
||||
}
|
||||
|
||||
// Checks in type hinting
|
||||
$old_function_declaration = $stackPtr;
|
||||
while (($function_declaration = $phpcsFile->findNext(T_FUNCTION, ($old_function_declaration + 1))) !== false)
|
||||
{
|
||||
$old_function_declaration = $function_declaration;
|
||||
|
||||
// Check docblocks
|
||||
$find = array(
|
||||
T_COMMENT,
|
||||
T_DOC_COMMENT_CLOSE_TAG,
|
||||
T_DOC_COMMENT,
|
||||
T_CLASS,
|
||||
T_FUNCTION,
|
||||
T_OPEN_TAG,
|
||||
);
|
||||
|
||||
$comment_end = $phpcsFile->findPrevious($find, ($function_declaration - 1));
|
||||
if ($comment_end !== false)
|
||||
{
|
||||
if ($tokens[$comment_end]['code'] === T_DOC_COMMENT_CLOSE_TAG)
|
||||
{
|
||||
$comment_start = $tokens[$comment_end]['comment_opener'];
|
||||
foreach ($tokens[$comment_start]['comment_tags'] as $tag) {
|
||||
if ($tokens[$tag]['content'] !== '@param' && $tokens[$tag]['content'] !== '@return' && $tokens[$tag]['content'] !== '@throws') {
|
||||
continue;
|
||||
}
|
||||
|
||||
$classes = $tokens[($tag + 2)]['content'];
|
||||
$space = strpos($classes, ' ');
|
||||
if ($space !== false) {
|
||||
$classes = substr($classes, 0, $space);
|
||||
}
|
||||
|
||||
$tab = strpos($classes, "\t");
|
||||
if ($tab !== false) {
|
||||
$classes = substr($classes, 0, $tab);
|
||||
}
|
||||
|
||||
$classes = explode('|', str_replace('[]', '', $classes));
|
||||
foreach ($classes as $class)
|
||||
{
|
||||
$ok = $this->check($phpcsFile, $class, $class_name_full, $class_name_short, $tokens[$tag + 2]['line']) ? true : $ok;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Check type hint
|
||||
$params = $phpcsFile->getMethodParameters($function_declaration);
|
||||
foreach ($params as $param)
|
||||
@@ -239,4 +205,49 @@ class phpbb_Sniffs_Namespaces_UnusedUseSniff implements PHP_CodeSniffer_Sniff
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @param PHP_CodeSniffer_File $phpcsFile
|
||||
* @param int $field
|
||||
* @param array $tokens
|
||||
* @param string $class_name_full
|
||||
* @param string $class_name_short
|
||||
* @param bool $ok
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
private function checkDocblock(PHP_CodeSniffer_File $phpcsFile, $comment_end, $tokens, $class_name_full, $class_name_short)
|
||||
{
|
||||
$ok = false;
|
||||
|
||||
$comment_start = $tokens[$comment_end]['comment_opener'];
|
||||
foreach ($tokens[$comment_start]['comment_tags'] as $tag)
|
||||
{
|
||||
if (!in_array($tokens[$tag]['content'], array('@param', '@var', '@return', '@throws'), true))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
$classes = $tokens[($tag + 2)]['content'];
|
||||
$space = strpos($classes, ' ');
|
||||
if ($space !== false)
|
||||
{
|
||||
$classes = substr($classes, 0, $space);
|
||||
}
|
||||
|
||||
$tab = strpos($classes, "\t");
|
||||
if ($tab !== false)
|
||||
{
|
||||
$classes = substr($classes, 0, $tab);
|
||||
}
|
||||
|
||||
$classes = explode('|', str_replace('[]', '', $classes));
|
||||
foreach ($classes as $class)
|
||||
{
|
||||
$ok = $this->check($phpcsFile, $class, $class_name_full, $class_name_short, $tokens[$tag + 2]['line']) ? true : $ok;
|
||||
}
|
||||
}
|
||||
|
||||
return $ok;
|
||||
}
|
||||
}
|
||||
|
BIN
composer.phar
BIN
composer.phar
Binary file not shown.
@@ -1,6 +1,16 @@
|
||||
<IfModule mod_rewrite.c>
|
||||
RewriteEngine on
|
||||
|
||||
#
|
||||
# Uncomment the statement below if URL rewriting doesn't
|
||||
# work properly. If you installed phpBB in a subdirectory
|
||||
# of your site, properly set the argument for the statement.
|
||||
# e.g.: if your domain is test.com and you installed phpBB
|
||||
# in http://www.test.com/phpBB/index.php you have to set
|
||||
# the statement RewriteBase /phpBB/
|
||||
#
|
||||
#RewriteBase /
|
||||
|
||||
#
|
||||
# Uncomment the statement below if you want to make use of
|
||||
# HTTP authentication and it does not already work.
|
||||
|
@@ -196,7 +196,7 @@
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="extgroup_filesize">{L_MAX_EXTGROUP_FILESIZE}{L_COLON}</label></dt>
|
||||
<dd><input type="number" id="extgroup_filesize" size="3" maxlength="15" name="max_filesize" value="{EXTGROUP_FILESIZE}" /> <select name="size_select">{S_EXT_GROUP_SIZE_OPTIONS}</select></dd>
|
||||
<dd><input type="number" id="extgroup_filesize" min="0" max="999999999999999" step="any" name="max_filesize" value="{EXTGROUP_FILESIZE}" /> <select name="size_select">{S_EXT_GROUP_SIZE_OPTIONS}</select></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="assigned_extensions">{L_ASSIGNED_EXTENSIONS}{L_COLON}</label></dt>
|
||||
@@ -346,7 +346,7 @@
|
||||
<td><a href="{orphan.U_FILE}">{orphan.REAL_FILENAME}</a></td>
|
||||
<td>{orphan.FILETIME}</td>
|
||||
<td>{orphan.FILESIZE}</td>
|
||||
<td><strong>{L_ATTACH_ID}{L_COLON} </strong><input type="number" name="post_id[{orphan.ATTACH_ID}]" maxlength="10" value="{orphan.POST_ID}" style="width: 75%;" /></td>
|
||||
<td><strong>{L_ATTACH_ID}{L_COLON} </strong><input type="number" min="0" max="9999999999" name="post_id[{orphan.ATTACH_ID}]" value="{orphan.POST_ID}" style="width: 75%;" /></td>
|
||||
<td><input type="checkbox" class="radio" name="add[{orphan.ATTACH_ID}]" /></td>
|
||||
<td><input type="checkbox" class="radio" name="delete[{orphan.ATTACH_ID}]" /></td>
|
||||
</tr>
|
||||
|
@@ -5,7 +5,7 @@
|
||||
<dl>
|
||||
<dt><label for="avatar_gravatar_width">{L_GRAVATAR_AVATAR_SIZE}{L_COLON}</label><br /><span>{L_GRAVATAR_AVATAR_SIZE_EXPLAIN}</span></dt>
|
||||
<dd>
|
||||
<input type="number" name="avatar_gravatar_width" id="avatar_gravatar_width" size="3" value="{AVATAR_GRAVATAR_WIDTH}" class="inputbox autowidth" /> {L_PIXEL} ×
|
||||
<input type="number" name="avatar_gravatar_height" id="avatar_gravatar_height" size="3" value="{AVATAR_GRAVATAR_HEIGHT}" class="inputbox autowidth" /> {L_PIXEL}
|
||||
<input type="number" name="avatar_gravatar_width" id="avatar_gravatar_width" min="{AVATAR_MIN_WIDTH}" max="{AVATAR_MAX_WIDTH}" value="{AVATAR_GRAVATAR_WIDTH}" class="inputbox autowidth" /> {L_PIXEL} ×
|
||||
<input type="number" name="avatar_gravatar_height" id="avatar_gravatar_height" min="{AVATAR_MIN_HEIGHT}" max="{AVATAR_MAX_HEIGHT}" value="{AVATAR_GRAVATAR_HEIGHT}" class="inputbox autowidth" /> {L_PIXEL}
|
||||
</dd>
|
||||
</dl>
|
||||
|
@@ -5,7 +5,7 @@
|
||||
<dl>
|
||||
<dt><label for="avatar_remote_width">{L_LINK_REMOTE_SIZE}{L_COLON}</label><br /><span>{L_LINK_REMOTE_SIZE_EXPLAIN}</span></dt>
|
||||
<dd>
|
||||
<input type="number" name="avatar_remote_width" id="avatar_remote_width" size="3" value="{AVATAR_REMOTE_WIDTH}" class="inputbox autowidth" /> {L_PIXEL} ×
|
||||
<input type="number" name="avatar_remote_height" id="avatar_remote_height" size="3" value="{AVATAR_REMOTE_HEIGHT}" class="inputbox autowidth" /> {L_PIXEL}
|
||||
<input type="number" name="avatar_remote_width" id="avatar_remote_width" min="{AVATAR_MIN_WIDTH}" max="{AVATAR_MAX_WIDTH}" value="{AVATAR_REMOTE_WIDTH}" class="inputbox autowidth" /> {L_PIXEL} ×
|
||||
<input type="number" name="avatar_remote_height" id="avatar_remote_height" min="{AVATAR_MIN_HEIGHT}" max="{AVATAR_MAX_HEIGHT}" value="{AVATAR_REMOTE_HEIGHT}" class="inputbox autowidth" /> {L_PIXEL}
|
||||
</dd>
|
||||
</dl>
|
||||
|
@@ -27,11 +27,11 @@
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="max_reg_attempts">{L_REG_LIMIT}{L_COLON}</label><br /><span>{L_REG_LIMIT_EXPLAIN}</span></dt>
|
||||
<dd><input id="max_reg_attempts" type="number" size="4" maxlength="4" min="0" max="9999" name="max_reg_attempts" value="{REG_LIMIT}" /></dd>
|
||||
<dd><input id="max_reg_attempts" type="number" min="0" max="9999" name="max_reg_attempts" value="{REG_LIMIT}" /></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="max_login_attempts">{L_MAX_LOGIN_ATTEMPTS}{L_COLON}</label><br /><span>{L_MAX_LOGIN_ATTEMPTS_EXPLAIN}</span></dt>
|
||||
<dd><input id="max_login_attempts" type="number" size="4" maxlength="4" min="0" max="9999" name="max_login_attempts" value="{MAX_LOGIN_ATTEMPTS}" /></dd>
|
||||
<dd><input id="max_login_attempts" type="number" min="0" max="9999" name="max_login_attempts" value="{MAX_LOGIN_ATTEMPTS}" /></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="enable_post_confirm">{L_VISUAL_CONFIRM_POST}{L_COLON}</label><br /><span>{L_VISUAL_CONFIRM_POST_EXPLAIN}</span></dt>
|
||||
|
@@ -14,7 +14,7 @@
|
||||
<legend>{L_RESTORE_OPTIONS}</legend>
|
||||
<dl>
|
||||
<dt><label for="file">{L_SELECT_FILE}{L_COLON}</label></dt>
|
||||
<dd><select id="file" name="file" size="10"><!-- BEGIN files --><option value="{files.FILE}"<!-- IF files.S_LAST_ROW --> selected="selected"<!-- ENDIF -->>{files.NAME}</option><!-- END files --></select></dd>
|
||||
<dd><select id="file" name="file" size="10"><!-- BEGIN files --><option value="{files.FILE}"<!-- IF files.S_FIRST_ROW --> selected="selected"<!-- ENDIF -->>{files.NAME}</option><!-- END files --></select></dd>
|
||||
</dl>
|
||||
|
||||
<p class="submit-buttons">
|
||||
|
@@ -242,7 +242,7 @@
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="topics_per_page">{L_FORUM_TOPICS_PAGE}{L_COLON}</label><br /><span>{L_FORUM_TOPICS_PAGE_EXPLAIN}</span></dt>
|
||||
<dd><input type="number" id="topics_per_page" name="topics_per_page" value="{TOPICS_PER_PAGE}" size="4" maxlength="4" min="0" max="9999" /></dd>
|
||||
<dd><input type="number" id="topics_per_page" name="topics_per_page" value="{TOPICS_PER_PAGE}" min="0" max="9999" /></dd>
|
||||
</dl>
|
||||
<!-- EVENT acp_forums_normal_settings_append -->
|
||||
</fieldset>
|
||||
@@ -257,15 +257,15 @@
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="prune_freq">{L_AUTO_PRUNE_FREQ}{L_COLON}</label><br /><span>{L_AUTO_PRUNE_FREQ_EXPLAIN}</span></dt>
|
||||
<dd><input type="number" id="prune_freq" name="prune_freq" value="{PRUNE_FREQ}" maxlength="4" size="4" min="0" max="9999" /> {L_DAYS}</dd>
|
||||
<dd><input type="number" id="prune_freq" name="prune_freq" value="{PRUNE_FREQ}" min="0" max="9999" /> {L_DAYS}</dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="prune_days">{L_AUTO_PRUNE_DAYS}{L_COLON}</label><br /><span>{L_AUTO_PRUNE_DAYS_EXPLAIN}</span></dt>
|
||||
<dd><input type="number" id="prune_days" name="prune_days" value="{PRUNE_DAYS}" maxlength="4" size="4" min="0" max="9999" /> {L_DAYS}</dd>
|
||||
<dd><input type="number" id="prune_days" name="prune_days" value="{PRUNE_DAYS}" min="0" max="9999" /> {L_DAYS}</dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="prune_viewed">{L_AUTO_PRUNE_VIEWED}{L_COLON}</label><br /><span>{L_AUTO_PRUNE_VIEWED_EXPLAIN}</span></dt>
|
||||
<dd><input type="number" id="prune_viewed" name="prune_viewed" value="{PRUNE_VIEWED}" maxlength="4" size="4" min="0" max="9999" /> {L_DAYS}</dd>
|
||||
<dd><input type="number" id="prune_viewed" name="prune_viewed" value="{PRUNE_VIEWED}" min="0" max="9999" /> {L_DAYS}</dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="prune_old_polls">{L_PRUNE_OLD_POLLS}{L_COLON}</label><br /><span>{L_PRUNE_OLD_POLLS_EXPLAIN}</span></dt>
|
||||
@@ -289,11 +289,11 @@
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="prune_shadow_freq">{L_AUTO_PRUNE_SHADOW_FREQ}{L_COLON}</label><br /><span>{L_AUTO_PRUNE_SHADOW_FREQ_EXPLAIN}</span></dt>
|
||||
<dd><input type="number" id="prune_shadow_freq" name="prune_shadow_freq" value="{PRUNE_SHADOW_FREQ}" maxlength="4" size="4" min="0" max="9999" /> {L_DAYS}</dd>
|
||||
<dd><input type="number" id="prune_shadow_freq" name="prune_shadow_freq" value="{PRUNE_SHADOW_FREQ}" min="0" max="9999" /> {L_DAYS}</dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="prune_shadow_days">{L_AUTO_PRUNE_SHADOW_DAYS}{L_COLON}</label><br /><span>{L_AUTO_PRUNE_SHADOW_DAYS_EXPLAIN}</span></dt>
|
||||
<dd><input type="number" id="prune_shadow_days" name="prune_shadow_days" value="{PRUNE_SHADOW_DAYS}" maxlength="4" size="4" min="0" max="9999" /> {L_DAYS}</dd>
|
||||
<dd><input type="number" id="prune_shadow_days" name="prune_shadow_days" value="{PRUNE_SHADOW_DAYS}" min="0" max="9999" /> {L_DAYS}</dd>
|
||||
</dl>
|
||||
<!-- EVENT acp_forums_prune_settings_append -->
|
||||
</fieldset>
|
||||
|
@@ -86,11 +86,11 @@
|
||||
<legend>{L_GROUP_SETTINGS_SAVE}</legend>
|
||||
<dl>
|
||||
<dt><label for="group_message_limit">{L_GROUP_MESSAGE_LIMIT}{L_COLON}</label><br /><span>{L_GROUP_MESSAGE_LIMIT_EXPLAIN}</span></dt>
|
||||
<dd><input name="group_message_limit" type="number" id="group_message_limit" maxlength="4" size="4" min="0" max="9999" value="{GROUP_MESSAGE_LIMIT}" /></dd>
|
||||
<dd><input name="group_message_limit" type="number" id="group_message_limit" min="0" max="9999" value="{GROUP_MESSAGE_LIMIT}" /></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="group_max_recipients">{L_GROUP_MAX_RECIPIENTS}{L_COLON}</label><br /><span>{L_GROUP_MAX_RECIPIENTS_EXPLAIN}</span></dt>
|
||||
<dd><input name="group_max_recipients" type="number" id="group_max_recipients" maxlength="10" size="4" value="{GROUP_MAX_RECIPIENTS}" /></dd>
|
||||
<dd><input name="group_max_recipients" type="number" id="group_max_recipients" min="0" max="9999" value="{GROUP_MAX_RECIPIENTS}" /></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="group_colour">{L_GROUP_COLOR}{L_COLON}</label><br /><span>{L_GROUP_COLOR_EXPLAIN}</span></dt>
|
||||
|
@@ -111,8 +111,8 @@
|
||||
<td><input class="text post" type="text" name="code[{items.IMG}]" value="{items.CODE}" size="10" maxlength="50" /></td>
|
||||
<td><input class="text post" type="text" name="emotion[{items.IMG}]" value="{items.EMOTION}" size="10" maxlength="50" /></td>
|
||||
<!-- ENDIF -->
|
||||
<td><input class="text post" type="number" size="3" name="width[{items.IMG}]" value="{items.WIDTH}" /></td>
|
||||
<td><input class="text post" type="number" size="3" name="height[{items.IMG}]" value="{items.HEIGHT}" /></td>
|
||||
<td><input class="text post" type="number" min="0" max="999" name="width[{items.IMG}]" value="{items.WIDTH}" /></td>
|
||||
<td><input class="text post" type="number" min="0" max="999" name="height[{items.IMG}]" value="{items.HEIGHT}" /></td>
|
||||
<!-- IF not S_SMILIES -->
|
||||
<td><input class="text post" type="text" name="alt[{items.IMG}]" value="{items.ALT}" size="10" maxlength="50" /></td>
|
||||
<!-- ENDIF -->
|
||||
@@ -142,8 +142,8 @@
|
||||
<td style="vertical-align: top;"><img src="{IMG_SRC}" id="add_image_src" alt="" title="" /></td>
|
||||
<td><input class="text post" type="text" name="add_code" id="add_code" value="{CODE}" size="10" maxlength="50" /></td>
|
||||
<td><input class="text post" type="text" name="add_emotion" id="add_emotion" value="{EMOTION}" size="10" maxlength="50" /></td>
|
||||
<td><input class="text post" type="number" size="3" name="add_width" id="add_width" value="{WIDTH}" /></td>
|
||||
<td><input class="text post" type="number" size="3" name="add_height" id="add_height" value="{HEIGHT}" /></td>
|
||||
<td><input class="text post" type="number" min="0" max="999" name="add_width" id="add_width" value="{WIDTH}" /></td>
|
||||
<td><input class="text post" type="number" min="0" max="999" 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="order_add_order" name="add_order">
|
||||
<optgroup id="order_disp_add_order" label="{L_DISPLAY_POSTING}">{S_ADD_ORDER_LIST_DISPLAY}</optgroup>
|
||||
|
@@ -52,7 +52,7 @@
|
||||
</table>
|
||||
|
||||
<fieldset class="display-options">
|
||||
{L_DISPLAY_LOG}{L_COLON} {S_LIMIT_DAYS} {L_SORT_BY}{L_COLON} {S_SORT_KEY} {S_SORT_DIR}<!-- IF .pagination --> {L_USERS_PER_PAGE}{L_COLON} <input class="inputbox autowidth" type="number" name="users_per_page" id="users_per_page" size="3" value="{USERS_PER_PAGE}" /><!-- ENDIF -->
|
||||
{L_DISPLAY_LOG}{L_COLON} {S_LIMIT_DAYS} {L_SORT_BY}{L_COLON} {S_SORT_KEY} {S_SORT_DIR}<!-- IF .pagination --> {L_USERS_PER_PAGE}{L_COLON} <input class="inputbox autowidth" type="number" name="users_per_page" id="users_per_page" min="0" max="999" value="{USERS_PER_PAGE}" /><!-- ENDIF -->
|
||||
<input class="button2" type="submit" value="{L_GO}" name="sort" />
|
||||
</fieldset>
|
||||
|
||||
|
@@ -31,7 +31,7 @@
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="jab_port">{L_JAB_PORT}{L_COLON}</label><br /><span>{L_JAB_PORT_EXPLAIN}</span></dt>
|
||||
<dd><input type="number" id="jab_port" name="jab_port" value="{JAB_PORT}" maxlength="5" size="5" /></dd>
|
||||
<dd><input type="number" id="jab_port" name="jab_port" value="{JAB_PORT}" min="0" max="99999" /></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="jab_username">{L_JAB_USERNAME}{L_COLON}</label><br /><span>{L_JAB_USERNAME_EXPLAIN}</span></dt>
|
||||
@@ -50,7 +50,7 @@
|
||||
<!-- ENDIF -->
|
||||
<dl>
|
||||
<dt><label for="jab_package_size">{L_JAB_PACKAGE_SIZE}{L_COLON}</label><br /><span>{L_JAB_PACKAGE_SIZE_EXPLAIN}</span></dt>
|
||||
<dd><input type="number" id="jab_package_size" name="jab_package_size" value="{JAB_PACKAGE_SIZE}" maxlength="5" size="5" min="0" max="99999" /></dd>
|
||||
<dd><input type="number" id="jab_package_size" name="jab_package_size" value="{JAB_PACKAGE_SIZE}" min="0" max="99999" /></dd>
|
||||
</dl>
|
||||
|
||||
</fieldset>
|
||||
|
@@ -44,7 +44,7 @@
|
||||
<div id="posts"<!-- IF S_SPECIAL_RANK --> style="display: none;"<!-- ENDIF -->>
|
||||
<dl>
|
||||
<dt><label for="min_posts">{L_RANK_MINIMUM}{L_COLON}</label></dt>
|
||||
<dd><input name="min_posts" type="number" id="min_posts" maxlength="10" value="{MIN_POSTS}" /></dd>
|
||||
<dd><input name="min_posts" type="number" id="min_posts" min="0" max="9999999999" value="{MIN_POSTS}" /></dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
|
@@ -18,11 +18,11 @@
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="search_interval">{L_SEARCH_INTERVAL}{L_COLON}</label><br /><span>{L_SEARCH_INTERVAL_EXPLAIN}</span></dt>
|
||||
<dd><input id="search_interval" type="number" size="4" maxlength="4" min="0" max="9999" name="config[search_interval]" value="{SEARCH_INTERVAL}" /> {L_SECONDS}</dd>
|
||||
<dd><input id="search_interval" type="number" min="0" max="9999" name="config[search_interval]" value="{SEARCH_INTERVAL}" /> {L_SECONDS}</dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="search_anonymous_interval">{L_SEARCH_GUEST_INTERVAL}{L_COLON}</label><br /><span>{L_SEARCH_GUEST_INTERVAL_EXPLAIN}</span></dt>
|
||||
<dd><input id="search_anonymous_interval" type="number" size="4" maxlength="4" min="0" max="9999" name="config[search_anonymous_interval]" value="{SEARCH_GUEST_INTERVAL}" /> {L_SECONDS}</dd>
|
||||
<dd><input id="search_anonymous_interval" type="number" min="0" max="9999" name="config[search_anonymous_interval]" value="{SEARCH_GUEST_INTERVAL}" /> {L_SECONDS}</dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="limit_search_load">{L_LIMIT_SEARCH_LOAD}{L_COLON}</label><br /><span>{L_LIMIT_SEARCH_LOAD_EXPLAIN}</span></dt>
|
||||
@@ -30,15 +30,15 @@
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="min_search_author_chars">{L_MIN_SEARCH_AUTHOR_CHARS}{L_COLON}</label><br /><span>{L_MIN_SEARCH_AUTHOR_CHARS_EXPLAIN}</span></dt>
|
||||
<dd><input id="min_search_author_chars" type="number" size="4" maxlength="4" min="0" max="9999" name="config[min_search_author_chars]" value="{MIN_SEARCH_AUTHOR_CHARS}" /></dd>
|
||||
<dd><input id="min_search_author_chars" type="number" min="0" max="9999" name="config[min_search_author_chars]" value="{MIN_SEARCH_AUTHOR_CHARS}" /></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="max_num_search_keywords">{L_MAX_NUM_SEARCH_KEYWORDS}{L_COLON}</label><br /><span>{L_MAX_NUM_SEARCH_KEYWORDS_EXPLAIN}</span></dt>
|
||||
<dd><input id="max_num_search_keywords" type="number" size="4" maxlength="4" min="0" max="9999" name="config[max_num_search_keywords]" value="{MAX_NUM_SEARCH_KEYWORDS}" /></dd>
|
||||
<dd><input id="max_num_search_keywords" type="number" min="0" max="9999" name="config[max_num_search_keywords]" value="{MAX_NUM_SEARCH_KEYWORDS}" /></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="search_store_results">{L_SEARCH_STORE_RESULTS}{L_COLON}</label><br /><span>{L_SEARCH_STORE_RESULTS_EXPLAIN}</span></dt>
|
||||
<dd><input id="search_store_results" type="number" size="4" maxlength="6" min="0" max="999999" name="config[search_store_results]" value="{SEARCH_STORE_RESULTS}" /> {L_SECONDS}</dd>
|
||||
<dd><input id="search_store_results" type="number" min="0" max="999999" name="config[search_store_results]" value="{SEARCH_STORE_RESULTS}" /> {L_SECONDS}</dd>
|
||||
</dl>
|
||||
</fieldset>
|
||||
|
||||
|
@@ -2471,7 +2471,7 @@ fieldset.permissions .padding {
|
||||
|
||||
.roles-options > .dropdown {
|
||||
left: auto;
|
||||
top: 3em;
|
||||
top: 3.2em;
|
||||
width: 250px;
|
||||
}
|
||||
|
||||
@@ -2489,7 +2489,7 @@ fieldset.permissions .padding {
|
||||
border-radius: 3px;
|
||||
padding: 4px;
|
||||
width: 250px;
|
||||
display: block;
|
||||
display: none;
|
||||
background: url('../images/arrow_down.gif') no-repeat 245px .7em;
|
||||
}
|
||||
|
||||
|
@@ -11,6 +11,15 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
installLang = {
|
||||
title: '{LA_TIMEOUT_DETECTED_TITLE}',
|
||||
msg: '{LA_TIMEOUT_DETECTED_MESSAGE}'
|
||||
};
|
||||
//-->
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="{T_JQUERY_LINK}"></script>
|
||||
<!-- IF S_ALLOW_CDN --><script type="text/javascript">window.jQuery || document.write('\x3Cscript src="{T_ASSETS_PATH}/javascript/jquery.min.js">\x3C/script>');</script><!-- ENDIF -->
|
||||
<script type="text/javascript" src="{T_ASSETS_PATH}/javascript/core.js?assets_version={T_ASSETS_VERSION}"></script>
|
||||
|
@@ -2,6 +2,7 @@
|
||||
<html dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<!-- IF META -->{META}<!-- ENDIF -->
|
||||
<title>{PAGE_TITLE}</title>
|
||||
|
@@ -2,6 +2,7 @@
|
||||
<html dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<!-- IF META -->{META}<!-- ENDIF -->
|
||||
<title>{PAGE_TITLE}</title>
|
||||
|
@@ -39,18 +39,19 @@
|
||||
</div>
|
||||
<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}{L_COLON}</label></dt>
|
||||
{% if role_options %}
|
||||
{% if p_mask.f_mask.role_options %}
|
||||
<dd style="margin-{S_CONTENT_FLOW_BEGIN}{L_COLON} 20%">
|
||||
<div class="dropdown-container dropdown-button-control roles-options" data-alt-text="{LA_ROLE_DESCRIPTION}">
|
||||
<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}]">{p_mask.f_mask.S_ROLE_OPTIONS}</select>
|
||||
<span title="Roles" class="button icon-button tools-icon dropdown-trigger dropdown-select">{L_NO_ROLE_ASSIGNED}</span>
|
||||
<div class="dropdown hidden">
|
||||
<ul class="dropdown-contents" id="role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" >
|
||||
{% for role in loops.role_options %}
|
||||
{% for role in p_mask.f_mask.role_options %}
|
||||
<li data-id="{{ role.ID }}" data-target-id="advanced{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" data-title="{{ role.TITLE }}"{% if role.SELECTED == true %} data-selected="{{ role.SELECTED }}"{% endif %}>{{ role.ROLE_NAME }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
<input type="hidden" name="role[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]"{% if S_ROLE_ID %}value="{{ S_ROLE_ID }}"{% endif %} />
|
||||
<input type="hidden" data-name="role[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]"{% if p_mask.f_mask.S_ROLE_ID %}value="{{ p_mask.f_mask.S_ROLE_ID }}"{% endif %} />
|
||||
</div>
|
||||
</dd>
|
||||
{% else %}
|
||||
|
@@ -2,6 +2,7 @@
|
||||
<html dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<!-- IF META -->{META}<!-- ENDIF -->
|
||||
<title>{PAGE_TITLE}</title>
|
||||
|
@@ -141,20 +141,43 @@ phpbb.positionTooltip = function ($element) {
|
||||
*/
|
||||
phpbb.prepareRolesDropdown = function () {
|
||||
var $options = $('.roles-options li');
|
||||
var $rolesOptions = $options.closest('.roles-options');
|
||||
var $span = $rolesOptions.children('span');
|
||||
|
||||
// Display span and hide select
|
||||
$('.roles-options > span').css('display', 'block');
|
||||
$('.roles-options > select').hide();
|
||||
$('.roles-options > input[type=hidden]').each(function () {
|
||||
var $this = $(this);
|
||||
|
||||
if ($this.attr('data-name') && !$this.attr('name')) {
|
||||
$this.attr('name', $this.attr('data-name'));
|
||||
}
|
||||
});
|
||||
|
||||
// Prepare highlighting of select options and settings update
|
||||
$options.each(function () {
|
||||
var $this = $(this);
|
||||
var $rolesOptions = $this.closest('.roles-options');
|
||||
var $span = $rolesOptions.children('span');
|
||||
|
||||
// Correctly show selected option
|
||||
if (typeof $this.attr('data-selected') !== 'undefined') {
|
||||
$rolesOptions.closest('.roles-options')
|
||||
$rolesOptions
|
||||
.children('span')
|
||||
.text($this.text())
|
||||
.attr('data-default', $this.text())
|
||||
.attr('data-default-val', $this.attr('data-id'));
|
||||
|
||||
// Save default text of drop down if there is no default set yet
|
||||
if (typeof $span.attr('data-default') === 'undefined') {
|
||||
$span.attr('data-default', $span.text());
|
||||
}
|
||||
|
||||
// Prepare resetting drop down on form reset
|
||||
$this.closest('form').on('reset', function () {
|
||||
$span.text($span.attr('data-default'));
|
||||
$rolesOptions.children('input[type=hidden]')
|
||||
.val($span.attr('data-default-val'));
|
||||
});
|
||||
}
|
||||
|
||||
$this.on('mouseover', function () {
|
||||
@@ -163,6 +186,7 @@ phpbb.prepareRolesDropdown = function () {
|
||||
$this.addClass('roles-highlight');
|
||||
}).on('click', function () {
|
||||
var $this = $(this);
|
||||
var $rolesOptions = $this.closest('.roles-options');
|
||||
|
||||
// Update settings
|
||||
set_role_settings($this.attr('data-id'), $this.attr('data-target-id'));
|
||||
@@ -178,19 +202,6 @@ phpbb.prepareRolesDropdown = function () {
|
||||
$('body').trigger('click');
|
||||
});
|
||||
});
|
||||
|
||||
// Save default text of drop down if there is no default set yet
|
||||
if (typeof $span.attr('data-default') === 'undefined') {
|
||||
$span.attr('data-default', $span.text());
|
||||
}
|
||||
|
||||
// Prepare resetting drop down on form reset
|
||||
$options.closest('form').on('reset', function () {
|
||||
$span.text($span.attr('data-default'));
|
||||
$rolesOptions.children('input[type=hidden]')
|
||||
.val($span.attr('data-id'));
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
// Run onload functions for RolesDropdown and tooltips
|
||||
|
@@ -1032,7 +1032,7 @@ phpbb.resizeTextArea = function($items, options) {
|
||||
|
||||
function autoResize(item) {
|
||||
function setHeight(height) {
|
||||
height += parseInt($item.css('height'), 10) - $item.height();
|
||||
height += parseInt($item.css('height'), 10) - $item.innerHeight();
|
||||
$item
|
||||
.css({ height: height + 'px', resize: 'none' })
|
||||
.addClass('auto-resized');
|
||||
@@ -1051,7 +1051,7 @@ phpbb.resizeTextArea = function($items, options) {
|
||||
configuration.maxHeight
|
||||
),
|
||||
$item = $(item),
|
||||
height = parseInt($item.height(), 10),
|
||||
height = parseInt($item.innerHeight(), 10),
|
||||
scrollHeight = (item.scrollHeight) ? item.scrollHeight : 0;
|
||||
|
||||
if (height < 0) {
|
||||
@@ -1541,6 +1541,13 @@ phpbb.toggleSelectSettings = function(el) {
|
||||
var $this = $(this),
|
||||
$setting = $($this.data('toggle-setting'));
|
||||
$setting.toggle($this.is(':selected'));
|
||||
|
||||
// Disable any input elements that are not visible right now
|
||||
if ($this.is(':selected')) {
|
||||
$($this.data('toggle-setting') + ' input').prop('disabled', false);
|
||||
} else {
|
||||
$($this.data('toggle-setting') + ' input').prop('disabled', true);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
|
@@ -414,6 +414,12 @@ function getCaretPosition(txtarea) {
|
||||
if ($('#attach-panel').length) {
|
||||
phpbb.showDragNDrop(textarea);
|
||||
}
|
||||
|
||||
$('textarea').on('keydown', function (e) {
|
||||
if (e.which === 13 && (e.metaKey || e.ctrlKey)) {
|
||||
$(this).closest('form').submit();
|
||||
}
|
||||
});
|
||||
});
|
||||
})(jQuery);
|
||||
|
||||
|
@@ -12,6 +12,8 @@
|
||||
var progressTimer = null;
|
||||
var currentProgress = 0;
|
||||
var refreshRequested = false;
|
||||
var transmissionOver = false;
|
||||
var statusCount = 0;
|
||||
|
||||
// Template related variables
|
||||
var $contentWrapper = $('.install-body').find('.main');
|
||||
@@ -211,6 +213,7 @@
|
||||
clearInterval(progressTimer);
|
||||
|
||||
$progressFiller = $('#progress-bar-filler');
|
||||
$progressFillerText = $('#progress-bar-filler-text');
|
||||
$progressText = $('#progress-bar-text');
|
||||
$statusText = $('#progress-status-text');
|
||||
|
||||
@@ -328,6 +331,63 @@
|
||||
if (responseObject.hasOwnProperty('redirect')) {
|
||||
redirect(responseObject.redirect.url, responseObject.redirect.use_ajax);
|
||||
}
|
||||
|
||||
if (responseObject.hasOwnProperty('over')) {
|
||||
if (responseObject.over) {
|
||||
transmissionOver = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Processes status data
|
||||
*
|
||||
* @param status
|
||||
*/
|
||||
function processTimeoutResponse(status) {
|
||||
if (statusCount === 12) { // 1 minute hard cap
|
||||
status = 'fail';
|
||||
}
|
||||
|
||||
if (status === 'continue') {
|
||||
refreshRequested = false;
|
||||
doRefresh();
|
||||
} else if (status === 'running') {
|
||||
statusCount++;
|
||||
$('#loading_indicator').css('display', 'block');
|
||||
setTimeout(queryInstallerStatus, 5000);
|
||||
} else {
|
||||
$('#loading_indicator').css('display', 'none');
|
||||
addMessage('error',
|
||||
[{
|
||||
title: installLang.title,
|
||||
description: installLang.msg
|
||||
}]
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Queries the installer's status
|
||||
*/
|
||||
function queryInstallerStatus() {
|
||||
var url = $(location).attr('pathname');
|
||||
var lookUp = 'install/app.php';
|
||||
var position = url.indexOf(lookUp);
|
||||
|
||||
if (position === -1) {
|
||||
lookUp = 'install';
|
||||
position = url.indexOf(lookUp);
|
||||
|
||||
if (position === -1) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
url = url.substring(0, position) + lookUp + '/installer/status';
|
||||
$.getJSON(url, function(data) {
|
||||
processTimeoutResponse(data.status);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -356,10 +416,17 @@
|
||||
$('#loading_indicator').css('display', 'none');
|
||||
resetPolling();
|
||||
|
||||
var timeoutDetected = !transmissionOver;
|
||||
|
||||
if (refreshRequested) {
|
||||
refreshRequested = false;
|
||||
doRefresh();
|
||||
}
|
||||
|
||||
if (timeoutDetected) {
|
||||
statusCount = 0;
|
||||
queryInstallerStatus();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -419,6 +486,7 @@
|
||||
*/
|
||||
function startPolling(xhReq) {
|
||||
resetPolling();
|
||||
transmissionOver = false;
|
||||
pollTimer = setInterval(function () {
|
||||
pollContent(xhReq);
|
||||
}, 250);
|
||||
|
@@ -68,6 +68,8 @@ $phpbb_container = $phpbb_container_builder->get_container();
|
||||
$phpbb_container->get('request')->enable_super_globals();
|
||||
require($phpbb_root_path . 'includes/compatibility_globals.' . $phpEx);
|
||||
|
||||
register_compatibility_globals();
|
||||
|
||||
/* @var $user \phpbb\user */
|
||||
$user = $phpbb_container->get('user');
|
||||
$user->data['user_id'] = ANONYMOUS;
|
||||
|
@@ -43,7 +43,13 @@ if (!defined('PHPBB_INSTALLED'))
|
||||
// available as used by the redirect function
|
||||
$server_name = (!empty($_SERVER['HTTP_HOST'])) ? strtolower($_SERVER['HTTP_HOST']) : ((!empty($_SERVER['SERVER_NAME'])) ? $_SERVER['SERVER_NAME'] : getenv('SERVER_NAME'));
|
||||
$server_port = (!empty($_SERVER['SERVER_PORT'])) ? (int) $_SERVER['SERVER_PORT'] : (int) getenv('SERVER_PORT');
|
||||
$secure = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 1 : 0;
|
||||
$secure = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') ? 1 : 0;
|
||||
|
||||
if (!empty($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https')
|
||||
{
|
||||
$secure = 1;
|
||||
$server_port = 443;
|
||||
}
|
||||
|
||||
$script_name = (!empty($_SERVER['PHP_SELF'])) ? $_SERVER['PHP_SELF'] : getenv('PHP_SELF');
|
||||
if (!$script_name)
|
||||
@@ -128,6 +134,8 @@ $phpbb_class_loader_ext->set_cache($phpbb_container->get('cache.driver'));
|
||||
|
||||
require($phpbb_root_path . 'includes/compatibility_globals.' . $phpEx);
|
||||
|
||||
register_compatibility_globals();
|
||||
|
||||
// Add own hook handler
|
||||
require($phpbb_root_path . 'includes/hooks/index.' . $phpEx);
|
||||
$phpbb_hook = new phpbb_hook(array('exit_handler', 'phpbb_user_session_handler', 'append_sid', array('template', 'display')));
|
||||
|
@@ -28,8 +28,10 @@
|
||||
"php": ">=5.4,<7.1",
|
||||
"bantu/ini-get-wrapper": "1.0.*",
|
||||
"google/recaptcha": "~1.1",
|
||||
"guzzlehttp/guzzle": "~5.3",
|
||||
"lusitanian/oauth": "^0.8.1",
|
||||
"marc1706/fast-image-size": "1.1.*",
|
||||
"paragonie/random_compat": "^1.2",
|
||||
"patchwork/utf8": "1.1.*",
|
||||
"s9e/text-formatter": "^0.4.2",
|
||||
"symfony/config": "2.8.*",
|
||||
@@ -41,6 +43,7 @@
|
||||
"symfony/finder": "2.8.*",
|
||||
"symfony/http-foundation": "2.8.*",
|
||||
"symfony/http-kernel": "2.8.*",
|
||||
"symfony/proxy-manager-bridge": "2.8.*",
|
||||
"symfony/routing": "2.8.*",
|
||||
"symfony/twig-bridge": "2.8.*",
|
||||
"symfony/yaml": "2.8.*",
|
||||
@@ -48,6 +51,7 @@
|
||||
},
|
||||
"require-dev": {
|
||||
"fabpot/goutte": "~2.0",
|
||||
"facebook/webdriver": "~1.1",
|
||||
"phing/phing": "2.4.*",
|
||||
"phpunit/dbunit": "1.3.*",
|
||||
"phpunit/phpunit": "4.1.*",
|
||||
@@ -61,5 +65,10 @@
|
||||
"branch-alias": {
|
||||
"dev-master": "3.2.x-dev"
|
||||
}
|
||||
},
|
||||
"config": {
|
||||
"platform": {
|
||||
"php": "5.4"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
3262
phpBB/composer.lock
generated
3262
phpBB/composer.lock
generated
File diff suppressed because it is too large
Load Diff
@@ -161,7 +161,7 @@ services:
|
||||
|
||||
version_helper:
|
||||
class: phpbb\version_helper
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@cache'
|
||||
- '@config'
|
||||
|
@@ -1,7 +1,7 @@
|
||||
services:
|
||||
attachment.delete:
|
||||
class: phpbb\attachment\delete
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@config'
|
||||
- '@dbal.conn'
|
||||
@@ -12,7 +12,7 @@ services:
|
||||
|
||||
attachment.manager:
|
||||
class: phpbb\attachment\manager
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@attachment.delete'
|
||||
- '@attachment.resync'
|
||||
@@ -20,13 +20,13 @@ services:
|
||||
|
||||
attachment.resync:
|
||||
class: phpbb\attachment\resync
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@dbal.conn'
|
||||
|
||||
attachment.upload:
|
||||
class: phpbb\attachment\upload
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@auth'
|
||||
- '@cache'
|
||||
|
@@ -6,7 +6,7 @@ services:
|
||||
- '@captcha.plugins.service_collection'
|
||||
|
||||
# ----- Captcha plugins -----
|
||||
# Scope MUST be prototype for all the plugins to work.
|
||||
# Service MUST NOT be shared for all the plugins to work.
|
||||
captcha.plugins.service_collection:
|
||||
class: phpbb\di\service_collection
|
||||
arguments:
|
||||
@@ -16,7 +16,7 @@ services:
|
||||
|
||||
core.captcha.plugins.gd:
|
||||
class: phpbb\captcha\plugins\gd
|
||||
scope: prototype
|
||||
shared: false
|
||||
calls:
|
||||
- [set_name, [core.captcha.plugins.gd]]
|
||||
tags:
|
||||
@@ -24,7 +24,7 @@ services:
|
||||
|
||||
core.captcha.plugins.gd_wave:
|
||||
class: phpbb\captcha\plugins\gd_wave
|
||||
scope: prototype
|
||||
shared: false
|
||||
calls:
|
||||
- [set_name, [core.captcha.plugins.gd_wave]]
|
||||
tags:
|
||||
@@ -32,7 +32,7 @@ services:
|
||||
|
||||
core.captcha.plugins.nogd:
|
||||
class: phpbb\captcha\plugins\nogd
|
||||
scope: prototype
|
||||
shared: false
|
||||
calls:
|
||||
- [set_name, [core.captcha.plugins.nogd]]
|
||||
tags:
|
||||
@@ -40,7 +40,7 @@ services:
|
||||
|
||||
core.captcha.plugins.qa:
|
||||
class: phpbb\captcha\plugins\qa
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '%tables.captcha_qa_questions%'
|
||||
- '%tables.captcha_qa_answers%'
|
||||
@@ -52,7 +52,7 @@ services:
|
||||
|
||||
core.captcha.plugins.recaptcha:
|
||||
class: phpbb\captcha\plugins\recaptcha
|
||||
scope: prototype
|
||||
shared: false
|
||||
calls:
|
||||
- [set_name, [core.captcha.plugins.recaptcha]]
|
||||
tags:
|
||||
|
@@ -219,3 +219,53 @@ services:
|
||||
- '@user'
|
||||
tags:
|
||||
- { name: console.command }
|
||||
|
||||
console.command.user.activate:
|
||||
class: phpbb\console\command\user\activate
|
||||
arguments:
|
||||
- '@user'
|
||||
- '@dbal.conn'
|
||||
- '@config'
|
||||
- '@language'
|
||||
- '@log'
|
||||
- '@notification_manager'
|
||||
- '@user_loader'
|
||||
- '%core.root_path%'
|
||||
- '%core.php_ext%'
|
||||
tags:
|
||||
- { name: console.command }
|
||||
|
||||
console.command.user.add:
|
||||
class: phpbb\console\command\user\add
|
||||
arguments:
|
||||
- '@user'
|
||||
- '@dbal.conn'
|
||||
- '@config'
|
||||
- '@language'
|
||||
- '@passwords.manager'
|
||||
- '%core.root_path%'
|
||||
- '%core.php_ext%'
|
||||
tags:
|
||||
- { name: console.command }
|
||||
|
||||
console.command.user.delete:
|
||||
class: phpbb\console\command\user\delete
|
||||
arguments:
|
||||
- '@user'
|
||||
- '@dbal.conn'
|
||||
- '@language'
|
||||
- '@log'
|
||||
- '@user_loader'
|
||||
- '%core.root_path%'
|
||||
- '%core.php_ext%'
|
||||
tags:
|
||||
- { name: console.command }
|
||||
|
||||
console.command.user.reclean:
|
||||
class: phpbb\console\command\user\reclean
|
||||
arguments:
|
||||
- '@user'
|
||||
- '@dbal.conn'
|
||||
- '@language'
|
||||
tags:
|
||||
- { name: console.command }
|
||||
|
@@ -75,6 +75,7 @@ services:
|
||||
- '%core.root_path%'
|
||||
- '%core.php_ext%'
|
||||
- '@config'
|
||||
- '%core.cache_dir%'
|
||||
calls:
|
||||
- [set_name, [cron.task.core.queue]]
|
||||
tags:
|
||||
|
@@ -31,10 +31,10 @@ services:
|
||||
factory: ['@dbal.extractor.factory', get]
|
||||
|
||||
# ----- DB Extractors for different drivers -----
|
||||
# Scope MUST be prototype for all the handlers to work correctly.
|
||||
# Service MUST NOT be shared for all the handlers to work correctly.
|
||||
dbal.extractor.extractors.mssql_extractor:
|
||||
class: phpbb\db\extractor\mssql_extractor
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '%core.root_path%'
|
||||
- '@request'
|
||||
@@ -42,7 +42,7 @@ services:
|
||||
|
||||
dbal.extractor.extractors.mysql_extractor:
|
||||
class: phpbb\db\extractor\mysql_extractor
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '%core.root_path%'
|
||||
- '@request'
|
||||
@@ -50,7 +50,7 @@ services:
|
||||
|
||||
dbal.extractor.extractors.oracle_extractor:
|
||||
class: phpbb\db\extractor\oracle_extractor
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '%core.root_path%'
|
||||
- '@request'
|
||||
@@ -58,7 +58,7 @@ services:
|
||||
|
||||
dbal.extractor.extractors.postgres_extractor:
|
||||
class: phpbb\db\extractor\postgres_extractor
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '%core.root_path%'
|
||||
- '@request'
|
||||
@@ -66,7 +66,7 @@ services:
|
||||
|
||||
dbal.extractor.extractors.sqlite3_extractor:
|
||||
class: phpbb\db\extractor\sqlite3_extractor
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '%core.root_path%'
|
||||
- '@request'
|
||||
@@ -74,7 +74,7 @@ services:
|
||||
|
||||
dbal.extractor.extractors.sqlite_extractor:
|
||||
class: phpbb\db\extractor\sqlite_extractor
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '%core.root_path%'
|
||||
- '@request'
|
||||
|
@@ -23,7 +23,7 @@ services:
|
||||
|
||||
feed.forum:
|
||||
class: phpbb\feed\forum
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@feed.helper'
|
||||
- '@config'
|
||||
@@ -36,7 +36,7 @@ services:
|
||||
|
||||
feed.forums:
|
||||
class: phpbb\feed\forums
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@feed.helper'
|
||||
- '@config'
|
||||
@@ -49,7 +49,7 @@ services:
|
||||
|
||||
feed.news:
|
||||
class: phpbb\feed\news
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@feed.helper'
|
||||
- '@config'
|
||||
@@ -62,7 +62,7 @@ services:
|
||||
|
||||
feed.overall:
|
||||
class: phpbb\feed\overall
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@feed.helper'
|
||||
- '@config'
|
||||
@@ -75,7 +75,7 @@ services:
|
||||
|
||||
feed.topic:
|
||||
class: phpbb\feed\topic
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@feed.helper'
|
||||
- '@config'
|
||||
@@ -88,7 +88,7 @@ services:
|
||||
|
||||
feed.topics:
|
||||
class: phpbb\feed\topics
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@feed.helper'
|
||||
- '@config'
|
||||
@@ -101,7 +101,7 @@ services:
|
||||
|
||||
feed.topics_active:
|
||||
class: phpbb\feed\topics_active
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@feed.helper'
|
||||
- '@config'
|
||||
|
@@ -6,7 +6,7 @@ services:
|
||||
|
||||
files.filespec:
|
||||
class: phpbb\files\filespec
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@filesystem'
|
||||
- '@language'
|
||||
@@ -18,7 +18,7 @@ services:
|
||||
|
||||
files.upload:
|
||||
class: phpbb\files\upload
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@filesystem'
|
||||
- '@files.factory'
|
||||
@@ -28,7 +28,7 @@ services:
|
||||
|
||||
files.types.form:
|
||||
class: phpbb\files\types\form
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@files.factory'
|
||||
- '@language'
|
||||
@@ -38,7 +38,7 @@ services:
|
||||
|
||||
files.types.local:
|
||||
class: phpbb\files\types\form
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@files.factory'
|
||||
- '@language'
|
||||
@@ -47,8 +47,9 @@ services:
|
||||
|
||||
files.types.remote:
|
||||
class: phpbb\files\types\remote
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@config'
|
||||
- '@files.factory'
|
||||
- '@language'
|
||||
- '@php_ini'
|
||||
|
@@ -15,7 +15,7 @@ services:
|
||||
- '%tables.user_notifications%'
|
||||
|
||||
# ----- Notification's types -----
|
||||
# Scope MUST be prototype for all the plugins to work.
|
||||
# Service MUST NOT be shared for all the plugins to work.
|
||||
notification.type_collection:
|
||||
class: phpbb\di\service_collection
|
||||
arguments:
|
||||
@@ -36,7 +36,7 @@ services:
|
||||
|
||||
notification.type.admin_activate_user:
|
||||
class: phpbb\notification\type\admin_activate_user
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.base
|
||||
calls:
|
||||
- [set_user_loader, ['@user_loader']]
|
||||
@@ -46,42 +46,42 @@ services:
|
||||
|
||||
notification.type.approve_post:
|
||||
class: phpbb\notification\type\approve_post
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.post
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
|
||||
notification.type.approve_topic:
|
||||
class: phpbb\notification\type\approve_topic
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.topic
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
|
||||
notification.type.bookmark:
|
||||
class: phpbb\notification\type\bookmark
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.post
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
|
||||
notification.type.disapprove_post:
|
||||
class: phpbb\notification\type\disapprove_post
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.post
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
|
||||
notification.type.disapprove_topic:
|
||||
class: phpbb\notification\type\disapprove_topic
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.topic
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
|
||||
notification.type.group_request:
|
||||
class: phpbb\notification\type\group_request
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.base
|
||||
calls:
|
||||
- [set_user_loader, ['@user_loader']]
|
||||
@@ -90,14 +90,14 @@ services:
|
||||
|
||||
notification.type.group_request_approved:
|
||||
class: phpbb\notification\type\group_request_approved
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.base
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
|
||||
notification.type.pm:
|
||||
class: phpbb\notification\type\pm
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.base
|
||||
calls:
|
||||
- [set_user_loader, ['@user_loader']]
|
||||
@@ -107,7 +107,7 @@ services:
|
||||
|
||||
notification.type.post:
|
||||
class: phpbb\notification\type\post
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.base
|
||||
calls:
|
||||
- [set_user_loader, ['@user_loader']]
|
||||
@@ -117,14 +117,14 @@ services:
|
||||
|
||||
notification.type.post_in_queue:
|
||||
class: phpbb\notification\type\post_in_queue
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.post
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
|
||||
notification.type.quote:
|
||||
class: phpbb\notification\type\quote
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.post
|
||||
calls:
|
||||
- [set_utils, ['@text_formatter.utils']]
|
||||
@@ -133,35 +133,35 @@ services:
|
||||
|
||||
notification.type.report_pm:
|
||||
class: phpbb\notification\type\report_pm
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.pm
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
|
||||
notification.type.report_pm_closed:
|
||||
class: phpbb\notification\type\report_pm_closed
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.pm
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
|
||||
notification.type.report_post:
|
||||
class: phpbb\notification\type\report_post
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.post
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
|
||||
notification.type.report_post_closed:
|
||||
class: phpbb\notification\type\report_post_closed
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.post
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
|
||||
notification.type.topic:
|
||||
class: phpbb\notification\type\topic
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.base
|
||||
calls:
|
||||
- [set_user_loader, ['@user_loader']]
|
||||
@@ -171,13 +171,13 @@ services:
|
||||
|
||||
notification.type.topic_in_queue:
|
||||
class: phpbb\notification\type\topic_in_queue
|
||||
scope: prototype
|
||||
shared: false
|
||||
parent: notification.type.topic
|
||||
tags:
|
||||
- { name: notification.type }
|
||||
|
||||
# ----- Notification's methods -----
|
||||
# Scope MUST be prototype for all the plugins to work.
|
||||
# Service MUST NOT be shared for all the plugins to work.
|
||||
notification.method_collection:
|
||||
class: phpbb\di\service_collection
|
||||
arguments:
|
||||
@@ -187,7 +187,7 @@ services:
|
||||
|
||||
notification.method.board:
|
||||
class: phpbb\notification\method\board
|
||||
scope: prototype # scope MUST be prototype for this to work!
|
||||
shared: false
|
||||
arguments:
|
||||
- '@user_loader'
|
||||
- '@dbal.conn'
|
||||
@@ -201,7 +201,7 @@ services:
|
||||
|
||||
notification.method.email:
|
||||
class: phpbb\notification\method\email
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@user_loader'
|
||||
- '@user'
|
||||
@@ -213,7 +213,7 @@ services:
|
||||
|
||||
notification.method.jabber:
|
||||
class: phpbb\notification\method\jabber
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@user_loader'
|
||||
- '@user'
|
||||
|
@@ -29,10 +29,10 @@ services:
|
||||
- '@user'
|
||||
|
||||
# ----- Report handlers -----
|
||||
# Scope MUST be prototype for all the handlers to work correctly.
|
||||
# Service MUST NOT be shared for all the handlers to work correctly.
|
||||
phpbb.report.handlers.report_handler_pm:
|
||||
class: phpbb\report\report_handler_pm
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@dbal.conn.driver'
|
||||
- '@dispatcher'
|
||||
@@ -43,7 +43,7 @@ services:
|
||||
|
||||
phpbb.report.handlers.report_handler_post:
|
||||
class: phpbb\report\report_handler_post
|
||||
scope: prototype
|
||||
shared: false
|
||||
arguments:
|
||||
- '@dbal.conn.driver'
|
||||
- '@dispatcher'
|
||||
|
@@ -5,9 +5,8 @@ services:
|
||||
- '@service_container'
|
||||
- '@routing.chained_resources_locator'
|
||||
- '@routing.delegated_loader'
|
||||
- '%core.root_path%'
|
||||
- '%core.php_ext%'
|
||||
- '%core.environment%'
|
||||
- '%core.cache_dir%'
|
||||
|
||||
router.listener:
|
||||
class: Symfony\Component\HttpKernel\EventListener\RouterListener
|
||||
|
@@ -1,5 +1,5 @@
|
||||
parameters:
|
||||
text_formatter.cache.dir: '%core.root_path%cache/%core.environment%/'
|
||||
text_formatter.cache.dir: '%core.cache_dir%'
|
||||
text_formatter.cache.parser.key: _text_formatter_parser
|
||||
text_formatter.cache.renderer.key: _text_formatter_renderer
|
||||
|
||||
|
@@ -1,5 +1,5 @@
|
||||
parameters:
|
||||
core.template.cache_path: '%core.root_path%cache/%core.environment%/twig/'
|
||||
core.template.cache_path: '%core.cache_dir%twig/'
|
||||
|
||||
services:
|
||||
template.twig.environment:
|
||||
@@ -8,14 +8,16 @@ services:
|
||||
- '@config'
|
||||
- '@filesystem'
|
||||
- '@path_helper'
|
||||
- '@service_container'
|
||||
- '%core.template.cache_path%'
|
||||
- '@ext.manager'
|
||||
- '@template.twig.loader'
|
||||
- []
|
||||
calls:
|
||||
- [setLexer, ['@template.twig.lexer']]
|
||||
|
||||
template.twig.lexer:
|
||||
class: phpbb\template\twig\lexer
|
||||
lazy: true
|
||||
arguments:
|
||||
- '@template.twig.environment'
|
||||
|
||||
|
@@ -12,12 +12,14 @@ services:
|
||||
cache.driver:
|
||||
class: '%cache.driver.class%'
|
||||
arguments:
|
||||
- '%core.root_path%/cache/installer/'
|
||||
- '%core.cache_dir%'
|
||||
|
||||
config:
|
||||
class: phpbb\config\config
|
||||
arguments:
|
||||
- []
|
||||
-
|
||||
rand_seed: 'installer_seed'
|
||||
rand_seed_last_update: 0
|
||||
|
||||
controller.resolver:
|
||||
class: phpbb\controller\resolver
|
||||
@@ -79,11 +81,12 @@ services:
|
||||
- '@config'
|
||||
- '@filesystem'
|
||||
- '@path_helper'
|
||||
- '@service_container'
|
||||
- '%core.template.cache_path%'
|
||||
- null
|
||||
- '@template.twig.loader'
|
||||
- []
|
||||
calls:
|
||||
- [setLexer, ['@template.twig.lexer']]
|
||||
|
||||
console.exception_subscriber:
|
||||
class: phpbb\console\exception_subscriber
|
||||
|
@@ -21,7 +21,6 @@ services:
|
||||
arguments:
|
||||
- '@language'
|
||||
- '@installer.helper.iohandler_factory'
|
||||
- '@installer.installer.install'
|
||||
tags:
|
||||
- { name: console.installer.command }
|
||||
|
||||
@@ -31,6 +30,32 @@ services:
|
||||
arguments:
|
||||
- '@language'
|
||||
- '@installer.helper.iohandler_factory'
|
||||
- '@installer.installer.install'
|
||||
tags:
|
||||
- { name: console.installer.command }
|
||||
|
||||
console.updater.command.update:
|
||||
class: phpbb\install\console\command\update\update
|
||||
arguments:
|
||||
- '@language'
|
||||
- '@installer.helper.iohandler_factory'
|
||||
- '@installer.installer.update'
|
||||
- '@installer.helper.install_helper'
|
||||
tags:
|
||||
- { name: console.installer.command }
|
||||
|
||||
console.updater.command.config.show:
|
||||
class: phpbb\install\console\command\update\config\show
|
||||
arguments:
|
||||
- '@language'
|
||||
- '@installer.helper.iohandler_factory'
|
||||
tags:
|
||||
- { name: console.installer.command }
|
||||
|
||||
|
||||
console.updater.command.config.validate:
|
||||
class: phpbb\install\console\command\update\config\validate
|
||||
arguments:
|
||||
- '@language'
|
||||
- '@installer.helper.iohandler_factory'
|
||||
tags:
|
||||
- { name: console.installer.command }
|
||||
|
@@ -53,6 +53,7 @@ services:
|
||||
phpbb.installer.controller.convert:
|
||||
class: phpbb\convert\controller\convertor
|
||||
arguments:
|
||||
- '@cache.driver'
|
||||
- '@installer.helper.container_factory'
|
||||
- '@installer.helper.database'
|
||||
- '@phpbb.installer.controller.helper'
|
||||
@@ -64,3 +65,9 @@ services:
|
||||
- '@template'
|
||||
- '%core.root_path%'
|
||||
- '%core.php_ext%'
|
||||
|
||||
phpbb.installer.controller.status:
|
||||
class: phpbb\install\controller\timeout_check
|
||||
arguments:
|
||||
- '@phpbb.installer.controller.helper'
|
||||
- '%core.root_path%'
|
||||
|
@@ -23,6 +23,7 @@ services:
|
||||
installer.install_data.add_modules:
|
||||
class: phpbb\install\module\install_data\task\add_modules
|
||||
arguments:
|
||||
- '@installer.helper.config'
|
||||
- '@installer.helper.iohandler'
|
||||
- '@installer.helper.container_factory'
|
||||
tags:
|
||||
|
@@ -1,15 +1,35 @@
|
||||
services:
|
||||
installer.install_database.create_schema:
|
||||
class: phpbb\install\module\install_database\task\create_schema
|
||||
installer.install_database.create_schema_file:
|
||||
class: phpbb\install\module\install_database\task\create_schema_file
|
||||
arguments:
|
||||
- '@installer.helper.config'
|
||||
- '@installer.helper.database'
|
||||
- '@filesystem'
|
||||
- '%core.root_path%'
|
||||
- '%core.php_ext%'
|
||||
tags:
|
||||
- { name: install_database_install, order: 10 }
|
||||
|
||||
installer.install_database.set_up_database:
|
||||
class: phpbb\install\module\install_database\task\set_up_database
|
||||
arguments:
|
||||
- '@installer.helper.config'
|
||||
- '@installer.helper.database'
|
||||
- '@filesystem'
|
||||
- '@installer.helper.iohandler'
|
||||
- '%core.root_path%'
|
||||
- '%core.php_ext%'
|
||||
tags:
|
||||
- { name: install_database_install, order: 10 }
|
||||
- { name: install_database_install, order: 20 }
|
||||
|
||||
installer.install_database.add_tables:
|
||||
class: phpbb\install\module\install_database\task\add_tables
|
||||
arguments:
|
||||
- '@installer.helper.config'
|
||||
- '@installer.helper.database'
|
||||
- '@filesystem'
|
||||
- '%core.root_path%'
|
||||
tags:
|
||||
- { name: install_database_install, order: 30 }
|
||||
|
||||
installer.install_database.add_default_data:
|
||||
class: phpbb\install\module\install_database\task\add_default_data
|
||||
@@ -21,7 +41,7 @@ services:
|
||||
- '@language'
|
||||
- '%core.root_path%'
|
||||
tags:
|
||||
- { name: install_database_install, order: 20 }
|
||||
- { name: install_database_install, order: 40 }
|
||||
|
||||
installer.install_database.add_config_settings:
|
||||
class: phpbb\install\module\install_database\task\add_config_settings
|
||||
@@ -33,7 +53,7 @@ services:
|
||||
- '@language'
|
||||
- '%core.root_path%'
|
||||
tags:
|
||||
- { name: install_database_install, order: 30 }
|
||||
- { name: install_database_install, order: 50 }
|
||||
|
||||
installer.module.install_database_collection:
|
||||
class: phpbb\di\ordered_service_collection
|
||||
|
@@ -2,6 +2,7 @@ services:
|
||||
installer.install_finish.populate_migrations:
|
||||
class: phpbb\install\module\install_finish\task\populate_migrations
|
||||
arguments:
|
||||
- '@installer.helper.config'
|
||||
- '@installer.helper.container_factory'
|
||||
tags:
|
||||
- { name: install_finish, order: 10 }
|
||||
@@ -25,7 +26,7 @@ services:
|
||||
- { name: service_collection, tag: install_finish, class_name_aware: true }
|
||||
|
||||
installer.module.finish_install:
|
||||
class: phpbb\install\module\install_filesystem\module
|
||||
class: phpbb\install\module\install_finish\module
|
||||
parent: installer.module_base
|
||||
arguments:
|
||||
- '@installer.module.install_finish_collection'
|
||||
|
@@ -13,7 +13,7 @@ services:
|
||||
|
||||
installer.navigation.main_navigation:
|
||||
class: phpbb\install\helper\navigation\main_navigation
|
||||
scope: prototype
|
||||
shared: false
|
||||
tags:
|
||||
- { name: installer.navigation }
|
||||
|
||||
@@ -21,7 +21,7 @@ services:
|
||||
class: phpbb\install\helper\navigation\install_navigation
|
||||
arguments:
|
||||
- '@installer.helper.install_helper'
|
||||
scope: prototype
|
||||
shared: false
|
||||
tags:
|
||||
- { name: installer.navigation }
|
||||
|
||||
@@ -29,7 +29,7 @@ services:
|
||||
class: phpbb\install\helper\navigation\update_navigation
|
||||
arguments:
|
||||
- '@installer.helper.install_helper'
|
||||
scope: prototype
|
||||
shared: false
|
||||
tags:
|
||||
- { name: installer.navigation }
|
||||
|
||||
@@ -37,6 +37,6 @@ services:
|
||||
class: phpbb\install\helper\navigation\convertor_navigation
|
||||
arguments:
|
||||
- '@installer.helper.install_helper'
|
||||
scope: prototype
|
||||
shared: false
|
||||
tags:
|
||||
- { name: installer.navigation }
|
||||
|
@@ -47,6 +47,7 @@ services:
|
||||
- '@request'
|
||||
- '@template'
|
||||
- '@router'
|
||||
- '%core.root_path%'
|
||||
|
||||
installer.helper.iohandler_cli:
|
||||
class: phpbb\install\helper\iohandler\cli_iohandler
|
||||
@@ -89,6 +90,7 @@ services:
|
||||
- '@cache.driver'
|
||||
- '@installer.helper.config'
|
||||
- '@path_helper'
|
||||
- '@installer.helper.container_factory'
|
||||
|
||||
installer.install.module_collection:
|
||||
class: phpbb\di\ordered_service_collection
|
||||
@@ -108,8 +110,10 @@ services:
|
||||
parent: installer.installer.abstract
|
||||
calls:
|
||||
- [set_modules, ['@installer.install.module_collection']]
|
||||
- [set_purge_cache_before, [false]]
|
||||
|
||||
installer.installer.update:
|
||||
parent: installer.installer.abstract
|
||||
calls:
|
||||
- [set_modules, ['@installer.update.module_collection']]
|
||||
- [set_purge_cache_before, [true]]
|
||||
|
@@ -15,6 +15,7 @@ services:
|
||||
arguments:
|
||||
- '@installer.helper.container_factory'
|
||||
- '@filesystem'
|
||||
- '@installer.helper.config'
|
||||
- '@installer.helper.iohandler'
|
||||
- '@installer.helper.update_helper'
|
||||
- '%core.root_path%'
|
||||
|
@@ -60,3 +60,8 @@ phpbb_convert_finish:
|
||||
path: /convert/finished
|
||||
defaults:
|
||||
_controller: phpbb.installer.controller.convert:finish
|
||||
|
||||
phpbb_installer_status:
|
||||
path: /installer/status
|
||||
defaults:
|
||||
_controller: phpbb.installer.controller.status:status
|
||||
|
@@ -57,6 +57,18 @@ if ($cron_lock->acquire())
|
||||
$task = $cron->find_task($cron_type);
|
||||
if ($task)
|
||||
{
|
||||
/**
|
||||
* This event enables you to catch the task before it runs
|
||||
*
|
||||
* @event core.cron_run_before
|
||||
* @var \phpbb\cron\task\wrapper task Current Cron task
|
||||
* @since 3.1.8-RC1
|
||||
*/
|
||||
$vars = array(
|
||||
'task',
|
||||
);
|
||||
extract($phpbb_dispatcher->trigger_event('core.cron_run_before', compact($vars)));
|
||||
|
||||
if ($task->is_parametrized())
|
||||
{
|
||||
$task->parse_parameters($request);
|
||||
|
@@ -2,8 +2,9 @@
|
||||
<html dir="ltr" lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="keywords" content="" />
|
||||
<meta name="description" content="phpBB 3.1.x Changelog" />
|
||||
<meta name="description" content="phpBB 3.2.x Changelog" />
|
||||
<title>phpBB • Changelog</title>
|
||||
|
||||
<link href="assets/css/stylesheet.css" rel="stylesheet" type="text/css" media="screen" />
|
||||
@@ -20,7 +21,7 @@
|
||||
|
||||
<div id="doc-description">
|
||||
<a href="../index.php" id="logo"><img src="assets/images/site_logo.gif" alt="" /></a>
|
||||
<h1>phpBB 3.1.x Changelog</h1>
|
||||
<h1>phpBB 3.2.x Changelog</h1>
|
||||
<p style="display: none;"><a href="#start_here">Skip</a></p>
|
||||
</div>
|
||||
|
||||
@@ -35,7 +36,7 @@
|
||||
<!-- BEGIN DOCUMENT -->
|
||||
|
||||
<p class="paragraph main-description">
|
||||
This is a non-exhaustive (but still near complete) changelog for phpBB 3.1.x including release candidate versions.
|
||||
This is a non-exhaustive (but still near complete) changelog for phpBB 3.2.x including release candidate versions.
|
||||
Our thanks to all those people who've contributed bug reports and code fixes.
|
||||
</p>
|
||||
|
||||
@@ -49,8 +50,13 @@
|
||||
<ol>
|
||||
<li><a href="#changelog">Changelog</a>
|
||||
<ul>
|
||||
<li><a href="#v320b2">Changes since 3.2.0-b2</a></li>
|
||||
<li><a href="#v320b1">Changes since 3.2.0-b1</a></li>
|
||||
<li><a href="#v320a2">Changes since 3.2.0-a2</a></li>
|
||||
<li><a href="#v320a1">Changes since 3.2.0-a1</a></li>
|
||||
<li><a href="#v31x">Changes since 3.1.x</a></li>
|
||||
<li><a href="#v318">Changes since 3.1.8</a></li>
|
||||
<li><a href="#v317pl1">Changes since 3.1.7-PL1</a></li>
|
||||
<li><a href="#v317">Changes since 3.1.7</a></li>
|
||||
<li><a href="#v316">Changes since 3.1.6</a></li>
|
||||
<li><a href="#v315">Changes since 3.1.5</a></li>
|
||||
@@ -116,8 +122,140 @@
|
||||
<div class="inner">
|
||||
|
||||
<div class="content">
|
||||
<a name="v320b2"></a><h3>Changes since 3.2.0-b2</h3>
|
||||
<h4>Bug</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-9435">PHPBB3-9435</a>] - "magic numbers" in message_parser.php/bbcode.php</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13616">PHPBB3-13616</a>] - Pass lexer directly to TWIG environment</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13972">PHPBB3-13972</a>] - 3.1.5 - Waiting time conflict</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14136">PHPBB3-14136</a>] - IE compatibility meta is missing in overall_header.html</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14198">PHPBB3-14198</a>] - Container cache filename doesn't depend on the build options</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14260">PHPBB3-14260</a>] - Right parenthesis breaks (some?) magic URLs</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14318">PHPBB3-14318</a>] - Board Notifications Config Migration Not Working</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14329">PHPBB3-14329</a>] - Updater Cannot remove files</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14381">PHPBB3-14381</a>] - Text Reparser fails with empty sql fields</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14393">PHPBB3-14393</a>] - Update 3.2.0a1 to 3.2.0a2 --> Error: CANNOT_DELETE_FILES </li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14426">PHPBB3-14426</a>] - viewtopic error posts bbcode pregmatch</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14481">PHPBB3-14481</a>] - phpBB does not obey HTTP_X_FORWARDED_PORT header</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14497">PHPBB3-14497</a>] - Update nginx sample config for new installer</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14527">PHPBB3-14527</a>] - Dataloss caused by link shortening</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14528">PHPBB3-14528</a>] - Structured data - breadcrumbs error</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14530">PHPBB3-14530</a>] - Signature parsing inconsistant</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14532">PHPBB3-14532</a>] - Database column default incorrectly escaped on MSSQL</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14550">PHPBB3-14550</a>] - function unique_id()</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14555">PHPBB3-14555</a>] - Inconsistent usage of the cache directory</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14559">PHPBB3-14559</a>] - Attachments' behaviour in quotes</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14562">PHPBB3-14562</a>] - Extension's permissions don't have language fallback</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14564">PHPBB3-14564</a>] - config cookie domain is empty</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14569">PHPBB3-14569</a>] - Add a method for console progress bar initialisation</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14572">PHPBB3-14572</a>] - Quote notifications deleted on edit</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14576">PHPBB3-14576</a>] - Functional Test Framework should include functions.php</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14577">PHPBB3-14577</a>] - Stop using sizeof() inside for() loop</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14589">PHPBB3-14589</a>] - Requirements test showing required text for "yellow/amber" (optional) requirements</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14590">PHPBB3-14590</a>] - Installer gets stuck at sending notification e-mail</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14591">PHPBB3-14591</a>] - Some installation data not being inserted when running under MS SQL Server</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14607">PHPBB3-14607</a>] - Missing Auto Increment in Report Table</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14619">PHPBB3-14619</a>] - docs/ folder need work to change 3.1.x to 3.2.x in readme, install, changelog etc</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14648">PHPBB3-14648</a>] - Users don't receive default notifications if another setting is set.</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14649">PHPBB3-14649</a>] - Missing variable within event</li>
|
||||
</ul>
|
||||
<h4>Improvement</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13502">PHPBB3-13502</a>] - controller resolver should handle callable functions and objects</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14540">PHPBB3-14540</a>] - Adjust class recursive_dot_prefix_filter_iterator to increase performance</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14561">PHPBB3-14561</a>] - Add additional commands for user actions</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14664">PHPBB3-14664</a>] - Fix PHPDoc comment in cron manager</li>
|
||||
</ul>
|
||||
<h4>New Feature</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-12684">PHPBB3-12684</a>] - Add a command to add a user from the CLI</li>
|
||||
</ul>
|
||||
<h4>Task</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13969">PHPBB3-13969</a>] - Remove old help_* language files</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14565">PHPBB3-14565</a>] - Updates composer to 1.0.0-b2</li>
|
||||
</ul>
|
||||
|
||||
<a name="v320a1"></a><h3>Changes since 3.2.0-a1</h3><h4>Bug</h4>
|
||||
<a name="v320b1"></a><h3>Changes since 3.2.0-b1</h3>
|
||||
<h4>Bug</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14307">PHPBB3-14307</a>] - Incorrect wording used in installer</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14315">PHPBB3-14315</a>] - Changing multiple forum permissions at once forces identical permissions on all groups</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14416">PHPBB3-14416</a>] - navlnks in header have incorrect tool tip styling</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14431">PHPBB3-14431</a>] - Remote avatar uploading does not support https</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14440">PHPBB3-14440</a>] - Paths can break for extensions with deep route patterns/paths</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14460">PHPBB3-14460</a>] - Use the selected language in AJAX pages as well in the installer</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14461">PHPBB3-14461</a>] - Text reparser migration might finish too late</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14488">PHPBB3-14488</a>] - Grab correct session ID in ui tests</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14489">PHPBB3-14489</a>] - Extension compiler pass cannot find class</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14503">PHPBB3-14503</a>] - Allow superglobals in installer cli</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14510">PHPBB3-14510</a>] - Prevent infinite loop in adding bots task</li>
|
||||
</ul>
|
||||
<h4>Improvement</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14312">PHPBB3-14312</a>] - Allow installer updating only without updating files</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14448">PHPBB3-14448</a>] - Use guzzle for remote files uploading</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14462">PHPBB3-14462</a>] - Add further measures to prevent timeouts in the installer</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14478">PHPBB3-14478</a>] - Move facebook/webdriver to main composer.json</li>
|
||||
</ul>
|
||||
<h4>New Feature</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14499">PHPBB3-14499</a>] - CLI updater</li>
|
||||
</ul>
|
||||
<h4>Task</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14447">PHPBB3-14447</a>] - Cleanup whitespaces in Prosilver</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14477">PHPBB3-14477</a>] - Update text formatter to latest release</li>
|
||||
</ul>
|
||||
|
||||
<a name="v320a2"></a><h3>Changes since 3.2.0-a2</h3>
|
||||
<h4>Bug</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-10628">PHPBB3-10628</a>] - http:// prepended to "www." urls (but not reflected in preview)</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-11875">PHPBB3-11875</a>] - mediumint(8) too small for post_id</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-12221">PHPBB3-12221</a>] - URLs Containing javascript: are Garbled</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14129">PHPBB3-14129</a>] - Adding custom extensions autoloaders feature slow downs the board</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14321">PHPBB3-14321</a>] - Fatal error on download the merged conflicts archive during update from 3.1.6 to 3.2-a1</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14323">PHPBB3-14323</a>] - Long urls are no longer shortened</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14368">PHPBB3-14368</a>] - Post Editors Text Should Be Black, Not Blue</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14371">PHPBB3-14371</a>] - Small fix for the aligment quick links</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14373">PHPBB3-14373</a>] - Do not use strpos() on arrays in iohandler_base::add_error_message()</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14378">PHPBB3-14378</a>] - Maintain consistent template var paths in 3.2 installer</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14380">PHPBB3-14380</a>] - Maintain consistent template var paths in 3.2 installer</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14402">PHPBB3-14402</a>] - Tidy plupload cron should not rely on user id/ip being available</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14403">PHPBB3-14403</a>] - phpbb\log should still work even when no user data is given</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14405">PHPBB3-14405</a>] - Text processor parses invalid use of url bbcode</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14419">PHPBB3-14419</a>] - Update composer dependencies and fix outdated composer lock file</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14420">PHPBB3-14420</a>] - Search Results pagination not up to date / broken</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14428">PHPBB3-14428</a>] - Use other links for files remote test</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14431">PHPBB3-14431</a>] - Remote avatar uploading does not support https</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14432">PHPBB3-14432</a>] - The lang() function needs to handle key array</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14434">PHPBB3-14434</a>] - Schema generator fails if extensions have non-migrations in migrations dir</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14436">PHPBB3-14436</a>] - Default data type migration misses oauth_states dependency</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14442">PHPBB3-14442</a>] - Use Goutte ~2.0 after allowing PHP >= 5.4</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14444">PHPBB3-14444</a>] - Fatal error in functions_messenger.php</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14446">PHPBB3-14446</a>] - Add predefined placeholder variables to twig</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14452">PHPBB3-14452</a>] - Undefined $progressFillerText in installer.js</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14453">PHPBB3-14453</a>] - Missing dependency in the text_reparser migration</li>
|
||||
</ul>
|
||||
<h4>Improvement</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13454">PHPBB3-13454</a>] - Remove unused variables, globals, parameters</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13733">PHPBB3-13733</a>] - Allow non-migration files inside migrations folder</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14177">PHPBB3-14177</a>] - Catch exceptions and display a nice error page</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14253">PHPBB3-14253</a>] - Show group requests pending aproval at the ACP groups summary</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14377">PHPBB3-14377</a>] - Allow extensions to register custom compiler pass</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14418">PHPBB3-14418</a>] - Add missing language string PM_TOOLS</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14445">PHPBB3-14445</a>] - Force page refresh before the installer generates the schema</li>
|
||||
</ul>
|
||||
<h4>Task</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14250">PHPBB3-14250</a>] - Review/bump composer dependencies</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14262">PHPBB3-14262</a>] - Move converter code into a controller</li>
|
||||
</ul>
|
||||
|
||||
<a name="v320a1"></a><h3>Changes since 3.2.0-a1</h3>
|
||||
<h4>Bug</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-9791">PHPBB3-9791</a>] - invalid [] - chars on search URI</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13451">PHPBB3-13451</a>] - A very long string inside message crashes PHP</li>
|
||||
@@ -389,6 +527,104 @@
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14265">PHPBB3-14265</a>] - Make all tables available in the container</li>
|
||||
</ul>
|
||||
|
||||
<a name="v318"></a><h3>Changes since 3.1.8</h3>
|
||||
|
||||
<h4>Bug</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-8058">PHPBB3-8058</a>] - Default style in ACP->Board Settings not observing offset</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13028">PHPBB3-13028</a>] - "View unanswered posts" link should be called instead "View unanswered topics"</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13264">PHPBB3-13264</a>] - Editing an unapproved post as a moderator/admin approves it</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13521">PHPBB3-13521</a>] - Q&A Captcha ACP, required fields error corrupts inputted data</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13630">PHPBB3-13630</a>] - NULL value parsed into $select_single can cause 403 Forbidden on certain restrictive hosting environments for "Find a Member" function within Private Message composition</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13681">PHPBB3-13681</a>] - Email queue shouldn't be cached by opcache</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13683">PHPBB3-13683</a>] - Controller generates urls with absolute path of phpbb's root</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13842">PHPBB3-13842</a>] - Missing rewrite module on IIS7 leads to an error</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13977">PHPBB3-13977</a>] - Fatal error entering UCP if bookmarked topic was deleted</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14132">PHPBB3-14132</a>] - SQL Error when creating a new subject on fresh installation</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14136">PHPBB3-14136</a>] - IE compatibility meta is missing in overall_header.html</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14241">PHPBB3-14241</a>] - Security bug into Spambot control Questions</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14272">PHPBB3-14272</a>] - Use valid html5 input elements in forms</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14290">PHPBB3-14290</a>] - Function set_modified_headers() never sends 304 'Not Modified' header</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14408">PHPBB3-14408</a>] - Remove span corners</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14422">PHPBB3-14422</a>] - Support cmd+enter & ctrl+enter for submitting message</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14437">PHPBB3-14437</a>] - Place Inline Images on Post get scrambled up -- not follow the order you place them in.</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14443">PHPBB3-14443</a>] - jabber notification-template prefix "short" breaks resolution of paths in extensions</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14475">PHPBB3-14475</a>] - Do not log upon automatically removing users form newly registered users group</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14481">PHPBB3-14481</a>] - phpBB does not obey HTTP_X_FORWARDED_PORT header</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14483">PHPBB3-14483</a>] - call to header(arg, arg) function sendHeaders() in Response.php causes Error 500 in app.php generated links</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14496">PHPBB3-14496</a>] - Automatic update relies on cache creating files in cache folder</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14500">PHPBB3-14500</a>] - Duplicate newversion in build.xml</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14514">PHPBB3-14514</a>] - Users get skipped in passwords_convert_p1 migration</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14519">PHPBB3-14519</a>] - Do not query database for unread notifications if all are retrieved</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14532">PHPBB3-14532</a>] - Database column default incorrectly escaped on MSSQL</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14533">PHPBB3-14533</a>] - "U_NOTIFICATION_SETTINGS" doesn't return the correct URL</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14536">PHPBB3-14536</a>] - Force timestamp to be integer in user::format_date()</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14559">PHPBB3-14559</a>] - Attachments' behaviour in quotes</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14562">PHPBB3-14562</a>] - Extension's permissions don't have language fallback</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14570">PHPBB3-14570</a>] - Board versions for 3.2.x can be accidentally downgraded to 3.1.x</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14577">PHPBB3-14577</a>] - Stop using sizeof() inside for() loop</li>
|
||||
</ul>
|
||||
<h4>Improvement</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-10356">PHPBB3-10356</a>] - Username search should find all users for administrators instead of NORMALs and FOUNDERs only</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-12305">PHPBB3-12305</a>] - Add new event core.viewforum_get_topic_id_sql to control forum topic listing</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14134">PHPBB3-14134</a>] - Send warning notification PM in user's language.</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14316">PHPBB3-14316</a>] - Add memberlist_view.html template events before/after the custom fields and zebra links</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14365">PHPBB3-14365</a>] - Add core event to the function topic_review() </li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14366">PHPBB3-14366</a>] - Add core events to the function decode_message()</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14395">PHPBB3-14395</a>] - Add event core.viewtopic_add_quickmod_option_after</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14471">PHPBB3-14471</a>] - Add filedata var to the core.avatar_driver_upload_move_file_before event</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14486">PHPBB3-14486</a>] - Add an event and fix an event in login_box()</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14508">PHPBB3-14508</a>] - Change language notice on account activation</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14540">PHPBB3-14540</a>] - Adjust class recursive_dot_prefix_filter_iterator to increase performance</li>
|
||||
</ul>
|
||||
<h4>New Feature</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-12684">PHPBB3-12684</a>] - Add a command to add a user from the CLI</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14189">PHPBB3-14189</a>] - [PHP] - core.gen_sort_selects_after</li>
|
||||
</ul>
|
||||
<h4>Task</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14538">PHPBB3-14538</a>] - Update composer dependencies</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14565">PHPBB3-14565</a>] - Updates composer to 1.0.0-b2</li>
|
||||
</ul>
|
||||
|
||||
<a name="v317pl1"></a><h3>Changes since 3.1.7-PL1</h3>
|
||||
|
||||
<h4>Bug</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-12441">PHPBB3-12441</a>] - Database-size in ACP missing after update MariaDB from 5.5 to 10.0</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-12618">PHPBB3-12618</a>] - Extension Version Check does not support https</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13180">PHPBB3-13180</a>] - Increase the field size of date format to allow more syntax for other calendars</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-13908">PHPBB3-13908</a>] - After clause in migration add_column schema tool not honored</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14046">PHPBB3-14046</a>] - Instant message (jabber) dialog says message sent on the creation screen</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14303">PHPBB3-14303</a>] - Some changes for UTF-8 variant on language pack?</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14374">PHPBB3-14374</a>] - Update dynamically generated jquery CDN script tag</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14386">PHPBB3-14386</a>] - open_basedir restriction in effect with remote upload avatar</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14387">PHPBB3-14387</a>] - Extend avatar-driver by extension in ACP not possible</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14394">PHPBB3-14394</a>] - Only purge cache in functional tests if necessary</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14396">PHPBB3-14396</a>] - Use VCHAR_UNI instead of VCHAR for user_dateformat</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14397">PHPBB3-14397</a>] - Fix @since tag in event 'core.ucp_prefs_view_after'</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14403">PHPBB3-14403</a>] - phpbb\log should still work even when no user data is given</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14407">PHPBB3-14407</a>] - Users not being removed from Newly Registered Users group</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14409">PHPBB3-14409</a>] - Update session page info before displaying online list</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14411">PHPBB3-14411</a>] - Delete permanently is not working as it should be</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14423">PHPBB3-14423</a>] - Display database size for Aria storage engine</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14425">PHPBB3-14425</a>] - Database tests do not allow using socket</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14427">PHPBB3-14427</a>] - Memberlist Display Wrong</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14433">PHPBB3-14433</a>] - Functional tests fail for extensions</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14439">PHPBB3-14439</a>] - Error page shown in Manage users -> Anonymous -> Select Form -> Avatar when board wide all avatar settings are disabled</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14467">PHPBB3-14467</a>] - Automatic resize of textarea calculates wrong height</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14475">PHPBB3-14475</a>] - Do not log removal of users from newly registered group</li>
|
||||
</ul>
|
||||
<h4>Improvement</h4>
|
||||
<ul>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14289">PHPBB3-14289</a>] - Add events in navbar header</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14356">PHPBB3-14356</a>] - Add template events to viewtopic around back2top link</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14412">PHPBB3-14412</a>] - Comment fixes for PHPDoc in the events</li>
|
||||
<li>[<a href="http://tracker.phpbb.com/browse/PHPBB3-14458">PHPBB3-14458</a>] - Explicitly state RewriteBase into .htaccess root file</li>
|
||||
</ul>
|
||||
|
||||
<a name="v317"></a><h3>Changes since 3.1.7</h3>
|
||||
|
||||
<h4>Security Issue</h4>
|
||||
|
@@ -2,8 +2,9 @@
|
||||
<html dir="ltr" lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="keywords" content="" />
|
||||
<meta name="description" content="phpBB 3.1.x frequently asked questions" />
|
||||
<meta name="description" content="phpBB 3.2.x frequently asked questions" />
|
||||
<title>phpBB • FAQ</title>
|
||||
|
||||
<link href="assets/css/stylesheet.css" rel="stylesheet" type="text/css" media="screen" />
|
||||
@@ -20,8 +21,8 @@
|
||||
|
||||
<div id="doc-description">
|
||||
<a href="../index.php" id="logo"><img src="assets/images/site_logo.gif" alt="" /></a>
|
||||
<h1>phpBB 3.1.x FAQ</h1>
|
||||
<p>phpBB 3.1.x frequently asked questions</p>
|
||||
<h1>phpBB 3.2.x FAQ</h1>
|
||||
<p>phpBB 3.2.x frequently asked questions</p>
|
||||
<p style="display: none;"><a href="#start_here">Skip</a></p>
|
||||
</div>
|
||||
|
||||
|
@@ -2,8 +2,9 @@
|
||||
<html dir="ltr" lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="keywords" content="" />
|
||||
<meta name="description" content="phpBB 3.1.x Installation, updating and conversion informations" />
|
||||
<meta name="description" content="phpBB 3.2.x Installation, updating and conversion informations" />
|
||||
<title>phpBB • Install</title>
|
||||
|
||||
<link href="assets/css/stylesheet.css" rel="stylesheet" type="text/css" media="screen" />
|
||||
@@ -20,8 +21,8 @@
|
||||
|
||||
<div id="doc-description">
|
||||
<a href="../index.php" id="logo"><img src="assets/images/site_logo.gif" alt="" /></a>
|
||||
<h1>phpBB 3.1.x Install</h1>
|
||||
<p>phpBB 3.1.x Installation, updating and conversion informations</p>
|
||||
<h1>phpBB 3.2.x Install</h1>
|
||||
<p>phpBB 3.2.x Installation, updating and conversion informations</p>
|
||||
<p style="display: none;"><a href="#start_here">Skip</a></p>
|
||||
</div>
|
||||
|
||||
@@ -132,7 +133,7 @@
|
||||
|
||||
<div class="content">
|
||||
|
||||
<p>phpBB 3.1.x has a few requirements which must be met before you are able to install and use it.</p>
|
||||
<p>phpBB 3.2.x has a few requirements which must be met before you are able to install and use it.</p>
|
||||
|
||||
<ul>
|
||||
<li>A webserver or web hosting account running on any major Operating System with support for PHP</li>
|
||||
@@ -165,7 +166,7 @@
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<p>If your server or hosting account does not meet the requirements above then you will be unable to install phpBB 3.1.x.</p>
|
||||
<p>If your server or hosting account does not meet the requirements above then you will be unable to install phpBB 3.2.x.</p>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -256,7 +257,7 @@
|
||||
|
||||
<hr />
|
||||
|
||||
<a name="update"></a><h2>4. Updating from stable releases of phpBB 3.1.x</h2>
|
||||
<a name="update"></a><h2>4. Updating from stable releases of phpBB 3.2.x</h2>
|
||||
|
||||
<div class="paragraph">
|
||||
<div class="inner">
|
||||
@@ -281,7 +282,7 @@
|
||||
|
||||
<p>This package is meant for those wanting to only replace the files that were changed between a previous version and the latest version.</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 <strong>3.1.0</strong> you should select the appropriate <code>phpBB-3.1.1-files.zip/tar.bz2</code> 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 <strong>3.2.0</strong> you should select the appropriate <code>phpBB-3.2.1-files.zip/tar.bz2</code> file.</p>
|
||||
|
||||
<p>The directory structure has been preserved, enabling you (if you wish) to simply upload the uncompressed 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 modifications (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>
|
||||
|
||||
|
@@ -2,8 +2,9 @@
|
||||
<html dir="ltr" lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="keywords" content="" />
|
||||
<meta name="description" content="phpBB 3.1.x Readme" />
|
||||
<meta name="description" content="phpBB 3.2.x Readme" />
|
||||
<title>phpBB • Readme</title>
|
||||
|
||||
<link href="assets/css/stylesheet.css" rel="stylesheet" type="text/css" media="screen" />
|
||||
@@ -20,7 +21,7 @@
|
||||
|
||||
<div id="doc-description">
|
||||
<a href="../index.php" id="logo"><img src="assets/images/site_logo.gif" alt="" /></a>
|
||||
<h1>phpBB 3.1.x Readme</h1>
|
||||
<h1>phpBB 3.2.x Readme</h1>
|
||||
<p style="display: none;"><a href="#start_here">Skip</a></p>
|
||||
</div>
|
||||
|
||||
@@ -224,7 +225,7 @@
|
||||
|
||||
<div class="content">
|
||||
|
||||
<p>This is a stable release of phpBB. The 3.1.x line is feature frozen, with point releases principally including fixes for bugs and security issues. Feature alterations and minor feature additions may be done if deemed absolutely required. The next major release will be phpBB 3.2 which is currently under development. Please do not post questions asking when 3.2 will be available, no release date has been set.</p>
|
||||
<p>This is a stable release of phpBB. The 3.2.x line is feature frozen, with point releases principally including fixes for bugs and security issues. Feature alterations and minor feature additions may be done if deemed absolutely required. The next major release will be phpBB 3.3 which is currently under development. Please do not post questions asking when 3.3 will be available, no release date has been set.</p>
|
||||
|
||||
<p>Those interested in the development of phpBB should keep an eye on the development forums to see how things are progressing:</p>
|
||||
|
||||
|
@@ -2,6 +2,7 @@
|
||||
<html dir="ltr" lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="keywords" content="" />
|
||||
<meta name="description" content="This is an explanation of how to use the phpBB auth/acl API" />
|
||||
<title>phpBB3 • Auth API</title>
|
||||
|
@@ -2,8 +2,9 @@
|
||||
<html dir="ltr" lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="keywords" content="" />
|
||||
<meta name="description" content="Ascraeus coding guidelines document" />
|
||||
<meta name="description" content="Rhea coding guidelines document" />
|
||||
<title>phpBB3 • Coding Guidelines</title>
|
||||
|
||||
<link href="assets/css/stylesheet.css" rel="stylesheet" type="text/css" media="screen" />
|
||||
@@ -21,7 +22,7 @@
|
||||
<div id="doc-description">
|
||||
<a href="../index.php" id="logo"><img src="assets/images/site_logo.gif" alt="" /></a>
|
||||
<h1>Coding Guidelines</h1>
|
||||
<p>Ascraeus coding guidelines document</p>
|
||||
<p>Rhea coding guidelines document</p>
|
||||
<p style="display: none;"><a href="#start_here">Skip</a></p>
|
||||
</div>
|
||||
|
||||
@@ -36,7 +37,7 @@
|
||||
<!-- BEGIN DOCUMENT -->
|
||||
|
||||
<p class="paragraph main-description">
|
||||
These are the phpBB Coding Guidelines for Ascraeus, all attempts should be made to follow them as closely as possible.
|
||||
These are the phpBB Coding Guidelines for Rhea, all attempts should be made to follow them as closely as possible.
|
||||
</p>
|
||||
|
||||
<h1>Coding Guidelines</h1>
|
||||
@@ -1186,8 +1187,8 @@ append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=group&amp;
|
||||
# General Information about this style
|
||||
name = prosilver_duplicate
|
||||
copyright = © phpBB Limited, 2007
|
||||
style_version = 3.1.0
|
||||
phpbb_version = 3.1.0
|
||||
style_version = 3.2.0
|
||||
phpbb_version = 3.2.0
|
||||
|
||||
# Defining a different template bitfield
|
||||
# template_bitfield = lNg=
|
||||
@@ -1676,8 +1677,8 @@ div
|
||||
# General Information about this style
|
||||
name = Custom Style
|
||||
copyright = © phpBB Limited, 2007
|
||||
style_version = 3.1.0-b1
|
||||
phpbb_version = 3.1.0-b1
|
||||
style_version = 3.2.0-b1
|
||||
phpbb_version = 3.2.0-b1
|
||||
|
||||
# Defining a different template bitfield
|
||||
# template_bitfield = lNg=
|
||||
@@ -1724,7 +1725,7 @@ This may span multiple lines.
|
||||
+ first/file/path.html
|
||||
+ second/file/path.html
|
||||
* Purpose: Same as above.
|
||||
* Since: 3.1.0-b1
|
||||
* Since: 3.2.0-b1
|
||||
</pre></div>
|
||||
<li>An event that is found multiple times in a file should have the number of instances in parenthesis next to the filename.
|
||||
<div class="codebox"><pre>event_name
|
||||
@@ -1733,7 +1734,7 @@ This may span multiple lines.
|
||||
+ first/file/path.html (2)
|
||||
+ second/file/path.html
|
||||
* Purpose: Same as above.
|
||||
* Since: 3.1.0-b1
|
||||
* Since: 3.2.0-b1
|
||||
</pre></div></li>
|
||||
<li>An actual example event documentation:
|
||||
<div class="codebox"><pre>forumlist_body_last_post_title_prepend
|
||||
@@ -1742,7 +1743,7 @@ This may span multiple lines.
|
||||
+ styles/prosilver/template/forumlist_body.html
|
||||
+ styles/subsilver2/template/forumlist_body.html
|
||||
* Purpose: Add content before the post title of the latest post in a forum on the forum list.
|
||||
* Since: 3.1.0-a1
|
||||
* Since: 3.2.0-a1
|
||||
</pre></div></ul><br />
|
||||
|
||||
</div>
|
||||
|
@@ -937,6 +937,20 @@ memberlist_view_contact_before
|
||||
* Since: 3.1.0-b2
|
||||
* Purpose: Add content before the user contact part of any user profile
|
||||
|
||||
memberlist_view_contact_custom_fields_after
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/memberlist_view.html
|
||||
* Since: 3.1.9-RC1
|
||||
* Purpose: Add content after the user contact related custom fields
|
||||
|
||||
memberlist_view_contact_custom_fields_before
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/memberlist_view.html
|
||||
* Since: 3.1.9-RC1
|
||||
* Purpose: Add content before the user contact related custom fields
|
||||
|
||||
memberlist_view_content_append
|
||||
===
|
||||
* Locations:
|
||||
@@ -951,6 +965,20 @@ memberlist_view_content_prepend
|
||||
* Since: 3.1.0-b3
|
||||
* Purpose: Add custom content to the user profile view before the main content
|
||||
|
||||
memberlist_view_non_contact_custom_fields_after
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/memberlist_view.html
|
||||
* Since: 3.1.9-RC1
|
||||
* Purpose: Add content after the user not contact related custom fields
|
||||
|
||||
memberlist_view_non_contact_custom_fields_before
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/memberlist_view.html
|
||||
* Since: 3.1.9-RC1
|
||||
* Purpose: Add content before the user not contact related custom fields
|
||||
|
||||
memberlist_view_rank_avatar_after
|
||||
===
|
||||
* Locations:
|
||||
@@ -993,6 +1021,20 @@ memberlist_view_user_statistics_before
|
||||
* Since: 3.1.0-a1
|
||||
* Purpose: Add entries before the user statistics part of any user profile
|
||||
|
||||
memberlist_view_zebra_after
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/memberlist_view.html
|
||||
* Since: 3.1.9-RC1
|
||||
* Purpose: Add content after the user friends/foes links
|
||||
|
||||
memberlist_view_zebra_before
|
||||
===
|
||||
* Locations:
|
||||
+ styles/prosilver/template/memberlist_view.html
|
||||
* Since: 3.1.9-RC1
|
||||
* Purpose: Add content before the user friends/foes links
|
||||
|
||||
navbar_header_logged_out_content
|
||||
===
|
||||
* Locations:
|
||||
@@ -2251,7 +2293,7 @@ viewtopic_body_postrow_back2top_append
|
||||
* Locations:
|
||||
+ styles/prosilver/template/viewtopic_body.html
|
||||
* Since: 3.1.8-RC1
|
||||
* Purpose: Add content to the post's bottom directly before the back to top link
|
||||
* Purpose: Add content to the post's bottom directly after the back to top link
|
||||
|
||||
viewtopic_body_postrow_back2top_before
|
||||
===
|
||||
|
@@ -22,6 +22,7 @@ installer:
|
||||
enabled: false
|
||||
smtp_delivery : ~
|
||||
smtp_host: ~
|
||||
smtp_port: ~
|
||||
smtp_auth: ~
|
||||
smtp_user: ~
|
||||
smtp_pass: ~
|
||||
|
@@ -62,7 +62,7 @@ http {
|
||||
root /path/to/phpbb;
|
||||
|
||||
location / {
|
||||
# phpbb uses index.htm
|
||||
# phpBB uses index.htm
|
||||
index index.php index.html index.htm;
|
||||
try_files $uri $uri/ @rewriteapp;
|
||||
}
|
||||
@@ -92,6 +92,29 @@ http {
|
||||
fastcgi_pass php;
|
||||
}
|
||||
|
||||
# Correctly pass scripts for installer
|
||||
location /install/ {
|
||||
# phpBB uses index.htm
|
||||
try_files $uri $uri/ @rewrite_installapp;
|
||||
|
||||
# Pass the php scripts to fastcgi server specified in upstream declaration.
|
||||
location ~ \.php(/|$) {
|
||||
# Unmodified fastcgi_params from nginx distribution.
|
||||
include fastcgi_params;
|
||||
# Necessary for php.
|
||||
fastcgi_split_path_info ^(.+\.php)(/.*)$;
|
||||
fastcgi_param PATH_INFO $fastcgi_path_info;
|
||||
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
|
||||
fastcgi_param DOCUMENT_ROOT $realpath_root;
|
||||
try_files $uri $uri/ /install/app.php$is_args$args;
|
||||
fastcgi_pass php;
|
||||
}
|
||||
}
|
||||
|
||||
location @rewrite_installapp {
|
||||
rewrite ^(.*)$ /install/app.php/$1 last;
|
||||
}
|
||||
|
||||
# Deny access to version control system directories.
|
||||
location ~ /\.svn|/\.git {
|
||||
deny all;
|
||||
|
2
phpBB/docs/update-config.sample.yml
Normal file
2
phpBB/docs/update-config.sample.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
updater:
|
||||
type: all
|
@@ -1431,7 +1431,7 @@ class acp_attachments
|
||||
$row['group_name'] = $user->lang['NOT_ASSIGNED'];
|
||||
$group_name[] = $row;
|
||||
|
||||
for ($i = 0; $i < sizeof($group_name); $i++)
|
||||
for ($i = 0, $groups_size = sizeof($group_name); $i < $groups_size; $i++)
|
||||
{
|
||||
if ($default_group === false)
|
||||
{
|
||||
@@ -1744,8 +1744,8 @@ class acp_attachments
|
||||
$size_var = $filesize['si_identifier'];
|
||||
$value = $filesize['value'];
|
||||
|
||||
// size="8" and maxlength="15" attributes as a fallback for browsers that do not support type="number" yet.
|
||||
return '<input type="number" id="' . $key . '" size="8" maxlength="15" min="0" name="config[' . $key . ']" value="' . $value . '" /> <select name="' . $key . '">' . size_select_options($size_var) . '</select>';
|
||||
// size and maxlength must not be specified for input of type number
|
||||
return '<input type="number" id="' . $key . '" min="0" max="999999999999999" step="any" name="config[' . $key . ']" value="' . $value . '" /> <select name="' . $key . '">' . size_select_options($size_var) . '</select>';
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -415,6 +415,7 @@ class acp_board
|
||||
'browser_check' => array('lang' => 'BROWSER_VALID', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
|
||||
'forwarded_for_check' => array('lang' => 'FORWARDED_FOR_VALID', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
|
||||
'referer_validation' => array('lang' => 'REFERRER_VALID', 'validate' => 'int:0:3','type' => 'custom', 'method' => 'select_ref_check', 'explain' => true),
|
||||
'remote_upload_verify' => array('lang' => 'UPLOAD_CERT_VALID', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
|
||||
'check_dnsbl' => array('lang' => 'CHECK_DNSBL', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
|
||||
'email_check_mx' => array('lang' => 'EMAIL_CHECK_MX', 'validate' => 'bool', 'type' => 'radio:yes_no', 'explain' => true),
|
||||
'max_pass_chars' => array('lang' => 'PASSWORD_LENGTH', 'validate' => 'int:8:255', 'type' => false, 'method' => false, 'explain' => false,),
|
||||
@@ -867,7 +868,7 @@ class acp_board
|
||||
{
|
||||
global $user;
|
||||
|
||||
return '<input id="' . $key . '" type="number" size="3" maxlength="3" min="1" max="999" name="config[min_name_chars]" value="' . $value . '" /> ' . $user->lang['MIN_CHARS'] . ' <input type="number" size="3" maxlength="3" min="8" max="180" name="config[max_name_chars]" value="' . $this->new_config['max_name_chars'] . '" /> ' . $user->lang['MAX_CHARS'];
|
||||
return '<input id="' . $key . '" type="number" min="1" max="999" name="config[min_name_chars]" value="' . $value . '" /> ' . $user->lang['MIN_CHARS'] . ' <input type="number" min="8" max="180" name="config[max_name_chars]" value="' . $this->new_config['max_name_chars'] . '" /> ' . $user->lang['MAX_CHARS'];
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -895,7 +896,7 @@ class acp_board
|
||||
{
|
||||
global $user;
|
||||
|
||||
return '<input id="' . $key . '" type="number" size="3" maxlength="3" min="1" max="999" name="config[min_pass_chars]" value="' . $value . '" /> ' . $user->lang['MIN_CHARS'] . ' <input type="number" size="3" maxlength="3" min="8" max="255" name="config[max_pass_chars]" value="' . $this->new_config['max_pass_chars'] . '" /> ' . $user->lang['MAX_CHARS'];
|
||||
return '<input id="' . $key . '" type="number" min="1" max="999" name="config[min_pass_chars]" value="' . $value . '" /> ' . $user->lang['MIN_CHARS'] . ' <input type="number" min="8" max="255" name="config[max_pass_chars]" value="' . $this->new_config['max_pass_chars'] . '" /> ' . $user->lang['MAX_CHARS'];
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -1420,7 +1420,7 @@ class acp_forums
|
||||
$diff = sizeof($moved_forums) * 2;
|
||||
|
||||
$moved_ids = array();
|
||||
for ($i = 0; $i < sizeof($moved_forums); ++$i)
|
||||
for ($i = 0, $size = sizeof($moved_forums); $i < $size; ++$i)
|
||||
{
|
||||
$moved_ids[] = $moved_forums[$i]['forum_id'];
|
||||
}
|
||||
|
@@ -325,10 +325,11 @@ class acp_groups
|
||||
$avatar_data = null;
|
||||
$avatar_error = array();
|
||||
|
||||
/** @var \phpbb\avatar\manager $phpbb_avatar_manager */
|
||||
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
|
||||
|
||||
if ($config['allow_avatar'])
|
||||
{
|
||||
/* @var $phpbb_avatar_manager \phpbb\avatar\manager */
|
||||
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
|
||||
$avatar_drivers = $phpbb_avatar_manager->get_enabled_drivers();
|
||||
|
||||
// This is normalised data, without the group_ prefix
|
||||
@@ -669,6 +670,14 @@ class acp_groups
|
||||
$avatars_enabled = false;
|
||||
$selected_driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', $avatar_data['avatar_type']));
|
||||
|
||||
// Assign min and max values before generating avatar driver html
|
||||
$template->assign_vars(array(
|
||||
'AVATAR_MIN_WIDTH' => $config['avatar_min_width'],
|
||||
'AVATAR_MAX_WIDTH' => $config['avatar_max_width'],
|
||||
'AVATAR_MIN_HEIGHT' => $config['avatar_min_height'],
|
||||
'AVATAR_MAX_HEIGHT' => $config['avatar_max_height'],
|
||||
));
|
||||
|
||||
foreach ($avatar_drivers as $current_driver)
|
||||
{
|
||||
$driver = $phpbb_avatar_manager->get_driver($current_driver);
|
||||
|
@@ -1838,11 +1838,11 @@ class acp_users
|
||||
case 'avatar':
|
||||
|
||||
$avatars_enabled = false;
|
||||
/** @var \phpbb\avatar\manager $phpbb_avatar_manager */
|
||||
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
|
||||
|
||||
if ($config['allow_avatar'])
|
||||
{
|
||||
/* @var $phpbb_avatar_manager \phpbb\avatar\manager */
|
||||
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
|
||||
$avatar_drivers = $phpbb_avatar_manager->get_enabled_drivers();
|
||||
|
||||
// This is normalised data, without the user_ prefix
|
||||
@@ -1903,6 +1903,14 @@ class acp_users
|
||||
|
||||
$selected_driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', $user_row['user_avatar_type']));
|
||||
|
||||
// Assign min and max values before generating avatar driver html
|
||||
$template->assign_vars(array(
|
||||
'AVATAR_MIN_WIDTH' => $config['avatar_min_width'],
|
||||
'AVATAR_MAX_WIDTH' => $config['avatar_max_width'],
|
||||
'AVATAR_MIN_HEIGHT' => $config['avatar_min_height'],
|
||||
'AVATAR_MAX_HEIGHT' => $config['avatar_max_height'],
|
||||
));
|
||||
|
||||
foreach ($avatar_drivers as $current_driver)
|
||||
{
|
||||
$driver = $phpbb_avatar_manager->get_driver($current_driver);
|
||||
@@ -2073,7 +2081,10 @@ class acp_users
|
||||
// Replace "error" strings with their real, localised form
|
||||
$error = array_map(array($user, 'lang'), $error);
|
||||
|
||||
$decoded_message = generate_text_for_edit($signature, $bbcode_uid, $bbcode_bitfield);
|
||||
if ($request->is_set_post('preview'))
|
||||
{
|
||||
$decoded_message = generate_text_for_edit($signature, $bbcode_uid, $bbcode_bitfield);
|
||||
}
|
||||
|
||||
/** @var \phpbb\controller\helper $controller_helper */
|
||||
$controller_helper = $phpbb_container->get('controller.helper');
|
||||
|
@@ -466,8 +466,10 @@ class auth_admin extends \phpbb\auth\auth
|
||||
// Build role dropdown options
|
||||
$current_role_id = (isset($cur_roles[$ug_id][$forum_id])) ? $cur_roles[$ug_id][$forum_id] : 0;
|
||||
|
||||
// Output current role id to template
|
||||
$template->assign_var('S_ROLE_ID', $current_role_id);
|
||||
$role_options = array();
|
||||
|
||||
$s_role_options = '';
|
||||
$current_role_id = (isset($cur_roles[$ug_id][$forum_id])) ? $cur_roles[$ug_id][$forum_id] : 0;
|
||||
|
||||
@reset($roles);
|
||||
while (list($role_id, $role_row) = each($roles))
|
||||
@@ -475,12 +477,20 @@ class auth_admin extends \phpbb\auth\auth
|
||||
$role_description = (!empty($user->lang[$role_row['role_description']])) ? $user->lang[$role_row['role_description']] : nl2br($role_row['role_description']);
|
||||
$role_name = (!empty($user->lang[$role_row['role_name']])) ? $user->lang[$role_row['role_name']] : $role_row['role_name'];
|
||||
|
||||
$template->assign_block_vars('role_options', array(
|
||||
$title = ($role_description) ? ' title="' . $role_description . '"' : '';
|
||||
$s_role_options .= '<option value="' . $role_id . '"' . (($role_id == $current_role_id) ? ' selected="selected"' : '') . $title . '>' . $role_name . '</option>';
|
||||
|
||||
$role_options[] = array(
|
||||
'ID' => $role_id,
|
||||
'ROLE_NAME' => $role_name,
|
||||
'TITLE' => $role_description,
|
||||
'SELECTED' => $role_id == $current_role_id,
|
||||
));
|
||||
);
|
||||
}
|
||||
|
||||
if ($s_role_options)
|
||||
{
|
||||
$s_role_options = '<option value="0"' . ((!$current_role_id) ? ' selected="selected"' : '') . ' title="' . htmlspecialchars($user->lang['NO_ROLE_ASSIGNED_EXPLAIN']) . '">' . $user->lang['NO_ROLE_ASSIGNED'] . '</option>' . $s_role_options;
|
||||
}
|
||||
|
||||
if (!$current_role_id && $mode != 'view')
|
||||
@@ -504,9 +514,13 @@ class auth_admin extends \phpbb\auth\auth
|
||||
$template->assign_block_vars($tpl_pmask . '.' . $tpl_fmask, array(
|
||||
'NAME' => $ug_names_ary[$ug_id],
|
||||
'UG_ID' => $ug_id,
|
||||
'S_ROLE_OPTIONS' => $s_role_options,
|
||||
'S_CUSTOM' => $s_custom_permissions,
|
||||
'FORUM_ID' => $forum_id)
|
||||
);
|
||||
'FORUM_ID' => $forum_id,
|
||||
'S_ROLE_ID' => $current_role_id,
|
||||
));
|
||||
|
||||
$template->assign_block_vars_array($tpl_pmask . '.' . $tpl_fmask . '.role_options', $role_options);
|
||||
|
||||
$this->assign_cat_array($ug_array, $tpl_pmask . '.' . $tpl_fmask . '.' . $tpl_category, $tpl_mask, $ug_id, $forum_id, ($mode == 'view'), $show_trace);
|
||||
|
||||
@@ -551,8 +565,10 @@ class auth_admin extends \phpbb\auth\auth
|
||||
// Build role dropdown options
|
||||
$current_role_id = (isset($cur_roles[$ug_id][$forum_id])) ? $cur_roles[$ug_id][$forum_id] : 0;
|
||||
|
||||
// Output current role id to template
|
||||
$template->assign_var('S_ROLE_ID', $current_role_id);
|
||||
$role_options = array();
|
||||
|
||||
$current_role_id = (isset($cur_roles[$ug_id][$forum_id])) ? $cur_roles[$ug_id][$forum_id] : 0;
|
||||
$s_role_options = '';
|
||||
|
||||
@reset($roles);
|
||||
while (list($role_id, $role_row) = each($roles))
|
||||
@@ -560,12 +576,20 @@ class auth_admin extends \phpbb\auth\auth
|
||||
$role_description = (!empty($user->lang[$role_row['role_description']])) ? $user->lang[$role_row['role_description']] : nl2br($role_row['role_description']);
|
||||
$role_name = (!empty($user->lang[$role_row['role_name']])) ? $user->lang[$role_row['role_name']] : $role_row['role_name'];
|
||||
|
||||
$template->assign_block_vars('role_options', array(
|
||||
$title = ($role_description) ? ' title="' . $role_description . '"' : '';
|
||||
$s_role_options .= '<option value="' . $role_id . '"' . (($role_id == $current_role_id) ? ' selected="selected"' : '') . $title . '>' . $role_name . '</option>';
|
||||
|
||||
$role_options[] = array(
|
||||
'ID' => $role_id,
|
||||
'ROLE_NAME' => $role_name,
|
||||
'TITLE' => $role_description,
|
||||
'SELECTED' => $role_id == $current_role_id,
|
||||
));
|
||||
);
|
||||
}
|
||||
|
||||
if ($s_role_options)
|
||||
{
|
||||
$s_role_options = '<option value="0"' . ((!$current_role_id) ? ' selected="selected"' : '') . ' title="' . htmlspecialchars($user->lang['NO_ROLE_ASSIGNED_EXPLAIN']) . '">' . $user->lang['NO_ROLE_ASSIGNED'] . '</option>' . $s_role_options;
|
||||
}
|
||||
|
||||
if (!$current_role_id && $mode != 'view')
|
||||
@@ -591,9 +615,12 @@ class auth_admin extends \phpbb\auth\auth
|
||||
'PADDING' => ($forum_id == 0) ? '' : $forum_names_ary[$forum_id]['padding'],
|
||||
'S_CUSTOM' => $s_custom_permissions,
|
||||
'UG_ID' => $ug_id,
|
||||
'S_ROLE_OPTIONS' => $s_role_options,
|
||||
'FORUM_ID' => $forum_id)
|
||||
);
|
||||
|
||||
$template->assign_block_vars_array($tpl_pmask . '.' . $tpl_fmask . '.role_options', $role_options);
|
||||
|
||||
$this->assign_cat_array($forum_array, $tpl_pmask . '.' . $tpl_fmask . '.' . $tpl_category, $tpl_mask, $ug_id, $forum_id, ($mode == 'view'), $show_trace);
|
||||
}
|
||||
|
||||
|
@@ -154,14 +154,13 @@ class bbcode
|
||||
$phpbb_container->get('config'),
|
||||
$phpbb_container->get('filesystem'),
|
||||
$phpbb_container->get('path_helper'),
|
||||
$phpbb_container,
|
||||
$phpbb_container->getParameter('core.root_path') . 'cache/',
|
||||
$phpbb_container->getParameter('core.cache_dir'),
|
||||
$phpbb_container->get('ext.manager'),
|
||||
new \phpbb\template\twig\loader(
|
||||
$phpbb_filesystem
|
||||
)
|
||||
),
|
||||
$phpbb_container->getParameter('core.root_path') . 'cache/',
|
||||
$phpbb_container->getParameter('core.cache_dir'),
|
||||
$phpbb_container->get('user'),
|
||||
$phpbb_container->get('template.twig.extensions.collection'),
|
||||
$phpbb_extension_manager
|
||||
@@ -219,20 +218,25 @@ class bbcode
|
||||
{
|
||||
switch ($bbcode_id)
|
||||
{
|
||||
case 0:
|
||||
case BBCODE_ID_QUOTE:
|
||||
$this->bbcode_cache[$bbcode_id] = array(
|
||||
'str' => array(
|
||||
'[/quote:$uid]' => $this->bbcode_tpl('quote_close', $bbcode_id)
|
||||
),
|
||||
'preg' => array(
|
||||
'#\[quote(?:="(.*?)")?:$uid\]((?!\[quote(?:=".*?")?:$uid\]).)?#is' => function ($match) {
|
||||
if (!isset($match[2]))
|
||||
{
|
||||
$match[2] = '';
|
||||
}
|
||||
|
||||
return $this->bbcode_second_pass_quote($match[1], $match[2]);
|
||||
},
|
||||
)
|
||||
);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
case BBCODE_ID_B:
|
||||
$this->bbcode_cache[$bbcode_id] = array(
|
||||
'str' => array(
|
||||
'[b:$uid]' => $this->bbcode_tpl('b_open', $bbcode_id),
|
||||
@@ -241,7 +245,7 @@ class bbcode
|
||||
);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
case BBCODE_ID_I:
|
||||
$this->bbcode_cache[$bbcode_id] = array(
|
||||
'str' => array(
|
||||
'[i:$uid]' => $this->bbcode_tpl('i_open', $bbcode_id),
|
||||
@@ -250,7 +254,7 @@ class bbcode
|
||||
);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
case BBCODE_ID_URL:
|
||||
$this->bbcode_cache[$bbcode_id] = array(
|
||||
'preg' => array(
|
||||
'#\[url:$uid\]((.*?))\[/url:$uid\]#s' => $this->bbcode_tpl('url', $bbcode_id),
|
||||
@@ -259,7 +263,7 @@ class bbcode
|
||||
);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
case BBCODE_ID_IMG:
|
||||
if ($user->optionget('viewimg'))
|
||||
{
|
||||
$this->bbcode_cache[$bbcode_id] = array(
|
||||
@@ -278,7 +282,7 @@ class bbcode
|
||||
}
|
||||
break;
|
||||
|
||||
case 5:
|
||||
case BBCODE_ID_SIZE:
|
||||
$this->bbcode_cache[$bbcode_id] = array(
|
||||
'preg' => array(
|
||||
'#\[size=([\-\+]?\d+):$uid\](.*?)\[/size:$uid\]#s' => $this->bbcode_tpl('size', $bbcode_id),
|
||||
@@ -286,7 +290,7 @@ class bbcode
|
||||
);
|
||||
break;
|
||||
|
||||
case 6:
|
||||
case BBCODE_ID_COLOR:
|
||||
$this->bbcode_cache[$bbcode_id] = array(
|
||||
'preg' => array(
|
||||
'!\[color=(#[0-9a-f]{3}|#[0-9a-f]{6}|[a-z\-]+):$uid\](.*?)\[/color:$uid\]!is' => $this->bbcode_tpl('color', $bbcode_id),
|
||||
@@ -294,7 +298,7 @@ class bbcode
|
||||
);
|
||||
break;
|
||||
|
||||
case 7:
|
||||
case BBCODE_ID_U:
|
||||
$this->bbcode_cache[$bbcode_id] = array(
|
||||
'str' => array(
|
||||
'[u:$uid]' => $this->bbcode_tpl('u_open', $bbcode_id),
|
||||
@@ -303,7 +307,7 @@ class bbcode
|
||||
);
|
||||
break;
|
||||
|
||||
case 8:
|
||||
case BBCODE_ID_CODE:
|
||||
$this->bbcode_cache[$bbcode_id] = array(
|
||||
'preg' => array(
|
||||
'#\[code(?:=([a-z]+))?:$uid\](.*?)\[/code:$uid\]#is' => function ($match) {
|
||||
@@ -313,7 +317,7 @@ class bbcode
|
||||
);
|
||||
break;
|
||||
|
||||
case 9:
|
||||
case BBCODE_ID_LIST:
|
||||
$this->bbcode_cache[$bbcode_id] = array(
|
||||
'preg' => array(
|
||||
'#(\[\/?(list|\*):[mou]?:?$uid\])[\n]{1}#' => "\$1",
|
||||
@@ -333,7 +337,7 @@ class bbcode
|
||||
);
|
||||
break;
|
||||
|
||||
case 10:
|
||||
case BBCODE_ID_EMAIL:
|
||||
$this->bbcode_cache[$bbcode_id] = array(
|
||||
'preg' => array(
|
||||
'#\[email:$uid\]((.*?))\[/email:$uid\]#is' => $this->bbcode_tpl('email', $bbcode_id),
|
||||
@@ -342,7 +346,7 @@ class bbcode
|
||||
);
|
||||
break;
|
||||
|
||||
case 11:
|
||||
case BBCODE_ID_FLASH:
|
||||
if ($user->optionget('viewflash'))
|
||||
{
|
||||
$this->bbcode_cache[$bbcode_id] = array(
|
||||
@@ -361,7 +365,7 @@ class bbcode
|
||||
}
|
||||
break;
|
||||
|
||||
case 12:
|
||||
case BBCODE_ID_ATTACH:
|
||||
$this->bbcode_cache[$bbcode_id] = array(
|
||||
'str' => array(
|
||||
'[/attachment:$uid]' => $this->bbcode_tpl('inline_attachment_close', $bbcode_id)
|
||||
|
@@ -75,5 +75,3 @@ function register_compatibility_globals()
|
||||
/* @var $template \phpbb\template\template */
|
||||
$template = $phpbb_container->get('template');
|
||||
}
|
||||
|
||||
register_compatibility_globals();
|
||||
|
@@ -28,7 +28,7 @@ if (!defined('IN_PHPBB'))
|
||||
*/
|
||||
|
||||
// phpBB Version
|
||||
@define('PHPBB_VERSION', '3.2.0-b1');
|
||||
@define('PHPBB_VERSION', '3.2.0-RC1');
|
||||
|
||||
// QA-related
|
||||
// define('PHPBB_QA', 1);
|
||||
@@ -182,6 +182,22 @@ define('BBCODE_UID_LEN', 8);
|
||||
|
||||
// Number of core BBCodes
|
||||
define('NUM_CORE_BBCODES', 12);
|
||||
define('NUM_PREDEFINED_BBCODES', 22);
|
||||
|
||||
// BBCode IDs
|
||||
define('BBCODE_ID_QUOTE', 0);
|
||||
define('BBCODE_ID_B', 1);
|
||||
define('BBCODE_ID_I', 2);
|
||||
define('BBCODE_ID_URL', 3);
|
||||
define('BBCODE_ID_IMG', 4);
|
||||
define('BBCODE_ID_SIZE', 5);
|
||||
define('BBCODE_ID_COLOR', 6);
|
||||
define('BBCODE_ID_U', 7);
|
||||
define('BBCODE_ID_CODE', 8);
|
||||
define('BBCODE_ID_LIST', 9);
|
||||
define('BBCODE_ID_EMAIL', 10);
|
||||
define('BBCODE_ID_FLASH', 11);
|
||||
define('BBCODE_ID_ATTACH', 12);
|
||||
|
||||
// BBCode hard limit
|
||||
define('BBCODE_LIMIT', 1511);
|
||||
|
@@ -93,25 +93,10 @@ function gen_rand_string_friendly($num_chars = 8)
|
||||
|
||||
/**
|
||||
* Return unique id
|
||||
* @param string $extra additional entropy
|
||||
*/
|
||||
function unique_id($extra = 'c')
|
||||
function unique_id()
|
||||
{
|
||||
static $dss_seeded = false;
|
||||
global $config;
|
||||
|
||||
$val = $config['rand_seed'] . microtime();
|
||||
$val = md5($val);
|
||||
$config['rand_seed'] = md5($config['rand_seed'] . $val . $extra);
|
||||
|
||||
if ($dss_seeded !== true && ($config['rand_seed_last_update'] < time() - rand(1,10)))
|
||||
{
|
||||
$config->set('rand_seed_last_update', time(), false);
|
||||
$config->set('rand_seed', $config['rand_seed'], false);
|
||||
$dss_seeded = true;
|
||||
}
|
||||
|
||||
return substr($val, 4, 16);
|
||||
return bin2hex(random_bytes(8));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1663,6 +1648,12 @@ function generate_board_url($without_script_path = false)
|
||||
|
||||
$server_name = $user->host;
|
||||
$server_port = $request->server('SERVER_PORT', 0);
|
||||
$forwarded_proto = $request->server('HTTP_X_FORWARDED_PROTO');
|
||||
|
||||
if (!empty($forwarded_proto) && $forwarded_proto === 'https')
|
||||
{
|
||||
$server_port = 443;
|
||||
}
|
||||
|
||||
// Forcing server vars is the only way to specify/override the protocol
|
||||
if ($config['force_server_vars'] || !$server_name)
|
||||
@@ -1828,6 +1819,7 @@ function redirect($url, $return = false, $disable_cd_check = false)
|
||||
echo '<html dir="' . $user->lang['DIRECTION'] . '" lang="' . $user->lang['USER_LANG'] . '">';
|
||||
echo '<head>';
|
||||
echo '<meta charset="utf-8">';
|
||||
echo '<meta http-equiv="X-UA-Compatible" content="IE=edge">';
|
||||
echo '<meta http-equiv="refresh" content="0; url=' . str_replace('&', '&', $url) . '" />';
|
||||
echo '<title>' . $user->lang['REDIRECT'] . '</title>';
|
||||
echo '</head>';
|
||||
@@ -2248,6 +2240,21 @@ function login_box($redirect = '', $l_explain = '', $l_success = '', $admin = fa
|
||||
$user->setup();
|
||||
}
|
||||
|
||||
/**
|
||||
* This event allows an extension to modify the login process
|
||||
*
|
||||
* @event core.login_box_before
|
||||
* @var string redirect Redirect string
|
||||
* @var string l_explain Explain language string
|
||||
* @var string l_success Success language string
|
||||
* @var bool admin Is admin?
|
||||
* @var bool s_display Display full login form?
|
||||
* @var string err Error string
|
||||
* @since 3.1.9-RC1
|
||||
*/
|
||||
$vars = array('redirect', 'l_explain', 'l_success', 'admin', 's_display', 'err');
|
||||
extract($phpbb_dispatcher->trigger_event('core.login_box_before', compact($vars)));
|
||||
|
||||
// Print out error if user tries to authenticate as an administrator without having the privileges...
|
||||
if ($admin && !$auth->acl_get('a_'))
|
||||
{
|
||||
@@ -2260,7 +2267,7 @@ function login_box($redirect = '', $l_explain = '', $l_success = '', $admin = fa
|
||||
trigger_error('NO_AUTH_ADMIN');
|
||||
}
|
||||
|
||||
if ($request->is_set_post('login') || ($request->is_set('login') && $request->variable('login', '') == 'external'))
|
||||
if (empty($err) && ($request->is_set_post('login') || ($request->is_set('login') && $request->variable('login', '') == 'external')))
|
||||
{
|
||||
// Get credential
|
||||
if ($admin)
|
||||
@@ -2329,11 +2336,11 @@ function login_box($redirect = '', $l_explain = '', $l_success = '', $admin = fa
|
||||
*
|
||||
* @event core.login_box_redirect
|
||||
* @var string redirect Redirect string
|
||||
* @var boolean admin Is admin?
|
||||
* @var bool return If true, do not redirect but return the sanitized URL.
|
||||
* @var bool admin Is admin?
|
||||
* @since 3.1.0-RC5
|
||||
* @changed 3.1.9-RC1 Removed undefined return variable
|
||||
*/
|
||||
$vars = array('redirect', 'admin', 'return');
|
||||
$vars = array('redirect', 'admin');
|
||||
extract($phpbb_dispatcher->trigger_event('core.login_box_redirect', compact($vars)));
|
||||
|
||||
// append/replace SID (may change during the session for AOL users)
|
||||
@@ -2745,7 +2752,8 @@ function get_preg_expression($mode)
|
||||
return array(
|
||||
'#<!\-\- e \-\-><a href="mailto:(.*?)">.*?</a><!\-\- e \-\->#',
|
||||
'#<!\-\- l \-\-><a (?:class="[\w-]+" )?href="(.*?)(?:(&|\?)sid=[0-9a-f]{32})?">.*?</a><!\-\- l \-\->#',
|
||||
'#<!\-\- ([mw]) \-\-><a (?:class="[\w-]+" )?href="(.*?)">(.*?)</a><!\-\- \1 \-\->#',
|
||||
'#<!\-\- ([mw]) \-\-><a (?:class="[\w-]+" )?href="http://(.*?)">\2</a><!\-\- \1 \-\->#',
|
||||
'#<!\-\- ([mw]) \-\-><a (?:class="[\w-]+" )?href="(.*?)">.*?</a><!\-\- \1 \-\->#',
|
||||
'#<!\-\- s(.*?) \-\-><img src="\{SMILIES_PATH\}\/.*? \/><!\-\- s\1 \-\->#',
|
||||
'#<!\-\- .*? \-\->#s',
|
||||
'#<.*?>#s',
|
||||
@@ -3322,6 +3330,7 @@ function msg_handler($errno, $msg_text, $errfile, $errline)
|
||||
echo '<html dir="ltr">';
|
||||
echo '<head>';
|
||||
echo '<meta charset="utf-8">';
|
||||
echo '<meta http-equiv="X-UA-Compatible" content="IE=edge">';
|
||||
echo '<title>' . $msg_title . '</title>';
|
||||
echo '<style type="text/css">' . "\n" . '/* <![CDATA[ */' . "\n";
|
||||
echo '* { margin: 0; padding: 0; } html { font-size: 100%; height: 100%; margin-bottom: 1px; background-color: #E4EDF0; } body { font-family: "Lucida Grande", Verdana, Helvetica, Arial, sans-serif; color: #536482; background: #E4EDF0; font-size: 62.5%; margin: 0; } ';
|
||||
@@ -4086,7 +4095,7 @@ function phpbb_get_avatar($row, $alt, $ignore_config = false, $lazy = false)
|
||||
/**
|
||||
* Generate page header
|
||||
*/
|
||||
function page_header($page_title = '', $display_online_list = false, $item_id = 0, $item = 'forum')
|
||||
function page_header($page_title = '', $display_online_list = false, $item_id = 0, $item = 'forum', $send_headers = true)
|
||||
{
|
||||
global $db, $config, $template, $SID, $_SID, $_EXTRA_URL, $user, $auth, $phpEx, $phpbb_root_path;
|
||||
global $phpbb_dispatcher, $request, $phpbb_container, $phpbb_admin_path;
|
||||
@@ -4146,6 +4155,8 @@ function page_header($page_title = '', $display_online_list = false, $item_id =
|
||||
}
|
||||
}
|
||||
|
||||
$user->update_session_infos();
|
||||
|
||||
// Generate logged in/logged out status
|
||||
if ($user->data['user_id'] != ANONYMOUS)
|
||||
{
|
||||
@@ -4429,17 +4440,22 @@ function page_header($page_title = '', $display_online_list = false, $item_id =
|
||||
'SITE_LOGO_IMG' => $user->img('site_logo'),
|
||||
));
|
||||
|
||||
// An array of http headers that phpbb will set. The following event may override these.
|
||||
$http_headers = array(
|
||||
// application/xhtml+xml not used because of IE
|
||||
'Content-type' => 'text/html; charset=UTF-8',
|
||||
'Cache-Control' => 'private, no-cache="set-cookie"',
|
||||
'Expires' => gmdate('D, d M Y H:i:s', time()) . ' GMT',
|
||||
);
|
||||
if (!empty($user->data['is_bot']))
|
||||
$http_headers = array();
|
||||
|
||||
if ($send_headers)
|
||||
{
|
||||
// Let reverse proxies know we detected a bot.
|
||||
$http_headers['X-PHPBB-IS-BOT'] = 'yes';
|
||||
// An array of http headers that phpbb will set. The following event may override these.
|
||||
$http_headers += array(
|
||||
// application/xhtml+xml not used because of IE
|
||||
'Content-type' => 'text/html; charset=UTF-8',
|
||||
'Cache-Control' => 'private, no-cache="set-cookie"',
|
||||
'Expires' => gmdate('D, d M Y H:i:s', time()) . ' GMT',
|
||||
);
|
||||
if (!empty($user->data['is_bot']))
|
||||
{
|
||||
// Let reverse proxies know we detected a bot.
|
||||
$http_headers['X-PHPBB-IS-BOT'] = 'yes';
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -4577,8 +4593,6 @@ function page_footer($run_cron = true, $display_template = true, $exit_handler =
|
||||
return;
|
||||
}
|
||||
|
||||
$user->update_session_infos();
|
||||
|
||||
phpbb_check_and_display_sql_report($request, $auth, $db);
|
||||
|
||||
$template->assign_vars(array(
|
||||
|
@@ -55,6 +55,8 @@ function adm_page_header($page_title)
|
||||
return;
|
||||
}
|
||||
|
||||
$user->update_session_infos();
|
||||
|
||||
// gzip_compression
|
||||
if ($config['gzip_compress'])
|
||||
{
|
||||
@@ -166,8 +168,6 @@ function adm_page_footer($copyright_html = true)
|
||||
return;
|
||||
}
|
||||
|
||||
$user->update_session_infos();
|
||||
|
||||
phpbb_check_and_display_sql_report($request, $auth, $db);
|
||||
|
||||
$template->assign_vars(array(
|
||||
@@ -258,46 +258,49 @@ function build_cfg_template($tpl_type, $key, &$new_ary, $config_key, $vars)
|
||||
case 'text':
|
||||
case 'url':
|
||||
case 'email':
|
||||
case 'color':
|
||||
case 'date':
|
||||
case 'time':
|
||||
case 'datetime':
|
||||
case 'datetime-local':
|
||||
case 'month':
|
||||
case 'range':
|
||||
case 'search':
|
||||
case 'tel':
|
||||
case 'week':
|
||||
case 'search':
|
||||
// maxlength and size are only valid for these types and will be
|
||||
// ignored for other input types.
|
||||
$size = (int) $tpl_type[1];
|
||||
$maxlength = (int) $tpl_type[2];
|
||||
|
||||
$tpl = '<input id="' . $key . '" type="' . $tpl_type[0] . '"' . (($size) ? ' size="' . $size . '"' : '') . ' maxlength="' . (($maxlength) ? $maxlength : 255) . '" name="' . $name . '" value="' . $new_ary[$config_key] . '"' . (($tpl_type[0] === 'password') ? ' autocomplete="off"' : '') . ' />';
|
||||
break;
|
||||
|
||||
case 'color':
|
||||
case 'datetime':
|
||||
case 'datetime-local':
|
||||
case 'month':
|
||||
case 'week':
|
||||
$tpl = '<input id="' . $key . '" type="' . $tpl_type[0] . '" name="' . $name . '" value="' . $new_ary[$config_key] . '" />';
|
||||
break;
|
||||
|
||||
case 'date':
|
||||
case 'time':
|
||||
case 'number':
|
||||
$max = $maxlength = '';
|
||||
case 'range':
|
||||
$max = '';
|
||||
$min = ( isset($tpl_type[1]) ) ? (int) $tpl_type[1] : false;
|
||||
if ( isset($tpl_type[2]) )
|
||||
{
|
||||
$max = (int) $tpl_type[2];
|
||||
$maxlength = strlen( (string) $max );
|
||||
}
|
||||
|
||||
$tpl = '<input id="' . $key . '" type="number" maxlength="' . (( $maxlength != '' ) ? $maxlength : 255) . '"' . (( $min != '' ) ? ' min="' . $min . '"' : '') . (( $max != '' ) ? ' max="' . $max . '"' : '') . ' name="' . $name . '" value="' . $new_ary[$config_key] . '" />';
|
||||
$tpl = '<input id="' . $key . '" type="' . $tpl_type[0] . '"' . (( $min != '' ) ? ' min="' . $min . '"' : '') . (( $max != '' ) ? ' max="' . $max . '"' : '') . ' name="' . $name . '" value="' . $new_ary[$config_key] . '" />';
|
||||
break;
|
||||
|
||||
case 'dimension':
|
||||
$max = $maxlength = $size = '';
|
||||
$max = '';
|
||||
|
||||
$min = (int) $tpl_type[1];
|
||||
|
||||
if ( isset($tpl_type[2]) )
|
||||
{
|
||||
$max = (int) $tpl_type[2];
|
||||
$size = $maxlength = strlen( (string) $max );
|
||||
}
|
||||
|
||||
$tpl = '<input id="' . $key . '" type="number"' . (( $size != '' ) ? ' size="' . $size . '"' : '') . ' maxlength="' . (($maxlength != '') ? $maxlength : 255) . '"' . (( $min !== '' ) ? ' min="' . $min . '"' : '') . (( $max != '' ) ? ' max="' . $max . '"' : '') . ' name="config[' . $config_key . '_width]" value="' . $new_ary[$config_key . '_width'] . '" /> x <input type="number"' . (( $size != '' ) ? ' size="' . $size . '"' : '') . ' maxlength="' . (($maxlength != '') ? $maxlength : 255) . '"' . (( $min !== '' ) ? ' min="' . $min . '"' : '') . (( $max != '' ) ? ' max="' . $max . '"' : '') . ' name="config[' . $config_key . '_height]" value="' . $new_ary[$config_key . '_height'] . '" />';
|
||||
$tpl = '<input id="' . $key . '" type="number"' . (( $min !== '' ) ? ' min="' . $min . '"' : '') . (( $max != '' ) ? ' max="' . $max . '"' : '') . ' name="config[' . $config_key . '_width]" value="' . $new_ary[$config_key . '_width'] . '" /> x <input type="number"' . (( $min !== '' ) ? ' min="' . $min . '"' : '') . (( $max != '' ) ? ' max="' . $max . '"' : '') . ' name="config[' . $config_key . '_height]" value="' . $new_ary[$config_key . '_height'] . '" />';
|
||||
break;
|
||||
|
||||
case 'textarea':
|
||||
|
@@ -2999,8 +2999,8 @@ function add_permission_language()
|
||||
$lang_files = $finder
|
||||
->prefix('permissions_')
|
||||
->suffix(".$phpEx")
|
||||
->core_path('language/' . $user->lang_name . '/')
|
||||
->extension_directory('/language/' . $user->lang_name)
|
||||
->core_path('language/')
|
||||
->extension_directory('/language')
|
||||
->find();
|
||||
|
||||
foreach ($lang_files as $lang_file => $ext_name)
|
||||
|
@@ -47,7 +47,7 @@ if (!defined('IN_PHPBB'))
|
||||
*/
|
||||
function gen_sort_selects(&$limit_days, &$sort_by_text, &$sort_days, &$sort_key, &$sort_dir, &$s_limit_days, &$s_sort_key, &$s_sort_dir, &$u_sort_param, $def_st = false, $def_sk = false, $def_sd = false)
|
||||
{
|
||||
global $user;
|
||||
global $user, $phpbb_dispatcher;
|
||||
|
||||
$sort_dir_text = array('a' => $user->lang['ASCENDING'], 'd' => $user->lang['DESCENDING']);
|
||||
|
||||
@@ -106,6 +106,42 @@ function gen_sort_selects(&$limit_days, &$sort_by_text, &$sort_days, &$sort_key,
|
||||
$u_sort_param .= ($selected !== $sort_ary['default']) ? ((strlen($u_sort_param)) ? '&' : '') . "{$name}={$selected}" : '';
|
||||
}
|
||||
|
||||
/**
|
||||
* Run code before generated sort selects are returned
|
||||
*
|
||||
* @event core.gen_sort_selects_after
|
||||
* @var int limit_days Days limit
|
||||
* @var array sort_by_text Sort by text options
|
||||
* @var int sort_days Sort by days flag
|
||||
* @var string sort_key Sort key
|
||||
* @var string sort_dir Sort dir
|
||||
* @var string s_limit_days String of days limit
|
||||
* @var string s_sort_key String of sort key
|
||||
* @var string s_sort_dir String of sort dir
|
||||
* @var string u_sort_param Sort URL params
|
||||
* @var bool def_st Default sort days
|
||||
* @var bool def_sk Default sort key
|
||||
* @var bool def_sd Default sort dir
|
||||
* @var array sorts Sorts
|
||||
* @since 3.1.9-RC1
|
||||
*/
|
||||
$vars = array(
|
||||
'limit_days',
|
||||
'sort_by_text',
|
||||
'sort_days',
|
||||
'sort_key',
|
||||
'sort_dir',
|
||||
's_limit_days',
|
||||
's_sort_key',
|
||||
's_sort_dir',
|
||||
'u_sort_param',
|
||||
'def_st',
|
||||
'def_sk',
|
||||
'def_sd',
|
||||
'sorts',
|
||||
);
|
||||
extract($phpbb_dispatcher->trigger_event('core.gen_sort_selects_after', compact($vars)));
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -114,7 +150,7 @@ function gen_sort_selects(&$limit_days, &$sort_by_text, &$sort_days, &$sort_key,
|
||||
*/
|
||||
function make_jumpbox($action, $forum_id = false, $select_all = false, $acl_list = false, $force_display = false)
|
||||
{
|
||||
global $config, $auth, $template, $user, $db, $phpbb_path_helper;
|
||||
global $config, $auth, $template, $user, $db, $phpbb_path_helper, $phpbb_dispatcher;
|
||||
|
||||
// We only return if the jumpbox is not forced to be displayed (in case it is needed for functionality)
|
||||
if (!$config['load_jumpbox'] && $force_display === false)
|
||||
@@ -169,20 +205,21 @@ function make_jumpbox($action, $forum_id = false, $select_all = false, $acl_list
|
||||
continue;
|
||||
}
|
||||
|
||||
$tpl_ary = array();
|
||||
if (!$display_jumpbox)
|
||||
{
|
||||
$template->assign_block_vars('jumpbox_forums', array(
|
||||
$tpl_ary[] = array(
|
||||
'FORUM_ID' => ($select_all) ? 0 : -1,
|
||||
'FORUM_NAME' => ($select_all) ? $user->lang['ALL_FORUMS'] : $user->lang['SELECT_FORUM'],
|
||||
'S_FORUM_COUNT' => $iteration,
|
||||
'LINK' => $phpbb_path_helper->append_url_params($action, array('f' => $forum_id)),
|
||||
));
|
||||
);
|
||||
|
||||
$iteration++;
|
||||
$display_jumpbox = true;
|
||||
}
|
||||
|
||||
$template->assign_block_vars('jumpbox_forums', array(
|
||||
$tpl_ary[] = array(
|
||||
'FORUM_ID' => $row['forum_id'],
|
||||
'FORUM_NAME' => $row['forum_name'],
|
||||
'SELECTED' => ($row['forum_id'] == $forum_id) ? ' selected="selected"' : '',
|
||||
@@ -191,7 +228,25 @@ function make_jumpbox($action, $forum_id = false, $select_all = false, $acl_list
|
||||
'S_IS_LINK' => ($row['forum_type'] == FORUM_LINK) ? true : false,
|
||||
'S_IS_POST' => ($row['forum_type'] == FORUM_POST) ? true : false,
|
||||
'LINK' => $phpbb_path_helper->append_url_params($action, array('f' => $row['forum_id'])),
|
||||
));
|
||||
);
|
||||
|
||||
/**
|
||||
* Modify the jumpbox before it is assigned to the template
|
||||
*
|
||||
* @event core.make_jumpbox_modify_tpl_ary
|
||||
* @var array row The data of the forum
|
||||
* @var array tpl_ary Template data of the forum
|
||||
* @since 3.1.10-RC1
|
||||
*/
|
||||
$vars = array(
|
||||
'row',
|
||||
'tpl_ary',
|
||||
);
|
||||
extract($phpbb_dispatcher->trigger_event('core.make_jumpbox_modify_tpl_ary', compact($vars)));
|
||||
|
||||
$template->assign_block_vars_array('jumpbox_forums', $tpl_ary);
|
||||
|
||||
unset($tpl_ary);
|
||||
|
||||
for ($i = 0; $i < $padding; $i++)
|
||||
{
|
||||
@@ -398,7 +453,20 @@ function phpbb_clean_search_string($search_string)
|
||||
*/
|
||||
function decode_message(&$message, $bbcode_uid = '')
|
||||
{
|
||||
global $phpbb_container;
|
||||
global $phpbb_container, $phpbb_dispatcher;
|
||||
|
||||
/**
|
||||
* Use this event to modify the message before it is decoded
|
||||
*
|
||||
* @event core.decode_message_before
|
||||
* @var string message_text The message content
|
||||
* @var string bbcode_uid The message BBCode UID
|
||||
* @since 3.1.9-RC1
|
||||
*/
|
||||
$message_text = $message;
|
||||
$vars = array('message_text', 'bbcode_uid');
|
||||
extract($phpbb_dispatcher->trigger_event('core.decode_message_before', compact($vars)));
|
||||
$message = $message_text;
|
||||
|
||||
if (preg_match('#^<[rt][ >]#', $message))
|
||||
{
|
||||
@@ -420,10 +488,23 @@ function decode_message(&$message, $bbcode_uid = '')
|
||||
$message = str_replace($match, $replace, $message);
|
||||
|
||||
$match = get_preg_expression('bbcode_htm');
|
||||
$replace = array('\1', '\1', '\3', '\1', '', '');
|
||||
$replace = array('\1', '\1', '\2', '\2', '\1', '', '');
|
||||
|
||||
$message = preg_replace($match, $replace, $message);
|
||||
}
|
||||
|
||||
/**
|
||||
* Use this event to modify the message after it is decoded
|
||||
*
|
||||
* @event core.decode_message_after
|
||||
* @var string message_text The message content
|
||||
* @var string bbcode_uid The message BBCode UID
|
||||
* @since 3.1.9-RC1
|
||||
*/
|
||||
$message_text = $message;
|
||||
$vars = array('message_text', 'bbcode_uid');
|
||||
extract($phpbb_dispatcher->trigger_event('core.decode_message_after', compact($vars)));
|
||||
$message = $message_text;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1029,17 +1110,8 @@ function parse_attachments($forum_id, &$message, &$attachments, &$update_count_a
|
||||
unset($new_attachment_data);
|
||||
}
|
||||
|
||||
// Sort correctly
|
||||
if ($config['display_order'])
|
||||
{
|
||||
// Ascending sort
|
||||
krsort($attachments);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Descending sort
|
||||
ksort($attachments);
|
||||
}
|
||||
// Make sure attachments are properly ordered
|
||||
ksort($attachments);
|
||||
|
||||
foreach ($attachments as $attachment)
|
||||
{
|
||||
@@ -1247,8 +1319,6 @@ function parse_attachments($forum_id, &$message, &$attachments, &$update_count_a
|
||||
$attachments = $compiled_attachments;
|
||||
unset($compiled_attachments);
|
||||
|
||||
$tpl_size = sizeof($attachments);
|
||||
|
||||
$unset_tpl = array();
|
||||
|
||||
preg_match_all('#<!\-\- ia([0-9]+) \-\->(.*?)<!\-\- ia\1 \-\->#', $message, $matches, PREG_PATTERN_ORDER);
|
||||
@@ -1256,8 +1326,7 @@ function parse_attachments($forum_id, &$message, &$attachments, &$update_count_a
|
||||
$replace = array();
|
||||
foreach ($matches[0] as $num => $capture)
|
||||
{
|
||||
// Flip index if we are displaying the reverse way
|
||||
$index = ($config['display_order']) ? ($tpl_size-($matches[1][$num] + 1)) : $matches[1][$num];
|
||||
$index = $matches[1][$num];
|
||||
|
||||
$replace['from'][] = $matches[0][$num];
|
||||
$replace['to'][] = (isset($attachments[$index])) ? $attachments[$index] : sprintf($user->lang['MISSING_INLINE_ATTACHMENT'], $matches[2][array_search($index, $matches[1])]);
|
||||
@@ -1272,6 +1341,18 @@ function parse_attachments($forum_id, &$message, &$attachments, &$update_count_a
|
||||
|
||||
$unset_tpl = array_unique($unset_tpl);
|
||||
|
||||
// Sort correctly
|
||||
if ($config['display_order'])
|
||||
{
|
||||
// Ascending sort
|
||||
krsort($attachments);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Descending sort
|
||||
ksort($attachments);
|
||||
}
|
||||
|
||||
// Needed to let not display the inlined attachments at the end of the post again
|
||||
foreach ($unset_tpl as $index)
|
||||
{
|
||||
|
@@ -479,7 +479,7 @@ function import_avatar_gallery($gallery_name = '', $subdirs_as_galleries = false
|
||||
$dir->close();
|
||||
}
|
||||
|
||||
for ($i = 0; $i < sizeof($dirlist); ++$i)
|
||||
for ($i = 0, $end = sizeof($dirlist); $i < $end; ++$i)
|
||||
{
|
||||
$dir = $dirlist[$i];
|
||||
|
||||
@@ -1425,7 +1425,7 @@ function get_path($src_path, $src_url, $test_file)
|
||||
$path_array = array();
|
||||
|
||||
$phpbb_parts = explode('/', $script_path);
|
||||
for ($i = 0; $i < sizeof($url_parts); ++$i)
|
||||
for ($i = 0, $end = sizeof($url_parts); $i < $end; ++$i)
|
||||
{
|
||||
if ($i < sizeof($phpbb_parts[$i]) && $url_parts[$i] == $phpbb_parts[$i])
|
||||
{
|
||||
@@ -1435,7 +1435,7 @@ function get_path($src_path, $src_url, $test_file)
|
||||
else
|
||||
{
|
||||
$path = '';
|
||||
for ($j = $i; $j < sizeof($phpbb_parts); ++$j)
|
||||
for ($j = $i, $end2 = sizeof($phpbb_parts); $j < $end2; ++$j)
|
||||
{
|
||||
$path .= '../';
|
||||
}
|
||||
@@ -2267,7 +2267,7 @@ function convert_bbcode($message, $convert_size = true, $extended_bbcodes = fals
|
||||
"\n\n"
|
||||
);
|
||||
|
||||
for ($i = 0; $i < sizeof($str_from); ++$i)
|
||||
for ($i = 0, $end = sizeof($str_from); $i < $end; ++$i)
|
||||
{
|
||||
$origx[] = '#\\' . str_replace(']', '\\]', $str_from[$i]) . '#is';
|
||||
$replx[] = $str_to[$i];
|
||||
@@ -2276,7 +2276,7 @@ function convert_bbcode($message, $convert_size = true, $extended_bbcodes = fals
|
||||
|
||||
if (preg_match_all('#\[email=([^\]]+)\](.*?)\[/email\]#i', $message, $m))
|
||||
{
|
||||
for ($i = 0; $i < sizeof($m[1]); ++$i)
|
||||
for ($i = 0, $end = sizeof($m[1]); $i < $end; ++$i)
|
||||
{
|
||||
if ($m[1][$i] == $m[2][$i])
|
||||
{
|
||||
@@ -2340,7 +2340,7 @@ function copy_file($src, $trg, $overwrite = false, $die_on_failure = true, $sour
|
||||
$parts = explode('/', $trg);
|
||||
unset($parts[sizeof($parts) - 1]);
|
||||
|
||||
for ($i = 0; $i < sizeof($parts); ++$i)
|
||||
for ($i = 0, $end = sizeof($parts); $i < $end; ++$i)
|
||||
{
|
||||
$path .= $parts[$i] . '/';
|
||||
|
||||
@@ -2440,7 +2440,7 @@ function copy_dir($src, $trg, $copy_subdirs = true, $overwrite = false, $die_on_
|
||||
|
||||
if ($copy_subdirs)
|
||||
{
|
||||
for ($i = 0; $i < sizeof($dirlist); ++$i)
|
||||
for ($i = 0, $end = sizeof($dirlist); $i < $end; ++$i)
|
||||
{
|
||||
$dir = $dirlist[$i];
|
||||
|
||||
@@ -2475,7 +2475,7 @@ function copy_dir($src, $trg, $copy_subdirs = true, $overwrite = false, $die_on_
|
||||
$convert->p_master->error(sprintf($str, implode('<br />', $bad_dirs)), __LINE__, __FILE__);
|
||||
}
|
||||
|
||||
for ($i = 0; $i < sizeof($filelist); ++$i)
|
||||
for ($i = 0, $end = sizeof($filelist); $i < $end; ++$i)
|
||||
{
|
||||
copy_file($src . $filelist[$i], $trg . $filelist[$i], $overwrite, $die_on_failure, $source_relative_path);
|
||||
}
|
||||
|
@@ -1076,7 +1076,7 @@ function display_custom_bbcodes()
|
||||
global $db, $template, $user, $phpbb_dispatcher;
|
||||
|
||||
// Start counting from 22 for the bbcode ids (every bbcode takes two ids - opening/closing)
|
||||
$num_predefined_bbcodes = 22;
|
||||
$num_predefined_bbcodes = NUM_PREDEFINED_BBCODES;
|
||||
|
||||
$sql_ary = array(
|
||||
'SELECT' => 'b.bbcode_id, b.bbcode_tag, b.bbcode_helpline',
|
||||
|
@@ -108,6 +108,7 @@ function wrap_img_in_html($src, $title)
|
||||
echo '<html>';
|
||||
echo '<head>';
|
||||
echo '<meta charset="utf-8">';
|
||||
echo '<meta http-equiv="X-UA-Compatible" content="IE=edge">';
|
||||
echo '<title>' . $title . '</title>';
|
||||
echo '</head>';
|
||||
echo '<body>';
|
||||
@@ -165,7 +166,7 @@ function send_file_to_browser($attachment, $upload_dir, $category)
|
||||
}
|
||||
|
||||
// Make sure the database record for the filesize is correct
|
||||
if ($size > 0 && $size != $attachment['filesize'])
|
||||
if ($size > 0 && $size != $attachment['filesize'] && strpos($attachment['physical_filename'], 'thumb_') === false)
|
||||
{
|
||||
// Update database record
|
||||
$sql = 'UPDATE ' . ATTACHMENTS_TABLE . '
|
||||
@@ -412,7 +413,7 @@ function set_modified_headers($stamp, $browser)
|
||||
global $request;
|
||||
|
||||
// let's see if we have to send the file at all
|
||||
$last_load = $request->header('Modified-Since') ? strtotime(trim($request->header('Modified-Since'))) : false;
|
||||
$last_load = $request->header('If-Modified-Since') ? strtotime(trim($request->header('If-Modified-Since'))) : false;
|
||||
|
||||
if (strpos(strtolower($browser), 'msie 6.0') === false && !phpbb_is_greater_ie_version($browser, 7))
|
||||
{
|
||||
|
@@ -204,10 +204,12 @@ class messenger
|
||||
/**
|
||||
* Set email template to use
|
||||
*/
|
||||
function template($template_file, $template_lang = '', $template_path = '')
|
||||
function template($template_file, $template_lang = '', $template_path = '', $template_dir_prefix = '')
|
||||
{
|
||||
global $config, $phpbb_root_path, $user;
|
||||
|
||||
$template_dir_prefix = (!$template_dir_prefix || $template_dir_prefix[0] === '/') ? $template_dir_prefix : '/' . $template_dir_prefix;
|
||||
|
||||
$this->setup_template();
|
||||
|
||||
if (!trim($template_file))
|
||||
@@ -226,7 +228,7 @@ class messenger
|
||||
if ($template_path)
|
||||
{
|
||||
$template_paths = array(
|
||||
$template_path,
|
||||
$template_path . $template_dir_prefix,
|
||||
);
|
||||
}
|
||||
else
|
||||
@@ -235,7 +237,7 @@ class messenger
|
||||
$template_path .= $template_lang . '/email';
|
||||
|
||||
$template_paths = array(
|
||||
$template_path,
|
||||
$template_path . $template_dir_prefix,
|
||||
);
|
||||
|
||||
// we can only specify default language fallback when the path is not a custom one for which we
|
||||
@@ -245,14 +247,14 @@ class messenger
|
||||
$fallback_template_path = (!empty($user->lang_path)) ? $user->lang_path : $phpbb_root_path . 'language/';
|
||||
$fallback_template_path .= basename($config['default_lang']) . '/email';
|
||||
|
||||
$template_paths[] = $fallback_template_path;
|
||||
$template_paths[] = $fallback_template_path . $template_dir_prefix;
|
||||
}
|
||||
}
|
||||
|
||||
$this->set_template_paths(array(
|
||||
array(
|
||||
'name' => $template_lang . '_email',
|
||||
'ext_path' => 'language/' . $template_lang . '/email'
|
||||
'ext_path' => 'language/' . $template_lang . '/email' . $template_dir_prefix,
|
||||
),
|
||||
), $template_paths);
|
||||
|
||||
@@ -637,14 +639,13 @@ class messenger
|
||||
$phpbb_container->get('config'),
|
||||
$phpbb_container->get('filesystem'),
|
||||
$phpbb_container->get('path_helper'),
|
||||
$phpbb_container,
|
||||
$phpbb_container->getParameter('core.root_path') . 'cache/',
|
||||
$phpbb_container->getParameter('core.cache_dir'),
|
||||
$phpbb_container->get('ext.manager'),
|
||||
new \phpbb\template\twig\loader(
|
||||
$phpbb_filesystem
|
||||
)
|
||||
),
|
||||
$phpbb_container->getParameter('core.root_path') . 'cache/',
|
||||
$phpbb_container->getParameter('core.cache_dir'),
|
||||
$phpbb_container->get('user'),
|
||||
$phpbb_container->get('template.twig.extensions.collection'),
|
||||
$phpbb_extension_manager
|
||||
@@ -873,6 +874,11 @@ class queue
|
||||
fwrite($fp, "<?php\nif (!defined('IN_PHPBB')) exit;\n\$this->queue_data = unserialize(" . var_export(serialize($this->queue_data), true) . ");\n\n?>");
|
||||
fclose($fp);
|
||||
|
||||
if (function_exists('opcache_invalidate'))
|
||||
{
|
||||
@opcache_invalidate($this->cache_file);
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
$this->filesystem->phpbb_chmod($this->cache_file, CHMOD_READ | CHMOD_WRITE);
|
||||
@@ -922,6 +928,11 @@ class queue
|
||||
fwrite($fp, "<?php\nif (!defined('IN_PHPBB')) exit;\n\$this->queue_data = unserialize(" . var_export(serialize($this->data), true) . ");\n\n?>");
|
||||
fclose($fp);
|
||||
|
||||
if (function_exists('opcache_invalidate'))
|
||||
{
|
||||
@opcache_invalidate($this->cache_file);
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
$this->filesystem->phpbb_chmod($this->cache_file, CHMOD_READ | CHMOD_WRITE);
|
||||
|
@@ -977,6 +977,32 @@ function topic_review($topic_id, $forum_id, $mode = 'topic_review', $cur_post_id
|
||||
$db->sql_freeresult($result);
|
||||
}
|
||||
|
||||
/**
|
||||
* Event to modify the posts list for topic reviews
|
||||
*
|
||||
* @event core.topic_review_modify_post_list
|
||||
* @var array attachments Array with the post attachments data
|
||||
* @var int cur_post_id Post offset ID
|
||||
* @var int forum_id The topic's forum ID
|
||||
* @var string mode The topic review mode
|
||||
* @var array post_list Array with the post IDs
|
||||
* @var array rowset Array with the posts data
|
||||
* @var bool show_quote_button Flag indicating if the quote button should be displayed
|
||||
* @var int topic_id The topic ID that is being reviewed
|
||||
* @since 3.1.9-RC1
|
||||
*/
|
||||
$vars = array(
|
||||
'attachments',
|
||||
'cur_post_id',
|
||||
'forum_id',
|
||||
'mode',
|
||||
'post_list',
|
||||
'rowset',
|
||||
'show_quote_button',
|
||||
'topic_id',
|
||||
);
|
||||
extract($phpbb_dispatcher->trigger_event('core.topic_review_modify_post_list', compact($vars)));
|
||||
|
||||
for ($i = 0, $end = sizeof($post_list); $i < $end; ++$i)
|
||||
{
|
||||
// A non-existing rowset only happens if there was no user present for the entered poster_id
|
||||
@@ -1466,6 +1492,10 @@ function submit_post($mode, $subject, $username, $topic_type, &$poll_ary, &$data
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if (isset($data_ary['post_visibility']) && $data_ary['post_visibility'] !== false)
|
||||
{
|
||||
$post_visibility = $data_ary['post_visibility'];
|
||||
}
|
||||
|
||||
// MODs/Extensions are able to force any visibility on posts
|
||||
if (isset($data_ary['force_approved_state']))
|
||||
@@ -2273,7 +2303,9 @@ function submit_post($mode, $subject, $username, $topic_type, &$poll_ary, &$data
|
||||
|
||||
$params = $add_anchor = '';
|
||||
|
||||
if ($post_visibility == ITEM_APPROVED)
|
||||
if ($post_visibility == ITEM_APPROVED ||
|
||||
($auth->acl_get('m_softdelete', $data_ary['forum_id']) && $post_visibility == ITEM_DELETED) ||
|
||||
($auth->acl_get('m_approve', $data_ary['forum_id']) && in_array($post_visibility, array(ITEM_UNAPPROVED, ITEM_REAPPROVE))))
|
||||
{
|
||||
$params .= '&t=' . $data_ary['topic_id'];
|
||||
|
||||
|
@@ -2764,7 +2764,7 @@ function group_user_add($group_id, $user_id_ary = false, $username_ary = false,
|
||||
*
|
||||
* @return false if no errors occurred, else the user lang string for the relevant error, for example 'NO_USER'
|
||||
*/
|
||||
function group_user_del($group_id, $user_id_ary = false, $username_ary = false, $group_name = false)
|
||||
function group_user_del($group_id, $user_id_ary = false, $username_ary = false, $group_name = false, $log_action = true)
|
||||
{
|
||||
global $db, $auth, $config, $user, $phpbb_dispatcher, $phpbb_container, $phpbb_log;
|
||||
|
||||
@@ -2899,16 +2899,19 @@ function group_user_del($group_id, $user_id_ary = false, $username_ary = false,
|
||||
$vars = array('group_id', 'group_name', 'user_id_ary', 'username_ary');
|
||||
extract($phpbb_dispatcher->trigger_event('core.group_delete_user_after', compact($vars)));
|
||||
|
||||
if (!$group_name)
|
||||
if ($log_action)
|
||||
{
|
||||
$group_name = get_group_name($group_id);
|
||||
}
|
||||
if (!$group_name)
|
||||
{
|
||||
$group_name = get_group_name($group_id);
|
||||
}
|
||||
|
||||
$log = 'LOG_GROUP_REMOVE';
|
||||
$log = 'LOG_GROUP_REMOVE';
|
||||
|
||||
if ($group_name)
|
||||
{
|
||||
$phpbb_log->add('admin', $user->data['user_id'], $user->ip, $log, false, array($group_name, implode(', ', $username_ary)));
|
||||
if ($group_name)
|
||||
{
|
||||
$phpbb_log->add('admin', $user->data['user_id'], $user->ip, $log, false, array($group_name, implode(', ', $username_ary)));
|
||||
}
|
||||
}
|
||||
|
||||
group_update_listings($group_id);
|
||||
@@ -3555,8 +3558,8 @@ function remove_newly_registered($user_id, $user_data = false)
|
||||
}
|
||||
|
||||
// We need to call group_user_del here, because this function makes sure everything is correctly changed.
|
||||
// A downside for a call within the session handler is that the language is not set up yet - so no log entry
|
||||
group_user_del($group_id, $user_id);
|
||||
// Force function to not log the removal of users from newly registered users group
|
||||
group_user_del($group_id, $user_id, false, false, false);
|
||||
|
||||
// Set user_new to 0 to let this not be triggered again
|
||||
$sql = 'UPDATE ' . USERS_TABLE . '
|
||||
|
@@ -530,12 +530,28 @@ function add_warning($user_row, $warning, $send_pm = true, $post_id = 0)
|
||||
include_once($phpbb_root_path . 'includes/functions_privmsgs.' . $phpEx);
|
||||
include_once($phpbb_root_path . 'includes/message_parser.' . $phpEx);
|
||||
|
||||
$user_row['user_lang'] = (file_exists($phpbb_root_path . 'language/' . $user_row['user_lang'] . "/mcp.$phpEx")) ? $user_row['user_lang'] : $config['default_lang'];
|
||||
include($phpbb_root_path . 'language/' . basename($user_row['user_lang']) . "/mcp.$phpEx");
|
||||
// Attempt to translate warning to language of user being warned if user's language differs from issuer's language
|
||||
if ($user_row['user_lang'] != $user->lang_name)
|
||||
{
|
||||
$lang = array();
|
||||
|
||||
$user_row['user_lang'] = (file_exists($phpbb_root_path . 'language/' . basename($user_row['user_lang']) . "/mcp." . $phpEx)) ? $user_row['user_lang'] : $config['default_lang'];
|
||||
include($phpbb_root_path . 'language/' . basename($user_row['user_lang']) . "/mcp." . $phpEx);
|
||||
|
||||
$warn_pm_subject = $lang['WARNING_PM_SUBJECT'];
|
||||
$warn_pm_body = sprintf($lang['WARNING_PM_BODY'], $warning);
|
||||
|
||||
unset($lang);
|
||||
}
|
||||
else
|
||||
{
|
||||
$warn_pm_subject = $user->lang('WARNING_PM_SUBJECT');
|
||||
$warn_pm_body = $user->lang('WARNING_PM_BODY', $warning);
|
||||
}
|
||||
|
||||
$message_parser = new parse_message();
|
||||
|
||||
$message_parser->message = $user->lang('WARNING_PM_BODY', $warning);
|
||||
$message_parser->message = $warn_pm_body;
|
||||
$message_parser->parse(true, true, true, false, false, true, true);
|
||||
|
||||
$pm_data = array(
|
||||
@@ -553,7 +569,7 @@ function add_warning($user_row, $warning, $send_pm = true, $post_id = 0)
|
||||
'address_list' => array('u' => array($user_row['user_id'] => 'to')),
|
||||
);
|
||||
|
||||
submit_pm('post', $user->lang('WARNING_PM_SUBJECT'), $pm_data, false);
|
||||
submit_pm('post', $warn_pm_subject, $pm_data, false);
|
||||
}
|
||||
|
||||
$phpbb_log->add('admin', $user->data['user_id'], $user->ip, 'LOG_USER_WARNING', false, array($user_row['username']));
|
||||
|
@@ -141,67 +141,67 @@ class bbcode_firstpass extends bbcode
|
||||
// To perform custom validation in extension, use $this->validate_bbcode_by_extension()
|
||||
// method which accepts variable number of parameters
|
||||
$this->bbcodes = array(
|
||||
'code' => array('bbcode_id' => 8, 'regexp' => array('#\[code(?:=([a-z]+))?\](.+\[/code\])#uis' => function ($match) use($bbcode_class)
|
||||
'code' => array('bbcode_id' => BBCODE_ID_CODE, 'regexp' => array('#\[code(?:=([a-z]+))?\](.+\[/code\])#uis' => function ($match) use($bbcode_class)
|
||||
{
|
||||
return $bbcode_class->bbcode_code($match[1], $match[2]);
|
||||
}
|
||||
)),
|
||||
'quote' => array('bbcode_id' => 0, 'regexp' => array('#\[quote(?:="(.*?)")?\](.+)\[/quote\]#uis' => function ($match) use($bbcode_class)
|
||||
'quote' => array('bbcode_id' => BBCODE_ID_QUOTE, 'regexp' => array('#\[quote(?:="(.*?)")?\](.+)\[/quote\]#uis' => function ($match) use($bbcode_class)
|
||||
{
|
||||
return $bbcode_class->bbcode_quote($match[0]);
|
||||
}
|
||||
)),
|
||||
'attachment' => array('bbcode_id' => 12, 'regexp' => array('#\[attachment=([0-9]+)\](.*?)\[/attachment\]#uis' => function ($match) use($bbcode_class)
|
||||
'attachment' => array('bbcode_id' => BBCODE_ID_ATTACH, 'regexp' => array('#\[attachment=([0-9]+)\](.*?)\[/attachment\]#uis' => function ($match) use($bbcode_class)
|
||||
{
|
||||
return $bbcode_class->bbcode_attachment($match[1], $match[2]);
|
||||
}
|
||||
)),
|
||||
'b' => array('bbcode_id' => 1, 'regexp' => array('#\[b\](.*?)\[/b\]#uis' => function ($match) use($bbcode_class)
|
||||
'b' => array('bbcode_id' => BBCODE_ID_B, 'regexp' => array('#\[b\](.*?)\[/b\]#uis' => function ($match) use($bbcode_class)
|
||||
{
|
||||
return $bbcode_class->bbcode_strong($match[1]);
|
||||
}
|
||||
)),
|
||||
'i' => array('bbcode_id' => 2, 'regexp' => array('#\[i\](.*?)\[/i\]#uis' => function ($match) use($bbcode_class)
|
||||
'i' => array('bbcode_id' => BBCODE_ID_I, 'regexp' => array('#\[i\](.*?)\[/i\]#uis' => function ($match) use($bbcode_class)
|
||||
{
|
||||
return $bbcode_class->bbcode_italic($match[1]);
|
||||
}
|
||||
)),
|
||||
'url' => array('bbcode_id' => 3, 'regexp' => array('#\[url(=(.*))?\](?(1)((?s).*(?-s))|(.*))\[/url\]#uiU' => function ($match) use($bbcode_class)
|
||||
'url' => array('bbcode_id' => BBCODE_ID_URL, 'regexp' => array('#\[url(=(.*))?\](?(1)((?s).*(?-s))|(.*))\[/url\]#uiU' => function ($match) use($bbcode_class)
|
||||
{
|
||||
return $bbcode_class->validate_url($match[2], ($match[3]) ? $match[3] : $match[4]);
|
||||
}
|
||||
)),
|
||||
'img' => array('bbcode_id' => 4, 'regexp' => array('#\[img\](.*)\[/img\]#uiU' => function ($match) use($bbcode_class)
|
||||
'img' => array('bbcode_id' => BBCODE_ID_IMG, 'regexp' => array('#\[img\](.*)\[/img\]#uiU' => function ($match) use($bbcode_class)
|
||||
{
|
||||
return $bbcode_class->bbcode_img($match[1]);
|
||||
}
|
||||
)),
|
||||
'size' => array('bbcode_id' => 5, 'regexp' => array('#\[size=([\-\+]?\d+)\](.*?)\[/size\]#uis' => function ($match) use($bbcode_class)
|
||||
'size' => array('bbcode_id' => BBCODE_ID_SIZE, 'regexp' => array('#\[size=([\-\+]?\d+)\](.*?)\[/size\]#uis' => function ($match) use($bbcode_class)
|
||||
{
|
||||
return $bbcode_class->bbcode_size($match[1], $match[2]);
|
||||
}
|
||||
)),
|
||||
'color' => array('bbcode_id' => 6, 'regexp' => array('!\[color=(#[0-9a-f]{3}|#[0-9a-f]{6}|[a-z\-]+)\](.*?)\[/color\]!uis' => function ($match) use($bbcode_class)
|
||||
'color' => array('bbcode_id' => BBCODE_ID_COLOR, 'regexp' => array('!\[color=(#[0-9a-f]{3}|#[0-9a-f]{6}|[a-z\-]+)\](.*?)\[/color\]!uis' => function ($match) use($bbcode_class)
|
||||
{
|
||||
return $bbcode_class->bbcode_color($match[1], $match[2]);
|
||||
}
|
||||
)),
|
||||
'u' => array('bbcode_id' => 7, 'regexp' => array('#\[u\](.*?)\[/u\]#uis' => function ($match) use($bbcode_class)
|
||||
'u' => array('bbcode_id' => BBCODE_ID_U, 'regexp' => array('#\[u\](.*?)\[/u\]#uis' => function ($match) use($bbcode_class)
|
||||
{
|
||||
return $bbcode_class->bbcode_underline($match[1]);
|
||||
}
|
||||
)),
|
||||
'list' => array('bbcode_id' => 9, 'regexp' => array('#\[list(?:=(?:[a-z0-9]|disc|circle|square))?].*\[/list]#uis' => function ($match) use($bbcode_class)
|
||||
'list' => array('bbcode_id' => BBCODE_ID_LIST, 'regexp' => array('#\[list(?:=(?:[a-z0-9]|disc|circle|square))?].*\[/list]#uis' => function ($match) use($bbcode_class)
|
||||
{
|
||||
return $bbcode_class->bbcode_parse_list($match[0]);
|
||||
}
|
||||
)),
|
||||
'email' => array('bbcode_id' => 10, 'regexp' => array('#\[email=?(.*?)?\](.*?)\[/email\]#uis' => function ($match) use($bbcode_class)
|
||||
'email' => array('bbcode_id' => BBCODE_ID_EMAIL, 'regexp' => array('#\[email=?(.*?)?\](.*?)\[/email\]#uis' => function ($match) use($bbcode_class)
|
||||
{
|
||||
return $bbcode_class->validate_email($match[1], $match[2]);
|
||||
}
|
||||
)),
|
||||
'flash' => array('bbcode_id' => 11, 'regexp' => array('#\[flash=([0-9]+),([0-9]+)\](.*?)\[/flash\]#ui' => function ($match) use($bbcode_class)
|
||||
'flash' => array('bbcode_id' => BBCODE_ID_FLASH, 'regexp' => array('#\[flash=([0-9]+),([0-9]+)\](.*?)\[/flash\]#ui' => function ($match) use($bbcode_class)
|
||||
{
|
||||
return $bbcode_class->bbcode_flash($match[1], $match[2], $match[3]);
|
||||
}
|
||||
|
@@ -472,10 +472,11 @@ class ucp_groups
|
||||
$avatar_data = null;
|
||||
$avatar_error = array();
|
||||
|
||||
/** @var \phpbb\avatar\manager $phpbb_avatar_manager */
|
||||
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
|
||||
|
||||
if ($config['allow_avatar'])
|
||||
{
|
||||
/* @var $phpbb_avatar_manager \phpbb\avatar\manager */
|
||||
$phpbb_avatar_manager = $phpbb_container->get('avatar.manager');
|
||||
$avatar_drivers = $phpbb_avatar_manager->get_enabled_drivers();
|
||||
|
||||
// This is normalised data, without the group_ prefix
|
||||
@@ -658,6 +659,14 @@ class ucp_groups
|
||||
$avatars_enabled = false;
|
||||
$selected_driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', $avatar_data['avatar_type']));
|
||||
|
||||
// Assign min and max values before generating avatar driver html
|
||||
$template->assign_vars(array(
|
||||
'AVATAR_MIN_WIDTH' => $config['avatar_min_width'],
|
||||
'AVATAR_MAX_WIDTH' => $config['avatar_max_width'],
|
||||
'AVATAR_MIN_HEIGHT' => $config['avatar_min_height'],
|
||||
'AVATAR_MAX_HEIGHT' => $config['avatar_max_height'],
|
||||
));
|
||||
|
||||
foreach ($avatar_drivers as $current_driver)
|
||||
{
|
||||
$driver = $phpbb_avatar_manager->get_driver($current_driver);
|
||||
|
@@ -157,7 +157,7 @@ function compose_pm($id, $mode, $action, $user_folders = array())
|
||||
'S_SHOW_PM_BOX' => true,
|
||||
'S_ALLOW_MASS_PM' => ($config['allow_mass_pm'] && $auth->acl_get('u_masspm')) ? true : false,
|
||||
'S_GROUP_OPTIONS' => ($config['allow_mass_pm'] && $auth->acl_get('u_masspm_group')) ? $group_options : '',
|
||||
'U_FIND_USERNAME' => append_sid("{$phpbb_root_path}memberlist.$phpEx", "mode=searchuser&form=postform&field=username_list&select_single=$select_single"),
|
||||
'U_FIND_USERNAME' => append_sid("{$phpbb_root_path}memberlist.$phpEx", "mode=searchuser&form=postform&field=username_list&select_single=" . (int) $select_single),
|
||||
));
|
||||
}
|
||||
|
||||
@@ -739,6 +739,34 @@ function compose_pm($id, $mode, $action, $user_folders = array())
|
||||
$enable_urls = (isset($_POST['disable_magic_url'])) ? 0 : 1;
|
||||
$enable_sig = (!$config['allow_sig'] ||!$config['allow_sig_pm']) ? false : ((isset($_POST['attach_sig'])) ? true : false);
|
||||
|
||||
/**
|
||||
* Modify private message
|
||||
*
|
||||
* @event core.ucp_pm_compose_modify_parse_before
|
||||
* @var bool enable_bbcode Whether or not bbcode is enabled
|
||||
* @var bool enable_smilies Whether or not smilies are enabled
|
||||
* @var bool enable_urls Whether or not urls are enabled
|
||||
* @var bool enable_sig Whether or not signature is enabled
|
||||
* @var string subject PM subject text
|
||||
* @var object message_parser The message parser object
|
||||
* @var bool submit Whether or not the form has been sumitted
|
||||
* @var bool preview Whether or not the signature is being previewed
|
||||
* @var array error Any error strings
|
||||
* @since 3.1.10-RC1
|
||||
*/
|
||||
$vars = array(
|
||||
'enable_bbcode',
|
||||
'enable_smilies',
|
||||
'enable_urls',
|
||||
'enable_sig',
|
||||
'subject',
|
||||
'message_parser',
|
||||
'submit',
|
||||
'preview',
|
||||
'error',
|
||||
);
|
||||
extract($phpbb_dispatcher->trigger_event('core.ucp_pm_compose_modify_parse_before', compact($vars)));
|
||||
|
||||
// Parse Attachments - before checksum is calculated
|
||||
$message_parser->parse_attachments('fileupload', $action, 0, $submit, $preview, $refresh, true);
|
||||
|
||||
|
@@ -470,6 +470,8 @@ class ucp_profile
|
||||
include($phpbb_root_path . 'includes/functions_posting.' . $phpEx);
|
||||
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
|
||||
|
||||
$preview = $request->is_set_post('preview');
|
||||
|
||||
$enable_bbcode = ($config['allow_sig_bbcode']) ? $user->optionget('sig_bbcode') : false;
|
||||
$enable_smilies = ($config['allow_sig_smilies']) ? $user->optionget('sig_smilies') : false;
|
||||
$enable_urls = ($config['allow_sig_links']) ? $user->optionget('sig_links') : false;
|
||||
@@ -478,7 +480,7 @@ class ucp_profile
|
||||
$signature = $request->variable('signature', $decoded_message['text'], true);
|
||||
$signature_preview = '';
|
||||
|
||||
if ($submit || $request->is_set_post('preview'))
|
||||
if ($submit || $preview)
|
||||
{
|
||||
$enable_bbcode = ($config['allow_sig_bbcode']) ? !$request->variable('disable_bbcode', false) : false;
|
||||
$enable_smilies = ($config['allow_sig_smilies']) ? !$request->variable('disable_smilies', false) : false;
|
||||
@@ -490,6 +492,31 @@ class ucp_profile
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Modify user signature on editing profile in UCP
|
||||
*
|
||||
* @event core.ucp_profile_modify_signature
|
||||
* @var bool enable_bbcode Whether or not bbcode is enabled
|
||||
* @var bool enable_smilies Whether or not smilies are enabled
|
||||
* @var bool enable_urls Whether or not urls are enabled
|
||||
* @var string signature Users signature text
|
||||
* @var array error Any error strings
|
||||
* @var bool submit Whether or not the form has been sumitted
|
||||
* @var bool preview Whether or not the signature is being previewed
|
||||
* @since 3.1.10-RC1
|
||||
* @change 3.2.0-RC2 Removed message parser
|
||||
*/
|
||||
$vars = array(
|
||||
'enable_bbcode',
|
||||
'enable_smilies',
|
||||
'enable_urls',
|
||||
'signature',
|
||||
'error',
|
||||
'submit',
|
||||
'preview',
|
||||
);
|
||||
extract($phpbb_dispatcher->trigger_event('core.ucp_profile_modify_signature', compact($vars)));
|
||||
|
||||
$bbcode_uid = $bbcode_bitfield = $bbcode_flags = '';
|
||||
$warn_msg = generate_text_for_storage(
|
||||
$signature,
|
||||
@@ -544,7 +571,10 @@ class ucp_profile
|
||||
// Replace "error" strings with their real, localised form
|
||||
$error = array_map(array($user, 'lang'), $error);
|
||||
|
||||
$decoded_message = generate_text_for_edit($signature, $bbcode_uid, $bbcode_bitfield);
|
||||
if ($request->is_set_post('preview'))
|
||||
{
|
||||
$decoded_message = generate_text_for_edit($signature, $bbcode_uid, $bbcode_flags);
|
||||
}
|
||||
|
||||
/** @var \phpbb\controller\helper $controller_helper */
|
||||
$controller_helper = $phpbb_container->get('controller.helper');
|
||||
@@ -661,6 +691,13 @@ class ucp_profile
|
||||
|
||||
$selected_driver = $phpbb_avatar_manager->clean_driver_name($request->variable('avatar_driver', $user->data['user_avatar_type']));
|
||||
|
||||
$template->assign_vars(array(
|
||||
'AVATAR_MIN_WIDTH' => $config['avatar_min_width'],
|
||||
'AVATAR_MAX_WIDTH' => $config['avatar_max_width'],
|
||||
'AVATAR_MIN_HEIGHT' => $config['avatar_min_height'],
|
||||
'AVATAR_MAX_HEIGHT' => $config['avatar_max_height'],
|
||||
));
|
||||
|
||||
foreach ($avatar_drivers as $current_driver)
|
||||
{
|
||||
$driver = $phpbb_avatar_manager->get_driver($current_driver);
|
||||
|
@@ -13,6 +13,7 @@
|
||||
|
||||
namespace phpbb\convert\controller;
|
||||
|
||||
use phpbb\cache\driver\driver_interface;
|
||||
use phpbb\exception\http_exception;
|
||||
use phpbb\install\controller\helper;
|
||||
use phpbb\install\helper\container_factory;
|
||||
@@ -36,10 +37,15 @@ use Symfony\Component\HttpFoundation\StreamedResponse;
|
||||
class convertor
|
||||
{
|
||||
/**
|
||||
* @var \phpbb\cache\driver\driver_interface
|
||||
* @var driver_interface
|
||||
*/
|
||||
protected $cache;
|
||||
|
||||
/**
|
||||
* @var driver_interface
|
||||
*/
|
||||
protected $installer_cache;
|
||||
|
||||
/**
|
||||
* @var \phpbb\config\db
|
||||
*/
|
||||
@@ -123,6 +129,7 @@ class convertor
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param driver_interface $cache
|
||||
* @param container_factory $container
|
||||
* @param database $db_helper
|
||||
* @param helper $controller_helper
|
||||
@@ -135,8 +142,9 @@ class convertor
|
||||
* @param string $phpbb_root_path
|
||||
* @param string $php_ext
|
||||
*/
|
||||
public function __construct(container_factory $container, database $db_helper, helper $controller_helper, install_helper $install_helper, factory $iohandler, language $language, navigation_provider $nav, request_interface $request, template $template, $phpbb_root_path, $php_ext)
|
||||
public function __construct(driver_interface $cache, container_factory $container, database $db_helper, helper $controller_helper, install_helper $install_helper, factory $iohandler, language $language, navigation_provider $nav, request_interface $request, template $template, $phpbb_root_path, $php_ext)
|
||||
{
|
||||
$this->installer_cache = $cache;
|
||||
$this->controller_helper = $controller_helper;
|
||||
$this->db_helper = $db_helper;
|
||||
$this->install_helper = $install_helper;
|
||||
@@ -379,6 +387,7 @@ class convertor
|
||||
// If we reached this step (conversion completed) we want to purge the cache and log the user out.
|
||||
// This is for making sure the session get not screwed due to the 3.0.x users table being completely new.
|
||||
$this->cache->purge();
|
||||
$this->installer_cache->purge();
|
||||
|
||||
require_once($this->phpbb_root_path . 'includes/constants.' . $this->php_ext);
|
||||
require_once($this->phpbb_root_path . 'includes/functions_convert.' . $this->php_ext);
|
||||
@@ -583,7 +592,7 @@ class convertor
|
||||
|
||||
$url = $this->controller_helper->route('phpbb_convert_convert', array('converter' => $convertor));
|
||||
$this->iohandler->redirect($url);
|
||||
$this->iohandler->send_response();
|
||||
$this->iohandler->send_response(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -677,7 +686,7 @@ class convertor
|
||||
if ($this->request->is_ajax())
|
||||
{
|
||||
$this->iohandler->add_user_form_group($form_title, $form_data);
|
||||
$this->iohandler->send_response();
|
||||
$this->iohandler->send_response(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -770,7 +779,7 @@ class convertor
|
||||
if ($this->request->is_ajax())
|
||||
{
|
||||
$this->iohandler->add_error_message($msg, $desc);
|
||||
$this->iohandler->send_response();
|
||||
$this->iohandler->send_response(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -794,7 +803,7 @@ class convertor
|
||||
public function redirect_to_html($url)
|
||||
{
|
||||
$this->iohandler->redirect($url);
|
||||
$this->iohandler->send_response();
|
||||
$this->iohandler->send_response(true);
|
||||
}
|
||||
|
||||
private function setup_navigation($stage)
|
||||
|
@@ -373,7 +373,7 @@ class convertor
|
||||
$val = array($val);
|
||||
}
|
||||
|
||||
for ($j = 0; $j < sizeof($val); ++$j)
|
||||
for ($j = 0, $size = sizeof($val); $j < $size; ++$j)
|
||||
{
|
||||
if (preg_match('/LEFT JOIN ([a-z0-9_]+) AS ([a-z0-9_]+)/i', $val[$j], $m))
|
||||
{
|
||||
@@ -1044,7 +1044,7 @@ class convertor
|
||||
OR config_name = 'convert_db_user'");
|
||||
$db->sql_query('DELETE FROM ' . SESSIONS_TABLE);
|
||||
|
||||
@unlink($phpbb_root_path . 'cache/data_global.' . $phpEx);
|
||||
@unlink($phpbb_container->getParameter('core.cache_dir') . 'data_global.' . $phpEx);
|
||||
phpbb_cache_moderators($db, $cache, $auth);
|
||||
|
||||
// And finally, add a note to the log
|
||||
|
@@ -38,7 +38,7 @@ $dbms = $phpbb_config_php_file->convert_30_dbms_to_31($dbms);
|
||||
$convertor_data = array(
|
||||
'forum_name' => 'phpBB 2.0.x',
|
||||
'version' => '1.0.3',
|
||||
'phpbb_version' => '3.2.0-b1',
|
||||
'phpbb_version' => '3.2.0-RC1',
|
||||
'author' => '<a href="https://www.phpbb.com/">phpBB Limited</a>',
|
||||
'dbms' => $dbms,
|
||||
'dbhost' => $dbhost,
|
||||
|
@@ -23,7 +23,7 @@ if (php_sapi_name() !== 'cli')
|
||||
define('IN_PHPBB', true);
|
||||
define('IN_INSTALL', true);
|
||||
define('PHPBB_ENVIRONMENT', 'production');
|
||||
define('PHPBB_VERSION', '3.2.0-b1');
|
||||
define('PHPBB_VERSION', '3.2.0-RC1');
|
||||
$phpbb_root_path = __DIR__ . '/../';
|
||||
$phpEx = substr(strrchr(__FILE__, '.'), 1);
|
||||
|
||||
@@ -36,6 +36,9 @@ require($startup_path);
|
||||
|
||||
$input = new ArgvInput();
|
||||
|
||||
// Enable superglobals for cli support
|
||||
$phpbb_installer_container->get('request')->enable_super_globals();
|
||||
|
||||
/** @var \phpbb\filesystem\filesystem $phpbb_filesystem */
|
||||
$phpbb_filesystem = $phpbb_installer_container->get('filesystem');
|
||||
|
||||
|
@@ -2264,7 +2264,8 @@
|
||||
"COLUMNS": {
|
||||
"report_id": [
|
||||
"ULINT",
|
||||
0
|
||||
null,
|
||||
"auto_increment"
|
||||
],
|
||||
"reason_id": [
|
||||
"USINT",
|
||||
|
@@ -239,6 +239,7 @@ INSERT INTO phpbb_config (config_name, config_value) VALUES ('queue_interval', '
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('ranks_path', 'images/ranks');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('read_notification_expire_days', '30');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('read_notification_gc', '86400');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('remote_upload_verify', '0');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('require_activation', '0');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('referer_validation', '1');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('script_path', '');
|
||||
@@ -275,7 +276,7 @@ INSERT INTO phpbb_config (config_name, config_value) VALUES ('tpl_allow_php', '0
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('upload_icons_path', 'images/upload_icons');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('upload_path', 'files');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('use_system_cron', '0');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('version', '3.2.0-b1');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('version', '3.2.0-RC1');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('warnings_expire_days', '90');
|
||||
INSERT INTO phpbb_config (config_name, config_value) VALUES ('warnings_gc', '14400');
|
||||
|
||||
|
@@ -535,6 +535,8 @@ $lang = array_merge($lang, array(
|
||||
'REFERRER_VALID_EXPLAIN' => 'If enabled, the referrer of POST requests will be checked against the host/script path settings. This may cause issues with boards using several domains and or external logins.',
|
||||
'TPL_ALLOW_PHP' => 'Allow php in templates',
|
||||
'TPL_ALLOW_PHP_EXPLAIN' => 'If this option is enabled, <code>PHP</code> and <code>INCLUDEPHP</code> statements will be recognised and parsed in templates.',
|
||||
'UPLOAD_CERT_VALID' => 'Validate upload certificate',
|
||||
'UPLOAD_CERT_VALID_EXPLAIN' => 'If enabled, certificates of remote uploads will be validated. This requires the CA bundle to be defined by the <samp>openssl.cafile</samp> or <samp>curl.cainfo</samp> setting in your php.ini.',
|
||||
));
|
||||
|
||||
// Email Settings
|
||||
|
@@ -225,6 +225,16 @@ $lang = array_merge($lang, array(
|
||||
|
||||
'BACK' => 'Back',
|
||||
|
||||
'CANNOT_CHANGE_FILE_GROUP' => 'Unable to change file group',
|
||||
'CANNOT_CHANGE_FILE_PERMISSIONS' => 'Unable to change file permissions',
|
||||
'CANNOT_COPY_FILES' => 'Unable to copy files',
|
||||
'CANNOT_CREATE_SYMLINK' => 'Unable to create a symlink',
|
||||
'CANNOT_DELETE_FILES' => 'Unable to delete files from the system',
|
||||
'CANNOT_DUMP_FILE' => 'Unable to dump file',
|
||||
'CANNOT_MIRROR_DIRECTORY' => 'Unable to mirror directory',
|
||||
'CANNOT_RENAME_FILE' => 'Unable to rename a file from the system',
|
||||
'CANNOT_TOUCH_FILES' => 'Unable to determine if the file exists',
|
||||
|
||||
'CONTAINER_EXCEPTION' => 'phpBB encountered an error building the container due to an installed extension. For this reason, all extensions have been temporarily disabled. Please try purging your forum cache. All extensions will automatically be re-enabled once the container error is resolved. If this error continues, please visit <a href="https://www.phpbb.com/support">phpBB.com</a> for support.',
|
||||
'EXCEPTION' => 'Exception',
|
||||
|
||||
@@ -606,6 +616,7 @@ $lang = array_merge($lang, array(
|
||||
|
||||
'LOG_ERROR_JABBER' => '<strong>Jabber error</strong><br />» %s',
|
||||
'LOG_ERROR_EMAIL' => '<strong>Email error</strong><br />» %s',
|
||||
'LOG_ERROR_CAPTCHA' => '<strong>CAPTCHA error</strong><br />» %s',
|
||||
|
||||
'LOG_FORUM_ADD' => '<strong>Created new forum</strong><br />» %s',
|
||||
'LOG_FORUM_COPIED_PERMISSIONS' => '<strong>Copied forum permissions</strong> from %1$s<br />» %2$s',
|
||||
|
@@ -40,6 +40,7 @@ $lang = array_merge($lang, array(
|
||||
'CAPTCHA_QA' => 'Q&A',
|
||||
'CONFIRM_QUESTION_EXPLAIN' => 'This question is a means of preventing automated form submissions by spambots.',
|
||||
'CONFIRM_QUESTION_WRONG' => 'You have provided an invalid answer to the question.',
|
||||
'CONFIRM_QUESTION_MISSING' => 'Questions for the captcha could not be retrieved. Please contact a board administrator.',
|
||||
|
||||
'QUESTION_ANSWERS' => 'Answers',
|
||||
'ANSWERS_EXPLAIN' => 'Please enter valid answers to the question, one per line.',
|
||||
@@ -60,5 +61,4 @@ $lang = array_merge($lang, array(
|
||||
|
||||
'QA_ERROR_MSG' => 'Please fill in all fields and enter at least one answer.',
|
||||
'QA_LAST_QUESTION' => 'You cannot delete all questions while the plugin is active.',
|
||||
|
||||
));
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user