Version Description
Download this release
Release Info
Developer | johnjamesjacoby |
Plugin | bbPress |
Version | 2.6.6 |
Comparing to | |
See all releases |
Code changes from version 2.6.5 to 2.6.6
- bbpress.php +4 -4
- bbpress.pot +325 -324
- includes/admin/actions.php +6 -4
- includes/admin/tools/repair.php +16 -5
- includes/admin/tools/upgrade.php +3 -3
- includes/common/formatting.php +7 -3
- includes/common/functions.php +4 -6
- includes/core/abstraction.php +21 -0
- includes/core/filters.php +14 -3
- includes/core/theme-compat.php +29 -19
- includes/extend/akismet.php +122 -45
- includes/extend/buddypress/groups.php +4 -4
- includes/extend/buddypress/notifications.php +36 -10
- includes/forums/functions.php +27 -27
- includes/replies/functions.php +76 -65
- includes/replies/template.php +2 -1
- includes/topics/functions.php +92 -92
- includes/topics/template.php +9 -2
- includes/users/engagements.php +10 -10
- includes/users/functions.php +8 -8
- includes/users/signups.php +2 -2
- includes/users/template.php +17 -7
- readme.txt +4 -4
- templates/default/bbpress/user-profile.php +1 -1
- templates/default/js/reply.js +33 -16
- templates/default/js/reply.min.js +1 -1
bbpress.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
*
|
6 |
* bbPress is forum software with a twist from the creators of WordPress.
|
7 |
*
|
8 |
-
* $Id: bbpress.php
|
9 |
*
|
10 |
* @package bbPress
|
11 |
* @subpackage Main
|
@@ -17,12 +17,12 @@
|
|
17 |
* Description: bbPress is forum software with a twist from the creators of WordPress.
|
18 |
* Author: The bbPress Contributors
|
19 |
* Author URI: https://bbpress.org
|
20 |
-
* Version: 2.6.
|
21 |
* Text Domain: bbpress
|
22 |
* Domain Path: /languages/
|
23 |
* License: GPLv2 or later (license.txt)
|
24 |
* Requires PHP: 5.6.20
|
25 |
-
* Requires at least:
|
26 |
*/
|
27 |
|
28 |
// Exit if accessed directly
|
@@ -205,7 +205,7 @@ final class bbPress {
|
|
205 |
|
206 |
/** Versions **********************************************************/
|
207 |
|
208 |
-
$this->version = '2.6.
|
209 |
$this->db_version = '263';
|
210 |
|
211 |
/** Paths *************************************************************/
|
5 |
*
|
6 |
* bbPress is forum software with a twist from the creators of WordPress.
|
7 |
*
|
8 |
+
* $Id: bbpress.php 7161 2020-11-06 01:05:46Z johnjamesjacoby $
|
9 |
*
|
10 |
* @package bbPress
|
11 |
* @subpackage Main
|
17 |
* Description: bbPress is forum software with a twist from the creators of WordPress.
|
18 |
* Author: The bbPress Contributors
|
19 |
* Author URI: https://bbpress.org
|
20 |
+
* Version: 2.6.6
|
21 |
* Text Domain: bbpress
|
22 |
* Domain Path: /languages/
|
23 |
* License: GPLv2 or later (license.txt)
|
24 |
* Requires PHP: 5.6.20
|
25 |
+
* Requires at least: 5.0
|
26 |
*/
|
27 |
|
28 |
// Exit if accessed directly
|
205 |
|
206 |
/** Versions **********************************************************/
|
207 |
|
208 |
+
$this->version = '2.6.6';
|
209 |
$this->db_version = '263';
|
210 |
|
211 |
/** Paths *************************************************************/
|
bbpress.pot
CHANGED
@@ -2,9 +2,9 @@
|
|
2 |
# This file is distributed under the GPLv2 or later (license.txt).
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: bbPress 2.6.
|
6 |
"Report-Msgid-Bugs-To: https://bbpress.trac.wordpress.org\n"
|
7 |
-
"POT-Creation-Date: 2020-
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=utf-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -45,7 +45,7 @@ msgstr ""
|
|
45 |
msgid "bbPress User Activity"
|
46 |
msgstr ""
|
47 |
|
48 |
-
#: includes/admin/actions.php:
|
49 |
#: includes/admin/settings.php:281 includes/admin/settings.php:302
|
50 |
#: includes/admin/tools/common.php:437 includes/admin/topics.php:854
|
51 |
#: includes/extend/buddypress/activity.php:197
|
@@ -57,11 +57,11 @@ msgstr ""
|
|
57 |
msgid "Topics"
|
58 |
msgstr ""
|
59 |
|
60 |
-
#: includes/admin/actions.php:
|
61 |
#: includes/admin/forums.php:539 includes/admin/settings.php:289
|
62 |
#: includes/admin/settings.php:310 includes/admin/tools/common.php:440
|
63 |
#: includes/admin/topics.php:390 includes/admin/topics.php:856
|
64 |
-
#: includes/core/theme-compat.php:
|
65 |
#: includes/extend/buddypress/activity.php:207
|
66 |
#: includes/extend/buddypress/activity.php:392
|
67 |
#: includes/forums/template.php:2714 includes/replies/template.php:49
|
@@ -74,7 +74,7 @@ msgstr ""
|
|
74 |
msgid "Replies"
|
75 |
msgstr ""
|
76 |
|
77 |
-
#: includes/admin/actions.php:
|
78 |
#: includes/admin/forums.php:537 includes/admin/metaboxes.php:113
|
79 |
#: includes/admin/metaboxes.php:432 includes/admin/metaboxes.php:496
|
80 |
#: includes/admin/replies.php:665 includes/admin/settings.php:352
|
@@ -84,7 +84,7 @@ msgstr ""
|
|
84 |
msgid "Forum"
|
85 |
msgstr ""
|
86 |
|
87 |
-
#: includes/admin/actions.php:
|
88 |
#: includes/admin/metaboxes.php:523 includes/admin/replies.php:666
|
89 |
#: includes/admin/settings.php:360 includes/topics/template.php:49
|
90 |
#: templates/default/bbpress/content-single-topic-lead.php:23
|
@@ -147,7 +147,7 @@ msgstr ""
|
|
147 |
|
148 |
#: includes/admin/classes/class-bbp-admin.php:938
|
149 |
#: includes/admin/classes/class-bbp-admin.php:1018
|
150 |
-
#: includes/common/classes.php:493 includes/replies/template.php:
|
151 |
msgid "%1$s - %2$s"
|
152 |
msgstr ""
|
153 |
|
@@ -626,13 +626,13 @@ msgstr ""
|
|
626 |
#: includes/admin/classes/class-bbp-topic-replies-list-table.php:91
|
627 |
#: includes/admin/replies.php:235 includes/admin/replies.php:818
|
628 |
#: includes/admin/topics.php:240 includes/admin/topics.php:1023
|
629 |
-
#: includes/replies/template.php:
|
630 |
msgid "Spam"
|
631 |
msgstr ""
|
632 |
|
633 |
#: includes/admin/classes/class-bbp-topic-replies-list-table.php:92
|
634 |
#: includes/admin/replies.php:833 includes/admin/topics.php:1037
|
635 |
-
#: includes/replies/template.php:
|
636 |
msgid "Trash"
|
637 |
msgstr ""
|
638 |
|
@@ -645,7 +645,7 @@ msgstr ""
|
|
645 |
#: includes/admin/classes/class-bbp-topic-replies-list-table.php:149
|
646 |
#: includes/admin/settings.php:392 includes/common/template.php:2331
|
647 |
#: includes/forums/template.php:54 includes/replies/template.php:55
|
648 |
-
#: includes/replies/template.php:
|
649 |
#: includes/topics/template.php:2403
|
650 |
#: templates/default/bbpress/user-details.php:74
|
651 |
msgid "Edit"
|
@@ -1057,7 +1057,7 @@ msgstr[0] ""
|
|
1057 |
msgstr[1] ""
|
1058 |
|
1059 |
#: includes/admin/metaboxes.php:166 includes/admin/settings.php:368
|
1060 |
-
#: includes/topics/template.php:
|
1061 |
msgid "Topic Tag"
|
1062 |
msgid_plural "Topic Tags"
|
1063 |
msgstr[0] ""
|
@@ -1402,7 +1402,7 @@ msgid "<strong>Reply To</strong> determines the threading of the reply."
|
|
1402 |
msgstr ""
|
1403 |
|
1404 |
#: includes/admin/replies.php:233 includes/admin/topics.php:238
|
1405 |
-
#: includes/replies/template.php:
|
1406 |
msgid "Unspam"
|
1407 |
msgstr ""
|
1408 |
|
@@ -1521,22 +1521,22 @@ msgid "Not Spam"
|
|
1521 |
msgstr ""
|
1522 |
|
1523 |
#: includes/admin/replies.php:831 includes/admin/topics.php:1035
|
1524 |
-
#: includes/replies/template.php:
|
1525 |
msgid "Restore this item from the Trash"
|
1526 |
msgstr ""
|
1527 |
|
1528 |
#: includes/admin/replies.php:831 includes/admin/topics.php:1035
|
1529 |
-
#: includes/replies/template.php:
|
1530 |
msgid "Restore"
|
1531 |
msgstr ""
|
1532 |
|
1533 |
#: includes/admin/replies.php:833 includes/admin/topics.php:1037
|
1534 |
-
#: includes/replies/template.php:
|
1535 |
msgid "Move this item to the Trash"
|
1536 |
msgstr ""
|
1537 |
|
1538 |
#: includes/admin/replies.php:837 includes/admin/topics.php:1041
|
1539 |
-
#: includes/replies/template.php:
|
1540 |
msgid "Delete this item permanently"
|
1541 |
msgstr ""
|
1542 |
|
@@ -1653,7 +1653,7 @@ msgstr ""
|
|
1653 |
msgid "Editing"
|
1654 |
msgstr ""
|
1655 |
|
1656 |
-
#: includes/admin/settings.php:155 includes/users/template.php:
|
1657 |
msgid "Anonymous"
|
1658 |
msgstr ""
|
1659 |
|
@@ -2390,8 +2390,8 @@ msgstr ""
|
|
2390 |
msgid "Users"
|
2391 |
msgstr ""
|
2392 |
|
2393 |
-
#: includes/admin/tools/common.php:443 includes/topics/template.php:
|
2394 |
-
#: includes/topics/template.php:
|
2395 |
#: templates/default/bbpress/content-statistics.php:40
|
2396 |
msgid "Topic Tags"
|
2397 |
msgstr ""
|
@@ -2592,7 +2592,7 @@ msgstr ""
|
|
2592 |
#: includes/admin/tools/repair.php:661 includes/admin/tools/repair.php:726
|
2593 |
#: includes/admin/tools/repair.php:795 includes/admin/tools/repair.php:903
|
2594 |
#: includes/admin/tools/repair.php:1024 includes/admin/tools/repair.php:1136
|
2595 |
-
#: includes/admin/tools/repair.php:1156 includes/admin/tools/repair.php:
|
2596 |
#: includes/admin/tools/reset.php:122 includes/admin/tools/upgrade.php:288
|
2597 |
msgid "Failed!"
|
2598 |
msgstr ""
|
@@ -2604,8 +2604,8 @@ msgstr ""
|
|
2604 |
#: includes/admin/tools/repair.php:579 includes/admin/tools/repair.php:646
|
2605 |
#: includes/admin/tools/repair.php:711 includes/admin/tools/repair.php:776
|
2606 |
#: includes/admin/tools/repair.php:1009 includes/admin/tools/repair.php:1069
|
2607 |
-
#: includes/admin/tools/repair.php:1140 includes/admin/tools/repair.php:
|
2608 |
-
#: includes/admin/tools/repair.php:
|
2609 |
msgid "Complete!"
|
2610 |
msgstr ""
|
2611 |
|
@@ -2700,15 +2700,15 @@ msgstr ""
|
|
2700 |
msgid "Recalculating the forum for each post… %s"
|
2701 |
msgstr ""
|
2702 |
|
2703 |
-
#: includes/admin/tools/repair.php:
|
2704 |
msgid "Recalculating the topic for each post… %s"
|
2705 |
msgstr ""
|
2706 |
|
2707 |
-
#: includes/admin/tools/repair.php:
|
2708 |
msgid "Recalculating reply menu order… %s"
|
2709 |
msgstr ""
|
2710 |
|
2711 |
-
#: includes/admin/tools/repair.php:
|
2712 |
msgid "No reply positions to recalculate."
|
2713 |
msgstr ""
|
2714 |
|
@@ -2731,7 +2731,7 @@ msgstr ""
|
|
2731 |
msgid "All Topics"
|
2732 |
msgstr ""
|
2733 |
|
2734 |
-
#: includes/admin/tools/reset.php:36 includes/replies/functions.php:
|
2735 |
#: includes/replies/template.php:52
|
2736 |
msgid "All Replies"
|
2737 |
msgstr ""
|
@@ -3599,7 +3599,7 @@ msgid "Forum Role"
|
|
3599 |
msgstr ""
|
3600 |
|
3601 |
#: includes/admin/users.php:107 includes/admin/users.php:111
|
3602 |
-
#: includes/users/template.php:
|
3603 |
msgid "— No role for these forums —"
|
3604 |
msgstr ""
|
3605 |
|
@@ -3686,11 +3686,11 @@ msgid "Private: %s"
|
|
3686 |
msgstr ""
|
3687 |
|
3688 |
#: includes/common/functions.php:556
|
3689 |
-
msgid "<strong>
|
3690 |
msgstr ""
|
3691 |
|
3692 |
#: includes/common/functions.php:562
|
3693 |
-
msgid "<strong>
|
3694 |
msgstr ""
|
3695 |
|
3696 |
#: includes/common/functions.php:1101
|
@@ -3750,7 +3750,7 @@ msgid "(Edit)"
|
|
3750 |
msgstr ""
|
3751 |
|
3752 |
#: includes/common/template.php:2327 includes/common/template.php:2442
|
3753 |
-
#: includes/common/template.php:2687 includes/core/theme-compat.php:
|
3754 |
#: templates/default/extras/taxonomy-topic-tag-edit.php:17
|
3755 |
#: templates/default/extras/taxonomy-topic-tag.php:17
|
3756 |
msgid "Topic Tag: %s"
|
@@ -4043,63 +4043,64 @@ msgstr ""
|
|
4043 |
msgid "And this is the very first reply."
|
4044 |
msgstr ""
|
4045 |
|
4046 |
-
#: includes/extend/akismet.php:171 includes/extend/akismet.php:
|
|
|
4047 |
msgid "No response"
|
4048 |
msgstr ""
|
4049 |
|
4050 |
-
#: includes/extend/akismet.php:
|
4051 |
#. translators: %s: reporter name
|
4052 |
msgid "%s reported this topic as spam"
|
4053 |
msgstr ""
|
4054 |
|
4055 |
-
#: includes/extend/akismet.php:
|
4056 |
#. translators: %s: reporter name
|
4057 |
msgid "%s reported this reply as spam"
|
4058 |
msgstr ""
|
4059 |
|
4060 |
-
#: includes/extend/akismet.php:
|
4061 |
#. translators: 1: reporter name, 2: comment type
|
4062 |
msgid "%1$s reported this %2$s as spam"
|
4063 |
msgstr ""
|
4064 |
|
4065 |
-
#: includes/extend/akismet.php:
|
4066 |
#. translators: %s: reporter name
|
4067 |
msgid "%s reported this topic as not spam"
|
4068 |
msgstr ""
|
4069 |
|
4070 |
-
#: includes/extend/akismet.php:
|
4071 |
#. translators: %s: reporter name
|
4072 |
msgid "%s reported this reply as not spam"
|
4073 |
msgstr ""
|
4074 |
|
4075 |
-
#: includes/extend/akismet.php:
|
4076 |
#. translators: 1: reporter name, 2: comment type
|
4077 |
msgid "%1$s reported this %2$s as not spam"
|
4078 |
msgstr ""
|
4079 |
|
4080 |
-
#: includes/extend/akismet.php:
|
4081 |
msgid "Akismet caught this post as spam"
|
4082 |
msgstr ""
|
4083 |
|
4084 |
-
#: includes/extend/akismet.php:
|
4085 |
msgid "Post status was changed to %s"
|
4086 |
msgstr ""
|
4087 |
|
4088 |
-
#: includes/extend/akismet.php:
|
4089 |
msgid "Akismet cleared this post as not spam"
|
4090 |
msgstr ""
|
4091 |
|
4092 |
-
#: includes/extend/akismet.php:
|
4093 |
msgid ""
|
4094 |
"Akismet was unable to check this post (response: %s), will automatically "
|
4095 |
"retry again later."
|
4096 |
msgstr ""
|
4097 |
|
4098 |
-
#: includes/extend/akismet.php:
|
4099 |
msgid "Akismet History"
|
4100 |
msgstr ""
|
4101 |
|
4102 |
-
#: includes/extend/akismet.php:
|
4103 |
msgid "No recorded history. Akismet has not checked this post."
|
4104 |
msgstr ""
|
4105 |
|
@@ -4122,11 +4123,11 @@ msgid "%1$s replied to the topic %2$s in the forum %3$s"
|
|
4122 |
msgstr ""
|
4123 |
|
4124 |
#: includes/extend/buddypress/groups.php:379
|
4125 |
-
msgid "<strong>
|
4126 |
msgstr ""
|
4127 |
|
4128 |
#: includes/extend/buddypress/groups.php:442
|
4129 |
-
msgid "<strong>
|
4130 |
msgstr ""
|
4131 |
|
4132 |
#: includes/extend/buddypress/groups.php:467
|
@@ -4164,17 +4165,17 @@ msgstr ""
|
|
4164 |
|
4165 |
#: includes/extend/buddypress/groups.php:531
|
4166 |
#: includes/extend/buddypress/groups.php:688
|
4167 |
-
#: includes/extend/buddypress/notifications.php:
|
4168 |
#: includes/forums/functions.php:126 includes/forums/functions.php:393
|
4169 |
-
#: includes/replies/functions.php:134 includes/replies/functions.php:
|
4170 |
-
#: includes/replies/functions.php:
|
4171 |
-
#: includes/topics/functions.php:468 includes/topics/functions.php:
|
4172 |
-
#: includes/topics/functions.php:
|
4173 |
-
#: includes/topics/functions.php:
|
4174 |
#: includes/users/engagements.php:612 includes/users/engagements.php:853
|
4175 |
#: includes/users/functions.php:196 includes/users/functions.php:202
|
4176 |
#: includes/users/functions.php:380
|
4177 |
-
msgid "<strong>
|
4178 |
msgstr ""
|
4179 |
|
4180 |
#: includes/extend/buddypress/groups.php:668
|
@@ -4199,103 +4200,103 @@ msgid "You have %d new replies"
|
|
4199 |
msgstr ""
|
4200 |
|
4201 |
#: includes/extend/buddypress/notifications.php:95
|
4202 |
-
msgid "You have %d new reply to %2$s from %3$s"
|
4203 |
msgstr ""
|
4204 |
|
4205 |
#: includes/extend/buddypress/notifications.php:96
|
4206 |
-
msgid "You have %d new reply to %s"
|
4207 |
msgstr ""
|
4208 |
|
4209 |
#: includes/extend/buddypress/notifications.php:101
|
4210 |
msgid "Topic Replies"
|
4211 |
msgstr ""
|
4212 |
|
4213 |
-
#: includes/extend/buddypress/notifications.php:
|
4214 |
msgid ""
|
4215 |
-
"<strong>
|
4216 |
"for that user."
|
4217 |
msgstr ""
|
4218 |
|
4219 |
#: includes/forums/functions.php:140
|
4220 |
-
msgid "<strong>
|
4221 |
msgstr ""
|
4222 |
|
4223 |
#: includes/forums/functions.php:165 includes/forums/functions.php:454
|
4224 |
-
msgid "<strong>
|
4225 |
msgstr ""
|
4226 |
|
4227 |
#: includes/forums/functions.php:170 includes/forums/functions.php:459
|
4228 |
-
#: includes/replies/functions.php:284 includes/replies/functions.php:
|
4229 |
#: includes/topics/functions.php:163 includes/topics/functions.php:535
|
4230 |
-
msgid "<strong>
|
4231 |
msgstr ""
|
4232 |
|
4233 |
#: includes/forums/functions.php:184 includes/forums/functions.php:473
|
4234 |
-
msgid "<strong>
|
4235 |
msgstr ""
|
4236 |
|
4237 |
#: includes/forums/functions.php:199
|
4238 |
-
msgid "<strong>
|
4239 |
msgstr ""
|
4240 |
|
4241 |
#: includes/forums/functions.php:206
|
4242 |
msgid ""
|
4243 |
-
"<strong>
|
4244 |
"in this forum."
|
4245 |
msgstr ""
|
4246 |
|
4247 |
#: includes/forums/functions.php:211 includes/forums/functions.php:429
|
4248 |
-
msgid "<strong>
|
4249 |
msgstr ""
|
4250 |
|
4251 |
#: includes/forums/functions.php:216 includes/forums/functions.php:434
|
4252 |
msgid ""
|
4253 |
-
"<strong>
|
4254 |
"capability to read or create new forums in it."
|
4255 |
msgstr ""
|
4256 |
|
4257 |
#: includes/forums/functions.php:221 includes/forums/functions.php:439
|
4258 |
msgid ""
|
4259 |
-
"<strong>
|
4260 |
"capability to read or create new forums in it."
|
4261 |
msgstr ""
|
4262 |
|
4263 |
#: includes/forums/functions.php:228 includes/replies/functions.php:304
|
4264 |
#: includes/topics/functions.php:247
|
4265 |
-
msgid "<strong>
|
4266 |
msgstr ""
|
4267 |
|
4268 |
#: includes/forums/functions.php:234
|
4269 |
-
msgid "<strong>
|
4270 |
msgstr ""
|
4271 |
|
4272 |
#: includes/forums/functions.php:240
|
4273 |
-
msgid "<strong>
|
4274 |
msgstr ""
|
4275 |
|
4276 |
-
#: includes/forums/functions.php:353 includes/replies/functions.php:
|
4277 |
#: includes/topics/functions.php:400
|
4278 |
-
msgid "<strong>
|
4279 |
msgstr ""
|
4280 |
|
4281 |
#: includes/forums/functions.php:357
|
4282 |
-
msgid "<strong>
|
4283 |
msgstr ""
|
4284 |
|
4285 |
#: includes/forums/functions.php:382
|
4286 |
-
msgid "<strong>
|
4287 |
msgstr ""
|
4288 |
|
4289 |
#: includes/forums/functions.php:398
|
4290 |
-
msgid "<strong>
|
4291 |
msgstr ""
|
4292 |
|
4293 |
#: includes/forums/functions.php:403
|
4294 |
-
msgid "<strong>
|
4295 |
msgstr ""
|
4296 |
|
4297 |
#: includes/forums/functions.php:479
|
4298 |
-
msgid "<strong>
|
4299 |
msgstr ""
|
4300 |
|
4301 |
#: includes/forums/template.php:52 includes/replies/template.php:53
|
@@ -4388,12 +4389,12 @@ msgid "Forum scheduled."
|
|
4388 |
msgstr ""
|
4389 |
|
4390 |
#: includes/forums/template.php:833 includes/topics/template.php:1781
|
4391 |
-
#: includes/users/template.php:
|
4392 |
msgid "Subscribe"
|
4393 |
msgstr ""
|
4394 |
|
4395 |
#: includes/forums/template.php:834 includes/topics/template.php:1782
|
4396 |
-
#: includes/users/template.php:
|
4397 |
msgid "Unsubscribe"
|
4398 |
msgstr ""
|
4399 |
|
@@ -4452,196 +4453,196 @@ msgid "This forum is empty."
|
|
4452 |
msgstr ""
|
4453 |
|
4454 |
#: includes/replies/functions.php:159
|
4455 |
-
msgid "<strong>
|
4456 |
msgstr ""
|
4457 |
|
4458 |
#: includes/replies/functions.php:170
|
4459 |
-
msgid "<strong>
|
4460 |
msgstr ""
|
4461 |
|
4462 |
#: includes/replies/functions.php:174
|
4463 |
-
msgid "<strong>
|
4464 |
msgstr ""
|
4465 |
|
4466 |
#: includes/replies/functions.php:184
|
4467 |
-
msgid "<strong>
|
4468 |
msgstr ""
|
4469 |
|
4470 |
#: includes/replies/functions.php:188
|
4471 |
-
msgid "<strong>
|
4472 |
msgstr ""
|
4473 |
|
4474 |
#: includes/replies/functions.php:207 includes/replies/functions.php:221
|
4475 |
#: includes/topics/functions.php:187 includes/topics/functions.php:201
|
4476 |
#: includes/topics/functions.php:483
|
4477 |
-
msgid "<strong>
|
4478 |
msgstr ""
|
4479 |
|
4480 |
#: includes/replies/functions.php:211 includes/topics/functions.php:191
|
4481 |
-
msgid "<strong>
|
4482 |
msgstr ""
|
4483 |
|
4484 |
#: includes/replies/functions.php:225 includes/topics/functions.php:205
|
4485 |
-
msgid "<strong>
|
4486 |
msgstr ""
|
4487 |
|
4488 |
#: includes/replies/functions.php:229 includes/topics/functions.php:209
|
4489 |
-
msgid "<strong>
|
4490 |
msgstr ""
|
4491 |
|
4492 |
-
#: includes/replies/functions.php:243 includes/replies/functions.php:
|
4493 |
msgid ""
|
4494 |
-
"<strong>
|
4495 |
"in this forum."
|
4496 |
msgstr ""
|
4497 |
|
4498 |
-
#: includes/replies/functions.php:250 includes/replies/functions.php:
|
4499 |
-
msgid "<strong>
|
4500 |
msgstr ""
|
4501 |
|
4502 |
-
#: includes/replies/functions.php:255 includes/replies/functions.php:
|
4503 |
msgid ""
|
4504 |
-
"<strong>
|
4505 |
"capability to read or create new replies in it."
|
4506 |
msgstr ""
|
4507 |
|
4508 |
-
#: includes/replies/functions.php:259 includes/replies/functions.php:
|
4509 |
msgid ""
|
4510 |
-
"<strong>
|
4511 |
"capability to read or create new replies in it."
|
4512 |
msgstr ""
|
4513 |
|
4514 |
-
#: includes/replies/functions.php:298 includes/replies/functions.php:
|
4515 |
-
msgid "<strong>
|
4516 |
msgstr ""
|
4517 |
|
4518 |
#: includes/replies/functions.php:310
|
4519 |
msgid ""
|
4520 |
-
"<strong>
|
4521 |
"you’ve already said that."
|
4522 |
msgstr ""
|
4523 |
|
4524 |
#: includes/replies/functions.php:316
|
4525 |
-
msgid "<strong>
|
4526 |
msgstr ""
|
4527 |
|
4528 |
#: includes/replies/functions.php:341
|
4529 |
-
msgid "<strong>
|
4530 |
msgstr ""
|
4531 |
|
4532 |
-
#: includes/replies/functions.php:401 includes/replies/functions.php:
|
4533 |
-
msgid "<strong>
|
4534 |
msgstr ""
|
4535 |
|
4536 |
-
#: includes/replies/functions.php:
|
4537 |
-
msgid "<strong>
|
4538 |
msgstr ""
|
4539 |
|
4540 |
-
#: includes/replies/functions.php:
|
4541 |
-
msgid "<strong>
|
4542 |
msgstr ""
|
4543 |
|
4544 |
-
#: includes/replies/functions.php:
|
4545 |
-
msgid "<strong>
|
4546 |
msgstr ""
|
4547 |
|
4548 |
-
#: includes/replies/functions.php:
|
4549 |
-
msgid "<strong>
|
4550 |
msgstr ""
|
4551 |
|
4552 |
-
#: includes/replies/functions.php:
|
4553 |
-
msgid "<strong>
|
4554 |
msgstr ""
|
4555 |
|
4556 |
-
#: includes/replies/functions.php:
|
4557 |
-
msgid "<strong>
|
4558 |
msgstr ""
|
4559 |
|
4560 |
-
#: includes/replies/functions.php:
|
4561 |
-
msgid "<strong>
|
4562 |
msgstr ""
|
4563 |
|
4564 |
-
#: includes/replies/functions.php:
|
4565 |
-
msgid "<strong>
|
4566 |
msgstr ""
|
4567 |
|
4568 |
-
#: includes/replies/functions.php:
|
4569 |
-
#: includes/topics/functions.php:
|
4570 |
-
msgid "<strong>
|
4571 |
msgstr ""
|
4572 |
|
4573 |
-
#: includes/replies/functions.php:
|
4574 |
-
msgid "<strong>
|
4575 |
msgstr ""
|
4576 |
|
4577 |
-
#: includes/replies/functions.php:
|
4578 |
-
msgid "<strong>
|
4579 |
msgstr ""
|
4580 |
|
4581 |
-
#: includes/replies/functions.php:
|
4582 |
-
msgid "<strong>
|
4583 |
msgstr ""
|
4584 |
|
4585 |
-
#: includes/replies/functions.php:
|
4586 |
-
#: includes/topics/functions.php:
|
4587 |
msgid ""
|
4588 |
-
"<strong>
|
4589 |
"topic."
|
4590 |
msgstr ""
|
4591 |
|
4592 |
-
#: includes/replies/functions.php:
|
4593 |
msgid ""
|
4594 |
-
"<strong>
|
4595 |
"topic. Please try again."
|
4596 |
msgstr ""
|
4597 |
|
4598 |
-
#: includes/replies/functions.php:
|
4599 |
msgid ""
|
4600 |
-
"<strong>
|
4601 |
"The reply could not be converted into a topic."
|
4602 |
msgstr ""
|
4603 |
|
4604 |
-
#: includes/replies/functions.php:
|
4605 |
-
msgid "<strong>
|
4606 |
-
msgstr ""
|
4607 |
-
|
4608 |
-
#: includes/replies/functions.php:1495 includes/topics/functions.php:2025
|
4609 |
-
msgid "<strong>ERROR</strong>: You do not have permission to do that."
|
4610 |
msgstr ""
|
4611 |
|
4612 |
-
#: includes/replies/functions.php:
|
4613 |
-
msgid "<strong>
|
4614 |
msgstr ""
|
4615 |
|
4616 |
-
#: includes/replies/functions.php:
|
4617 |
-
msgid "<strong>
|
4618 |
msgstr ""
|
4619 |
|
4620 |
-
#: includes/replies/functions.php:
|
4621 |
-
msgid "<strong>
|
4622 |
msgstr ""
|
4623 |
|
4624 |
-
#: includes/replies/functions.php:
|
4625 |
-
msgid "<strong>
|
4626 |
msgstr ""
|
4627 |
|
4628 |
-
#: includes/replies/functions.php:
|
4629 |
-
msgid "<strong>
|
4630 |
msgstr ""
|
4631 |
|
4632 |
#: includes/replies/functions.php:1605
|
4633 |
-
msgid "<strong>
|
4634 |
msgstr ""
|
4635 |
|
4636 |
#: includes/replies/functions.php:1613
|
4637 |
-
msgid "<strong>
|
4638 |
msgstr ""
|
4639 |
|
4640 |
-
#: includes/replies/functions.php:
|
|
|
|
|
|
|
|
|
4641 |
msgid "All Posts"
|
4642 |
msgstr ""
|
4643 |
|
4644 |
-
#: includes/replies/functions.php:
|
4645 |
msgid "Replies: %s"
|
4646 |
msgstr ""
|
4647 |
|
@@ -4737,85 +4738,85 @@ msgstr ""
|
|
4737 |
msgid "Reply scheduled."
|
4738 |
msgstr ""
|
4739 |
|
4740 |
-
#: includes/replies/template.php:
|
4741 |
#: templates/default/bbpress/form-reply.php:30
|
4742 |
msgid "Reply To: %s"
|
4743 |
msgstr ""
|
4744 |
|
4745 |
-
#: includes/replies/template.php:
|
4746 |
msgid "This reply was modified %1$s by %2$s. Reason: %3$s"
|
4747 |
msgstr ""
|
4748 |
|
4749 |
-
#: includes/replies/template.php:
|
4750 |
msgid "This reply was modified %1$s by %2$s."
|
4751 |
msgstr ""
|
4752 |
|
4753 |
-
#: includes/replies/template.php:
|
4754 |
-
#: includes/users/template.php:
|
4755 |
msgid "View %s's profile"
|
4756 |
msgstr ""
|
4757 |
|
4758 |
-
#: includes/replies/template.php:
|
4759 |
-
#: includes/users/template.php:
|
4760 |
msgid "Visit %s's website"
|
4761 |
msgstr ""
|
4762 |
|
4763 |
-
#: includes/replies/template.php:
|
4764 |
#: templates/default/bbpress/form-user-passwords.php:31
|
4765 |
msgid "Cancel"
|
4766 |
msgstr ""
|
4767 |
|
4768 |
-
#: includes/replies/template.php:
|
4769 |
#: templates/default/bbpress/form-topic-tag.php:100
|
4770 |
#: templates/default/bbpress/form-topic-tag.php:117
|
4771 |
msgid "Delete"
|
4772 |
msgstr ""
|
4773 |
|
4774 |
-
#: includes/replies/template.php:
|
4775 |
msgid "Are you sure you want to delete that permanently?"
|
4776 |
msgstr ""
|
4777 |
|
4778 |
-
#: includes/replies/template.php:
|
4779 |
msgid "Move"
|
4780 |
msgstr ""
|
4781 |
|
4782 |
-
#: includes/replies/template.php:
|
4783 |
msgid "Move this reply"
|
4784 |
msgstr ""
|
4785 |
|
4786 |
-
#: includes/replies/template.php:
|
4787 |
msgid "Split"
|
4788 |
msgstr ""
|
4789 |
|
4790 |
-
#: includes/replies/template.php:
|
4791 |
msgid "Split the topic from this reply"
|
4792 |
msgstr ""
|
4793 |
|
4794 |
-
#: includes/replies/template.php:
|
4795 |
msgid "Viewing %1$s reply thread"
|
4796 |
msgid_plural "Viewing %1$s reply threads"
|
4797 |
msgstr[0] ""
|
4798 |
msgstr[1] ""
|
4799 |
|
4800 |
-
#: includes/replies/template.php:
|
4801 |
msgid "Viewing %1$s reply"
|
4802 |
msgid_plural "Viewing %1$s replies"
|
4803 |
msgstr[0] ""
|
4804 |
msgstr[1] ""
|
4805 |
|
4806 |
-
#: includes/replies/template.php:
|
4807 |
msgid "Viewing %2$s replies (of %4$s total)"
|
4808 |
msgid_plural "Viewing %1$s replies - %2$s through %3$s (of %4$s total)"
|
4809 |
msgstr[0] ""
|
4810 |
msgstr[1] ""
|
4811 |
|
4812 |
-
#: includes/replies/template.php:
|
4813 |
msgid "Viewing %1$s post"
|
4814 |
msgid_plural "Viewing %1$s posts"
|
4815 |
msgstr[0] ""
|
4816 |
msgstr[1] ""
|
4817 |
|
4818 |
-
#: includes/replies/template.php:
|
4819 |
msgid "Viewing %2$s post (of %4$s total)"
|
4820 |
msgid_plural "Viewing %1$s posts - %2$s through %3$s (of %4$s total)"
|
4821 |
msgstr[0] ""
|
@@ -4838,193 +4839,193 @@ msgstr[0] ""
|
|
4838 |
msgstr[1] ""
|
4839 |
|
4840 |
#: includes/topics/functions.php:132
|
4841 |
-
msgid "<strong>
|
4842 |
msgstr ""
|
4843 |
|
4844 |
#: includes/topics/functions.php:158 includes/topics/functions.php:530
|
4845 |
-
msgid "<strong>
|
4846 |
msgstr ""
|
4847 |
|
4848 |
#: includes/topics/functions.php:177 includes/topics/functions.php:549
|
4849 |
-
msgid "<strong>
|
4850 |
msgstr ""
|
4851 |
|
4852 |
#: includes/topics/functions.php:223
|
4853 |
msgid ""
|
4854 |
-
"<strong>
|
4855 |
"in this forum."
|
4856 |
msgstr ""
|
4857 |
|
4858 |
#: includes/topics/functions.php:230 includes/topics/functions.php:505
|
4859 |
-
msgid "<strong>
|
4860 |
msgstr ""
|
4861 |
|
4862 |
#: includes/topics/functions.php:235 includes/topics/functions.php:510
|
4863 |
msgid ""
|
4864 |
-
"<strong>
|
4865 |
"capability to read or create new topics in it."
|
4866 |
msgstr ""
|
4867 |
|
4868 |
#: includes/topics/functions.php:239 includes/topics/functions.php:514
|
4869 |
msgid ""
|
4870 |
-
"<strong>
|
4871 |
"capability to read or create new topics in it."
|
4872 |
msgstr ""
|
4873 |
|
4874 |
#: includes/topics/functions.php:253
|
4875 |
msgid ""
|
4876 |
-
"<strong>
|
4877 |
"you’ve already said that."
|
4878 |
msgstr ""
|
4879 |
|
4880 |
#: includes/topics/functions.php:259
|
4881 |
-
msgid "<strong>
|
4882 |
msgstr ""
|
4883 |
|
4884 |
#: includes/topics/functions.php:404
|
4885 |
-
msgid "<strong>
|
4886 |
msgstr ""
|
4887 |
|
4888 |
-
#: includes/topics/functions.php:430 includes/topics/functions.php:
|
4889 |
-
msgid "<strong>
|
4890 |
msgstr ""
|
4891 |
|
4892 |
#: includes/topics/functions.php:441
|
4893 |
-
msgid "<strong>
|
4894 |
msgstr ""
|
4895 |
|
4896 |
#: includes/topics/functions.php:452
|
4897 |
-
msgid "<strong>
|
4898 |
msgstr ""
|
4899 |
|
4900 |
#: includes/topics/functions.php:498
|
4901 |
msgid ""
|
4902 |
-
"<strong>
|
4903 |
"in it."
|
4904 |
msgstr ""
|
4905 |
|
4906 |
#: includes/topics/functions.php:555
|
4907 |
-
msgid "<strong>
|
4908 |
msgstr ""
|
4909 |
|
4910 |
-
#: includes/topics/functions.php:
|
4911 |
-
msgid "<strong>
|
4912 |
msgstr ""
|
4913 |
|
4914 |
-
#: includes/topics/functions.php:
|
4915 |
-
msgid "<strong>
|
4916 |
msgstr ""
|
4917 |
|
4918 |
-
#: includes/topics/functions.php:
|
4919 |
-
msgid "<strong>
|
4920 |
msgstr ""
|
4921 |
|
4922 |
-
#: includes/topics/functions.php:
|
4923 |
-
msgid "<strong>
|
4924 |
msgstr ""
|
4925 |
|
4926 |
-
#: includes/topics/functions.php:
|
4927 |
-
msgid "<strong>
|
4928 |
msgstr ""
|
4929 |
|
4930 |
-
#: includes/topics/functions.php:
|
4931 |
-
msgid "<strong>
|
4932 |
msgstr ""
|
4933 |
|
4934 |
-
#: includes/topics/functions.php:
|
4935 |
-
msgid "<strong>
|
4936 |
msgstr ""
|
4937 |
|
4938 |
-
#: includes/topics/functions.php:
|
4939 |
-
msgid "<strong>
|
4940 |
msgstr ""
|
4941 |
|
4942 |
-
#: includes/topics/functions.php:
|
4943 |
msgid ""
|
4944 |
-
"<strong>
|
4945 |
"getting the tag: %s"
|
4946 |
msgstr ""
|
4947 |
|
4948 |
-
#: includes/topics/functions.php:
|
4949 |
-
msgid "<strong>
|
4950 |
msgstr ""
|
4951 |
|
4952 |
-
#: includes/topics/functions.php:
|
4953 |
-
msgid "<strong>
|
4954 |
msgstr ""
|
4955 |
|
4956 |
-
#: includes/topics/functions.php:
|
4957 |
msgid ""
|
4958 |
-
"<strong>
|
4959 |
"updating the tag: %s"
|
4960 |
msgstr ""
|
4961 |
|
4962 |
-
#: includes/topics/functions.php:
|
4963 |
msgid ""
|
4964 |
-
"<strong>
|
4965 |
"merging the tags: %s"
|
4966 |
msgstr ""
|
4967 |
|
4968 |
-
#: includes/topics/functions.php:
|
4969 |
-
msgid "<strong>
|
4970 |
msgstr ""
|
4971 |
|
4972 |
-
#: includes/topics/functions.php:
|
4973 |
-
msgid "<strong>
|
4974 |
msgstr ""
|
4975 |
|
4976 |
-
#: includes/topics/functions.php:
|
4977 |
msgid ""
|
4978 |
-
"<strong>
|
4979 |
"deleting the tag: %s"
|
4980 |
msgstr ""
|
4981 |
|
4982 |
-
#: includes/topics/functions.php:
|
4983 |
-
msgid "<strong>
|
|
|
|
|
|
|
|
|
4984 |
msgstr ""
|
4985 |
|
4986 |
#: includes/topics/functions.php:2109
|
4987 |
-
msgid "<strong>
|
4988 |
msgstr ""
|
4989 |
|
4990 |
-
#: includes/topics/functions.php:
|
4991 |
-
msgid "<strong>
|
4992 |
msgstr ""
|
4993 |
|
4994 |
#: includes/topics/functions.php:2127
|
4995 |
-
msgid "<strong>
|
4996 |
msgstr ""
|
4997 |
|
4998 |
-
#: includes/topics/functions.php:
|
4999 |
-
msgid "<strong>
|
5000 |
msgstr ""
|
5001 |
|
5002 |
#: includes/topics/functions.php:2146
|
5003 |
-
msgid "<strong>
|
5004 |
msgstr ""
|
5005 |
|
5006 |
-
#: includes/topics/functions.php:
|
5007 |
-
msgid "<strong>
|
5008 |
msgstr ""
|
5009 |
|
5010 |
#: includes/topics/functions.php:2165
|
5011 |
-
msgid "<strong>
|
5012 |
-
msgstr ""
|
5013 |
-
|
5014 |
-
#: includes/topics/functions.php:2166
|
5015 |
-
msgid "<strong>ERROR</strong>: There was a problem marking the topic as spam."
|
5016 |
msgstr ""
|
5017 |
|
5018 |
-
#: includes/topics/functions.php:
|
5019 |
-
msgid "<strong>
|
5020 |
msgstr ""
|
5021 |
|
5022 |
-
#: includes/topics/functions.php:
|
5023 |
-
msgid "<strong>
|
5024 |
msgstr ""
|
5025 |
|
5026 |
-
#: includes/topics/functions.php:
|
5027 |
-
msgid "<strong>
|
5028 |
msgstr ""
|
5029 |
|
5030 |
#: includes/topics/template.php:52 templates/default/bbpress/form-topic.php:48
|
@@ -5123,11 +5124,11 @@ msgstr ""
|
|
5123 |
msgid "This topic was modified %1$s by %2$s."
|
5124 |
msgstr ""
|
5125 |
|
5126 |
-
#: includes/topics/template.php:1829 includes/users/template.php:
|
5127 |
msgid "Favorite"
|
5128 |
msgstr ""
|
5129 |
|
5130 |
-
#: includes/topics/template.php:1830 includes/users/template.php:
|
5131 |
msgid "Unfavorite"
|
5132 |
msgstr ""
|
5133 |
|
@@ -5141,188 +5142,188 @@ msgstr ""
|
|
5141 |
msgid "Merge"
|
5142 |
msgstr ""
|
5143 |
|
5144 |
-
#: includes/topics/template.php:
|
5145 |
msgid "Viewing %1$s topic"
|
5146 |
msgid_plural "Viewing %1$s topics"
|
5147 |
msgstr[0] ""
|
5148 |
msgstr[1] ""
|
5149 |
|
5150 |
-
#: includes/topics/template.php:
|
5151 |
msgid "Viewing topic %2$s (of %4$s total)"
|
5152 |
msgid_plural "Viewing %1$s topics - %2$s through %3$s (of %4$s total)"
|
5153 |
msgstr[0] ""
|
5154 |
msgstr[1] ""
|
5155 |
|
5156 |
-
#: includes/topics/template.php:
|
5157 |
msgid "This topic is marked as spam."
|
5158 |
msgstr ""
|
5159 |
|
5160 |
-
#: includes/topics/template.php:
|
5161 |
msgid "This topic is in the trash."
|
5162 |
msgstr ""
|
5163 |
|
5164 |
-
#: includes/topics/template.php:
|
5165 |
msgid "This topic is pending moderation."
|
5166 |
msgstr ""
|
5167 |
|
5168 |
-
#: includes/topics/template.php:
|
5169 |
msgid "%s voice"
|
5170 |
msgid_plural "%s voices"
|
5171 |
msgstr[0] ""
|
5172 |
msgstr[1] ""
|
5173 |
|
5174 |
-
#: includes/topics/template.php:
|
5175 |
msgid "This topic has %1$s, %2$s, and was last updated %3$s by %4$s."
|
5176 |
msgstr ""
|
5177 |
|
5178 |
-
#: includes/topics/template.php:
|
5179 |
msgid "This topic has %1$s and %2$s."
|
5180 |
msgstr ""
|
5181 |
|
5182 |
-
#: includes/topics/template.php:
|
5183 |
msgid "This topic has no replies."
|
5184 |
msgstr ""
|
5185 |
|
5186 |
-
#: includes/topics/template.php:
|
5187 |
msgid "This topic is empty."
|
5188 |
msgstr ""
|
5189 |
|
5190 |
-
#: includes/topics/template.php:
|
5191 |
msgid "Search Tags"
|
5192 |
msgstr ""
|
5193 |
|
5194 |
-
#: includes/topics/template.php:
|
5195 |
msgid "Popular Tags"
|
5196 |
msgstr ""
|
5197 |
|
5198 |
-
#: includes/topics/template.php:
|
5199 |
msgid "All Tags"
|
5200 |
msgstr ""
|
5201 |
|
5202 |
-
#: includes/topics/template.php:
|
5203 |
msgid "Parent Tag"
|
5204 |
msgstr ""
|
5205 |
|
5206 |
-
#: includes/topics/template.php:
|
5207 |
msgid "Parent Tag:"
|
5208 |
msgstr ""
|
5209 |
|
5210 |
-
#: includes/topics/template.php:
|
5211 |
msgid "Edit Tag"
|
5212 |
msgstr ""
|
5213 |
|
5214 |
-
#: includes/topics/template.php:
|
5215 |
msgid "View Topic Tag"
|
5216 |
msgstr ""
|
5217 |
|
5218 |
-
#: includes/topics/template.php:
|
5219 |
msgid "Update Tag"
|
5220 |
msgstr ""
|
5221 |
|
5222 |
-
#: includes/topics/template.php:
|
5223 |
msgid "Add New Tag"
|
5224 |
msgstr ""
|
5225 |
|
5226 |
-
#: includes/topics/template.php:
|
5227 |
msgid "New Tag Name"
|
5228 |
msgstr ""
|
5229 |
|
5230 |
-
#: includes/topics/template.php:
|
5231 |
msgid "Separate topic tags with commas"
|
5232 |
msgstr ""
|
5233 |
|
5234 |
-
#: includes/topics/template.php:
|
5235 |
msgid "Add or remove tags"
|
5236 |
msgstr ""
|
5237 |
|
5238 |
-
#: includes/topics/template.php:
|
5239 |
msgid "Choose from the most used tags"
|
5240 |
msgstr ""
|
5241 |
|
5242 |
-
#: includes/topics/template.php:
|
5243 |
msgid "No topic tags found."
|
5244 |
msgstr ""
|
5245 |
|
5246 |
-
#: includes/topics/template.php:
|
5247 |
msgid "No topic tags"
|
5248 |
msgstr ""
|
5249 |
|
5250 |
-
#: includes/topics/template.php:
|
5251 |
msgid "Topic tags list navigation"
|
5252 |
msgstr ""
|
5253 |
|
5254 |
-
#: includes/topics/template.php:
|
5255 |
msgid "Topic tags list"
|
5256 |
msgstr ""
|
5257 |
|
5258 |
-
#: includes/topics/template.php:
|
5259 |
msgid "Most used topic tags"
|
5260 |
msgstr ""
|
5261 |
|
5262 |
-
#: includes/topics/template.php:
|
5263 |
msgid "← Back to Tags"
|
5264 |
msgstr ""
|
5265 |
|
5266 |
-
#: includes/topics/template.php:
|
5267 |
msgid "Nobody"
|
5268 |
msgstr ""
|
5269 |
|
5270 |
-
#: includes/topics/template.php:
|
5271 |
msgid "%1$s is currently editing this topic."
|
5272 |
msgstr ""
|
5273 |
|
5274 |
#: includes/users/engagements.php:608
|
5275 |
msgid ""
|
5276 |
-
"<strong>
|
5277 |
"marking/unmarking as favorite?"
|
5278 |
msgstr ""
|
5279 |
|
5280 |
#: includes/users/engagements.php:616
|
5281 |
msgid ""
|
5282 |
-
"<strong>
|
5283 |
"that user."
|
5284 |
msgstr ""
|
5285 |
|
5286 |
#: includes/users/engagements.php:657
|
5287 |
msgid ""
|
5288 |
-
"<strong>
|
5289 |
"favorites."
|
5290 |
msgstr ""
|
5291 |
|
5292 |
#: includes/users/engagements.php:659
|
5293 |
-
msgid "<strong>
|
5294 |
msgstr ""
|
5295 |
|
5296 |
#: includes/users/engagements.php:849
|
5297 |
msgid ""
|
5298 |
-
"<strong>
|
5299 |
"to?"
|
5300 |
msgstr ""
|
5301 |
|
5302 |
#: includes/users/engagements.php:857
|
5303 |
msgid ""
|
5304 |
-
"<strong>
|
5305 |
"that user."
|
5306 |
msgstr ""
|
5307 |
|
5308 |
#: includes/users/engagements.php:900
|
5309 |
-
msgid "<strong>
|
5310 |
msgstr ""
|
5311 |
|
5312 |
#: includes/users/engagements.php:902
|
5313 |
-
msgid "<strong>
|
5314 |
msgstr ""
|
5315 |
|
5316 |
#: includes/users/functions.php:208 includes/users/functions.php:220
|
5317 |
-
msgid "<strong>
|
5318 |
msgstr ""
|
5319 |
|
5320 |
#: includes/users/functions.php:226 includes/users/functions.php:343
|
5321 |
-
msgid "<strong>
|
5322 |
msgstr ""
|
5323 |
|
5324 |
#: includes/users/functions.php:406
|
5325 |
-
msgid "<strong>
|
5326 |
msgstr ""
|
5327 |
|
5328 |
#: includes/users/functions.php:418
|
@@ -5349,70 +5350,70 @@ msgid "[%s] New Email Address"
|
|
5349 |
msgstr ""
|
5350 |
|
5351 |
#: includes/users/signups.php:209
|
5352 |
-
msgid "<strong>
|
5353 |
msgstr ""
|
5354 |
|
5355 |
#: includes/users/signups.php:214
|
5356 |
-
msgid "<strong>
|
5357 |
msgstr ""
|
5358 |
|
5359 |
-
#: includes/users/template.php:
|
5360 |
msgid "Guest"
|
5361 |
msgstr ""
|
5362 |
|
5363 |
-
#: includes/users/template.php:
|
5364 |
msgid "Inactive"
|
5365 |
msgstr ""
|
5366 |
|
5367 |
-
#: includes/users/template.php:
|
5368 |
msgid "Member"
|
5369 |
msgstr ""
|
5370 |
|
5371 |
-
#: includes/users/template.php:
|
5372 |
msgid "Admin"
|
5373 |
msgstr ""
|
5374 |
|
5375 |
-
#: includes/users/template.php:
|
5376 |
msgid "User updated."
|
5377 |
msgstr ""
|
5378 |
|
5379 |
-
#: includes/users/template.php:
|
5380 |
msgid "There is a pending email address change to %1$s. %2$s"
|
5381 |
msgstr ""
|
5382 |
|
5383 |
-
#: includes/users/template.php:
|
5384 |
msgid "You have super admin privileges."
|
5385 |
msgstr ""
|
5386 |
|
5387 |
-
#: includes/users/template.php:
|
5388 |
msgid "This user has super admin privileges."
|
5389 |
msgstr ""
|
5390 |
|
5391 |
-
#: includes/users/template.php:
|
5392 |
msgid "— No role for this site —"
|
5393 |
msgstr ""
|
5394 |
|
5395 |
-
#: includes/users/template.php:
|
5396 |
msgid "You are now logged out."
|
5397 |
msgstr ""
|
5398 |
|
5399 |
-
#: includes/users/template.php:
|
5400 |
msgid "New user registration is currently not allowed."
|
5401 |
msgstr ""
|
5402 |
|
5403 |
-
#: includes/users/template.php:
|
5404 |
msgid "Check your e-mail for the confirmation link."
|
5405 |
msgstr ""
|
5406 |
|
5407 |
-
#: includes/users/template.php:
|
5408 |
msgid "Check your e-mail for your new password."
|
5409 |
msgstr ""
|
5410 |
|
5411 |
-
#: includes/users/template.php:
|
5412 |
msgid "Registration complete. Please check your e-mail."
|
5413 |
msgstr ""
|
5414 |
|
5415 |
-
#: includes/users/template.php:
|
5416 |
msgid "Moderators:"
|
5417 |
msgstr ""
|
5418 |
|
@@ -6236,7 +6237,7 @@ msgctxt "Open a Topic"
|
|
6236 |
msgid "Open"
|
6237 |
msgstr ""
|
6238 |
|
6239 |
-
#: includes/common/formatting.php:
|
6240 |
msgctxt "Separator in time since"
|
6241 |
msgid ","
|
6242 |
msgstr ""
|
@@ -6328,57 +6329,57 @@ msgctxt "Make forum hidden"
|
|
6328 |
msgid "Hidden"
|
6329 |
msgstr ""
|
6330 |
|
6331 |
-
#: includes/replies/functions.php:
|
6332 |
msgctxt "Publish the reply"
|
6333 |
msgid "Publish"
|
6334 |
msgstr ""
|
6335 |
|
6336 |
-
#: includes/replies/functions.php:
|
6337 |
msgctxt "Spam the reply"
|
6338 |
msgid "Spam"
|
6339 |
msgstr ""
|
6340 |
|
6341 |
-
#: includes/replies/functions.php:
|
6342 |
msgctxt "Trash the reply"
|
6343 |
msgid "Trash"
|
6344 |
msgstr ""
|
6345 |
|
6346 |
-
#: includes/replies/functions.php:
|
6347 |
msgctxt "Mark reply as pending"
|
6348 |
msgid "Pending"
|
6349 |
msgstr ""
|
6350 |
|
6351 |
-
#: includes/replies/template.php:
|
6352 |
msgctxt "date at time"
|
6353 |
msgid "%1$s at %2$s"
|
6354 |
msgstr ""
|
6355 |
|
6356 |
-
#: includes/replies/template.php:
|
6357 |
msgctxt "verb"
|
6358 |
msgid "Reply"
|
6359 |
msgstr ""
|
6360 |
|
6361 |
-
#: includes/replies/template.php:
|
6362 |
msgctxt "Pending Status"
|
6363 |
msgid "Approve"
|
6364 |
msgstr ""
|
6365 |
|
6366 |
-
#: includes/replies/template.php:
|
6367 |
msgctxt "Pending Status"
|
6368 |
msgid "Unapprove"
|
6369 |
msgstr ""
|
6370 |
|
6371 |
-
#: includes/replies/template.php:
|
6372 |
msgctxt "Default reply to dropdown text"
|
6373 |
msgid "None"
|
6374 |
msgstr ""
|
6375 |
|
6376 |
-
#: includes/topics/functions.php:
|
6377 |
msgctxt "Open the topic"
|
6378 |
msgid "Open"
|
6379 |
msgstr ""
|
6380 |
|
6381 |
-
#: includes/topics/functions.php:
|
6382 |
msgctxt "Close the topic"
|
6383 |
msgid "Closed"
|
6384 |
msgstr ""
|
@@ -6388,17 +6389,17 @@ msgctxt "Close the topic"
|
|
6388 |
msgid "Close"
|
6389 |
msgstr ""
|
6390 |
|
6391 |
-
#: includes/topics/functions.php:
|
6392 |
msgctxt "Spam the topic"
|
6393 |
msgid "Spam"
|
6394 |
msgstr ""
|
6395 |
|
6396 |
-
#: includes/topics/functions.php:
|
6397 |
msgctxt "Trash the topic"
|
6398 |
msgid "Trash"
|
6399 |
msgstr ""
|
6400 |
|
6401 |
-
#: includes/topics/functions.php:
|
6402 |
msgctxt "Unapprove the topic"
|
6403 |
msgid "Pending"
|
6404 |
msgstr ""
|
@@ -6408,17 +6409,17 @@ msgctxt "Unapprove the topic"
|
|
6408 |
msgid "Unapprove"
|
6409 |
msgstr ""
|
6410 |
|
6411 |
-
#: includes/topics/functions.php:
|
6412 |
msgctxt "Unstick a topic"
|
6413 |
msgid "Normal"
|
6414 |
msgstr ""
|
6415 |
|
6416 |
-
#: includes/topics/functions.php:
|
6417 |
msgctxt "Make topic sticky"
|
6418 |
msgid "Sticky"
|
6419 |
msgstr ""
|
6420 |
|
6421 |
-
#: includes/topics/functions.php:
|
6422 |
msgctxt "Make topic super sticky"
|
6423 |
msgid "Super Sticky"
|
6424 |
msgstr ""
|
@@ -6428,7 +6429,7 @@ msgctxt "Approve the topic"
|
|
6428 |
msgid "Approve"
|
6429 |
msgstr ""
|
6430 |
|
6431 |
-
#: includes/users/template.php:
|
6432 |
msgctxt "Dismiss pending user email address change"
|
6433 |
msgid "Cancel"
|
6434 |
msgstr ""
|
2 |
# This file is distributed under the GPLv2 or later (license.txt).
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: bbPress 2.6.6\n"
|
6 |
"Report-Msgid-Bugs-To: https://bbpress.trac.wordpress.org\n"
|
7 |
+
"POT-Creation-Date: 2020-11-06 01:22:02+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=utf-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
45 |
msgid "bbPress User Activity"
|
46 |
msgstr ""
|
47 |
|
48 |
+
#: includes/admin/actions.php:180 includes/admin/forums.php:538
|
49 |
#: includes/admin/settings.php:281 includes/admin/settings.php:302
|
50 |
#: includes/admin/tools/common.php:437 includes/admin/topics.php:854
|
51 |
#: includes/extend/buddypress/activity.php:197
|
57 |
msgid "Topics"
|
58 |
msgstr ""
|
59 |
|
60 |
+
#: includes/admin/actions.php:185 includes/admin/actions.php:197
|
61 |
#: includes/admin/forums.php:539 includes/admin/settings.php:289
|
62 |
#: includes/admin/settings.php:310 includes/admin/tools/common.php:440
|
63 |
#: includes/admin/topics.php:390 includes/admin/topics.php:856
|
64 |
+
#: includes/core/theme-compat.php:704
|
65 |
#: includes/extend/buddypress/activity.php:207
|
66 |
#: includes/extend/buddypress/activity.php:392
|
67 |
#: includes/forums/template.php:2714 includes/replies/template.php:49
|
74 |
msgid "Replies"
|
75 |
msgstr ""
|
76 |
|
77 |
+
#: includes/admin/actions.php:192 includes/admin/actions.php:204
|
78 |
#: includes/admin/forums.php:537 includes/admin/metaboxes.php:113
|
79 |
#: includes/admin/metaboxes.php:432 includes/admin/metaboxes.php:496
|
80 |
#: includes/admin/replies.php:665 includes/admin/settings.php:352
|
84 |
msgid "Forum"
|
85 |
msgstr ""
|
86 |
|
87 |
+
#: includes/admin/actions.php:209 includes/admin/metaboxes.php:130
|
88 |
#: includes/admin/metaboxes.php:523 includes/admin/replies.php:666
|
89 |
#: includes/admin/settings.php:360 includes/topics/template.php:49
|
90 |
#: templates/default/bbpress/content-single-topic-lead.php:23
|
147 |
|
148 |
#: includes/admin/classes/class-bbp-admin.php:938
|
149 |
#: includes/admin/classes/class-bbp-admin.php:1018
|
150 |
+
#: includes/common/classes.php:493 includes/replies/template.php:2565
|
151 |
msgid "%1$s - %2$s"
|
152 |
msgstr ""
|
153 |
|
626 |
#: includes/admin/classes/class-bbp-topic-replies-list-table.php:91
|
627 |
#: includes/admin/replies.php:235 includes/admin/replies.php:818
|
628 |
#: includes/admin/topics.php:240 includes/admin/topics.php:1023
|
629 |
+
#: includes/replies/template.php:2029 includes/topics/template.php:2807
|
630 |
msgid "Spam"
|
631 |
msgstr ""
|
632 |
|
633 |
#: includes/admin/classes/class-bbp-topic-replies-list-table.php:92
|
634 |
#: includes/admin/replies.php:833 includes/admin/topics.php:1037
|
635 |
+
#: includes/replies/template.php:1961 includes/topics/template.php:2515
|
636 |
msgid "Trash"
|
637 |
msgstr ""
|
638 |
|
645 |
#: includes/admin/classes/class-bbp-topic-replies-list-table.php:149
|
646 |
#: includes/admin/settings.php:392 includes/common/template.php:2331
|
647 |
#: includes/forums/template.php:54 includes/replies/template.php:55
|
648 |
+
#: includes/replies/template.php:1849 includes/topics/template.php:53
|
649 |
#: includes/topics/template.php:2403
|
650 |
#: templates/default/bbpress/user-details.php:74
|
651 |
msgid "Edit"
|
1057 |
msgstr[1] ""
|
1058 |
|
1059 |
#: includes/admin/metaboxes.php:166 includes/admin/settings.php:368
|
1060 |
+
#: includes/topics/template.php:3387
|
1061 |
msgid "Topic Tag"
|
1062 |
msgid_plural "Topic Tags"
|
1063 |
msgstr[0] ""
|
1402 |
msgstr ""
|
1403 |
|
1404 |
#: includes/admin/replies.php:233 includes/admin/topics.php:238
|
1405 |
+
#: includes/replies/template.php:2030 includes/topics/template.php:2808
|
1406 |
msgid "Unspam"
|
1407 |
msgstr ""
|
1408 |
|
1521 |
msgstr ""
|
1522 |
|
1523 |
#: includes/admin/replies.php:831 includes/admin/topics.php:1035
|
1524 |
+
#: includes/replies/template.php:1979 includes/topics/template.php:2532
|
1525 |
msgid "Restore this item from the Trash"
|
1526 |
msgstr ""
|
1527 |
|
1528 |
#: includes/admin/replies.php:831 includes/admin/topics.php:1035
|
1529 |
+
#: includes/replies/template.php:1962 includes/topics/template.php:2516
|
1530 |
msgid "Restore"
|
1531 |
msgstr ""
|
1532 |
|
1533 |
#: includes/admin/replies.php:833 includes/admin/topics.php:1037
|
1534 |
+
#: includes/replies/template.php:1983 includes/topics/template.php:2534
|
1535 |
msgid "Move this item to the Trash"
|
1536 |
msgstr ""
|
1537 |
|
1538 |
#: includes/admin/replies.php:837 includes/admin/topics.php:1041
|
1539 |
+
#: includes/replies/template.php:1988 includes/topics/template.php:2538
|
1540 |
msgid "Delete this item permanently"
|
1541 |
msgstr ""
|
1542 |
|
1653 |
msgid "Editing"
|
1654 |
msgstr ""
|
1655 |
|
1656 |
+
#: includes/admin/settings.php:155 includes/users/template.php:806
|
1657 |
msgid "Anonymous"
|
1658 |
msgstr ""
|
1659 |
|
2390 |
msgid "Users"
|
2391 |
msgstr ""
|
2392 |
|
2393 |
+
#: includes/admin/tools/common.php:443 includes/topics/template.php:3385
|
2394 |
+
#: includes/topics/template.php:3386
|
2395 |
#: templates/default/bbpress/content-statistics.php:40
|
2396 |
msgid "Topic Tags"
|
2397 |
msgstr ""
|
2592 |
#: includes/admin/tools/repair.php:661 includes/admin/tools/repair.php:726
|
2593 |
#: includes/admin/tools/repair.php:795 includes/admin/tools/repair.php:903
|
2594 |
#: includes/admin/tools/repair.php:1024 includes/admin/tools/repair.php:1136
|
2595 |
+
#: includes/admin/tools/repair.php:1156 includes/admin/tools/repair.php:1218
|
2596 |
#: includes/admin/tools/reset.php:122 includes/admin/tools/upgrade.php:288
|
2597 |
msgid "Failed!"
|
2598 |
msgstr ""
|
2604 |
#: includes/admin/tools/repair.php:579 includes/admin/tools/repair.php:646
|
2605 |
#: includes/admin/tools/repair.php:711 includes/admin/tools/repair.php:776
|
2606 |
#: includes/admin/tools/repair.php:1009 includes/admin/tools/repair.php:1069
|
2607 |
+
#: includes/admin/tools/repair.php:1140 includes/admin/tools/repair.php:1203
|
2608 |
+
#: includes/admin/tools/repair.php:1254 includes/admin/tools/repair.php:1305
|
2609 |
msgid "Complete!"
|
2610 |
msgstr ""
|
2611 |
|
2700 |
msgid "Recalculating the forum for each post… %s"
|
2701 |
msgstr ""
|
2702 |
|
2703 |
+
#: includes/admin/tools/repair.php:1217
|
2704 |
msgid "Recalculating the topic for each post… %s"
|
2705 |
msgstr ""
|
2706 |
|
2707 |
+
#: includes/admin/tools/repair.php:1268
|
2708 |
msgid "Recalculating reply menu order… %s"
|
2709 |
msgstr ""
|
2710 |
|
2711 |
+
#: includes/admin/tools/repair.php:1269
|
2712 |
msgid "No reply positions to recalculate."
|
2713 |
msgstr ""
|
2714 |
|
2731 |
msgid "All Topics"
|
2732 |
msgstr ""
|
2733 |
|
2734 |
+
#: includes/admin/tools/reset.php:36 includes/replies/functions.php:2136
|
2735 |
#: includes/replies/template.php:52
|
2736 |
msgid "All Replies"
|
2737 |
msgstr ""
|
3599 |
msgstr ""
|
3600 |
|
3601 |
#: includes/admin/users.php:107 includes/admin/users.php:111
|
3602 |
+
#: includes/users/template.php:1547
|
3603 |
msgid "— No role for these forums —"
|
3604 |
msgstr ""
|
3605 |
|
3686 |
msgstr ""
|
3687 |
|
3688 |
#: includes/common/functions.php:556
|
3689 |
+
msgid "<strong>Error</strong>: Invalid author name."
|
3690 |
msgstr ""
|
3691 |
|
3692 |
#: includes/common/functions.php:562
|
3693 |
+
msgid "<strong>Error</strong>: Invalid email address."
|
3694 |
msgstr ""
|
3695 |
|
3696 |
#: includes/common/functions.php:1101
|
3750 |
msgstr ""
|
3751 |
|
3752 |
#: includes/common/template.php:2327 includes/common/template.php:2442
|
3753 |
+
#: includes/common/template.php:2687 includes/core/theme-compat.php:804
|
3754 |
#: templates/default/extras/taxonomy-topic-tag-edit.php:17
|
3755 |
#: templates/default/extras/taxonomy-topic-tag.php:17
|
3756 |
msgid "Topic Tag: %s"
|
4043 |
msgid "And this is the very first reply."
|
4044 |
msgstr ""
|
4045 |
|
4046 |
+
#: includes/extend/akismet.php:171 includes/extend/akismet.php:176
|
4047 |
+
#: includes/extend/akismet.php:492 includes/extend/akismet.php:497
|
4048 |
msgid "No response"
|
4049 |
msgstr ""
|
4050 |
|
4051 |
+
#: includes/extend/akismet.php:353
|
4052 |
#. translators: %s: reporter name
|
4053 |
msgid "%s reported this topic as spam"
|
4054 |
msgstr ""
|
4055 |
|
4056 |
+
#: includes/extend/akismet.php:358
|
4057 |
#. translators: %s: reporter name
|
4058 |
msgid "%s reported this reply as spam"
|
4059 |
msgstr ""
|
4060 |
|
4061 |
+
#: includes/extend/akismet.php:363
|
4062 |
#. translators: 1: reporter name, 2: comment type
|
4063 |
msgid "%1$s reported this %2$s as spam"
|
4064 |
msgstr ""
|
4065 |
|
4066 |
+
#: includes/extend/akismet.php:378
|
4067 |
#. translators: %s: reporter name
|
4068 |
msgid "%s reported this topic as not spam"
|
4069 |
msgstr ""
|
4070 |
|
4071 |
+
#: includes/extend/akismet.php:383
|
4072 |
#. translators: %s: reporter name
|
4073 |
msgid "%s reported this reply as not spam"
|
4074 |
msgstr ""
|
4075 |
|
4076 |
+
#: includes/extend/akismet.php:388
|
4077 |
#. translators: 1: reporter name, 2: comment type
|
4078 |
msgid "%1$s reported this %2$s as not spam"
|
4079 |
msgstr ""
|
4080 |
|
4081 |
+
#: includes/extend/akismet.php:573
|
4082 |
msgid "Akismet caught this post as spam"
|
4083 |
msgstr ""
|
4084 |
|
4085 |
+
#: includes/extend/akismet.php:582 includes/extend/akismet.php:605
|
4086 |
msgid "Post status was changed to %s"
|
4087 |
msgstr ""
|
4088 |
|
4089 |
+
#: includes/extend/akismet.php:596
|
4090 |
msgid "Akismet cleared this post as not spam"
|
4091 |
msgstr ""
|
4092 |
|
4093 |
+
#: includes/extend/akismet.php:619
|
4094 |
msgid ""
|
4095 |
"Akismet was unable to check this post (response: %s), will automatically "
|
4096 |
"retry again later."
|
4097 |
msgstr ""
|
4098 |
|
4099 |
+
#: includes/extend/akismet.php:829 includes/extend/akismet.php:839
|
4100 |
msgid "Akismet History"
|
4101 |
msgstr ""
|
4102 |
|
4103 |
+
#: includes/extend/akismet.php:883
|
4104 |
msgid "No recorded history. Akismet has not checked this post."
|
4105 |
msgstr ""
|
4106 |
|
4123 |
msgstr ""
|
4124 |
|
4125 |
#: includes/extend/buddypress/groups.php:379
|
4126 |
+
msgid "<strong>Error</strong>: Forum ID is invalid."
|
4127 |
msgstr ""
|
4128 |
|
4129 |
#: includes/extend/buddypress/groups.php:442
|
4130 |
+
msgid "<strong>Error</strong>: Reply To is invalid."
|
4131 |
msgstr ""
|
4132 |
|
4133 |
#: includes/extend/buddypress/groups.php:467
|
4165 |
|
4166 |
#: includes/extend/buddypress/groups.php:531
|
4167 |
#: includes/extend/buddypress/groups.php:688
|
4168 |
+
#: includes/extend/buddypress/notifications.php:199
|
4169 |
#: includes/forums/functions.php:126 includes/forums/functions.php:393
|
4170 |
+
#: includes/replies/functions.php:134 includes/replies/functions.php:527
|
4171 |
+
#: includes/replies/functions.php:1246 includes/topics/functions.php:105
|
4172 |
+
#: includes/topics/functions.php:468 includes/topics/functions.php:1091
|
4173 |
+
#: includes/topics/functions.php:1366 includes/topics/functions.php:1702
|
4174 |
+
#: includes/topics/functions.php:1746 includes/topics/functions.php:1807
|
4175 |
#: includes/users/engagements.php:612 includes/users/engagements.php:853
|
4176 |
#: includes/users/functions.php:196 includes/users/functions.php:202
|
4177 |
#: includes/users/functions.php:380
|
4178 |
+
msgid "<strong>Error</strong>: Are you sure you wanted to do that?"
|
4179 |
msgstr ""
|
4180 |
|
4181 |
#: includes/extend/buddypress/groups.php:668
|
4200 |
msgstr ""
|
4201 |
|
4202 |
#: includes/extend/buddypress/notifications.php:95
|
4203 |
+
msgid "You have %1$d new reply to %2$s from %3$s"
|
4204 |
msgstr ""
|
4205 |
|
4206 |
#: includes/extend/buddypress/notifications.php:96
|
4207 |
+
msgid "You have %1$d new reply to %2$s"
|
4208 |
msgstr ""
|
4209 |
|
4210 |
#: includes/extend/buddypress/notifications.php:101
|
4211 |
msgid "Topic Replies"
|
4212 |
msgstr ""
|
4213 |
|
4214 |
+
#: includes/extend/buddypress/notifications.php:203
|
4215 |
msgid ""
|
4216 |
+
"<strong>Error</strong>: You do not have permission to mark notifications "
|
4217 |
"for that user."
|
4218 |
msgstr ""
|
4219 |
|
4220 |
#: includes/forums/functions.php:140
|
4221 |
+
msgid "<strong>Error</strong>: You do not have permission to create new forums."
|
4222 |
msgstr ""
|
4223 |
|
4224 |
#: includes/forums/functions.php:165 includes/forums/functions.php:454
|
4225 |
+
msgid "<strong>Error</strong>: Your forum needs a title."
|
4226 |
msgstr ""
|
4227 |
|
4228 |
#: includes/forums/functions.php:170 includes/forums/functions.php:459
|
4229 |
+
#: includes/replies/functions.php:284 includes/replies/functions.php:611
|
4230 |
#: includes/topics/functions.php:163 includes/topics/functions.php:535
|
4231 |
+
msgid "<strong>Error</strong>: Your title is too long."
|
4232 |
msgstr ""
|
4233 |
|
4234 |
#: includes/forums/functions.php:184 includes/forums/functions.php:473
|
4235 |
+
msgid "<strong>Error</strong>: Your forum description cannot be empty."
|
4236 |
msgstr ""
|
4237 |
|
4238 |
#: includes/forums/functions.php:199
|
4239 |
+
msgid "<strong>Error</strong>: Your forum must have a parent."
|
4240 |
msgstr ""
|
4241 |
|
4242 |
#: includes/forums/functions.php:206
|
4243 |
msgid ""
|
4244 |
+
"<strong>Error</strong>: This forum is a category. No forums can be created "
|
4245 |
"in this forum."
|
4246 |
msgstr ""
|
4247 |
|
4248 |
#: includes/forums/functions.php:211 includes/forums/functions.php:429
|
4249 |
+
msgid "<strong>Error</strong>: This forum has been closed to new forums."
|
4250 |
msgstr ""
|
4251 |
|
4252 |
#: includes/forums/functions.php:216 includes/forums/functions.php:434
|
4253 |
msgid ""
|
4254 |
+
"<strong>Error</strong>: This forum is private and you do not have the "
|
4255 |
"capability to read or create new forums in it."
|
4256 |
msgstr ""
|
4257 |
|
4258 |
#: includes/forums/functions.php:221 includes/forums/functions.php:439
|
4259 |
msgid ""
|
4260 |
+
"<strong>Error</strong>: This forum is hidden and you do not have the "
|
4261 |
"capability to read or create new forums in it."
|
4262 |
msgstr ""
|
4263 |
|
4264 |
#: includes/forums/functions.php:228 includes/replies/functions.php:304
|
4265 |
#: includes/topics/functions.php:247
|
4266 |
+
msgid "<strong>Error</strong>: Slow down; you move too fast."
|
4267 |
msgstr ""
|
4268 |
|
4269 |
#: includes/forums/functions.php:234
|
4270 |
+
msgid "<strong>Error</strong>: This forum already exists."
|
4271 |
msgstr ""
|
4272 |
|
4273 |
#: includes/forums/functions.php:240
|
4274 |
+
msgid "<strong>Error</strong>: Your forum cannot be created at this time."
|
4275 |
msgstr ""
|
4276 |
|
4277 |
+
#: includes/forums/functions.php:353 includes/replies/functions.php:484
|
4278 |
#: includes/topics/functions.php:400
|
4279 |
+
msgid "<strong>Error</strong>: The following problem(s) occurred: %s"
|
4280 |
msgstr ""
|
4281 |
|
4282 |
#: includes/forums/functions.php:357
|
4283 |
+
msgid "<strong>Error</strong>: The forum was not created."
|
4284 |
msgstr ""
|
4285 |
|
4286 |
#: includes/forums/functions.php:382
|
4287 |
+
msgid "<strong>Error</strong>: Forum ID not found."
|
4288 |
msgstr ""
|
4289 |
|
4290 |
#: includes/forums/functions.php:398
|
4291 |
+
msgid "<strong>Error</strong>: The forum you want to edit was not found."
|
4292 |
msgstr ""
|
4293 |
|
4294 |
#: includes/forums/functions.php:403
|
4295 |
+
msgid "<strong>Error</strong>: You do not have permission to edit that forum."
|
4296 |
msgstr ""
|
4297 |
|
4298 |
#: includes/forums/functions.php:479
|
4299 |
+
msgid "<strong>Error</strong>: Your forum cannot be edited at this time."
|
4300 |
msgstr ""
|
4301 |
|
4302 |
#: includes/forums/template.php:52 includes/replies/template.php:53
|
4389 |
msgstr ""
|
4390 |
|
4391 |
#: includes/forums/template.php:833 includes/topics/template.php:1781
|
4392 |
+
#: includes/users/template.php:1279
|
4393 |
msgid "Subscribe"
|
4394 |
msgstr ""
|
4395 |
|
4396 |
#: includes/forums/template.php:834 includes/topics/template.php:1782
|
4397 |
+
#: includes/users/template.php:1280
|
4398 |
msgid "Unsubscribe"
|
4399 |
msgstr ""
|
4400 |
|
4453 |
msgstr ""
|
4454 |
|
4455 |
#: includes/replies/functions.php:159
|
4456 |
+
msgid "<strong>Error</strong>: You do not have permission to reply."
|
4457 |
msgstr ""
|
4458 |
|
4459 |
#: includes/replies/functions.php:170
|
4460 |
+
msgid "<strong>Error</strong>: Topic ID is missing."
|
4461 |
msgstr ""
|
4462 |
|
4463 |
#: includes/replies/functions.php:174
|
4464 |
+
msgid "<strong>Error</strong>: Topic ID must be a number."
|
4465 |
msgstr ""
|
4466 |
|
4467 |
#: includes/replies/functions.php:184
|
4468 |
+
msgid "<strong>Error</strong>: Topic ID cannot be a negative number."
|
4469 |
msgstr ""
|
4470 |
|
4471 |
#: includes/replies/functions.php:188
|
4472 |
+
msgid "<strong>Error</strong>: Topic does not exist."
|
4473 |
msgstr ""
|
4474 |
|
4475 |
#: includes/replies/functions.php:207 includes/replies/functions.php:221
|
4476 |
#: includes/topics/functions.php:187 includes/topics/functions.php:201
|
4477 |
#: includes/topics/functions.php:483
|
4478 |
+
msgid "<strong>Error</strong>: Forum ID is missing."
|
4479 |
msgstr ""
|
4480 |
|
4481 |
#: includes/replies/functions.php:211 includes/topics/functions.php:191
|
4482 |
+
msgid "<strong>Error</strong>: Forum ID must be a number."
|
4483 |
msgstr ""
|
4484 |
|
4485 |
#: includes/replies/functions.php:225 includes/topics/functions.php:205
|
4486 |
+
msgid "<strong>Error</strong>: Forum ID cannot be a negative number."
|
4487 |
msgstr ""
|
4488 |
|
4489 |
#: includes/replies/functions.php:229 includes/topics/functions.php:209
|
4490 |
+
msgid "<strong>Error</strong>: Forum does not exist."
|
4491 |
msgstr ""
|
4492 |
|
4493 |
+
#: includes/replies/functions.php:243 includes/replies/functions.php:579
|
4494 |
msgid ""
|
4495 |
+
"<strong>Error</strong>: This forum is a category. No replies can be created "
|
4496 |
"in this forum."
|
4497 |
msgstr ""
|
4498 |
|
4499 |
+
#: includes/replies/functions.php:250 includes/replies/functions.php:586
|
4500 |
+
msgid "<strong>Error</strong>: This forum has been closed to new replies."
|
4501 |
msgstr ""
|
4502 |
|
4503 |
+
#: includes/replies/functions.php:255 includes/replies/functions.php:591
|
4504 |
msgid ""
|
4505 |
+
"<strong>Error</strong>: This forum is private and you do not have the "
|
4506 |
"capability to read or create new replies in it."
|
4507 |
msgstr ""
|
4508 |
|
4509 |
+
#: includes/replies/functions.php:259 includes/replies/functions.php:595
|
4510 |
msgid ""
|
4511 |
+
"<strong>Error</strong>: This forum is hidden and you do not have the "
|
4512 |
"capability to read or create new replies in it."
|
4513 |
msgstr ""
|
4514 |
|
4515 |
+
#: includes/replies/functions.php:298 includes/replies/functions.php:625
|
4516 |
+
msgid "<strong>Error</strong>: Your reply cannot be empty."
|
4517 |
msgstr ""
|
4518 |
|
4519 |
#: includes/replies/functions.php:310
|
4520 |
msgid ""
|
4521 |
+
"<strong>Error</strong>: Duplicate reply detected; it looks as though "
|
4522 |
"you’ve already said that."
|
4523 |
msgstr ""
|
4524 |
|
4525 |
#: includes/replies/functions.php:316
|
4526 |
+
msgid "<strong>Error</strong>: Your reply cannot be created at this time."
|
4527 |
msgstr ""
|
4528 |
|
4529 |
#: includes/replies/functions.php:341
|
4530 |
+
msgid "<strong>Error</strong>: Topic is closed."
|
4531 |
msgstr ""
|
4532 |
|
4533 |
+
#: includes/replies/functions.php:401 includes/replies/functions.php:721
|
4534 |
+
msgid "<strong>Error</strong>: There was a problem adding the tags to the topic."
|
4535 |
msgstr ""
|
4536 |
|
4537 |
+
#: includes/replies/functions.php:488
|
4538 |
+
msgid "<strong>Error</strong>: The reply was not created."
|
4539 |
msgstr ""
|
4540 |
|
4541 |
+
#: includes/replies/functions.php:516
|
4542 |
+
msgid "<strong>Error</strong>: Reply ID not found."
|
4543 |
msgstr ""
|
4544 |
|
4545 |
+
#: includes/replies/functions.php:533
|
4546 |
+
msgid "<strong>Error</strong>: The reply you want to edit was not found."
|
4547 |
msgstr ""
|
4548 |
|
4549 |
+
#: includes/replies/functions.php:544
|
4550 |
+
msgid "<strong>Error</strong>: You do not have permission to edit that reply."
|
4551 |
msgstr ""
|
4552 |
|
4553 |
+
#: includes/replies/functions.php:631
|
4554 |
+
msgid "<strong>Error</strong>: Your reply cannot be edited at this time."
|
4555 |
msgstr ""
|
4556 |
|
4557 |
+
#: includes/replies/functions.php:1222
|
4558 |
+
msgid "<strong>Error</strong>: A reply ID is required"
|
4559 |
msgstr ""
|
4560 |
|
4561 |
+
#: includes/replies/functions.php:1231
|
4562 |
+
msgid "<strong>Error</strong>: The reply you want to move was not found."
|
4563 |
msgstr ""
|
4564 |
|
4565 |
+
#: includes/replies/functions.php:1241
|
4566 |
+
msgid "<strong>Error</strong>: The topic you want to move from was not found."
|
4567 |
msgstr ""
|
4568 |
|
4569 |
+
#: includes/replies/functions.php:1252 includes/topics/functions.php:1102
|
4570 |
+
#: includes/topics/functions.php:1372
|
4571 |
+
msgid "<strong>Error</strong>: You do not have permission to edit the source topic."
|
4572 |
msgstr ""
|
4573 |
|
4574 |
+
#: includes/replies/functions.php:1262
|
4575 |
+
msgid "<strong>Error</strong>: You need to choose a valid move option."
|
4576 |
msgstr ""
|
4577 |
|
4578 |
+
#: includes/replies/functions.php:1275 includes/topics/functions.php:1395
|
4579 |
+
msgid "<strong>Error</strong>: A topic ID is required."
|
4580 |
msgstr ""
|
4581 |
|
4582 |
+
#: includes/replies/functions.php:1285
|
4583 |
+
msgid "<strong>Error</strong>: The topic you want to move to was not found."
|
4584 |
msgstr ""
|
4585 |
|
4586 |
+
#: includes/replies/functions.php:1290 includes/topics/functions.php:1122
|
4587 |
+
#: includes/topics/functions.php:1410
|
4588 |
msgid ""
|
4589 |
+
"<strong>Error</strong>: You do not have permission to edit the destination "
|
4590 |
"topic."
|
4591 |
msgstr ""
|
4592 |
|
4593 |
+
#: includes/replies/functions.php:1344 includes/topics/functions.php:1448
|
4594 |
msgid ""
|
4595 |
+
"<strong>Error</strong>: There was a problem converting the reply into the "
|
4596 |
"topic. Please try again."
|
4597 |
msgstr ""
|
4598 |
|
4599 |
+
#: includes/replies/functions.php:1349 includes/topics/functions.php:1453
|
4600 |
msgid ""
|
4601 |
+
"<strong>Error</strong>: You do not have permission to create new topics. "
|
4602 |
"The reply could not be converted into a topic."
|
4603 |
msgstr ""
|
4604 |
|
4605 |
+
#: includes/replies/functions.php:1497
|
4606 |
+
msgid "<strong>Error</strong>: This reply could not be found or no longer exists."
|
|
|
|
|
|
|
|
|
4607 |
msgstr ""
|
4608 |
|
4609 |
+
#: includes/replies/functions.php:1503 includes/topics/functions.php:2024
|
4610 |
+
msgid "<strong>Error</strong>: You do not have permission to do that."
|
4611 |
msgstr ""
|
4612 |
|
4613 |
+
#: includes/replies/functions.php:1579
|
4614 |
+
msgid "<strong>Error</strong>: There was a problem approving the reply."
|
4615 |
msgstr ""
|
4616 |
|
4617 |
+
#: includes/replies/functions.php:1579
|
4618 |
+
msgid "<strong>Error</strong>: There was a problem unapproving the reply."
|
4619 |
msgstr ""
|
4620 |
|
4621 |
+
#: includes/replies/functions.php:1590
|
4622 |
+
msgid "<strong>Error</strong>: There was a problem unmarking the reply as spam."
|
4623 |
msgstr ""
|
4624 |
|
4625 |
+
#: includes/replies/functions.php:1590
|
4626 |
+
msgid "<strong>Error</strong>: There was a problem marking the reply as spam."
|
4627 |
msgstr ""
|
4628 |
|
4629 |
#: includes/replies/functions.php:1605
|
4630 |
+
msgid "<strong>Error</strong>: There was a problem trashing the reply."
|
4631 |
msgstr ""
|
4632 |
|
4633 |
#: includes/replies/functions.php:1613
|
4634 |
+
msgid "<strong>Error</strong>: There was a problem untrashing the reply."
|
4635 |
msgstr ""
|
4636 |
|
4637 |
+
#: includes/replies/functions.php:1621
|
4638 |
+
msgid "<strong>Error</strong>: There was a problem deleting the reply."
|
4639 |
+
msgstr ""
|
4640 |
+
|
4641 |
+
#: includes/replies/functions.php:2134
|
4642 |
msgid "All Posts"
|
4643 |
msgstr ""
|
4644 |
|
4645 |
+
#: includes/replies/functions.php:2180 includes/topics/functions.php:3800
|
4646 |
msgid "Replies: %s"
|
4647 |
msgstr ""
|
4648 |
|
4738 |
msgid "Reply scheduled."
|
4739 |
msgstr ""
|
4740 |
|
4741 |
+
#: includes/replies/template.php:552
|
4742 |
#: templates/default/bbpress/form-reply.php:30
|
4743 |
msgid "Reply To: %s"
|
4744 |
msgstr ""
|
4745 |
|
4746 |
+
#: includes/replies/template.php:764
|
4747 |
msgid "This reply was modified %1$s by %2$s. Reason: %3$s"
|
4748 |
msgstr ""
|
4749 |
|
4750 |
+
#: includes/replies/template.php:766
|
4751 |
msgid "This reply was modified %1$s by %2$s."
|
4752 |
msgstr ""
|
4753 |
|
4754 |
+
#: includes/replies/template.php:1196 includes/topics/template.php:1429
|
4755 |
+
#: includes/users/template.php:2005
|
4756 |
msgid "View %s's profile"
|
4757 |
msgstr ""
|
4758 |
|
4759 |
+
#: includes/replies/template.php:1197 includes/topics/template.php:1430
|
4760 |
+
#: includes/users/template.php:2006
|
4761 |
msgid "Visit %s's website"
|
4762 |
msgstr ""
|
4763 |
|
4764 |
+
#: includes/replies/template.php:1653
|
4765 |
#: templates/default/bbpress/form-user-passwords.php:31
|
4766 |
msgid "Cancel"
|
4767 |
msgstr ""
|
4768 |
|
4769 |
+
#: includes/replies/template.php:1963 includes/topics/template.php:2517
|
4770 |
#: templates/default/bbpress/form-topic-tag.php:100
|
4771 |
#: templates/default/bbpress/form-topic-tag.php:117
|
4772 |
msgid "Delete"
|
4773 |
msgstr ""
|
4774 |
|
4775 |
+
#: includes/replies/template.php:1988 includes/topics/template.php:2538
|
4776 |
msgid "Are you sure you want to delete that permanently?"
|
4777 |
msgstr ""
|
4778 |
|
4779 |
+
#: includes/replies/template.php:2085
|
4780 |
msgid "Move"
|
4781 |
msgstr ""
|
4782 |
|
4783 |
+
#: includes/replies/template.php:2086
|
4784 |
msgid "Move this reply"
|
4785 |
msgstr ""
|
4786 |
|
4787 |
+
#: includes/replies/template.php:2144
|
4788 |
msgid "Split"
|
4789 |
msgstr ""
|
4790 |
|
4791 |
+
#: includes/replies/template.php:2145
|
4792 |
msgid "Split the topic from this reply"
|
4793 |
msgstr ""
|
4794 |
|
4795 |
+
#: includes/replies/template.php:2379
|
4796 |
msgid "Viewing %1$s reply thread"
|
4797 |
msgid_plural "Viewing %1$s reply threads"
|
4798 |
msgstr[0] ""
|
4799 |
msgstr[1] ""
|
4800 |
|
4801 |
+
#: includes/replies/template.php:2386
|
4802 |
msgid "Viewing %1$s reply"
|
4803 |
msgid_plural "Viewing %1$s replies"
|
4804 |
msgstr[0] ""
|
4805 |
msgstr[1] ""
|
4806 |
|
4807 |
+
#: includes/replies/template.php:2390
|
4808 |
msgid "Viewing %2$s replies (of %4$s total)"
|
4809 |
msgid_plural "Viewing %1$s replies - %2$s through %3$s (of %4$s total)"
|
4810 |
msgstr[0] ""
|
4811 |
msgstr[1] ""
|
4812 |
|
4813 |
+
#: includes/replies/template.php:2398
|
4814 |
msgid "Viewing %1$s post"
|
4815 |
msgid_plural "Viewing %1$s posts"
|
4816 |
msgstr[0] ""
|
4817 |
msgstr[1] ""
|
4818 |
|
4819 |
+
#: includes/replies/template.php:2402
|
4820 |
msgid "Viewing %2$s post (of %4$s total)"
|
4821 |
msgid_plural "Viewing %1$s posts - %2$s through %3$s (of %4$s total)"
|
4822 |
msgstr[0] ""
|
4839 |
msgstr[1] ""
|
4840 |
|
4841 |
#: includes/topics/functions.php:132
|
4842 |
+
msgid "<strong>Error</strong>: You do not have permission to create new topics."
|
4843 |
msgstr ""
|
4844 |
|
4845 |
#: includes/topics/functions.php:158 includes/topics/functions.php:530
|
4846 |
+
msgid "<strong>Error</strong>: Your topic needs a title."
|
4847 |
msgstr ""
|
4848 |
|
4849 |
#: includes/topics/functions.php:177 includes/topics/functions.php:549
|
4850 |
+
msgid "<strong>Error</strong>: Your topic cannot be empty."
|
4851 |
msgstr ""
|
4852 |
|
4853 |
#: includes/topics/functions.php:223
|
4854 |
msgid ""
|
4855 |
+
"<strong>Error</strong>: This forum is a category. No topics can be created "
|
4856 |
"in this forum."
|
4857 |
msgstr ""
|
4858 |
|
4859 |
#: includes/topics/functions.php:230 includes/topics/functions.php:505
|
4860 |
+
msgid "<strong>Error</strong>: This forum has been closed to new topics."
|
4861 |
msgstr ""
|
4862 |
|
4863 |
#: includes/topics/functions.php:235 includes/topics/functions.php:510
|
4864 |
msgid ""
|
4865 |
+
"<strong>Error</strong>: This forum is private and you do not have the "
|
4866 |
"capability to read or create new topics in it."
|
4867 |
msgstr ""
|
4868 |
|
4869 |
#: includes/topics/functions.php:239 includes/topics/functions.php:514
|
4870 |
msgid ""
|
4871 |
+
"<strong>Error</strong>: This forum is hidden and you do not have the "
|
4872 |
"capability to read or create new topics in it."
|
4873 |
msgstr ""
|
4874 |
|
4875 |
#: includes/topics/functions.php:253
|
4876 |
msgid ""
|
4877 |
+
"<strong>Error</strong>: Duplicate topic detected; it looks as though "
|
4878 |
"you’ve already said that."
|
4879 |
msgstr ""
|
4880 |
|
4881 |
#: includes/topics/functions.php:259
|
4882 |
+
msgid "<strong>Error</strong>: Your topic cannot be created at this time."
|
4883 |
msgstr ""
|
4884 |
|
4885 |
#: includes/topics/functions.php:404
|
4886 |
+
msgid "<strong>Error</strong>: The topic was not created."
|
4887 |
msgstr ""
|
4888 |
|
4889 |
+
#: includes/topics/functions.php:430 includes/topics/functions.php:1084
|
4890 |
+
msgid "<strong>Error</strong>: Topic ID not found."
|
4891 |
msgstr ""
|
4892 |
|
4893 |
#: includes/topics/functions.php:441
|
4894 |
+
msgid "<strong>Error</strong>: The topic you want to edit was not found."
|
4895 |
msgstr ""
|
4896 |
|
4897 |
#: includes/topics/functions.php:452
|
4898 |
+
msgid "<strong>Error</strong>: You do not have permission to edit that topic."
|
4899 |
msgstr ""
|
4900 |
|
4901 |
#: includes/topics/functions.php:498
|
4902 |
msgid ""
|
4903 |
+
"<strong>Error</strong>: This forum is a category. No topics can be created "
|
4904 |
"in it."
|
4905 |
msgstr ""
|
4906 |
|
4907 |
#: includes/topics/functions.php:555
|
4908 |
+
msgid "<strong>Error</strong>: Your topic cannot be edited at this time."
|
4909 |
msgstr ""
|
4910 |
|
4911 |
+
#: includes/topics/functions.php:1096
|
4912 |
+
msgid "<strong>Error</strong>: The topic you want to merge was not found."
|
4913 |
msgstr ""
|
4914 |
|
4915 |
+
#: includes/topics/functions.php:1110
|
4916 |
+
msgid "<strong>Error</strong>: Destination topic ID not found."
|
4917 |
msgstr ""
|
4918 |
|
4919 |
+
#: includes/topics/functions.php:1117
|
4920 |
+
msgid "<strong>Error</strong>: The topic you want to merge to was not found."
|
4921 |
msgstr ""
|
4922 |
|
4923 |
+
#: includes/topics/functions.php:1342
|
4924 |
+
msgid "<strong>Error</strong>: A reply ID is required."
|
4925 |
msgstr ""
|
4926 |
|
4927 |
+
#: includes/topics/functions.php:1351
|
4928 |
+
msgid "<strong>Error</strong>: The reply you want to split from was not found."
|
4929 |
msgstr ""
|
4930 |
|
4931 |
+
#: includes/topics/functions.php:1361
|
4932 |
+
msgid "<strong>Error</strong>: The topic you want to split was not found."
|
4933 |
msgstr ""
|
4934 |
|
4935 |
+
#: includes/topics/functions.php:1382
|
4936 |
+
msgid "<strong>Error</strong>: You need to choose a valid split option."
|
4937 |
msgstr ""
|
4938 |
|
4939 |
+
#: includes/topics/functions.php:1405
|
4940 |
+
msgid "<strong>Error</strong>: The topic you want to split to was not found."
|
4941 |
msgstr ""
|
4942 |
|
4943 |
+
#: includes/topics/functions.php:1690
|
4944 |
msgid ""
|
4945 |
+
"<strong>Error</strong>: The following problem(s) have been found while "
|
4946 |
"getting the tag: %s"
|
4947 |
msgstr ""
|
4948 |
|
4949 |
+
#: includes/topics/functions.php:1708 includes/topics/functions.php:1752
|
4950 |
+
msgid "<strong>Error</strong>: You do not have permission to edit the topic tags."
|
4951 |
msgstr ""
|
4952 |
|
4953 |
+
#: includes/topics/functions.php:1714 includes/topics/functions.php:1758
|
4954 |
+
msgid "<strong>Error</strong>: You need to enter a tag name."
|
4955 |
msgstr ""
|
4956 |
|
4957 |
+
#: includes/topics/functions.php:1729
|
4958 |
msgid ""
|
4959 |
+
"<strong>Error</strong>: The following problem(s) have been found while "
|
4960 |
"updating the tag: %s"
|
4961 |
msgstr ""
|
4962 |
|
4963 |
+
#: includes/topics/functions.php:1769 includes/topics/functions.php:1790
|
4964 |
msgid ""
|
4965 |
+
"<strong>Error</strong>: The following problem(s) have been found while "
|
4966 |
"merging the tags: %s"
|
4967 |
msgstr ""
|
4968 |
|
4969 |
+
#: includes/topics/functions.php:1778
|
4970 |
+
msgid "<strong>Error</strong>: The tags which are being merged can not be the same."
|
4971 |
msgstr ""
|
4972 |
|
4973 |
+
#: includes/topics/functions.php:1813
|
4974 |
+
msgid "<strong>Error</strong>: You do not have permission to delete the topic tags."
|
4975 |
msgstr ""
|
4976 |
|
4977 |
+
#: includes/topics/functions.php:1822
|
4978 |
msgid ""
|
4979 |
+
"<strong>Error</strong>: The following problem(s) have been found while "
|
4980 |
"deleting the tag: %s"
|
4981 |
msgstr ""
|
4982 |
|
4983 |
+
#: includes/topics/functions.php:2018
|
4984 |
+
msgid "<strong>Error</strong>: This topic could not be found or no longer exists."
|
4985 |
+
msgstr ""
|
4986 |
+
|
4987 |
+
#: includes/topics/functions.php:2108
|
4988 |
+
msgid "<strong>Error</strong>: There was a problem approving the topic."
|
4989 |
msgstr ""
|
4990 |
|
4991 |
#: includes/topics/functions.php:2109
|
4992 |
+
msgid "<strong>Error</strong>: There was a problem unapproving the topic."
|
4993 |
msgstr ""
|
4994 |
|
4995 |
+
#: includes/topics/functions.php:2126
|
4996 |
+
msgid "<strong>Error</strong>: There was a problem closing the topic."
|
4997 |
msgstr ""
|
4998 |
|
4999 |
#: includes/topics/functions.php:2127
|
5000 |
+
msgid "<strong>Error</strong>: There was a problem opening the topic."
|
5001 |
msgstr ""
|
5002 |
|
5003 |
+
#: includes/topics/functions.php:2145
|
5004 |
+
msgid "<strong>Error</strong>: There was a problem unsticking the topic."
|
5005 |
msgstr ""
|
5006 |
|
5007 |
#: includes/topics/functions.php:2146
|
5008 |
+
msgid "<strong>Error</strong>: There was a problem sticking the topic."
|
5009 |
msgstr ""
|
5010 |
|
5011 |
+
#: includes/topics/functions.php:2164
|
5012 |
+
msgid "<strong>Error</strong>: There was a problem unmarking the topic as spam."
|
5013 |
msgstr ""
|
5014 |
|
5015 |
#: includes/topics/functions.php:2165
|
5016 |
+
msgid "<strong>Error</strong>: There was a problem marking the topic as spam."
|
|
|
|
|
|
|
|
|
5017 |
msgstr ""
|
5018 |
|
5019 |
+
#: includes/topics/functions.php:2178
|
5020 |
+
msgid "<strong>Error</strong>: There was a problem trashing the topic."
|
5021 |
msgstr ""
|
5022 |
|
5023 |
+
#: includes/topics/functions.php:2189
|
5024 |
+
msgid "<strong>Error</strong>: There was a problem untrashing the topic."
|
5025 |
msgstr ""
|
5026 |
|
5027 |
+
#: includes/topics/functions.php:2198
|
5028 |
+
msgid "<strong>Error</strong>: There was a problem deleting the topic."
|
5029 |
msgstr ""
|
5030 |
|
5031 |
#: includes/topics/template.php:52 templates/default/bbpress/form-topic.php:48
|
5124 |
msgid "This topic was modified %1$s by %2$s."
|
5125 |
msgstr ""
|
5126 |
|
5127 |
+
#: includes/topics/template.php:1829 includes/users/template.php:1081
|
5128 |
msgid "Favorite"
|
5129 |
msgstr ""
|
5130 |
|
5131 |
+
#: includes/topics/template.php:1830 includes/users/template.php:1082
|
5132 |
msgid "Unfavorite"
|
5133 |
msgstr ""
|
5134 |
|
5142 |
msgid "Merge"
|
5143 |
msgstr ""
|
5144 |
|
5145 |
+
#: includes/topics/template.php:2995
|
5146 |
msgid "Viewing %1$s topic"
|
5147 |
msgid_plural "Viewing %1$s topics"
|
5148 |
msgstr[0] ""
|
5149 |
msgstr[1] ""
|
5150 |
|
5151 |
+
#: includes/topics/template.php:2999
|
5152 |
msgid "Viewing topic %2$s (of %4$s total)"
|
5153 |
msgid_plural "Viewing %1$s topics - %2$s through %3$s (of %4$s total)"
|
5154 |
msgstr[0] ""
|
5155 |
msgstr[1] ""
|
5156 |
|
5157 |
+
#: includes/topics/template.php:3056
|
5158 |
msgid "This topic is marked as spam."
|
5159 |
msgstr ""
|
5160 |
|
5161 |
+
#: includes/topics/template.php:3061
|
5162 |
msgid "This topic is in the trash."
|
5163 |
msgstr ""
|
5164 |
|
5165 |
+
#: includes/topics/template.php:3066 includes/topics/template.php:3334
|
5166 |
msgid "This topic is pending moderation."
|
5167 |
msgstr ""
|
5168 |
|
5169 |
+
#: includes/topics/template.php:3316
|
5170 |
msgid "%s voice"
|
5171 |
msgid_plural "%s voices"
|
5172 |
msgstr[0] ""
|
5173 |
msgstr[1] ""
|
5174 |
|
5175 |
+
#: includes/topics/template.php:3322
|
5176 |
msgid "This topic has %1$s, %2$s, and was last updated %3$s by %4$s."
|
5177 |
msgstr ""
|
5178 |
|
5179 |
+
#: includes/topics/template.php:3326
|
5180 |
msgid "This topic has %1$s and %2$s."
|
5181 |
msgstr ""
|
5182 |
|
5183 |
+
#: includes/topics/template.php:3330
|
5184 |
msgid "This topic has no replies."
|
5185 |
msgstr ""
|
5186 |
|
5187 |
+
#: includes/topics/template.php:3338
|
5188 |
msgid "This topic is empty."
|
5189 |
msgstr ""
|
5190 |
|
5191 |
+
#: includes/topics/template.php:3388
|
5192 |
msgid "Search Tags"
|
5193 |
msgstr ""
|
5194 |
|
5195 |
+
#: includes/topics/template.php:3389
|
5196 |
msgid "Popular Tags"
|
5197 |
msgstr ""
|
5198 |
|
5199 |
+
#: includes/topics/template.php:3390
|
5200 |
msgid "All Tags"
|
5201 |
msgstr ""
|
5202 |
|
5203 |
+
#: includes/topics/template.php:3391
|
5204 |
msgid "Parent Tag"
|
5205 |
msgstr ""
|
5206 |
|
5207 |
+
#: includes/topics/template.php:3392
|
5208 |
msgid "Parent Tag:"
|
5209 |
msgstr ""
|
5210 |
|
5211 |
+
#: includes/topics/template.php:3393
|
5212 |
msgid "Edit Tag"
|
5213 |
msgstr ""
|
5214 |
|
5215 |
+
#: includes/topics/template.php:3394
|
5216 |
msgid "View Topic Tag"
|
5217 |
msgstr ""
|
5218 |
|
5219 |
+
#: includes/topics/template.php:3395
|
5220 |
msgid "Update Tag"
|
5221 |
msgstr ""
|
5222 |
|
5223 |
+
#: includes/topics/template.php:3396
|
5224 |
msgid "Add New Tag"
|
5225 |
msgstr ""
|
5226 |
|
5227 |
+
#: includes/topics/template.php:3397
|
5228 |
msgid "New Tag Name"
|
5229 |
msgstr ""
|
5230 |
|
5231 |
+
#: includes/topics/template.php:3398
|
5232 |
msgid "Separate topic tags with commas"
|
5233 |
msgstr ""
|
5234 |
|
5235 |
+
#: includes/topics/template.php:3399
|
5236 |
msgid "Add or remove tags"
|
5237 |
msgstr ""
|
5238 |
|
5239 |
+
#: includes/topics/template.php:3400
|
5240 |
msgid "Choose from the most used tags"
|
5241 |
msgstr ""
|
5242 |
|
5243 |
+
#: includes/topics/template.php:3401
|
5244 |
msgid "No topic tags found."
|
5245 |
msgstr ""
|
5246 |
|
5247 |
+
#: includes/topics/template.php:3402
|
5248 |
msgid "No topic tags"
|
5249 |
msgstr ""
|
5250 |
|
5251 |
+
#: includes/topics/template.php:3403
|
5252 |
msgid "Topic tags list navigation"
|
5253 |
msgstr ""
|
5254 |
|
5255 |
+
#: includes/topics/template.php:3404
|
5256 |
msgid "Topic tags list"
|
5257 |
msgstr ""
|
5258 |
|
5259 |
+
#: includes/topics/template.php:3405
|
5260 |
msgid "Most used topic tags"
|
5261 |
msgstr ""
|
5262 |
|
5263 |
+
#: includes/topics/template.php:3406
|
5264 |
msgid "← Back to Tags"
|
5265 |
msgstr ""
|
5266 |
|
5267 |
+
#: includes/topics/template.php:4021
|
5268 |
msgid "Nobody"
|
5269 |
msgstr ""
|
5270 |
|
5271 |
+
#: includes/topics/template.php:4025
|
5272 |
msgid "%1$s is currently editing this topic."
|
5273 |
msgstr ""
|
5274 |
|
5275 |
#: includes/users/engagements.php:608
|
5276 |
msgid ""
|
5277 |
+
"<strong>Error</strong>: No topic was found. Which topic are you "
|
5278 |
"marking/unmarking as favorite?"
|
5279 |
msgstr ""
|
5280 |
|
5281 |
#: includes/users/engagements.php:616
|
5282 |
msgid ""
|
5283 |
+
"<strong>Error</strong>: You do not have permission to edit favorites for "
|
5284 |
"that user."
|
5285 |
msgstr ""
|
5286 |
|
5287 |
#: includes/users/engagements.php:657
|
5288 |
msgid ""
|
5289 |
+
"<strong>Error</strong>: There was a problem removing that topic from "
|
5290 |
"favorites."
|
5291 |
msgstr ""
|
5292 |
|
5293 |
#: includes/users/engagements.php:659
|
5294 |
+
msgid "<strong>Error</strong>: There was a problem favoriting that topic."
|
5295 |
msgstr ""
|
5296 |
|
5297 |
#: includes/users/engagements.php:849
|
5298 |
msgid ""
|
5299 |
+
"<strong>Error</strong>: Not found. What are you subscribing/unsubscribing "
|
5300 |
"to?"
|
5301 |
msgstr ""
|
5302 |
|
5303 |
#: includes/users/engagements.php:857
|
5304 |
msgid ""
|
5305 |
+
"<strong>Error</strong>: You do not have permission to edit subscriptions of "
|
5306 |
"that user."
|
5307 |
msgstr ""
|
5308 |
|
5309 |
#: includes/users/engagements.php:900
|
5310 |
+
msgid "<strong>Error</strong>: There was a problem unsubscribing."
|
5311 |
msgstr ""
|
5312 |
|
5313 |
#: includes/users/engagements.php:902
|
5314 |
+
msgid "<strong>Error</strong>: There was a problem subscribing."
|
5315 |
msgstr ""
|
5316 |
|
5317 |
#: includes/users/functions.php:208 includes/users/functions.php:220
|
5318 |
+
msgid "<strong>Error</strong>: That is not a valid email address."
|
5319 |
msgstr ""
|
5320 |
|
5321 |
#: includes/users/functions.php:226 includes/users/functions.php:343
|
5322 |
+
msgid "<strong>Error</strong>: That email address is already in use."
|
5323 |
msgstr ""
|
5324 |
|
5325 |
#: includes/users/functions.php:406
|
5326 |
+
msgid "<strong>Error</strong>: An error occurred while updating your email address."
|
5327 |
msgstr ""
|
5328 |
|
5329 |
#: includes/users/functions.php:418
|
5350 |
msgstr ""
|
5351 |
|
5352 |
#: includes/users/signups.php:209
|
5353 |
+
msgid "<strong>Error</strong>: Empty role."
|
5354 |
msgstr ""
|
5355 |
|
5356 |
#: includes/users/signups.php:214
|
5357 |
+
msgid "<strong>Error</strong>: Invalid role."
|
5358 |
msgstr ""
|
5359 |
|
5360 |
+
#: includes/users/template.php:683
|
5361 |
msgid "Guest"
|
5362 |
msgstr ""
|
5363 |
|
5364 |
+
#: includes/users/template.php:687
|
5365 |
msgid "Inactive"
|
5366 |
msgstr ""
|
5367 |
|
5368 |
+
#: includes/users/template.php:697
|
5369 |
msgid "Member"
|
5370 |
msgstr ""
|
5371 |
|
5372 |
+
#: includes/users/template.php:738
|
5373 |
msgid "Admin"
|
5374 |
msgstr ""
|
5375 |
|
5376 |
+
#: includes/users/template.php:1375
|
5377 |
msgid "User updated."
|
5378 |
msgstr ""
|
5379 |
|
5380 |
+
#: includes/users/template.php:1419
|
5381 |
msgid "There is a pending email address change to %1$s. %2$s"
|
5382 |
msgstr ""
|
5383 |
|
5384 |
+
#: includes/users/template.php:1436
|
5385 |
msgid "You have super admin privileges."
|
5386 |
msgstr ""
|
5387 |
|
5388 |
+
#: includes/users/template.php:1436
|
5389 |
msgid "This user has super admin privileges."
|
5390 |
msgstr ""
|
5391 |
|
5392 |
+
#: includes/users/template.php:1510
|
5393 |
msgid "— No role for this site —"
|
5394 |
msgstr ""
|
5395 |
|
5396 |
+
#: includes/users/template.php:1830
|
5397 |
msgid "You are now logged out."
|
5398 |
msgstr ""
|
5399 |
|
5400 |
+
#: includes/users/template.php:1834
|
5401 |
msgid "New user registration is currently not allowed."
|
5402 |
msgstr ""
|
5403 |
|
5404 |
+
#: includes/users/template.php:1843
|
5405 |
msgid "Check your e-mail for the confirmation link."
|
5406 |
msgstr ""
|
5407 |
|
5408 |
+
#: includes/users/template.php:1848
|
5409 |
msgid "Check your e-mail for your new password."
|
5410 |
msgstr ""
|
5411 |
|
5412 |
+
#: includes/users/template.php:1853
|
5413 |
msgid "Registration complete. Please check your e-mail."
|
5414 |
msgstr ""
|
5415 |
|
5416 |
+
#: includes/users/template.php:2375
|
5417 |
msgid "Moderators:"
|
5418 |
msgstr ""
|
5419 |
|
6237 |
msgid "Open"
|
6238 |
msgstr ""
|
6239 |
|
6240 |
+
#: includes/common/formatting.php:728
|
6241 |
msgctxt "Separator in time since"
|
6242 |
msgid ","
|
6243 |
msgstr ""
|
6329 |
msgid "Hidden"
|
6330 |
msgstr ""
|
6331 |
|
6332 |
+
#: includes/replies/functions.php:1653
|
6333 |
msgctxt "Publish the reply"
|
6334 |
msgid "Publish"
|
6335 |
msgstr ""
|
6336 |
|
6337 |
+
#: includes/replies/functions.php:1654
|
6338 |
msgctxt "Spam the reply"
|
6339 |
msgid "Spam"
|
6340 |
msgstr ""
|
6341 |
|
6342 |
+
#: includes/replies/functions.php:1655
|
6343 |
msgctxt "Trash the reply"
|
6344 |
msgid "Trash"
|
6345 |
msgstr ""
|
6346 |
|
6347 |
+
#: includes/replies/functions.php:1656
|
6348 |
msgctxt "Mark reply as pending"
|
6349 |
msgid "Pending"
|
6350 |
msgstr ""
|
6351 |
|
6352 |
+
#: includes/replies/template.php:674 includes/topics/template.php:765
|
6353 |
msgctxt "date at time"
|
6354 |
msgid "%1$s at %2$s"
|
6355 |
msgstr ""
|
6356 |
|
6357 |
+
#: includes/replies/template.php:1580 includes/topics/template.php:2853
|
6358 |
msgctxt "verb"
|
6359 |
msgid "Reply"
|
6360 |
msgstr ""
|
6361 |
|
6362 |
+
#: includes/replies/template.php:2201
|
6363 |
msgctxt "Pending Status"
|
6364 |
msgid "Approve"
|
6365 |
msgstr ""
|
6366 |
|
6367 |
+
#: includes/replies/template.php:2202
|
6368 |
msgctxt "Pending Status"
|
6369 |
msgid "Unapprove"
|
6370 |
msgstr ""
|
6371 |
|
6372 |
+
#: includes/replies/template.php:2564
|
6373 |
msgctxt "Default reply to dropdown text"
|
6374 |
msgid "None"
|
6375 |
msgstr ""
|
6376 |
|
6377 |
+
#: includes/topics/functions.php:1857 includes/topics/template.php:2581
|
6378 |
msgctxt "Open the topic"
|
6379 |
msgid "Open"
|
6380 |
msgstr ""
|
6381 |
|
6382 |
+
#: includes/topics/functions.php:1858
|
6383 |
msgctxt "Close the topic"
|
6384 |
msgid "Closed"
|
6385 |
msgstr ""
|
6389 |
msgid "Close"
|
6390 |
msgstr ""
|
6391 |
|
6392 |
+
#: includes/topics/functions.php:1859
|
6393 |
msgctxt "Spam the topic"
|
6394 |
msgid "Spam"
|
6395 |
msgstr ""
|
6396 |
|
6397 |
+
#: includes/topics/functions.php:1860
|
6398 |
msgctxt "Trash the topic"
|
6399 |
msgid "Trash"
|
6400 |
msgstr ""
|
6401 |
|
6402 |
+
#: includes/topics/functions.php:1861
|
6403 |
msgctxt "Unapprove the topic"
|
6404 |
msgid "Pending"
|
6405 |
msgstr ""
|
6409 |
msgid "Unapprove"
|
6410 |
msgstr ""
|
6411 |
|
6412 |
+
#: includes/topics/functions.php:1878
|
6413 |
msgctxt "Unstick a topic"
|
6414 |
msgid "Normal"
|
6415 |
msgstr ""
|
6416 |
|
6417 |
+
#: includes/topics/functions.php:1879
|
6418 |
msgctxt "Make topic sticky"
|
6419 |
msgid "Sticky"
|
6420 |
msgstr ""
|
6421 |
|
6422 |
+
#: includes/topics/functions.php:1880
|
6423 |
msgctxt "Make topic super sticky"
|
6424 |
msgid "Super Sticky"
|
6425 |
msgstr ""
|
6429 |
msgid "Approve"
|
6430 |
msgstr ""
|
6431 |
|
6432 |
+
#: includes/users/template.php:1414
|
6433 |
msgctxt "Dismiss pending user email address change"
|
6434 |
msgid "Cancel"
|
6435 |
msgstr ""
|
includes/admin/actions.php
CHANGED
@@ -55,10 +55,12 @@ add_action( 'bbp_admin_init', 'bbp_register_admin_styles' );
|
|
55 |
add_action( 'bbp_admin_init', 'bbp_register_admin_scripts' );
|
56 |
add_action( 'bbp_admin_init', 'bbp_register_admin_settings' );
|
57 |
|
58 |
-
// Hook on to current_screen
|
59 |
-
|
60 |
-
add_action( 'bbp_current_screen', '
|
61 |
-
add_action( 'bbp_current_screen', '
|
|
|
|
|
62 |
|
63 |
// Initialize the admin area
|
64 |
add_action( 'bbp_init', 'bbp_setup_admin' );
|
55 |
add_action( 'bbp_admin_init', 'bbp_register_admin_scripts' );
|
56 |
add_action( 'bbp_admin_init', 'bbp_register_admin_settings' );
|
57 |
|
58 |
+
// Hook on to current_screen (only in Site admin, not Network or User)
|
59 |
+
if ( is_blog_admin() ) {
|
60 |
+
add_action( 'bbp_current_screen', 'bbp_admin_forums' );
|
61 |
+
add_action( 'bbp_current_screen', 'bbp_admin_topics' );
|
62 |
+
add_action( 'bbp_current_screen', 'bbp_admin_replies' );
|
63 |
+
}
|
64 |
|
65 |
// Initialize the admin area
|
66 |
add_action( 'bbp_init', 'bbp_setup_admin' );
|
includes/admin/tools/repair.php
CHANGED
@@ -425,7 +425,7 @@ function bbp_admin_repair_forum_reply_count() {
|
|
425 |
OR `postmeta`.`meta_key` = '_bbp_total_reply_count'";
|
426 |
|
427 |
if ( is_wp_error( $bbp_db->query( $sql_delete ) ) ) {
|
428 |
-
|
429 |
}
|
430 |
|
431 |
// Recalculate the metas key _bbp_reply_count and _bbp_total_reply_count for each forum
|
@@ -467,7 +467,7 @@ function bbp_admin_repair_forum_hidden_reply_count() {
|
|
467 |
OR `postmeta`.`meta_key` = '_bbp_total_reply_count_hidden'";
|
468 |
|
469 |
if ( is_wp_error( $bbp_db->query( $sql_delete ) ) ) {
|
470 |
-
|
471 |
}
|
472 |
|
473 |
// Recalculate the metas key _bbp_reply_count and _bbp_total_reply_count for each forum
|
@@ -991,8 +991,8 @@ function bbp_admin_repair_freshness() {
|
|
991 |
return array( 10, sprintf( $statement, $result ) );
|
992 |
}
|
993 |
|
994 |
-
|
995 |
-
|
996 |
if ( ! bbp_is_forum_category( $forum_id ) ) {
|
997 |
bbp_update_forum( array( 'forum_id' => $forum_id ) );
|
998 |
}
|
@@ -1106,7 +1106,7 @@ function bbp_admin_repair_closed_topics() {
|
|
1106 |
$topic_status = get_post_meta( $closed_topic, '_bbp_status', true );
|
1107 |
|
1108 |
// If we don't have a postmeta _bbp_status value
|
1109 |
-
if( empty( $topic_status ) ) {
|
1110 |
update_post_meta( $closed_topic, '_bbp_status', 'publish' );
|
1111 |
++$changed; // Keep a count to display at the end
|
1112 |
}
|
@@ -1163,6 +1163,7 @@ function bbp_admin_repair_forum_meta() {
|
|
1163 |
// Post types and status
|
1164 |
$tpt = bbp_get_topic_post_type();
|
1165 |
$rpt = bbp_get_reply_post_type();
|
|
|
1166 |
|
1167 |
// Next, give all the topics their parent forum id.
|
1168 |
if ( is_wp_error( $bbp_db->query( "INSERT INTO `{$bbp_db->postmeta}` (`post_id`, `meta_key`, `meta_value`)
|
@@ -1174,6 +1175,16 @@ function bbp_admin_repair_forum_meta() {
|
|
1174 |
return array( 2, sprintf( $statement, $result ) );
|
1175 |
}
|
1176 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1177 |
// Next, give all the replies their parent forum id.
|
1178 |
if ( is_wp_error( $bbp_db->query( "INSERT INTO `{$bbp_db->postmeta}` (`post_id`, `meta_key`, `meta_value`)
|
1179 |
( SELECT `reply`.`ID`, '_bbp_forum_id', `topic`.`post_parent`
|
425 |
OR `postmeta`.`meta_key` = '_bbp_total_reply_count'";
|
426 |
|
427 |
if ( is_wp_error( $bbp_db->query( $sql_delete ) ) ) {
|
428 |
+
return array( 1, sprintf( $statement, $result ) );
|
429 |
}
|
430 |
|
431 |
// Recalculate the metas key _bbp_reply_count and _bbp_total_reply_count for each forum
|
467 |
OR `postmeta`.`meta_key` = '_bbp_total_reply_count_hidden'";
|
468 |
|
469 |
if ( is_wp_error( $bbp_db->query( $sql_delete ) ) ) {
|
470 |
+
return array( 1, sprintf( $statement, $result ) );
|
471 |
}
|
472 |
|
473 |
// Recalculate the metas key _bbp_reply_count and _bbp_total_reply_count for each forum
|
991 |
return array( 10, sprintf( $statement, $result ) );
|
992 |
}
|
993 |
|
994 |
+
// Loop through forums
|
995 |
+
foreach ( $forums as $forum_id ) {
|
996 |
if ( ! bbp_is_forum_category( $forum_id ) ) {
|
997 |
bbp_update_forum( array( 'forum_id' => $forum_id ) );
|
998 |
}
|
1106 |
$topic_status = get_post_meta( $closed_topic, '_bbp_status', true );
|
1107 |
|
1108 |
// If we don't have a postmeta _bbp_status value
|
1109 |
+
if ( empty( $topic_status ) ) {
|
1110 |
update_post_meta( $closed_topic, '_bbp_status', 'publish' );
|
1111 |
++$changed; // Keep a count to display at the end
|
1112 |
}
|
1163 |
// Post types and status
|
1164 |
$tpt = bbp_get_topic_post_type();
|
1165 |
$rpt = bbp_get_reply_post_type();
|
1166 |
+
$fmt = bbp_get_forum_post_type();
|
1167 |
|
1168 |
// Next, give all the topics their parent forum id.
|
1169 |
if ( is_wp_error( $bbp_db->query( "INSERT INTO `{$bbp_db->postmeta}` (`post_id`, `meta_key`, `meta_value`)
|
1175 |
return array( 2, sprintf( $statement, $result ) );
|
1176 |
}
|
1177 |
|
1178 |
+
// Next, give all the forums their parent forum id.
|
1179 |
+
if ( is_wp_error( $bbp_db->query( "INSERT INTO `{$bbp_db->postmeta}` (`post_id`, `meta_key`, `meta_value`)
|
1180 |
+
( SELECT `forum`.`ID`, '_bbp_forum_id', `forum`.`post_parent`
|
1181 |
+
FROM `$bbp_db->posts`
|
1182 |
+
AS `forum`
|
1183 |
+
WHERE `forum`.`post_type` = '{$fmt}'
|
1184 |
+
GROUP BY `forum`.`ID` )" ) ) ) {
|
1185 |
+
return array( 2, sprintf( $statement, $result ) );
|
1186 |
+
}
|
1187 |
+
|
1188 |
// Next, give all the replies their parent forum id.
|
1189 |
if ( is_wp_error( $bbp_db->query( "INSERT INTO `{$bbp_db->postmeta}` (`post_id`, `meta_key`, `meta_value`)
|
1190 |
( SELECT `reply`.`ID`, '_bbp_forum_id', `topic`.`post_parent`
|
includes/admin/tools/upgrade.php
CHANGED
@@ -426,7 +426,7 @@ function bbp_admin_upgrade_user_favorites() {
|
|
426 |
foreach ( $post_ids as $post_id ) {
|
427 |
|
428 |
// Skip if already exists
|
429 |
-
if ( $bbp_db->get_var( $bbp_db->prepare( "SELECT COUNT(*) FROM {$bbp_db->postmeta} WHERE post_id = %d AND meta_key = %s AND meta_value = %
|
430 |
continue;
|
431 |
}
|
432 |
|
@@ -486,7 +486,7 @@ function bbp_admin_upgrade_user_topic_subscriptions() {
|
|
486 |
foreach ( $post_ids as $post_id ) {
|
487 |
|
488 |
// Skip if already exists
|
489 |
-
if ( $bbp_db->get_var( $bbp_db->prepare( "SELECT COUNT(*) FROM {$bbp_db->postmeta} WHERE post_id = %d AND meta_key = %s AND meta_value = %
|
490 |
continue;
|
491 |
}
|
492 |
|
@@ -546,7 +546,7 @@ function bbp_admin_upgrade_user_forum_subscriptions() {
|
|
546 |
foreach ( $post_ids as $post_id ) {
|
547 |
|
548 |
// Skip if already exists
|
549 |
-
if ( $bbp_db->get_var( $bbp_db->prepare( "SELECT COUNT(*) FROM {$bbp_db->postmeta} WHERE post_id = %d AND meta_key = %s AND meta_value = %
|
550 |
continue;
|
551 |
}
|
552 |
|
426 |
foreach ( $post_ids as $post_id ) {
|
427 |
|
428 |
// Skip if already exists
|
429 |
+
if ( $bbp_db->get_var( $bbp_db->prepare( "SELECT COUNT(*) FROM {$bbp_db->postmeta} WHERE post_id = %d AND meta_key = %s AND meta_value = %s", $post_id, $new_key, $meta->user_id ) ) ) {
|
430 |
continue;
|
431 |
}
|
432 |
|
486 |
foreach ( $post_ids as $post_id ) {
|
487 |
|
488 |
// Skip if already exists
|
489 |
+
if ( $bbp_db->get_var( $bbp_db->prepare( "SELECT COUNT(*) FROM {$bbp_db->postmeta} WHERE post_id = %d AND meta_key = %s AND meta_value = %s", $post_id, $new_key, $meta->user_id ) ) ) {
|
490 |
continue;
|
491 |
}
|
492 |
|
546 |
foreach ( $post_ids as $post_id ) {
|
547 |
|
548 |
// Skip if already exists
|
549 |
+
if ( $bbp_db->get_var( $bbp_db->prepare( "SELECT COUNT(*) FROM {$bbp_db->postmeta} WHERE post_id = %d AND meta_key = %s AND meta_value = %s", $post_id, $new_key, $meta->user_id ) ) ) {
|
550 |
continue;
|
551 |
}
|
552 |
|
includes/common/formatting.php
CHANGED
@@ -507,7 +507,7 @@ function bbp_make_mentions_clickable_callback( $matches = array() ) {
|
|
507 |
: '';
|
508 |
|
509 |
// Create the link to the user's profile
|
510 |
-
$html = '<a href="%1$s"' . $class . '
|
511 |
$url = bbp_get_user_profile_url( $user->ID );
|
512 |
$anchor = sprintf( $html, esc_url( $url ), esc_html( $matches[0] ) );
|
513 |
|
@@ -694,6 +694,10 @@ function bbp_time_since( $older_date, $newer_date = false, $gmt = false ) {
|
|
694 |
// so there's only two bits of calculation below:
|
695 |
} else {
|
696 |
|
|
|
|
|
|
|
|
|
697 |
// Step one: the first chunk
|
698 |
for ( $i = 0, $j = count( $chunks ); $i < $j; ++$i ) {
|
699 |
$seconds = $chunks[ $i ][0];
|
@@ -726,8 +730,8 @@ function bbp_time_since( $older_date, $newer_date = false, $gmt = false ) {
|
|
726 |
}
|
727 |
}
|
728 |
|
729 |
-
//
|
730 |
-
if (
|
731 |
$output = $right_now_text;
|
732 |
}
|
733 |
}
|
507 |
: '';
|
508 |
|
509 |
// Create the link to the user's profile
|
510 |
+
$html = '<a href="%1$s"' . $class . '>%2$s</a>';
|
511 |
$url = bbp_get_user_profile_url( $user->ID );
|
512 |
$anchor = sprintf( $html, esc_url( $url ), esc_html( $matches[0] ) );
|
513 |
|
694 |
// so there's only two bits of calculation below:
|
695 |
} else {
|
696 |
|
697 |
+
// Default count values
|
698 |
+
$count = 0;
|
699 |
+
$count2 = 0;
|
700 |
+
|
701 |
// Step one: the first chunk
|
702 |
for ( $i = 0, $j = count( $chunks ); $i < $j; ++$i ) {
|
703 |
$seconds = $chunks[ $i ][0];
|
730 |
}
|
731 |
}
|
732 |
|
733 |
+
// Empty counts, so fallback to right now
|
734 |
+
if ( empty( $count ) && empty( $count2 ) ) {
|
735 |
$output = $right_now_text;
|
736 |
}
|
737 |
}
|
includes/common/functions.php
CHANGED
@@ -553,13 +553,13 @@ function bbp_filter_anonymous_post_data( $args = array() ) {
|
|
553 |
// Filter name
|
554 |
$r['bbp_anonymous_name'] = apply_filters( 'bbp_pre_anonymous_post_author_name', $r['bbp_anonymous_name'] );
|
555 |
if ( empty( $r['bbp_anonymous_name'] ) ) {
|
556 |
-
bbp_add_error( 'bbp_anonymous_name', __( '<strong>
|
557 |
}
|
558 |
|
559 |
// Filter email address
|
560 |
$r['bbp_anonymous_email'] = apply_filters( 'bbp_pre_anonymous_post_author_email', $r['bbp_anonymous_email'] );
|
561 |
if ( empty( $r['bbp_anonymous_email'] ) ) {
|
562 |
-
bbp_add_error( 'bbp_anonymous_email', __( '<strong>
|
563 |
}
|
564 |
|
565 |
// Website is optional (can be empty)
|
@@ -1385,9 +1385,7 @@ function bbp_get_email_addresses_from_user_ids( $user_ids = array() ) {
|
|
1385 |
foreach ( $range as $loop ) {
|
1386 |
|
1387 |
// Initial loop has no offset
|
1388 |
-
$offset =
|
1389 |
-
? 0
|
1390 |
-
: $limit * $loop;
|
1391 |
|
1392 |
// Calculate user IDs to include
|
1393 |
$loop_ids = array_slice( $user_ids, $offset, $limit );
|
@@ -1738,7 +1736,7 @@ function bbp_get_child_counts( $parent_id = 0 ) {
|
|
1738 |
LEFT JOIN {$bbp_db->postmeta} AS pm
|
1739 |
ON p.ID = pm.post_id
|
1740 |
AND pm.meta_key = %s
|
1741 |
-
WHERE pm.meta_value = %
|
1742 |
GROUP BY p.post_status, p.post_type";
|
1743 |
|
1744 |
// Get prepare vars
|
553 |
// Filter name
|
554 |
$r['bbp_anonymous_name'] = apply_filters( 'bbp_pre_anonymous_post_author_name', $r['bbp_anonymous_name'] );
|
555 |
if ( empty( $r['bbp_anonymous_name'] ) ) {
|
556 |
+
bbp_add_error( 'bbp_anonymous_name', __( '<strong>Error</strong>: Invalid author name.', 'bbpress' ) );
|
557 |
}
|
558 |
|
559 |
// Filter email address
|
560 |
$r['bbp_anonymous_email'] = apply_filters( 'bbp_pre_anonymous_post_author_email', $r['bbp_anonymous_email'] );
|
561 |
if ( empty( $r['bbp_anonymous_email'] ) ) {
|
562 |
+
bbp_add_error( 'bbp_anonymous_email', __( '<strong>Error</strong>: Invalid email address.', 'bbpress' ) );
|
563 |
}
|
564 |
|
565 |
// Website is optional (can be empty)
|
1385 |
foreach ( $range as $loop ) {
|
1386 |
|
1387 |
// Initial loop has no offset
|
1388 |
+
$offset = $limit * ( $loop - 1 );
|
|
|
|
|
1389 |
|
1390 |
// Calculate user IDs to include
|
1391 |
$loop_ids = array_slice( $user_ids, $offset, $limit );
|
1736 |
LEFT JOIN {$bbp_db->postmeta} AS pm
|
1737 |
ON p.ID = pm.post_id
|
1738 |
AND pm.meta_key = %s
|
1739 |
+
WHERE pm.meta_value = %s
|
1740 |
GROUP BY p.post_status, p.post_type";
|
1741 |
|
1742 |
// Get prepare vars
|
includes/core/abstraction.php
CHANGED
@@ -475,3 +475,24 @@ function bbp_maybe_intercept( $action = '', $args = array() ) {
|
|
475 |
? $default
|
476 |
: $filtered;
|
477 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
475 |
? $default
|
476 |
: $filtered;
|
477 |
}
|
478 |
+
|
479 |
+
/** Date/Time *****************************************************************/
|
480 |
+
|
481 |
+
/**
|
482 |
+
* Get an empty datetime value.
|
483 |
+
*
|
484 |
+
* @since 2.6.6 bbPress (r7094)
|
485 |
+
*
|
486 |
+
* @return string
|
487 |
+
*/
|
488 |
+
function bbp_get_empty_datetime() {
|
489 |
+
|
490 |
+
// Get the database version
|
491 |
+
$db_version = bbp_db()->db_version();
|
492 |
+
|
493 |
+
// Default return value
|
494 |
+
$retval = '0000-00-00 00:00:00';
|
495 |
+
|
496 |
+
// Filter & return
|
497 |
+
return (string) apply_filters( 'bbp_get_default_zero_date', $retval, $db_version );
|
498 |
+
}
|
includes/core/filters.php
CHANGED
@@ -190,9 +190,20 @@ if ( is_admin() ) {
|
|
190 |
// Filters outside of wp-admin
|
191 |
} else {
|
192 |
|
193 |
-
//
|
194 |
-
|
195 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
196 |
|
197 |
// Revisions
|
198 |
add_filter( 'bbp_get_reply_content', 'bbp_reply_content_append_revisions', 99, 2 );
|
190 |
// Filters outside of wp-admin
|
191 |
} else {
|
192 |
|
193 |
+
// WordPress 5.5.x and above
|
194 |
+
if ( function_exists( 'wp_filter_content_tags' ) ) {
|
195 |
+
|
196 |
+
// Responsive images
|
197 |
+
add_filter( 'bbp_get_reply_content', 'wp_filter_content_tags', 60 );
|
198 |
+
add_filter( 'bbp_get_topic_content', 'wp_filter_content_tags', 60 );
|
199 |
+
|
200 |
+
// WordPress 5.4.x and below
|
201 |
+
} else {
|
202 |
+
|
203 |
+
// Responsive images
|
204 |
+
add_filter( 'bbp_get_reply_content', 'wp_make_content_images_responsive', 60 );
|
205 |
+
add_filter( 'bbp_get_topic_content', 'wp_make_content_images_responsive', 60 );
|
206 |
+
}
|
207 |
|
208 |
// Revisions
|
209 |
add_filter( 'bbp_get_reply_content', 'bbp_reply_content_append_revisions', 99, 2 );
|
includes/core/theme-compat.php
CHANGED
@@ -364,7 +364,9 @@ function bbp_theme_compat_reset_post( $args = array() ) {
|
|
364 |
|
365 |
// Switch defaults if post is set
|
366 |
if ( isset( $wp_query->post ) ) {
|
367 |
-
|
|
|
|
|
368 |
'ID' => $wp_query->post->ID,
|
369 |
'post_status' => $wp_query->post->post_status,
|
370 |
'post_author' => $wp_query->post->post_author,
|
@@ -395,18 +397,23 @@ function bbp_theme_compat_reset_post( $args = array() ) {
|
|
395 |
'is_single' => false,
|
396 |
'is_archive' => false,
|
397 |
'is_tax' => false
|
398 |
-
)
|
399 |
} else {
|
400 |
-
|
|
|
|
|
|
|
|
|
|
|
401 |
'ID' => -9999,
|
402 |
'post_status' => bbp_get_public_status_id(),
|
403 |
'post_author' => 0,
|
404 |
'post_parent' => 0,
|
405 |
'post_type' => 'page',
|
406 |
-
'post_date' =>
|
407 |
-
'post_date_gmt' =>
|
408 |
-
'post_modified' =>
|
409 |
-
'post_modified_gmt' =>
|
410 |
'post_content' => '',
|
411 |
'post_title' => '',
|
412 |
'post_excerpt' => '',
|
@@ -428,9 +435,12 @@ function bbp_theme_compat_reset_post( $args = array() ) {
|
|
428 |
'is_single' => false,
|
429 |
'is_archive' => false,
|
430 |
'is_tax' => false
|
431 |
-
)
|
432 |
}
|
433 |
|
|
|
|
|
|
|
434 |
// Bail if dummy post is empty
|
435 |
if ( empty( $dummy ) ) {
|
436 |
return;
|
@@ -510,7 +520,7 @@ function bbp_template_include_theme_compat( $template = '' ) {
|
|
510 |
bbp_theme_compat_reset_post( array(
|
511 |
'ID' => 0,
|
512 |
'post_author' => 0,
|
513 |
-
'post_date' =>
|
514 |
'post_content' => bbp_buffer_template_part( 'content', 'single-user', false ),
|
515 |
'post_type' => '',
|
516 |
'post_title' => bbp_get_displayed_user_field( 'display_name' ),
|
@@ -566,7 +576,7 @@ function bbp_template_include_theme_compat( $template = '' ) {
|
|
566 |
'ID' => ! empty( $page->ID ) ? $page->ID : 0,
|
567 |
'post_title' => $new_title,
|
568 |
'post_author' => 0,
|
569 |
-
'post_date' =>
|
570 |
'post_content' => $new_content,
|
571 |
'post_type' => bbp_get_forum_post_type(),
|
572 |
'post_status' => bbp_get_public_status_id(),
|
@@ -582,7 +592,7 @@ function bbp_template_include_theme_compat( $template = '' ) {
|
|
582 |
'ID' => bbp_get_forum_id(),
|
583 |
'post_title' => bbp_get_forum_title(),
|
584 |
'post_author' => bbp_get_forum_author_id(),
|
585 |
-
'post_date' =>
|
586 |
'post_content' => $bbp_shortcodes->display_forum_form(),
|
587 |
'post_type' => bbp_get_forum_post_type(),
|
588 |
'post_status' => bbp_get_forum_visibility(),
|
@@ -600,7 +610,7 @@ function bbp_template_include_theme_compat( $template = '' ) {
|
|
600 |
'ID' => bbp_get_forum_id(),
|
601 |
'post_title' => bbp_get_forum_title(),
|
602 |
'post_author' => bbp_get_forum_author_id(),
|
603 |
-
'post_date' =>
|
604 |
'post_content' => $bbp_shortcodes->display_forum( array( 'id' => bbp_get_forum_id() ) ),
|
605 |
'post_type' => bbp_get_forum_post_type(),
|
606 |
'post_status' => bbp_get_forum_visibility(),
|
@@ -639,7 +649,7 @@ function bbp_template_include_theme_compat( $template = '' ) {
|
|
639 |
'ID' => ! empty( $page->ID ) ? $page->ID : 0,
|
640 |
'post_title' => bbp_get_topic_archive_title(),
|
641 |
'post_author' => 0,
|
642 |
-
'post_date' =>
|
643 |
'post_content' => $new_content,
|
644 |
'post_type' => bbp_get_topic_post_type(),
|
645 |
'post_status' => bbp_get_public_status_id(),
|
@@ -675,7 +685,7 @@ function bbp_template_include_theme_compat( $template = '' ) {
|
|
675 |
'ID' => bbp_get_topic_id(),
|
676 |
'post_title' => bbp_get_topic_title(),
|
677 |
'post_author' => bbp_get_topic_author_id(),
|
678 |
-
'post_date' =>
|
679 |
'post_content' => $new_content,
|
680 |
'post_type' => bbp_get_topic_post_type(),
|
681 |
'post_status' => bbp_get_topic_status(),
|
@@ -693,7 +703,7 @@ function bbp_template_include_theme_compat( $template = '' ) {
|
|
693 |
'ID' => 0,
|
694 |
'post_title' => esc_html__( 'Replies', 'bbpress' ),
|
695 |
'post_author' => 0,
|
696 |
-
'post_date' =>
|
697 |
'post_content' => $bbp_shortcodes->display_reply_index(),
|
698 |
'post_type' => bbp_get_reply_post_type(),
|
699 |
'post_status' => bbp_get_public_status_id(),
|
@@ -725,7 +735,7 @@ function bbp_template_include_theme_compat( $template = '' ) {
|
|
725 |
'ID' => bbp_get_reply_id(),
|
726 |
'post_title' => bbp_get_reply_title(),
|
727 |
'post_author' => bbp_get_reply_author_id(),
|
728 |
-
'post_date' =>
|
729 |
'post_content' => $new_content,
|
730 |
'post_type' => bbp_get_reply_post_type(),
|
731 |
'post_status' => bbp_get_reply_status(),
|
@@ -742,7 +752,7 @@ function bbp_template_include_theme_compat( $template = '' ) {
|
|
742 |
'ID' => 0,
|
743 |
'post_title' => bbp_get_view_title(),
|
744 |
'post_author' => 0,
|
745 |
-
'post_date' =>
|
746 |
'post_content' => $bbp_shortcodes->display_view( array( 'id' => get_query_var( bbp_get_view_rewrite_id() ) ) ),
|
747 |
'post_type' => '',
|
748 |
'post_status' => bbp_get_public_status_id(),
|
@@ -759,7 +769,7 @@ function bbp_template_include_theme_compat( $template = '' ) {
|
|
759 |
'ID' => 0,
|
760 |
'post_title' => bbp_get_search_title(),
|
761 |
'post_author' => 0,
|
762 |
-
'post_date' =>
|
763 |
'post_content' => $bbp_shortcodes->display_search( array( 'search' => get_query_var( bbp_get_search_rewrite_id() ) ) ),
|
764 |
'post_type' => '',
|
765 |
'post_status' => bbp_get_public_status_id(),
|
@@ -788,7 +798,7 @@ function bbp_template_include_theme_compat( $template = '' ) {
|
|
788 |
bbp_theme_compat_reset_post( array(
|
789 |
'ID' => 0,
|
790 |
'post_author' => 0,
|
791 |
-
'post_date' =>
|
792 |
'post_content' => $new_content,
|
793 |
'post_type' => '',
|
794 |
'post_title' => sprintf( esc_html__( 'Topic Tag: %s', 'bbpress' ), bbp_get_topic_tag_name() ),
|
364 |
|
365 |
// Switch defaults if post is set
|
366 |
if ( isset( $wp_query->post ) ) {
|
367 |
+
|
368 |
+
// Use primarily Post attributes
|
369 |
+
$defaults = array(
|
370 |
'ID' => $wp_query->post->ID,
|
371 |
'post_status' => $wp_query->post->post_status,
|
372 |
'post_author' => $wp_query->post->post_author,
|
397 |
'is_single' => false,
|
398 |
'is_archive' => false,
|
399 |
'is_tax' => false
|
400 |
+
);
|
401 |
} else {
|
402 |
+
|
403 |
+
// Get the default zero date value a single time
|
404 |
+
$zero_date = bbp_get_empty_datetime();
|
405 |
+
|
406 |
+
// Use primarily empty attributes
|
407 |
+
$defaults = array(
|
408 |
'ID' => -9999,
|
409 |
'post_status' => bbp_get_public_status_id(),
|
410 |
'post_author' => 0,
|
411 |
'post_parent' => 0,
|
412 |
'post_type' => 'page',
|
413 |
+
'post_date' => $zero_date,
|
414 |
+
'post_date_gmt' => $zero_date,
|
415 |
+
'post_modified' => $zero_date,
|
416 |
+
'post_modified_gmt' => $zero_date,
|
417 |
'post_content' => '',
|
418 |
'post_title' => '',
|
419 |
'post_excerpt' => '',
|
435 |
'is_single' => false,
|
436 |
'is_archive' => false,
|
437 |
'is_tax' => false
|
438 |
+
);
|
439 |
}
|
440 |
|
441 |
+
// Parse & filter
|
442 |
+
$dummy = bbp_parse_args( $args, $defaults, 'theme_compat_reset_post' );
|
443 |
+
|
444 |
// Bail if dummy post is empty
|
445 |
if ( empty( $dummy ) ) {
|
446 |
return;
|
520 |
bbp_theme_compat_reset_post( array(
|
521 |
'ID' => 0,
|
522 |
'post_author' => 0,
|
523 |
+
'post_date' => bbp_get_empty_datetime(),
|
524 |
'post_content' => bbp_buffer_template_part( 'content', 'single-user', false ),
|
525 |
'post_type' => '',
|
526 |
'post_title' => bbp_get_displayed_user_field( 'display_name' ),
|
576 |
'ID' => ! empty( $page->ID ) ? $page->ID : 0,
|
577 |
'post_title' => $new_title,
|
578 |
'post_author' => 0,
|
579 |
+
'post_date' => bbp_get_empty_datetime(),
|
580 |
'post_content' => $new_content,
|
581 |
'post_type' => bbp_get_forum_post_type(),
|
582 |
'post_status' => bbp_get_public_status_id(),
|
592 |
'ID' => bbp_get_forum_id(),
|
593 |
'post_title' => bbp_get_forum_title(),
|
594 |
'post_author' => bbp_get_forum_author_id(),
|
595 |
+
'post_date' => bbp_get_empty_datetime(),
|
596 |
'post_content' => $bbp_shortcodes->display_forum_form(),
|
597 |
'post_type' => bbp_get_forum_post_type(),
|
598 |
'post_status' => bbp_get_forum_visibility(),
|
610 |
'ID' => bbp_get_forum_id(),
|
611 |
'post_title' => bbp_get_forum_title(),
|
612 |
'post_author' => bbp_get_forum_author_id(),
|
613 |
+
'post_date' => bbp_get_empty_datetime(),
|
614 |
'post_content' => $bbp_shortcodes->display_forum( array( 'id' => bbp_get_forum_id() ) ),
|
615 |
'post_type' => bbp_get_forum_post_type(),
|
616 |
'post_status' => bbp_get_forum_visibility(),
|
649 |
'ID' => ! empty( $page->ID ) ? $page->ID : 0,
|
650 |
'post_title' => bbp_get_topic_archive_title(),
|
651 |
'post_author' => 0,
|
652 |
+
'post_date' => bbp_get_empty_datetime(),
|
653 |
'post_content' => $new_content,
|
654 |
'post_type' => bbp_get_topic_post_type(),
|
655 |
'post_status' => bbp_get_public_status_id(),
|
685 |
'ID' => bbp_get_topic_id(),
|
686 |
'post_title' => bbp_get_topic_title(),
|
687 |
'post_author' => bbp_get_topic_author_id(),
|
688 |
+
'post_date' => bbp_get_empty_datetime(),
|
689 |
'post_content' => $new_content,
|
690 |
'post_type' => bbp_get_topic_post_type(),
|
691 |
'post_status' => bbp_get_topic_status(),
|
703 |
'ID' => 0,
|
704 |
'post_title' => esc_html__( 'Replies', 'bbpress' ),
|
705 |
'post_author' => 0,
|
706 |
+
'post_date' => bbp_get_empty_datetime(),
|
707 |
'post_content' => $bbp_shortcodes->display_reply_index(),
|
708 |
'post_type' => bbp_get_reply_post_type(),
|
709 |
'post_status' => bbp_get_public_status_id(),
|
735 |
'ID' => bbp_get_reply_id(),
|
736 |
'post_title' => bbp_get_reply_title(),
|
737 |
'post_author' => bbp_get_reply_author_id(),
|
738 |
+
'post_date' => bbp_get_empty_datetime(),
|
739 |
'post_content' => $new_content,
|
740 |
'post_type' => bbp_get_reply_post_type(),
|
741 |
'post_status' => bbp_get_reply_status(),
|
752 |
'ID' => 0,
|
753 |
'post_title' => bbp_get_view_title(),
|
754 |
'post_author' => 0,
|
755 |
+
'post_date' => bbp_get_empty_datetime(),
|
756 |
'post_content' => $bbp_shortcodes->display_view( array( 'id' => get_query_var( bbp_get_view_rewrite_id() ) ) ),
|
757 |
'post_type' => '',
|
758 |
'post_status' => bbp_get_public_status_id(),
|
769 |
'ID' => 0,
|
770 |
'post_title' => bbp_get_search_title(),
|
771 |
'post_author' => 0,
|
772 |
+
'post_date' => bbp_get_empty_datetime(),
|
773 |
'post_content' => $bbp_shortcodes->display_search( array( 'search' => get_query_var( bbp_get_search_rewrite_id() ) ) ),
|
774 |
'post_type' => '',
|
775 |
'post_status' => bbp_get_public_status_id(),
|
798 |
bbp_theme_compat_reset_post( array(
|
799 |
'ID' => 0,
|
800 |
'post_author' => 0,
|
801 |
+
'post_date' => bbp_get_empty_datetime(),
|
802 |
'post_content' => $new_content,
|
803 |
'post_type' => '',
|
804 |
'post_title' => sprintf( esc_html__( 'Topic Tag: %s', 'bbpress' ), bbp_get_topic_tag_name() ),
|
includes/extend/akismet.php
CHANGED
@@ -79,11 +79,11 @@ class BBP_Akismet {
|
|
79 |
*
|
80 |
* @since 2.0.0 bbPress (r3277)
|
81 |
*
|
82 |
-
* @param
|
83 |
*
|
84 |
* @return array Array of post data
|
85 |
*/
|
86 |
-
public function check_post( $post_data ) {
|
87 |
|
88 |
// Define local variables
|
89 |
$user_data = array();
|
@@ -110,7 +110,7 @@ class BBP_Akismet {
|
|
110 |
$anonymous_data = bbp_filter_anonymous_post_data();
|
111 |
|
112 |
// Author is anonymous
|
113 |
-
if ( !
|
114 |
$user_data['name'] = $anonymous_data['bbp_anonymous_name'];
|
115 |
$user_data['email'] = $anonymous_data['bbp_anonymous_email'];
|
116 |
$user_data['website'] = $anonymous_data['bbp_anonymous_website'];
|
@@ -165,20 +165,28 @@ class BBP_Akismet {
|
|
165 |
'user_role' => $this->get_user_roles( $post_data['post_author'] ),
|
166 |
) );
|
167 |
|
|
|
|
|
|
|
|
|
|
|
168 |
// Set the result (from maybe_spam() above)
|
169 |
$post_data['bbp_akismet_result'] = ! empty( $_post['bbp_akismet_result'] )
|
170 |
? $_post['bbp_akismet_result'] // raw
|
171 |
: esc_html__( 'No response', 'bbpress' );
|
172 |
|
173 |
-
//
|
174 |
-
unset(
|
|
|
|
|
|
|
175 |
$post_data['bbp_post_as_submitted'] = $_post;
|
176 |
|
177 |
// Cleanup to avoid touching this variable again below
|
178 |
unset( $_post );
|
179 |
|
180 |
// Allow post_data to be manipulated
|
181 |
-
|
182 |
|
183 |
// Parse and log the last response
|
184 |
$this->last_post = $this->parse_response( $post_data );
|
@@ -300,7 +308,7 @@ class BBP_Akismet {
|
|
300 |
'comment_author_email' => $_post->post_author ? get_the_author_meta( 'email', $_post->post_author ) : get_post_meta( $post_id, '_bbp_anonymous_email', true ),
|
301 |
'comment_author_url' => $_post->post_author ? bbp_get_user_profile_url( $_post->post_author ) : get_post_meta( $post_id, '_bbp_anonymous_website', true ),
|
302 |
'comment_content' => $_post_content,
|
303 |
-
'
|
304 |
'comment_ID' => $post_id,
|
305 |
'comment_post_ID' => $_post->post_parent,
|
306 |
'comment_type' => $_post->post_type,
|
@@ -413,12 +421,17 @@ class BBP_Akismet {
|
|
413 |
*
|
414 |
* @return array Array of post data
|
415 |
*/
|
416 |
-
private function maybe_spam( $post_data, $check = 'check', $spam = 'spam' ) {
|
417 |
global $akismet_api_host, $akismet_api_port;
|
418 |
|
419 |
// Define variables
|
420 |
$query_string = $path = $response = '';
|
421 |
|
|
|
|
|
|
|
|
|
|
|
422 |
// Populate post data
|
423 |
$post_data['blog'] = get_option( 'home' );
|
424 |
$post_data['blog_charset'] = get_option( 'blog_charset' );
|
@@ -427,51 +440,61 @@ class BBP_Akismet {
|
|
427 |
$post_data['user_agent'] = bbp_current_author_ua();
|
428 |
|
429 |
// Loop through _POST args and rekey strings
|
430 |
-
|
431 |
-
|
432 |
-
|
|
|
|
|
433 |
}
|
434 |
}
|
435 |
|
436 |
-
// Keys to ignore
|
437 |
-
$ignore = array( 'HTTP_COOKIE', 'HTTP_COOKIE2', 'PHP_AUTH_PW' );
|
438 |
-
|
439 |
// Loop through _SERVER args and remove allowed keys
|
440 |
-
|
|
|
|
|
|
|
441 |
|
442 |
-
|
443 |
-
if ( ! in_array( $key, $ignore, true ) && is_string( $value ) ) {
|
444 |
-
$post_data[ $key ] = $value;
|
445 |
|
446 |
-
|
447 |
-
|
448 |
-
|
|
|
|
|
|
|
|
|
|
|
449 |
}
|
450 |
}
|
451 |
|
452 |
-
//
|
453 |
-
|
454 |
-
$
|
|
|
|
|
455 |
}
|
456 |
|
457 |
-
//
|
458 |
if ( 'check' === $check ) {
|
459 |
$path = '/1.1/comment-check';
|
460 |
} elseif ( 'submit' === $check ) {
|
461 |
$path = '/1.1/submit-' . $spam;
|
462 |
}
|
463 |
|
464 |
-
//
|
465 |
$response = ! apply_filters( 'bbp_bypass_check_for_spam', false, $post_data )
|
466 |
? $this->http_post( $query_string, $akismet_api_host, $path, $akismet_api_port )
|
467 |
: false;
|
468 |
|
469 |
-
//
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
|
|
|
|
|
|
|
475 |
|
476 |
// Return the post data, with the results of the external Akismet request
|
477 |
return $post_data;
|
@@ -501,7 +524,7 @@ class BBP_Akismet {
|
|
501 |
}
|
502 |
|
503 |
// Set up Akismet last post data
|
504 |
-
if ( ! empty( $this->last_post ) ) {
|
505 |
$as_submitted = $this->last_post['bbp_post_as_submitted'];
|
506 |
}
|
507 |
|
@@ -513,46 +536,100 @@ class BBP_Akismet {
|
|
513 |
$userdata = get_userdata( $_post->post_author );
|
514 |
$anonymous_data = bbp_filter_anonymous_post_data();
|
515 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
516 |
// More checks
|
517 |
-
if (
|
518 |
-
|
519 |
-
|
520 |
-
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
521 |
|
522 |
// Normal result: true
|
523 |
-
if ( $this->last_post['bbp_akismet_result'] === 'true' ) {
|
524 |
|
525 |
// Leave a trail so other's know what we did
|
526 |
update_post_meta( $post_id, '_bbp_akismet_result', 'true' );
|
527 |
-
$this->update_post_history(
|
|
|
|
|
|
|
|
|
528 |
|
529 |
// If post_status isn't the spam status, as expected, leave a note
|
530 |
if ( bbp_get_spam_status_id() !== $_post->post_status ) {
|
531 |
-
$this->update_post_history(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
532 |
}
|
533 |
|
534 |
// Normal result: false
|
535 |
-
} elseif ( $this->last_post['bbp_akismet_result'] === 'false' ) {
|
536 |
|
537 |
// Leave a trail so other's know what we did
|
538 |
update_post_meta( $post_id, '_bbp_akismet_result', 'false' );
|
539 |
-
$this->update_post_history(
|
|
|
|
|
|
|
|
|
540 |
|
541 |
// If post_status is the spam status, which isn't expected, leave a note
|
542 |
if ( bbp_get_spam_status_id() === $_post->post_status ) {
|
543 |
-
$this->update_post_history(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
544 |
}
|
545 |
|
546 |
// Abnormal result: error
|
547 |
} else {
|
548 |
// Leave a trail so other's know what we did
|
549 |
update_post_meta( $post_id, '_bbp_akismet_error', time() );
|
550 |
-
$this->update_post_history(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
551 |
}
|
552 |
|
553 |
// Record the complete original data as submitted for checking
|
554 |
if ( isset( $this->last_post['bbp_post_as_submitted'] ) ) {
|
555 |
-
update_post_meta(
|
|
|
|
|
|
|
|
|
556 |
}
|
557 |
}
|
558 |
}
|
79 |
*
|
80 |
* @since 2.0.0 bbPress (r3277)
|
81 |
*
|
82 |
+
* @param array $post_data
|
83 |
*
|
84 |
* @return array Array of post data
|
85 |
*/
|
86 |
+
public function check_post( $post_data = array() ) {
|
87 |
|
88 |
// Define local variables
|
89 |
$user_data = array();
|
110 |
$anonymous_data = bbp_filter_anonymous_post_data();
|
111 |
|
112 |
// Author is anonymous
|
113 |
+
if ( ! bbp_has_errors() ) {
|
114 |
$user_data['name'] = $anonymous_data['bbp_anonymous_name'];
|
115 |
$user_data['email'] = $anonymous_data['bbp_anonymous_email'];
|
116 |
$user_data['website'] = $anonymous_data['bbp_anonymous_website'];
|
165 |
'user_role' => $this->get_user_roles( $post_data['post_author'] ),
|
166 |
) );
|
167 |
|
168 |
+
// Set the result headers (from maybe_spam() above)
|
169 |
+
$post_data['bbp_akismet_result_headers'] = ! empty( $_post['bbp_akismet_result_headers'] )
|
170 |
+
? $_post['bbp_akismet_result_headers'] // raw
|
171 |
+
: esc_html__( 'No response', 'bbpress' );
|
172 |
+
|
173 |
// Set the result (from maybe_spam() above)
|
174 |
$post_data['bbp_akismet_result'] = ! empty( $_post['bbp_akismet_result'] )
|
175 |
? $_post['bbp_akismet_result'] // raw
|
176 |
: esc_html__( 'No response', 'bbpress' );
|
177 |
|
178 |
+
// Avoid recurrsion by unsetting results
|
179 |
+
unset(
|
180 |
+
$_post['bbp_akismet_result_headers'],
|
181 |
+
$_post['bbp_akismet_result']
|
182 |
+
);
|
183 |
$post_data['bbp_post_as_submitted'] = $_post;
|
184 |
|
185 |
// Cleanup to avoid touching this variable again below
|
186 |
unset( $_post );
|
187 |
|
188 |
// Allow post_data to be manipulated
|
189 |
+
$post_data = apply_filters( 'bbp_akismet_check_post', $post_data );
|
190 |
|
191 |
// Parse and log the last response
|
192 |
$this->last_post = $this->parse_response( $post_data );
|
308 |
'comment_author_email' => $_post->post_author ? get_the_author_meta( 'email', $_post->post_author ) : get_post_meta( $post_id, '_bbp_anonymous_email', true ),
|
309 |
'comment_author_url' => $_post->post_author ? bbp_get_user_profile_url( $_post->post_author ) : get_post_meta( $post_id, '_bbp_anonymous_website', true ),
|
310 |
'comment_content' => $_post_content,
|
311 |
+
'comment_date_gmt' => $_post->post_date_gmt,
|
312 |
'comment_ID' => $post_id,
|
313 |
'comment_post_ID' => $_post->post_parent,
|
314 |
'comment_type' => $_post->post_type,
|
421 |
*
|
422 |
* @return array Array of post data
|
423 |
*/
|
424 |
+
private function maybe_spam( $post_data = array(), $check = 'check', $spam = 'spam' ) {
|
425 |
global $akismet_api_host, $akismet_api_port;
|
426 |
|
427 |
// Define variables
|
428 |
$query_string = $path = $response = '';
|
429 |
|
430 |
+
// Make sure post data is an array
|
431 |
+
if ( ! is_array( $post_data ) ) {
|
432 |
+
$post_data = array();
|
433 |
+
}
|
434 |
+
|
435 |
// Populate post data
|
436 |
$post_data['blog'] = get_option( 'home' );
|
437 |
$post_data['blog_charset'] = get_option( 'blog_charset' );
|
440 |
$post_data['user_agent'] = bbp_current_author_ua();
|
441 |
|
442 |
// Loop through _POST args and rekey strings
|
443 |
+
if ( ! empty( $_POST ) && is_countable( $_POST ) ) {
|
444 |
+
foreach ( $_POST as $key => $value ) {
|
445 |
+
if ( is_string( $value ) ) {
|
446 |
+
$post_data['POST_' . $key] = $value;
|
447 |
+
}
|
448 |
}
|
449 |
}
|
450 |
|
|
|
|
|
|
|
451 |
// Loop through _SERVER args and remove allowed keys
|
452 |
+
if ( ! empty( $_SERVER ) && is_countable( $_SERVER ) ) {
|
453 |
+
|
454 |
+
// Keys to ignore
|
455 |
+
$ignore = array( 'HTTP_COOKIE', 'HTTP_COOKIE2', 'PHP_AUTH_PW' );
|
456 |
|
457 |
+
foreach ( $_SERVER as $key => $value ) {
|
|
|
|
|
458 |
|
459 |
+
// Key should not be ignored
|
460 |
+
if ( ! in_array( $key, $ignore, true ) && is_string( $value ) ) {
|
461 |
+
$post_data[ $key ] = $value;
|
462 |
+
|
463 |
+
// Key should be ignored
|
464 |
+
} else {
|
465 |
+
$post_data[ $key ] = '';
|
466 |
+
}
|
467 |
}
|
468 |
}
|
469 |
|
470 |
+
// Encode post data
|
471 |
+
if ( ! empty( $post_data ) && is_countable( $post_data ) ) {
|
472 |
+
foreach ( $post_data as $key => $data ) {
|
473 |
+
$query_string .= $key . '=' . urlencode( wp_unslash( $data ) ) . '&';
|
474 |
+
}
|
475 |
}
|
476 |
|
477 |
+
// Setup the API route
|
478 |
if ( 'check' === $check ) {
|
479 |
$path = '/1.1/comment-check';
|
480 |
} elseif ( 'submit' === $check ) {
|
481 |
$path = '/1.1/submit-' . $spam;
|
482 |
}
|
483 |
|
484 |
+
// Send data to Akismet
|
485 |
$response = ! apply_filters( 'bbp_bypass_check_for_spam', false, $post_data )
|
486 |
? $this->http_post( $query_string, $akismet_api_host, $path, $akismet_api_port )
|
487 |
: false;
|
488 |
|
489 |
+
// Set the result headers
|
490 |
+
$post_data['bbp_akismet_result_headers'] = ! empty( $response[0] )
|
491 |
+
? $response[0]
|
492 |
+
: esc_html__( 'No response', 'bbpress' );
|
493 |
+
|
494 |
+
// Set the result
|
495 |
+
$post_data['bbp_akismet_result'] = ! empty( $response[1] )
|
496 |
+
? $response[1]
|
497 |
+
: esc_html__( 'No response', 'bbpress' );
|
498 |
|
499 |
// Return the post data, with the results of the external Akismet request
|
500 |
return $post_data;
|
524 |
}
|
525 |
|
526 |
// Set up Akismet last post data
|
527 |
+
if ( ! empty( $this->last_post['bbp_post_as_submitted'] ) ) {
|
528 |
$as_submitted = $this->last_post['bbp_post_as_submitted'];
|
529 |
}
|
530 |
|
536 |
$userdata = get_userdata( $_post->post_author );
|
537 |
$anonymous_data = bbp_filter_anonymous_post_data();
|
538 |
|
539 |
+
// Which name?
|
540 |
+
$name = ! empty( $anonymous_data['bbp_anonymous_name'] )
|
541 |
+
? $anonymous_data['bbp_anonymous_name']
|
542 |
+
: $userdata->display_name;
|
543 |
+
|
544 |
+
// Which email?
|
545 |
+
$email = ! empty( $anonymous_data['bbp_anonymous_email'] )
|
546 |
+
? $anonymous_data['bbp_anonymous_email']
|
547 |
+
: $userdata->user_email;
|
548 |
+
|
549 |
// More checks
|
550 |
+
if (
|
551 |
+
|
552 |
+
// Post matches
|
553 |
+
( intval( $as_submitted['comment_post_ID'] ) === intval( $_post->post_parent ) )
|
554 |
+
|
555 |
+
&&
|
556 |
+
|
557 |
+
// Name matches
|
558 |
+
( $as_submitted['comment_author'] === $name )
|
559 |
+
|
560 |
+
&&
|
561 |
+
|
562 |
+
// Email matches
|
563 |
+
( $as_submitted['comment_author_email'] === $email )
|
564 |
+
) {
|
565 |
|
566 |
// Normal result: true
|
567 |
+
if ( ! empty( $this->last_post['bbp_akismet_result'] ) && ( $this->last_post['bbp_akismet_result'] === 'true' ) ) {
|
568 |
|
569 |
// Leave a trail so other's know what we did
|
570 |
update_post_meta( $post_id, '_bbp_akismet_result', 'true' );
|
571 |
+
$this->update_post_history(
|
572 |
+
$post_id,
|
573 |
+
esc_html__( 'Akismet caught this post as spam', 'bbpress' ),
|
574 |
+
'check-spam'
|
575 |
+
);
|
576 |
|
577 |
// If post_status isn't the spam status, as expected, leave a note
|
578 |
if ( bbp_get_spam_status_id() !== $_post->post_status ) {
|
579 |
+
$this->update_post_history(
|
580 |
+
$post_id,
|
581 |
+
sprintf(
|
582 |
+
esc_html__( 'Post status was changed to %s', 'bbpress' ),
|
583 |
+
$_post->post_status
|
584 |
+
),
|
585 |
+
'status-changed-' . $_post->post_status
|
586 |
+
);
|
587 |
}
|
588 |
|
589 |
// Normal result: false
|
590 |
+
} elseif ( ! empty( $this->last_post['bbp_akismet_result'] ) && ( $this->last_post['bbp_akismet_result'] === 'false' ) ) {
|
591 |
|
592 |
// Leave a trail so other's know what we did
|
593 |
update_post_meta( $post_id, '_bbp_akismet_result', 'false' );
|
594 |
+
$this->update_post_history(
|
595 |
+
$post_id,
|
596 |
+
esc_html__( 'Akismet cleared this post as not spam', 'bbpress' ),
|
597 |
+
'check-ham'
|
598 |
+
);
|
599 |
|
600 |
// If post_status is the spam status, which isn't expected, leave a note
|
601 |
if ( bbp_get_spam_status_id() === $_post->post_status ) {
|
602 |
+
$this->update_post_history(
|
603 |
+
$post_id,
|
604 |
+
sprintf(
|
605 |
+
esc_html__( 'Post status was changed to %s', 'bbpress' ),
|
606 |
+
$_post->post_status
|
607 |
+
),
|
608 |
+
'status-changed-' . $_post->post_status
|
609 |
+
);
|
610 |
}
|
611 |
|
612 |
// Abnormal result: error
|
613 |
} else {
|
614 |
// Leave a trail so other's know what we did
|
615 |
update_post_meta( $post_id, '_bbp_akismet_error', time() );
|
616 |
+
$this->update_post_history(
|
617 |
+
$post_id,
|
618 |
+
sprintf(
|
619 |
+
esc_html__( 'Akismet was unable to check this post (response: %s), will automatically retry again later.', 'bbpress' ),
|
620 |
+
$this->last_post['bbp_akismet_result']
|
621 |
+
),
|
622 |
+
'check-error'
|
623 |
+
);
|
624 |
}
|
625 |
|
626 |
// Record the complete original data as submitted for checking
|
627 |
if ( isset( $this->last_post['bbp_post_as_submitted'] ) ) {
|
628 |
+
update_post_meta(
|
629 |
+
$post_id,
|
630 |
+
'_bbp_akismet_as_submitted',
|
631 |
+
$this->last_post['bbp_post_as_submitted']
|
632 |
+
);
|
633 |
}
|
634 |
}
|
635 |
}
|
includes/extend/buddypress/groups.php
CHANGED
@@ -376,7 +376,7 @@ class BBP_Forums_Group_Extension extends BP_Group_Extension {
|
|
376 |
|
377 |
// If everything else has failed, then something is wrong and we need
|
378 |
// to add an error to prevent this topic from saving.
|
379 |
-
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>
|
380 |
}
|
381 |
|
382 |
/**
|
@@ -439,7 +439,7 @@ class BBP_Forums_Group_Extension extends BP_Group_Extension {
|
|
439 |
}
|
440 |
|
441 |
// Add an error to prevent this reply from saving.
|
442 |
-
bbp_add_error( 'bbp_reply_to_id', __( '<strong>
|
443 |
}
|
444 |
|
445 |
/** Edit ******************************************************************/
|
@@ -528,7 +528,7 @@ class BBP_Forums_Group_Extension extends BP_Group_Extension {
|
|
528 |
|
529 |
// Theme-side Nonce check
|
530 |
} elseif ( ! bbp_verify_nonce_request( 'groups_edit_save_' . $this->slug ) ) {
|
531 |
-
bbp_add_error( 'bbp_edit_group_forum_screen_save', __( '<strong>
|
532 |
return;
|
533 |
}
|
534 |
|
@@ -685,7 +685,7 @@ class BBP_Forums_Group_Extension extends BP_Group_Extension {
|
|
685 |
|
686 |
// Nonce check
|
687 |
if ( ! bbp_verify_nonce_request( 'groups_create_save_' . $this->slug ) ) {
|
688 |
-
bbp_add_error( 'bbp_create_group_forum_screen_save', __( '<strong>
|
689 |
return;
|
690 |
}
|
691 |
|
376 |
|
377 |
// If everything else has failed, then something is wrong and we need
|
378 |
// to add an error to prevent this topic from saving.
|
379 |
+
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>Error</strong>: Forum ID is invalid.', 'bbpress' ) );
|
380 |
}
|
381 |
|
382 |
/**
|
439 |
}
|
440 |
|
441 |
// Add an error to prevent this reply from saving.
|
442 |
+
bbp_add_error( 'bbp_reply_to_id', __( '<strong>Error</strong>: Reply To is invalid.', 'bbpress' ) );
|
443 |
}
|
444 |
|
445 |
/** Edit ******************************************************************/
|
528 |
|
529 |
// Theme-side Nonce check
|
530 |
} elseif ( ! bbp_verify_nonce_request( 'groups_edit_save_' . $this->slug ) ) {
|
531 |
+
bbp_add_error( 'bbp_edit_group_forum_screen_save', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
532 |
return;
|
533 |
}
|
534 |
|
685 |
|
686 |
// Nonce check
|
687 |
if ( ! bbp_verify_nonce_request( 'groups_create_save_' . $this->slug ) ) {
|
688 |
+
bbp_add_error( 'bbp_create_group_forum_screen_save', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
689 |
return;
|
690 |
}
|
691 |
|
includes/extend/buddypress/notifications.php
CHANGED
@@ -92,8 +92,8 @@ function bbp_format_buddypress_notifications( $content, $item_id, $secondary_ite
|
|
92 |
} else {
|
93 |
$filter = 'bbp_single_new_subscription_notification';
|
94 |
$text = ! empty( $secondary_item_id )
|
95 |
-
? sprintf( esc_html__( 'You have %d new reply to %2$s from %3$s', 'bbpress' ), $action_item_count, $topic_title, bp_core_get_user_displayname( $secondary_item_id ) )
|
96 |
-
: sprintf( esc_html__( 'You have %d new reply to %s',
|
97 |
}
|
98 |
|
99 |
// WordPress Toolbar
|
@@ -154,7 +154,7 @@ function bbp_buddypress_add_notification( $reply_id = 0, $topic_id = 0, $forum_i
|
|
154 |
|
155 |
// Notify the topic author if not the current reply author
|
156 |
if ( $author_id !== $topic_author_id ) {
|
157 |
-
$args['secondary_item_id'] = $secondary_item_id
|
158 |
|
159 |
bp_notifications_add_notification( $args );
|
160 |
}
|
@@ -189,29 +189,55 @@ function bbp_buddypress_mark_notifications( $action = '' ) {
|
|
189 |
|
190 |
// Get required data
|
191 |
$user_id = bp_loggedin_user_id();
|
192 |
-
$topic_id =
|
|
|
|
|
|
|
193 |
|
194 |
// Check nonce
|
195 |
if ( ! bbp_verify_nonce_request( 'bbp_mark_topic_' . $topic_id ) ) {
|
196 |
-
bbp_add_error( 'bbp_notification_topic_id', __( '<strong>
|
197 |
|
198 |
// Check current user's ability to edit the user
|
199 |
} elseif ( ! current_user_can( 'edit_user', $user_id ) ) {
|
200 |
-
bbp_add_error( 'bbp_notification_permission', __( '<strong>
|
201 |
}
|
202 |
|
203 |
// Bail if we have errors
|
204 |
if ( ! bbp_has_errors() ) {
|
205 |
|
206 |
-
//
|
207 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
208 |
|
209 |
// Do additional subscriptions actions
|
210 |
-
do_action( 'bbp_notifications_handler', $
|
211 |
}
|
212 |
|
213 |
// Redirect to the topic
|
214 |
-
$redirect = bbp_get_reply_url( $
|
215 |
|
216 |
// Redirect
|
217 |
bbp_redirect( $redirect );
|
92 |
} else {
|
93 |
$filter = 'bbp_single_new_subscription_notification';
|
94 |
$text = ! empty( $secondary_item_id )
|
95 |
+
? sprintf( esc_html__( 'You have %1$d new reply to %2$s from %3$s', 'bbpress' ), $action_item_count, $topic_title, bp_core_get_user_displayname( $secondary_item_id ) )
|
96 |
+
: sprintf( esc_html__( 'You have %1$d new reply to %2$s', 'bbpress' ), $action_item_count, $topic_title );
|
97 |
}
|
98 |
|
99 |
// WordPress Toolbar
|
154 |
|
155 |
// Notify the topic author if not the current reply author
|
156 |
if ( $author_id !== $topic_author_id ) {
|
157 |
+
$args['secondary_item_id'] = $secondary_item_id;
|
158 |
|
159 |
bp_notifications_add_notification( $args );
|
160 |
}
|
189 |
|
190 |
// Get required data
|
191 |
$user_id = bp_loggedin_user_id();
|
192 |
+
$topic_id = absint( $_GET['topic_id'] );
|
193 |
+
|
194 |
+
// By default, Redirect to this topic ID
|
195 |
+
$redirect_id = $topic_id;
|
196 |
|
197 |
// Check nonce
|
198 |
if ( ! bbp_verify_nonce_request( 'bbp_mark_topic_' . $topic_id ) ) {
|
199 |
+
bbp_add_error( 'bbp_notification_topic_id', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
200 |
|
201 |
// Check current user's ability to edit the user
|
202 |
} elseif ( ! current_user_can( 'edit_user', $user_id ) ) {
|
203 |
+
bbp_add_error( 'bbp_notification_permission', __( '<strong>Error</strong>: You do not have permission to mark notifications for that user.', 'bbpress' ) );
|
204 |
}
|
205 |
|
206 |
// Bail if we have errors
|
207 |
if ( ! bbp_has_errors() ) {
|
208 |
|
209 |
+
// Get these once
|
210 |
+
$post_type = bbp_get_reply_post_type();
|
211 |
+
$component = bbp_get_component_name();
|
212 |
+
|
213 |
+
// Attempt to clear notifications for this topic
|
214 |
+
$marked = bp_notifications_mark_notifications_by_item_id( $user_id, $topic_id, $component, 'bbp_new_reply' );
|
215 |
+
|
216 |
+
// Get all reply IDs for the topic
|
217 |
+
$replies = bbp_get_all_child_ids( $topic_id, $post_type );
|
218 |
+
|
219 |
+
// If topic has replies
|
220 |
+
if ( ! empty( $replies ) ) {
|
221 |
+
|
222 |
+
// Loop through each reply and attempt to mark it
|
223 |
+
foreach ( $replies as $reply_id ) {
|
224 |
+
|
225 |
+
// Attempt to mark notification for this reply ID
|
226 |
+
$marked = bp_notifications_mark_notifications_by_item_id( $user_id, $reply_id, $component, 'bbp_new_reply' );
|
227 |
+
|
228 |
+
// If marked, redirect to this reply ID
|
229 |
+
if ( ! empty( $marked ) ) {
|
230 |
+
$redirect_id = $reply_id;
|
231 |
+
}
|
232 |
+
}
|
233 |
+
}
|
234 |
|
235 |
// Do additional subscriptions actions
|
236 |
+
do_action( 'bbp_notifications_handler', $marked, $user_id, $topic_id, $action );
|
237 |
}
|
238 |
|
239 |
// Redirect to the topic
|
240 |
+
$redirect = bbp_get_reply_url( $redirect_id );
|
241 |
|
242 |
// Redirect
|
243 |
bbp_redirect( $redirect );
|
includes/forums/functions.php
CHANGED
@@ -123,7 +123,7 @@ function bbp_new_forum_handler( $action = '' ) {
|
|
123 |
|
124 |
// Nonce check
|
125 |
if ( ! bbp_verify_nonce_request( 'bbp-new-forum' ) ) {
|
126 |
-
bbp_add_error( 'bbp_new_forum_nonce', __( '<strong>
|
127 |
return;
|
128 |
}
|
129 |
|
@@ -137,7 +137,7 @@ function bbp_new_forum_handler( $action = '' ) {
|
|
137 |
|
138 |
// User cannot create forums
|
139 |
if ( ! current_user_can( 'publish_forums' ) ) {
|
140 |
-
bbp_add_error( 'bbp_forum_permission', __( '<strong>
|
141 |
return;
|
142 |
}
|
143 |
|
@@ -162,12 +162,12 @@ function bbp_new_forum_handler( $action = '' ) {
|
|
162 |
|
163 |
// No forum title
|
164 |
if ( empty( $forum_title ) ) {
|
165 |
-
bbp_add_error( 'bbp_forum_title', __( '<strong>
|
166 |
}
|
167 |
|
168 |
// Title too long
|
169 |
if ( bbp_is_title_too_long( $forum_title ) ) {
|
170 |
-
bbp_add_error( 'bbp_forum_title', __( '<strong>
|
171 |
}
|
172 |
|
173 |
/** Forum Content *********************************************************/
|
@@ -181,7 +181,7 @@ function bbp_new_forum_handler( $action = '' ) {
|
|
181 |
|
182 |
// No forum content
|
183 |
if ( empty( $forum_content ) ) {
|
184 |
-
bbp_add_error( 'bbp_forum_content', __( '<strong>
|
185 |
}
|
186 |
|
187 |
/** Forum Parent **********************************************************/
|
@@ -196,48 +196,48 @@ function bbp_new_forum_handler( $action = '' ) {
|
|
196 |
|
197 |
// No forum parent was passed (should never happen)
|
198 |
if ( empty( $forum_parent_id ) ) {
|
199 |
-
bbp_add_error( 'bbp_new_forum_missing_parent', __( '<strong>
|
200 |
|
201 |
// Forum exists
|
202 |
} elseif ( ! empty( $forum_parent_id ) ) {
|
203 |
|
204 |
// Forum is a category
|
205 |
if ( bbp_is_forum_category( $forum_parent_id ) ) {
|
206 |
-
bbp_add_error( 'bbp_new_forum_forum_category', __( '<strong>
|
207 |
}
|
208 |
|
209 |
// Forum is closed and user cannot access
|
210 |
if ( bbp_is_forum_closed( $forum_parent_id ) && ! current_user_can( 'edit_forum', $forum_parent_id ) ) {
|
211 |
-
bbp_add_error( 'bbp_new_forum_forum_closed', __( '<strong>
|
212 |
}
|
213 |
|
214 |
// Forum is private and user cannot access
|
215 |
if ( bbp_is_forum_private( $forum_parent_id ) && ! current_user_can( 'read_forum', $forum_parent_id ) ) {
|
216 |
-
bbp_add_error( 'bbp_new_forum_forum_private', __( '<strong>
|
217 |
}
|
218 |
|
219 |
// Forum is hidden and user cannot access
|
220 |
if ( bbp_is_forum_hidden( $forum_parent_id ) && ! current_user_can( 'read_forum', $forum_parent_id ) ) {
|
221 |
-
bbp_add_error( 'bbp_new_forum_forum_hidden', __( '<strong>
|
222 |
}
|
223 |
}
|
224 |
|
225 |
/** Forum Flooding ********************************************************/
|
226 |
|
227 |
if ( ! bbp_check_for_flood( $anonymous_data, $forum_author ) ) {
|
228 |
-
bbp_add_error( 'bbp_forum_flood', __( '<strong>
|
229 |
}
|
230 |
|
231 |
/** Forum Duplicate *******************************************************/
|
232 |
|
233 |
if ( ! bbp_check_for_duplicate( array( 'post_type' => bbp_get_forum_post_type(), 'post_author' => $forum_author, 'post_content' => $forum_content, 'anonymous_data' => $anonymous_data ) ) ) {
|
234 |
-
bbp_add_error( 'bbp_forum_duplicate', __( '<strong>
|
235 |
}
|
236 |
|
237 |
/** Forum Bad Words *******************************************************/
|
238 |
|
239 |
if ( ! bbp_check_for_moderation( $anonymous_data, $forum_author, $forum_title, $forum_content, true ) ) {
|
240 |
-
bbp_add_error( 'bbp_forum_moderation', __( '<strong>
|
241 |
}
|
242 |
|
243 |
/** Forum Moderation ******************************************************/
|
@@ -350,11 +350,11 @@ function bbp_new_forum_handler( $action = '' ) {
|
|
350 |
|
351 |
// WP_Error
|
352 |
} elseif ( is_wp_error( $forum_id ) ) {
|
353 |
-
bbp_add_error( 'bbp_forum_error', sprintf( __( '<strong>
|
354 |
|
355 |
// Generic error
|
356 |
} else {
|
357 |
-
bbp_add_error( 'bbp_forum_error', __( '<strong>
|
358 |
}
|
359 |
}
|
360 |
|
@@ -379,7 +379,7 @@ function bbp_edit_forum_handler( $action = '' ) {
|
|
379 |
|
380 |
// Forum id was not passed
|
381 |
if ( empty( $_POST['bbp_forum_id'] ) ) {
|
382 |
-
bbp_add_error( 'bbp_edit_forum_id', __( '<strong>
|
383 |
return;
|
384 |
|
385 |
// Forum id was passed
|
@@ -390,17 +390,17 @@ function bbp_edit_forum_handler( $action = '' ) {
|
|
390 |
|
391 |
// Nonce check
|
392 |
if ( ! bbp_verify_nonce_request( 'bbp-edit-forum_' . $forum_id ) ) {
|
393 |
-
bbp_add_error( 'bbp_edit_forum_nonce', __( '<strong>
|
394 |
return;
|
395 |
|
396 |
// Forum does not exist
|
397 |
} elseif ( empty( $forum ) ) {
|
398 |
-
bbp_add_error( 'bbp_edit_forum_not_found', __( '<strong>
|
399 |
return;
|
400 |
|
401 |
// User cannot edit this forum
|
402 |
} elseif ( ! current_user_can( 'edit_forum', $forum_id ) ) {
|
403 |
-
bbp_add_error( 'bbp_edit_forum_permission', __( '<strong>
|
404 |
return;
|
405 |
}
|
406 |
|
@@ -426,17 +426,17 @@ function bbp_edit_forum_handler( $action = '' ) {
|
|
426 |
|
427 |
// Forum is closed and user cannot access
|
428 |
if ( bbp_is_forum_closed( $forum_parent_id ) && ! current_user_can( 'edit_forum', $forum_parent_id ) ) {
|
429 |
-
bbp_add_error( 'bbp_edit_forum_forum_closed', __( '<strong>
|
430 |
}
|
431 |
|
432 |
// Forum is private and user cannot access
|
433 |
if ( bbp_is_forum_private( $forum_parent_id ) && ! current_user_can( 'read_forum', $forum_parent_id ) ) {
|
434 |
-
bbp_add_error( 'bbp_edit_forum_forum_private', __( '<strong>
|
435 |
}
|
436 |
|
437 |
// Forum is hidden and user cannot access
|
438 |
if ( bbp_is_forum_hidden( $forum_parent_id ) && ! current_user_can( 'read_forum', $forum_parent_id ) ) {
|
439 |
-
bbp_add_error( 'bbp_edit_forum_forum_hidden', __( '<strong>
|
440 |
}
|
441 |
}
|
442 |
|
@@ -451,12 +451,12 @@ function bbp_edit_forum_handler( $action = '' ) {
|
|
451 |
|
452 |
// No forum title
|
453 |
if ( empty( $forum_title ) ) {
|
454 |
-
bbp_add_error( 'bbp_edit_forum_title', __( '<strong>
|
455 |
}
|
456 |
|
457 |
// Title too long
|
458 |
if ( bbp_is_title_too_long( $forum_title ) ) {
|
459 |
-
bbp_add_error( 'bbp_forum_title', __( '<strong>
|
460 |
}
|
461 |
|
462 |
/** Forum Content *********************************************************/
|
@@ -470,13 +470,13 @@ function bbp_edit_forum_handler( $action = '' ) {
|
|
470 |
|
471 |
// No forum content
|
472 |
if ( empty( $forum_content ) ) {
|
473 |
-
bbp_add_error( 'bbp_edit_forum_content', __( '<strong>
|
474 |
}
|
475 |
|
476 |
/** Forum Bad Words *******************************************************/
|
477 |
|
478 |
if ( ! bbp_check_for_moderation( $anonymous_data, bbp_get_forum_author_id( $forum_id ), $forum_title, $forum_content, true ) ) {
|
479 |
-
bbp_add_error( 'bbp_forum_moderation', __( '<strong>
|
480 |
}
|
481 |
|
482 |
/** Forum Moderation ******************************************************/
|
@@ -590,7 +590,7 @@ function bbp_edit_forum_handler( $action = '' ) {
|
|
590 |
|
591 |
} else {
|
592 |
$append_error = ( is_wp_error( $forum_id ) && $forum_id->get_error_message() ) ? $forum_id->get_error_message() . ' ' : '';
|
593 |
-
bbp_add_error( 'bbp_forum_error', __( '<strong>
|
594 |
}
|
595 |
}
|
596 |
|
123 |
|
124 |
// Nonce check
|
125 |
if ( ! bbp_verify_nonce_request( 'bbp-new-forum' ) ) {
|
126 |
+
bbp_add_error( 'bbp_new_forum_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
127 |
return;
|
128 |
}
|
129 |
|
137 |
|
138 |
// User cannot create forums
|
139 |
if ( ! current_user_can( 'publish_forums' ) ) {
|
140 |
+
bbp_add_error( 'bbp_forum_permission', __( '<strong>Error</strong>: You do not have permission to create new forums.', 'bbpress' ) );
|
141 |
return;
|
142 |
}
|
143 |
|
162 |
|
163 |
// No forum title
|
164 |
if ( empty( $forum_title ) ) {
|
165 |
+
bbp_add_error( 'bbp_forum_title', __( '<strong>Error</strong>: Your forum needs a title.', 'bbpress' ) );
|
166 |
}
|
167 |
|
168 |
// Title too long
|
169 |
if ( bbp_is_title_too_long( $forum_title ) ) {
|
170 |
+
bbp_add_error( 'bbp_forum_title', __( '<strong>Error</strong>: Your title is too long.', 'bbpress' ) );
|
171 |
}
|
172 |
|
173 |
/** Forum Content *********************************************************/
|
181 |
|
182 |
// No forum content
|
183 |
if ( empty( $forum_content ) ) {
|
184 |
+
bbp_add_error( 'bbp_forum_content', __( '<strong>Error</strong>: Your forum description cannot be empty.', 'bbpress' ) );
|
185 |
}
|
186 |
|
187 |
/** Forum Parent **********************************************************/
|
196 |
|
197 |
// No forum parent was passed (should never happen)
|
198 |
if ( empty( $forum_parent_id ) ) {
|
199 |
+
bbp_add_error( 'bbp_new_forum_missing_parent', __( '<strong>Error</strong>: Your forum must have a parent.', 'bbpress' ) );
|
200 |
|
201 |
// Forum exists
|
202 |
} elseif ( ! empty( $forum_parent_id ) ) {
|
203 |
|
204 |
// Forum is a category
|
205 |
if ( bbp_is_forum_category( $forum_parent_id ) ) {
|
206 |
+
bbp_add_error( 'bbp_new_forum_forum_category', __( '<strong>Error</strong>: This forum is a category. No forums can be created in this forum.', 'bbpress' ) );
|
207 |
}
|
208 |
|
209 |
// Forum is closed and user cannot access
|
210 |
if ( bbp_is_forum_closed( $forum_parent_id ) && ! current_user_can( 'edit_forum', $forum_parent_id ) ) {
|
211 |
+
bbp_add_error( 'bbp_new_forum_forum_closed', __( '<strong>Error</strong>: This forum has been closed to new forums.', 'bbpress' ) );
|
212 |
}
|
213 |
|
214 |
// Forum is private and user cannot access
|
215 |
if ( bbp_is_forum_private( $forum_parent_id ) && ! current_user_can( 'read_forum', $forum_parent_id ) ) {
|
216 |
+
bbp_add_error( 'bbp_new_forum_forum_private', __( '<strong>Error</strong>: This forum is private and you do not have the capability to read or create new forums in it.', 'bbpress' ) );
|
217 |
}
|
218 |
|
219 |
// Forum is hidden and user cannot access
|
220 |
if ( bbp_is_forum_hidden( $forum_parent_id ) && ! current_user_can( 'read_forum', $forum_parent_id ) ) {
|
221 |
+
bbp_add_error( 'bbp_new_forum_forum_hidden', __( '<strong>Error</strong>: This forum is hidden and you do not have the capability to read or create new forums in it.', 'bbpress' ) );
|
222 |
}
|
223 |
}
|
224 |
|
225 |
/** Forum Flooding ********************************************************/
|
226 |
|
227 |
if ( ! bbp_check_for_flood( $anonymous_data, $forum_author ) ) {
|
228 |
+
bbp_add_error( 'bbp_forum_flood', __( '<strong>Error</strong>: Slow down; you move too fast.', 'bbpress' ) );
|
229 |
}
|
230 |
|
231 |
/** Forum Duplicate *******************************************************/
|
232 |
|
233 |
if ( ! bbp_check_for_duplicate( array( 'post_type' => bbp_get_forum_post_type(), 'post_author' => $forum_author, 'post_content' => $forum_content, 'anonymous_data' => $anonymous_data ) ) ) {
|
234 |
+
bbp_add_error( 'bbp_forum_duplicate', __( '<strong>Error</strong>: This forum already exists.', 'bbpress' ) );
|
235 |
}
|
236 |
|
237 |
/** Forum Bad Words *******************************************************/
|
238 |
|
239 |
if ( ! bbp_check_for_moderation( $anonymous_data, $forum_author, $forum_title, $forum_content, true ) ) {
|
240 |
+
bbp_add_error( 'bbp_forum_moderation', __( '<strong>Error</strong>: Your forum cannot be created at this time.', 'bbpress' ) );
|
241 |
}
|
242 |
|
243 |
/** Forum Moderation ******************************************************/
|
350 |
|
351 |
// WP_Error
|
352 |
} elseif ( is_wp_error( $forum_id ) ) {
|
353 |
+
bbp_add_error( 'bbp_forum_error', sprintf( __( '<strong>Error</strong>: The following problem(s) occurred: %s', 'bbpress' ), $forum_id->get_error_message() ) );
|
354 |
|
355 |
// Generic error
|
356 |
} else {
|
357 |
+
bbp_add_error( 'bbp_forum_error', __( '<strong>Error</strong>: The forum was not created.', 'bbpress' ) );
|
358 |
}
|
359 |
}
|
360 |
|
379 |
|
380 |
// Forum id was not passed
|
381 |
if ( empty( $_POST['bbp_forum_id'] ) ) {
|
382 |
+
bbp_add_error( 'bbp_edit_forum_id', __( '<strong>Error</strong>: Forum ID not found.', 'bbpress' ) );
|
383 |
return;
|
384 |
|
385 |
// Forum id was passed
|
390 |
|
391 |
// Nonce check
|
392 |
if ( ! bbp_verify_nonce_request( 'bbp-edit-forum_' . $forum_id ) ) {
|
393 |
+
bbp_add_error( 'bbp_edit_forum_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
394 |
return;
|
395 |
|
396 |
// Forum does not exist
|
397 |
} elseif ( empty( $forum ) ) {
|
398 |
+
bbp_add_error( 'bbp_edit_forum_not_found', __( '<strong>Error</strong>: The forum you want to edit was not found.', 'bbpress' ) );
|
399 |
return;
|
400 |
|
401 |
// User cannot edit this forum
|
402 |
} elseif ( ! current_user_can( 'edit_forum', $forum_id ) ) {
|
403 |
+
bbp_add_error( 'bbp_edit_forum_permission', __( '<strong>Error</strong>: You do not have permission to edit that forum.', 'bbpress' ) );
|
404 |
return;
|
405 |
}
|
406 |
|
426 |
|
427 |
// Forum is closed and user cannot access
|
428 |
if ( bbp_is_forum_closed( $forum_parent_id ) && ! current_user_can( 'edit_forum', $forum_parent_id ) ) {
|
429 |
+
bbp_add_error( 'bbp_edit_forum_forum_closed', __( '<strong>Error</strong>: This forum has been closed to new forums.', 'bbpress' ) );
|
430 |
}
|
431 |
|
432 |
// Forum is private and user cannot access
|
433 |
if ( bbp_is_forum_private( $forum_parent_id ) && ! current_user_can( 'read_forum', $forum_parent_id ) ) {
|
434 |
+
bbp_add_error( 'bbp_edit_forum_forum_private', __( '<strong>Error</strong>: This forum is private and you do not have the capability to read or create new forums in it.', 'bbpress' ) );
|
435 |
}
|
436 |
|
437 |
// Forum is hidden and user cannot access
|
438 |
if ( bbp_is_forum_hidden( $forum_parent_id ) && ! current_user_can( 'read_forum', $forum_parent_id ) ) {
|
439 |
+
bbp_add_error( 'bbp_edit_forum_forum_hidden', __( '<strong>Error</strong>: This forum is hidden and you do not have the capability to read or create new forums in it.', 'bbpress' ) );
|
440 |
}
|
441 |
}
|
442 |
|
451 |
|
452 |
// No forum title
|
453 |
if ( empty( $forum_title ) ) {
|
454 |
+
bbp_add_error( 'bbp_edit_forum_title', __( '<strong>Error</strong>: Your forum needs a title.', 'bbpress' ) );
|
455 |
}
|
456 |
|
457 |
// Title too long
|
458 |
if ( bbp_is_title_too_long( $forum_title ) ) {
|
459 |
+
bbp_add_error( 'bbp_forum_title', __( '<strong>Error</strong>: Your title is too long.', 'bbpress' ) );
|
460 |
}
|
461 |
|
462 |
/** Forum Content *********************************************************/
|
470 |
|
471 |
// No forum content
|
472 |
if ( empty( $forum_content ) ) {
|
473 |
+
bbp_add_error( 'bbp_edit_forum_content', __( '<strong>Error</strong>: Your forum description cannot be empty.', 'bbpress' ) );
|
474 |
}
|
475 |
|
476 |
/** Forum Bad Words *******************************************************/
|
477 |
|
478 |
if ( ! bbp_check_for_moderation( $anonymous_data, bbp_get_forum_author_id( $forum_id ), $forum_title, $forum_content, true ) ) {
|
479 |
+
bbp_add_error( 'bbp_forum_moderation', __( '<strong>Error</strong>: Your forum cannot be edited at this time.', 'bbpress' ) );
|
480 |
}
|
481 |
|
482 |
/** Forum Moderation ******************************************************/
|
590 |
|
591 |
} else {
|
592 |
$append_error = ( is_wp_error( $forum_id ) && $forum_id->get_error_message() ) ? $forum_id->get_error_message() . ' ' : '';
|
593 |
+
bbp_add_error( 'bbp_forum_error', __( '<strong>Error</strong>: The following problem(s) have been found with your forum:' . $append_error . 'Please try again.', 'bbpress' ) );
|
594 |
}
|
595 |
}
|
596 |
|
includes/replies/functions.php
CHANGED
@@ -131,7 +131,7 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
131 |
|
132 |
// Nonce check
|
133 |
if ( ! bbp_verify_nonce_request( 'bbp-new-reply' ) ) {
|
134 |
-
bbp_add_error( 'bbp_new_reply_nonce', __( '<strong>
|
135 |
return;
|
136 |
}
|
137 |
|
@@ -156,7 +156,7 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
156 |
|
157 |
// User cannot create replies
|
158 |
if ( ! current_user_can( 'publish_replies' ) ) {
|
159 |
-
bbp_add_error( 'bbp_reply_permission', __( '<strong>
|
160 |
}
|
161 |
|
162 |
// Reply author is current user
|
@@ -167,11 +167,11 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
167 |
|
168 |
// Topic id was not passed
|
169 |
if ( empty( $_POST['bbp_topic_id'] ) ) {
|
170 |
-
bbp_add_error( 'bbp_reply_topic_id', __( '<strong>
|
171 |
|
172 |
// Topic id is not a number
|
173 |
} elseif ( ! is_numeric( $_POST['bbp_topic_id'] ) ) {
|
174 |
-
bbp_add_error( 'bbp_reply_topic_id', __( '<strong>
|
175 |
|
176 |
// Topic id might be valid
|
177 |
} else {
|
@@ -181,11 +181,11 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
181 |
|
182 |
// Topic id is a negative number
|
183 |
if ( 0 > $posted_topic_id ) {
|
184 |
-
bbp_add_error( 'bbp_reply_topic_id', __( '<strong>
|
185 |
|
186 |
// Topic does not exist
|
187 |
} elseif ( ! bbp_get_topic( $posted_topic_id ) ) {
|
188 |
-
bbp_add_error( 'bbp_reply_topic_id', __( '<strong>
|
189 |
|
190 |
// Use the POST'ed topic id
|
191 |
} else {
|
@@ -204,11 +204,11 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
204 |
|
205 |
// Empty Forum id was passed
|
206 |
if ( empty( $_POST['bbp_forum_id'] ) ) {
|
207 |
-
bbp_add_error( 'bbp_reply_forum_id', __( '<strong>
|
208 |
|
209 |
// Forum id is not a number
|
210 |
} elseif ( ! is_numeric( $_POST['bbp_forum_id'] ) ) {
|
211 |
-
bbp_add_error( 'bbp_reply_forum_id', __( '<strong>
|
212 |
|
213 |
// Forum id might be valid
|
214 |
} else {
|
@@ -218,15 +218,15 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
218 |
|
219 |
// Forum id is empty
|
220 |
if ( 0 === $posted_forum_id ) {
|
221 |
-
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>
|
222 |
|
223 |
// Forum id is a negative number
|
224 |
} elseif ( 0 > $posted_forum_id ) {
|
225 |
-
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>
|
226 |
|
227 |
// Forum does not exist
|
228 |
} elseif ( ! bbp_get_forum( $posted_forum_id ) ) {
|
229 |
-
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>
|
230 |
|
231 |
// Use the POST'ed forum id
|
232 |
} else {
|
@@ -240,23 +240,23 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
240 |
|
241 |
// Forum is a category
|
242 |
if ( bbp_is_forum_category( $forum_id ) ) {
|
243 |
-
bbp_add_error( 'bbp_new_reply_forum_category', __( '<strong>
|
244 |
|
245 |
// Forum is not a category
|
246 |
} else {
|
247 |
|
248 |
// Forum is closed and user cannot access
|
249 |
if ( bbp_is_forum_closed( $forum_id ) && ! current_user_can( 'edit_forum', $forum_id ) ) {
|
250 |
-
bbp_add_error( 'bbp_new_reply_forum_closed', __( '<strong>
|
251 |
}
|
252 |
|
253 |
// Forum is private and user cannot access
|
254 |
if ( bbp_is_forum_private( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
255 |
-
bbp_add_error( 'bbp_new_reply_forum_private', __( '<strong>
|
256 |
|
257 |
// Forum is hidden and user cannot access
|
258 |
} elseif ( bbp_is_forum_hidden( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
259 |
-
bbp_add_error( 'bbp_new_reply_forum_hidden', __( '<strong>
|
260 |
}
|
261 |
}
|
262 |
}
|
@@ -281,7 +281,7 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
281 |
|
282 |
// Title too long
|
283 |
if ( bbp_is_title_too_long( $reply_title ) ) {
|
284 |
-
bbp_add_error( 'bbp_reply_title', __( '<strong>
|
285 |
}
|
286 |
|
287 |
/** Reply Content *********************************************************/
|
@@ -295,25 +295,25 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
295 |
|
296 |
// No reply content
|
297 |
if ( empty( $reply_content ) ) {
|
298 |
-
bbp_add_error( 'bbp_reply_content', __( '<strong>
|
299 |
}
|
300 |
|
301 |
/** Reply Flooding ********************************************************/
|
302 |
|
303 |
if ( ! bbp_check_for_flood( $anonymous_data, $reply_author ) ) {
|
304 |
-
bbp_add_error( 'bbp_reply_flood', __( '<strong>
|
305 |
}
|
306 |
|
307 |
/** Reply Duplicate *******************************************************/
|
308 |
|
309 |
if ( ! bbp_check_for_duplicate( array( 'post_type' => bbp_get_reply_post_type(), 'post_author' => $reply_author, 'post_content' => $reply_content, 'post_parent' => $topic_id, 'anonymous_data' => $anonymous_data ) ) ) {
|
310 |
-
bbp_add_error( 'bbp_reply_duplicate', __( '<strong>
|
311 |
}
|
312 |
|
313 |
/** Reply Bad Words *******************************************************/
|
314 |
|
315 |
if ( ! bbp_check_for_moderation( $anonymous_data, $reply_author, $reply_title, $reply_content, true ) ) {
|
316 |
-
bbp_add_error( 'bbp_reply_moderation', __( '<strong>
|
317 |
}
|
318 |
|
319 |
/** Reply Status **********************************************************/
|
@@ -338,7 +338,7 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
338 |
|
339 |
// If topic is closed, moderators can still reply
|
340 |
if ( bbp_is_topic_closed( $topic_id ) && ! current_user_can( 'moderate', $topic_id ) ) {
|
341 |
-
bbp_add_error( 'bbp_reply_topic_closed', __( '<strong>
|
342 |
}
|
343 |
|
344 |
/** Topic Tags ************************************************************/
|
@@ -398,7 +398,7 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
398 |
|
399 |
// Term error
|
400 |
if ( is_wp_error( $terms ) ) {
|
401 |
-
bbp_add_error( 'bbp_reply_tags', __( '<strong>
|
402 |
}
|
403 |
|
404 |
/** Trash Check *******************************************************/
|
@@ -414,7 +414,12 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
414 |
if ( bbp_is_topic_trash( $topic_id ) ) {
|
415 |
|
416 |
// Get pre_trashed_replies for topic
|
417 |
-
$
|
|
|
|
|
|
|
|
|
|
|
418 |
|
419 |
// Add this reply to the end of the existing replies
|
420 |
$pre_trashed_replies[] = $reply_id;
|
@@ -433,7 +438,12 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
433 |
if ( bbp_is_topic_spam( $topic_id ) ) {
|
434 |
|
435 |
// Get pre_spammed_replies for topic
|
436 |
-
$
|
|
|
|
|
|
|
|
|
|
|
437 |
|
438 |
// Add this reply to the end of the existing replies
|
439 |
$pre_spammed_replies[] = $reply_id;
|
@@ -471,11 +481,11 @@ function bbp_new_reply_handler( $action = '' ) {
|
|
471 |
|
472 |
// WP_Error
|
473 |
} elseif ( is_wp_error( $reply_id ) ) {
|
474 |
-
bbp_add_error( 'bbp_reply_error', sprintf( __( '<strong>
|
475 |
|
476 |
// Generic error
|
477 |
} else {
|
478 |
-
bbp_add_error( 'bbp_reply_error', __( '<strong>
|
479 |
}
|
480 |
}
|
481 |
|
@@ -503,7 +513,7 @@ function bbp_edit_reply_handler( $action = '' ) {
|
|
503 |
|
504 |
// Reply id was not passed
|
505 |
if ( empty( $_POST['bbp_reply_id'] ) ) {
|
506 |
-
bbp_add_error( 'bbp_edit_reply_id', __( '<strong>
|
507 |
return;
|
508 |
|
509 |
// Reply id was passed
|
@@ -514,13 +524,13 @@ function bbp_edit_reply_handler( $action = '' ) {
|
|
514 |
|
515 |
// Nonce check
|
516 |
if ( ! bbp_verify_nonce_request( 'bbp-edit-reply_' . $reply_id ) ) {
|
517 |
-
bbp_add_error( 'bbp_edit_reply_nonce', __( '<strong>
|
518 |
return;
|
519 |
}
|
520 |
|
521 |
// Reply does not exist
|
522 |
if ( empty( $reply ) ) {
|
523 |
-
bbp_add_error( 'bbp_edit_reply_not_found', __( '<strong>
|
524 |
return;
|
525 |
|
526 |
// Reply exists
|
@@ -531,7 +541,7 @@ function bbp_edit_reply_handler( $action = '' ) {
|
|
531 |
|
532 |
// User cannot edit this reply
|
533 |
if ( ! current_user_can( 'edit_reply', $reply_id ) ) {
|
534 |
-
bbp_add_error( 'bbp_edit_reply_permission', __( '<strong>
|
535 |
return;
|
536 |
}
|
537 |
|
@@ -566,23 +576,23 @@ function bbp_edit_reply_handler( $action = '' ) {
|
|
566 |
|
567 |
// Forum is a category
|
568 |
if ( bbp_is_forum_category( $forum_id ) ) {
|
569 |
-
bbp_add_error( 'bbp_edit_reply_forum_category', __( '<strong>
|
570 |
|
571 |
// Forum is not a category
|
572 |
} else {
|
573 |
|
574 |
// Forum is closed and user cannot access
|
575 |
if ( bbp_is_forum_closed( $forum_id ) && ! current_user_can( 'edit_forum', $forum_id ) ) {
|
576 |
-
bbp_add_error( 'bbp_edit_reply_forum_closed', __( '<strong>
|
577 |
}
|
578 |
|
579 |
// Forum is private and user cannot access
|
580 |
if ( bbp_is_forum_private( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
581 |
-
bbp_add_error( 'bbp_edit_reply_forum_private', __( '<strong>
|
582 |
|
583 |
// Forum is hidden and user cannot access
|
584 |
} elseif ( bbp_is_forum_hidden( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
585 |
-
bbp_add_error( 'bbp_edit_reply_forum_hidden', __( '<strong>
|
586 |
}
|
587 |
}
|
588 |
}
|
@@ -598,7 +608,7 @@ function bbp_edit_reply_handler( $action = '' ) {
|
|
598 |
|
599 |
// Title too long
|
600 |
if ( bbp_is_title_too_long( $reply_title ) ) {
|
601 |
-
bbp_add_error( 'bbp_reply_title', __( '<strong>
|
602 |
}
|
603 |
|
604 |
/** Reply Content *********************************************************/
|
@@ -612,13 +622,13 @@ function bbp_edit_reply_handler( $action = '' ) {
|
|
612 |
|
613 |
// No reply content
|
614 |
if ( empty( $reply_content ) ) {
|
615 |
-
bbp_add_error( 'bbp_edit_reply_content', __( '<strong>
|
616 |
}
|
617 |
|
618 |
/** Reply Bad Words *******************************************************/
|
619 |
|
620 |
if ( ! bbp_check_for_moderation( $anonymous_data, $reply_author, $reply_title, $reply_content, true ) ) {
|
621 |
-
bbp_add_error( 'bbp_reply_moderation', __( '<strong>
|
622 |
}
|
623 |
|
624 |
/** Reply Status **********************************************************/
|
@@ -708,7 +718,7 @@ function bbp_edit_reply_handler( $action = '' ) {
|
|
708 |
|
709 |
// Term error
|
710 |
if ( is_wp_error( $terms ) ) {
|
711 |
-
bbp_add_error( 'bbp_reply_tags', __( '<strong>
|
712 |
}
|
713 |
|
714 |
/** No Errors *************************************************************/
|
@@ -766,7 +776,7 @@ function bbp_edit_reply_handler( $action = '' ) {
|
|
766 |
|
767 |
} else {
|
768 |
$append_error = ( is_wp_error( $reply_id ) && $reply_id->get_error_message() ) ? $reply_id->get_error_message() . ' ' : '';
|
769 |
-
bbp_add_error( 'bbp_reply_error', __( '<strong>
|
770 |
}
|
771 |
}
|
772 |
|
@@ -819,12 +829,7 @@ function bbp_update_reply( $reply_id = 0, $topic_id = 0, $forum_id = 0, $anonymo
|
|
819 |
|
820 |
// Set transient for throttle check (only on new, not edit)
|
821 |
if ( empty( $is_edit ) ) {
|
822 |
-
set_transient( '_bbp_' . bbp_current_author_ip() . '_last_posted', time() );
|
823 |
-
}
|
824 |
-
|
825 |
-
} else {
|
826 |
-
if ( empty( $is_edit ) && ! current_user_can( 'throttle' ) ) {
|
827 |
-
bbp_update_user_last_posted( $author_id );
|
828 |
}
|
829 |
}
|
830 |
|
@@ -857,7 +862,10 @@ function bbp_update_reply( $reply_id = 0, $topic_id = 0, $forum_id = 0, $anonymo
|
|
857 |
// Update associated topic values if this is a new reply
|
858 |
if ( empty( $is_edit ) ) {
|
859 |
|
860 |
-
// Update poster
|
|
|
|
|
|
|
861 |
update_post_meta( $reply_id, '_bbp_author_ip', bbp_current_author_ip(), false );
|
862 |
|
863 |
// Last active time
|
@@ -951,7 +959,7 @@ function bbp_update_reply_walker( $reply_id, $last_active_time = '', $forum_id =
|
|
951 |
} elseif ( bbp_is_forum( $ancestor ) ) {
|
952 |
|
953 |
// Only update if reply is published
|
954 |
-
if ( bbp_is_reply_pending( $reply_id ) && ! bbp_is_topic_pending( $topic_id ) ) {
|
955 |
|
956 |
// Last topic and reply ID's
|
957 |
bbp_update_forum_last_topic_id( $ancestor, $topic_id );
|
@@ -1211,7 +1219,7 @@ function bbp_move_reply_handler( $action = '' ) {
|
|
1211 |
/** Move Reply ***********************************************************/
|
1212 |
|
1213 |
if ( empty( $_POST['bbp_reply_id'] ) ) {
|
1214 |
-
bbp_add_error( 'bbp_move_reply_reply_id', __( '<strong>
|
1215 |
} else {
|
1216 |
$move_reply_id = (int) $_POST['bbp_reply_id'];
|
1217 |
}
|
@@ -1220,7 +1228,7 @@ function bbp_move_reply_handler( $action = '' ) {
|
|
1220 |
|
1221 |
// Reply exists
|
1222 |
if ( empty( $move_reply ) ) {
|
1223 |
-
bbp_add_error( 'bbp_mover_reply_r_not_found', __( '<strong>
|
1224 |
}
|
1225 |
|
1226 |
/** Topic to Move From ***************************************************/
|
@@ -1230,18 +1238,18 @@ function bbp_move_reply_handler( $action = '' ) {
|
|
1230 |
|
1231 |
// No topic
|
1232 |
if ( empty( $source_topic ) ) {
|
1233 |
-
bbp_add_error( 'bbp_move_reply_source_not_found', __( '<strong>
|
1234 |
}
|
1235 |
|
1236 |
// Nonce check failed
|
1237 |
if ( ! bbp_verify_nonce_request( 'bbp-move-reply_' . $move_reply->ID ) ) {
|
1238 |
-
bbp_add_error( 'bbp_move_reply_nonce', __( '<strong>
|
1239 |
return;
|
1240 |
}
|
1241 |
|
1242 |
// Use cannot edit topic
|
1243 |
if ( ! current_user_can( 'edit_topic', $source_topic->ID ) ) {
|
1244 |
-
bbp_add_error( 'bbp_move_reply_source_permission', __( '<strong>
|
1245 |
}
|
1246 |
|
1247 |
// How to move
|
@@ -1251,7 +1259,7 @@ function bbp_move_reply_handler( $action = '' ) {
|
|
1251 |
|
1252 |
// Invalid move option
|
1253 |
if ( empty( $move_option ) || ! in_array( $move_option, array( 'existing', 'topic' ), true ) ) {
|
1254 |
-
bbp_add_error( 'bbp_move_reply_option', __( '<strong>
|
1255 |
|
1256 |
// Valid move option
|
1257 |
} else {
|
@@ -1264,7 +1272,7 @@ function bbp_move_reply_handler( $action = '' ) {
|
|
1264 |
|
1265 |
// Get destination topic id
|
1266 |
if ( empty( $_POST['bbp_destination_topic'] ) ) {
|
1267 |
-
bbp_add_error( 'bbp_move_reply_destination_id', __( '<strong>
|
1268 |
} else {
|
1269 |
$destination_topic_id = (int) $_POST['bbp_destination_topic'];
|
1270 |
}
|
@@ -1274,12 +1282,12 @@ function bbp_move_reply_handler( $action = '' ) {
|
|
1274 |
|
1275 |
// No destination topic
|
1276 |
if ( empty( $destination_topic ) ) {
|
1277 |
-
bbp_add_error( 'bbp_move_reply_destination_not_found', __( '<strong>
|
1278 |
}
|
1279 |
|
1280 |
// User cannot edit the destination topic
|
1281 |
if ( ! current_user_can( 'edit_topic', $destination_topic->ID ) ) {
|
1282 |
-
bbp_add_error( 'bbp_move_reply_destination_permission', __( '<strong>
|
1283 |
}
|
1284 |
|
1285 |
// Bump the reply position
|
@@ -1333,12 +1341,12 @@ function bbp_move_reply_handler( $action = '' ) {
|
|
1333 |
|
1334 |
// Shouldn't happen
|
1335 |
if ( false === $destination_topic_id || is_wp_error( $destination_topic_id ) || empty( $destination_topic ) ) {
|
1336 |
-
bbp_add_error( 'bbp_move_reply_destination_reply', __( '<strong>
|
1337 |
}
|
1338 |
|
1339 |
// User cannot publish posts
|
1340 |
} else {
|
1341 |
-
bbp_add_error( 'bbp_move_reply_destination_permission', __( '<strong>
|
1342 |
}
|
1343 |
|
1344 |
break;
|
@@ -1486,13 +1494,13 @@ function bbp_toggle_reply_handler( $action = '' ) {
|
|
1486 |
// Make sure reply exists
|
1487 |
$reply = bbp_get_reply( $reply_id );
|
1488 |
if ( empty( $reply ) ) {
|
1489 |
-
bbp_add_error( 'bbp_toggle_reply_missing', __( '<strong>
|
1490 |
return;
|
1491 |
}
|
1492 |
|
1493 |
// What is the user doing here?
|
1494 |
if ( ! current_user_can( 'edit_reply', $reply_id ) || ( 'bbp_toggle_reply_trash' === $action && ! current_user_can( 'delete_reply', $reply_id ) ) ) {
|
1495 |
-
bbp_add_error( 'bbp_toggle_reply_permission', __( '<strong>
|
1496 |
return;
|
1497 |
}
|
1498 |
|
@@ -1568,7 +1576,7 @@ function bbp_toggle_reply( $args = array() ) {
|
|
1568 |
|
1569 |
$is_approve = bbp_is_reply_pending( $r['id'] );
|
1570 |
$retval['status'] = $is_approve ? bbp_approve_reply( $r['id'] ) : bbp_unapprove_reply( $r['id'] );
|
1571 |
-
$retval['message'] = $is_approve ? __( '<strong>
|
1572 |
$retval['view_all'] = ! $is_approve;
|
1573 |
|
1574 |
break;
|
@@ -1579,7 +1587,7 @@ function bbp_toggle_reply( $args = array() ) {
|
|
1579 |
|
1580 |
$is_spam = bbp_is_reply_spam( $r['id'] );
|
1581 |
$retval['status'] = $is_spam ? bbp_unspam_reply( $r['id'] ) : bbp_spam_reply( $r['id'] );
|
1582 |
-
$retval['message'] = $is_spam ? __( '<strong>
|
1583 |
$retval['view_all'] = ! $is_spam;
|
1584 |
|
1585 |
break;
|
@@ -1594,7 +1602,7 @@ function bbp_toggle_reply( $args = array() ) {
|
|
1594 |
|
1595 |
$retval['view_all'] = true;
|
1596 |
$retval['status'] = wp_trash_post( $r['id'] );
|
1597 |
-
$retval['message'] = __( '<strong>
|
1598 |
|
1599 |
break;
|
1600 |
|
@@ -1602,7 +1610,7 @@ function bbp_toggle_reply( $args = array() ) {
|
|
1602 |
check_ajax_referer( "untrash-{$nonce_suffix}" );
|
1603 |
|
1604 |
$retval['status'] = wp_untrash_post( $r['id'] );
|
1605 |
-
$retval['message'] = __( '<strong>
|
1606 |
|
1607 |
break;
|
1608 |
|
@@ -1610,7 +1618,7 @@ function bbp_toggle_reply( $args = array() ) {
|
|
1610 |
check_ajax_referer( "delete-{$nonce_suffix}" );
|
1611 |
|
1612 |
$retval['status'] = wp_delete_post( $r['id'] );
|
1613 |
-
$retval['message'] = __( '<strong>
|
1614 |
|
1615 |
break;
|
1616 |
}
|
@@ -1825,6 +1833,9 @@ function bbp_approve_reply( $reply_id = 0 ) {
|
|
1825 |
// Set publish status
|
1826 |
$reply->post_status = $status;
|
1827 |
|
|
|
|
|
|
|
1828 |
// No revisions
|
1829 |
remove_action( 'pre_post_update', 'wp_save_post_revision' );
|
1830 |
|
131 |
|
132 |
// Nonce check
|
133 |
if ( ! bbp_verify_nonce_request( 'bbp-new-reply' ) ) {
|
134 |
+
bbp_add_error( 'bbp_new_reply_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
135 |
return;
|
136 |
}
|
137 |
|
156 |
|
157 |
// User cannot create replies
|
158 |
if ( ! current_user_can( 'publish_replies' ) ) {
|
159 |
+
bbp_add_error( 'bbp_reply_permission', __( '<strong>Error</strong>: You do not have permission to reply.', 'bbpress' ) );
|
160 |
}
|
161 |
|
162 |
// Reply author is current user
|
167 |
|
168 |
// Topic id was not passed
|
169 |
if ( empty( $_POST['bbp_topic_id'] ) ) {
|
170 |
+
bbp_add_error( 'bbp_reply_topic_id', __( '<strong>Error</strong>: Topic ID is missing.', 'bbpress' ) );
|
171 |
|
172 |
// Topic id is not a number
|
173 |
} elseif ( ! is_numeric( $_POST['bbp_topic_id'] ) ) {
|
174 |
+
bbp_add_error( 'bbp_reply_topic_id', __( '<strong>Error</strong>: Topic ID must be a number.', 'bbpress' ) );
|
175 |
|
176 |
// Topic id might be valid
|
177 |
} else {
|
181 |
|
182 |
// Topic id is a negative number
|
183 |
if ( 0 > $posted_topic_id ) {
|
184 |
+
bbp_add_error( 'bbp_reply_topic_id', __( '<strong>Error</strong>: Topic ID cannot be a negative number.', 'bbpress' ) );
|
185 |
|
186 |
// Topic does not exist
|
187 |
} elseif ( ! bbp_get_topic( $posted_topic_id ) ) {
|
188 |
+
bbp_add_error( 'bbp_reply_topic_id', __( '<strong>Error</strong>: Topic does not exist.', 'bbpress' ) );
|
189 |
|
190 |
// Use the POST'ed topic id
|
191 |
} else {
|
204 |
|
205 |
// Empty Forum id was passed
|
206 |
if ( empty( $_POST['bbp_forum_id'] ) ) {
|
207 |
+
bbp_add_error( 'bbp_reply_forum_id', __( '<strong>Error</strong>: Forum ID is missing.', 'bbpress' ) );
|
208 |
|
209 |
// Forum id is not a number
|
210 |
} elseif ( ! is_numeric( $_POST['bbp_forum_id'] ) ) {
|
211 |
+
bbp_add_error( 'bbp_reply_forum_id', __( '<strong>Error</strong>: Forum ID must be a number.', 'bbpress' ) );
|
212 |
|
213 |
// Forum id might be valid
|
214 |
} else {
|
218 |
|
219 |
// Forum id is empty
|
220 |
if ( 0 === $posted_forum_id ) {
|
221 |
+
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>Error</strong>: Forum ID is missing.', 'bbpress' ) );
|
222 |
|
223 |
// Forum id is a negative number
|
224 |
} elseif ( 0 > $posted_forum_id ) {
|
225 |
+
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>Error</strong>: Forum ID cannot be a negative number.', 'bbpress' ) );
|
226 |
|
227 |
// Forum does not exist
|
228 |
} elseif ( ! bbp_get_forum( $posted_forum_id ) ) {
|
229 |
+
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>Error</strong>: Forum does not exist.', 'bbpress' ) );
|
230 |
|
231 |
// Use the POST'ed forum id
|
232 |
} else {
|
240 |
|
241 |
// Forum is a category
|
242 |
if ( bbp_is_forum_category( $forum_id ) ) {
|
243 |
+
bbp_add_error( 'bbp_new_reply_forum_category', __( '<strong>Error</strong>: This forum is a category. No replies can be created in this forum.', 'bbpress' ) );
|
244 |
|
245 |
// Forum is not a category
|
246 |
} else {
|
247 |
|
248 |
// Forum is closed and user cannot access
|
249 |
if ( bbp_is_forum_closed( $forum_id ) && ! current_user_can( 'edit_forum', $forum_id ) ) {
|
250 |
+
bbp_add_error( 'bbp_new_reply_forum_closed', __( '<strong>Error</strong>: This forum has been closed to new replies.', 'bbpress' ) );
|
251 |
}
|
252 |
|
253 |
// Forum is private and user cannot access
|
254 |
if ( bbp_is_forum_private( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
255 |
+
bbp_add_error( 'bbp_new_reply_forum_private', __( '<strong>Error</strong>: This forum is private and you do not have the capability to read or create new replies in it.', 'bbpress' ) );
|
256 |
|
257 |
// Forum is hidden and user cannot access
|
258 |
} elseif ( bbp_is_forum_hidden( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
259 |
+
bbp_add_error( 'bbp_new_reply_forum_hidden', __( '<strong>Error</strong>: This forum is hidden and you do not have the capability to read or create new replies in it.', 'bbpress' ) );
|
260 |
}
|
261 |
}
|
262 |
}
|
281 |
|
282 |
// Title too long
|
283 |
if ( bbp_is_title_too_long( $reply_title ) ) {
|
284 |
+
bbp_add_error( 'bbp_reply_title', __( '<strong>Error</strong>: Your title is too long.', 'bbpress' ) );
|
285 |
}
|
286 |
|
287 |
/** Reply Content *********************************************************/
|
295 |
|
296 |
// No reply content
|
297 |
if ( empty( $reply_content ) ) {
|
298 |
+
bbp_add_error( 'bbp_reply_content', __( '<strong>Error</strong>: Your reply cannot be empty.', 'bbpress' ) );
|
299 |
}
|
300 |
|
301 |
/** Reply Flooding ********************************************************/
|
302 |
|
303 |
if ( ! bbp_check_for_flood( $anonymous_data, $reply_author ) ) {
|
304 |
+
bbp_add_error( 'bbp_reply_flood', __( '<strong>Error</strong>: Slow down; you move too fast.', 'bbpress' ) );
|
305 |
}
|
306 |
|
307 |
/** Reply Duplicate *******************************************************/
|
308 |
|
309 |
if ( ! bbp_check_for_duplicate( array( 'post_type' => bbp_get_reply_post_type(), 'post_author' => $reply_author, 'post_content' => $reply_content, 'post_parent' => $topic_id, 'anonymous_data' => $anonymous_data ) ) ) {
|
310 |
+
bbp_add_error( 'bbp_reply_duplicate', __( '<strong>Error</strong>: Duplicate reply detected; it looks as though you’ve already said that.', 'bbpress' ) );
|
311 |
}
|
312 |
|
313 |
/** Reply Bad Words *******************************************************/
|
314 |
|
315 |
if ( ! bbp_check_for_moderation( $anonymous_data, $reply_author, $reply_title, $reply_content, true ) ) {
|
316 |
+
bbp_add_error( 'bbp_reply_moderation', __( '<strong>Error</strong>: Your reply cannot be created at this time.', 'bbpress' ) );
|
317 |
}
|
318 |
|
319 |
/** Reply Status **********************************************************/
|
338 |
|
339 |
// If topic is closed, moderators can still reply
|
340 |
if ( bbp_is_topic_closed( $topic_id ) && ! current_user_can( 'moderate', $topic_id ) ) {
|
341 |
+
bbp_add_error( 'bbp_reply_topic_closed', __( '<strong>Error</strong>: Topic is closed.', 'bbpress' ) );
|
342 |
}
|
343 |
|
344 |
/** Topic Tags ************************************************************/
|
398 |
|
399 |
// Term error
|
400 |
if ( is_wp_error( $terms ) ) {
|
401 |
+
bbp_add_error( 'bbp_reply_tags', __( '<strong>Error</strong>: There was a problem adding the tags to the topic.', 'bbpress' ) );
|
402 |
}
|
403 |
|
404 |
/** Trash Check *******************************************************/
|
414 |
if ( bbp_is_topic_trash( $topic_id ) ) {
|
415 |
|
416 |
// Get pre_trashed_replies for topic
|
417 |
+
$pre_trashed_meta = get_post_meta( $topic_id, '_bbp_pre_trashed_replies', true );
|
418 |
+
|
419 |
+
// Format the meta value
|
420 |
+
$pre_trashed_replies = is_array( $pre_trashed_meta )
|
421 |
+
? array_filter( $pre_trashed_meta )
|
422 |
+
: array();
|
423 |
|
424 |
// Add this reply to the end of the existing replies
|
425 |
$pre_trashed_replies[] = $reply_id;
|
438 |
if ( bbp_is_topic_spam( $topic_id ) ) {
|
439 |
|
440 |
// Get pre_spammed_replies for topic
|
441 |
+
$pre_trashed_meta = get_post_meta( $topic_id, '_bbp_pre_spammed_replies', true );
|
442 |
+
|
443 |
+
// Format the meta value
|
444 |
+
$pre_spammed_replies = is_array( $pre_trashed_meta )
|
445 |
+
? array_filter( $pre_trashed_meta )
|
446 |
+
: array();
|
447 |
|
448 |
// Add this reply to the end of the existing replies
|
449 |
$pre_spammed_replies[] = $reply_id;
|
481 |
|
482 |
// WP_Error
|
483 |
} elseif ( is_wp_error( $reply_id ) ) {
|
484 |
+
bbp_add_error( 'bbp_reply_error', sprintf( __( '<strong>Error</strong>: The following problem(s) occurred: %s', 'bbpress' ), $reply_id->get_error_message() ) );
|
485 |
|
486 |
// Generic error
|
487 |
} else {
|
488 |
+
bbp_add_error( 'bbp_reply_error', __( '<strong>Error</strong>: The reply was not created.', 'bbpress' ) );
|
489 |
}
|
490 |
}
|
491 |
|
513 |
|
514 |
// Reply id was not passed
|
515 |
if ( empty( $_POST['bbp_reply_id'] ) ) {
|
516 |
+
bbp_add_error( 'bbp_edit_reply_id', __( '<strong>Error</strong>: Reply ID not found.', 'bbpress' ) );
|
517 |
return;
|
518 |
|
519 |
// Reply id was passed
|
524 |
|
525 |
// Nonce check
|
526 |
if ( ! bbp_verify_nonce_request( 'bbp-edit-reply_' . $reply_id ) ) {
|
527 |
+
bbp_add_error( 'bbp_edit_reply_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
528 |
return;
|
529 |
}
|
530 |
|
531 |
// Reply does not exist
|
532 |
if ( empty( $reply ) ) {
|
533 |
+
bbp_add_error( 'bbp_edit_reply_not_found', __( '<strong>Error</strong>: The reply you want to edit was not found.', 'bbpress' ) );
|
534 |
return;
|
535 |
|
536 |
// Reply exists
|
541 |
|
542 |
// User cannot edit this reply
|
543 |
if ( ! current_user_can( 'edit_reply', $reply_id ) ) {
|
544 |
+
bbp_add_error( 'bbp_edit_reply_permission', __( '<strong>Error</strong>: You do not have permission to edit that reply.', 'bbpress' ) );
|
545 |
return;
|
546 |
}
|
547 |
|
576 |
|
577 |
// Forum is a category
|
578 |
if ( bbp_is_forum_category( $forum_id ) ) {
|
579 |
+
bbp_add_error( 'bbp_edit_reply_forum_category', __( '<strong>Error</strong>: This forum is a category. No replies can be created in this forum.', 'bbpress' ) );
|
580 |
|
581 |
// Forum is not a category
|
582 |
} else {
|
583 |
|
584 |
// Forum is closed and user cannot access
|
585 |
if ( bbp_is_forum_closed( $forum_id ) && ! current_user_can( 'edit_forum', $forum_id ) ) {
|
586 |
+
bbp_add_error( 'bbp_edit_reply_forum_closed', __( '<strong>Error</strong>: This forum has been closed to new replies.', 'bbpress' ) );
|
587 |
}
|
588 |
|
589 |
// Forum is private and user cannot access
|
590 |
if ( bbp_is_forum_private( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
591 |
+
bbp_add_error( 'bbp_edit_reply_forum_private', __( '<strong>Error</strong>: This forum is private and you do not have the capability to read or create new replies in it.', 'bbpress' ) );
|
592 |
|
593 |
// Forum is hidden and user cannot access
|
594 |
} elseif ( bbp_is_forum_hidden( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
595 |
+
bbp_add_error( 'bbp_edit_reply_forum_hidden', __( '<strong>Error</strong>: This forum is hidden and you do not have the capability to read or create new replies in it.', 'bbpress' ) );
|
596 |
}
|
597 |
}
|
598 |
}
|
608 |
|
609 |
// Title too long
|
610 |
if ( bbp_is_title_too_long( $reply_title ) ) {
|
611 |
+
bbp_add_error( 'bbp_reply_title', __( '<strong>Error</strong>: Your title is too long.', 'bbpress' ) );
|
612 |
}
|
613 |
|
614 |
/** Reply Content *********************************************************/
|
622 |
|
623 |
// No reply content
|
624 |
if ( empty( $reply_content ) ) {
|
625 |
+
bbp_add_error( 'bbp_edit_reply_content', __( '<strong>Error</strong>: Your reply cannot be empty.', 'bbpress' ) );
|
626 |
}
|
627 |
|
628 |
/** Reply Bad Words *******************************************************/
|
629 |
|
630 |
if ( ! bbp_check_for_moderation( $anonymous_data, $reply_author, $reply_title, $reply_content, true ) ) {
|
631 |
+
bbp_add_error( 'bbp_reply_moderation', __( '<strong>Error</strong>: Your reply cannot be edited at this time.', 'bbpress' ) );
|
632 |
}
|
633 |
|
634 |
/** Reply Status **********************************************************/
|
718 |
|
719 |
// Term error
|
720 |
if ( is_wp_error( $terms ) ) {
|
721 |
+
bbp_add_error( 'bbp_reply_tags', __( '<strong>Error</strong>: There was a problem adding the tags to the topic.', 'bbpress' ) );
|
722 |
}
|
723 |
|
724 |
/** No Errors *************************************************************/
|
776 |
|
777 |
} else {
|
778 |
$append_error = ( is_wp_error( $reply_id ) && $reply_id->get_error_message() ) ? $reply_id->get_error_message() . ' ' : '';
|
779 |
+
bbp_add_error( 'bbp_reply_error', __( '<strong>Error</strong>: The following problem(s) have been found with your reply:' . $append_error . 'Please try again.', 'bbpress' ) );
|
780 |
}
|
781 |
}
|
782 |
|
829 |
|
830 |
// Set transient for throttle check (only on new, not edit)
|
831 |
if ( empty( $is_edit ) ) {
|
832 |
+
set_transient( '_bbp_' . bbp_current_author_ip() . '_last_posted', time(), HOUR_IN_SECONDS );
|
|
|
|
|
|
|
|
|
|
|
833 |
}
|
834 |
}
|
835 |
|
862 |
// Update associated topic values if this is a new reply
|
863 |
if ( empty( $is_edit ) ) {
|
864 |
|
865 |
+
// Update poster activity time
|
866 |
+
bbp_update_user_last_posted( $author_id );
|
867 |
+
|
868 |
+
// Update poster IP
|
869 |
update_post_meta( $reply_id, '_bbp_author_ip', bbp_current_author_ip(), false );
|
870 |
|
871 |
// Last active time
|
959 |
} elseif ( bbp_is_forum( $ancestor ) ) {
|
960 |
|
961 |
// Only update if reply is published
|
962 |
+
if ( ! bbp_is_reply_pending( $reply_id ) && ! bbp_is_topic_pending( $topic_id ) ) {
|
963 |
|
964 |
// Last topic and reply ID's
|
965 |
bbp_update_forum_last_topic_id( $ancestor, $topic_id );
|
1219 |
/** Move Reply ***********************************************************/
|
1220 |
|
1221 |
if ( empty( $_POST['bbp_reply_id'] ) ) {
|
1222 |
+
bbp_add_error( 'bbp_move_reply_reply_id', __( '<strong>Error</strong>: A reply ID is required', 'bbpress' ) );
|
1223 |
} else {
|
1224 |
$move_reply_id = (int) $_POST['bbp_reply_id'];
|
1225 |
}
|
1228 |
|
1229 |
// Reply exists
|
1230 |
if ( empty( $move_reply ) ) {
|
1231 |
+
bbp_add_error( 'bbp_mover_reply_r_not_found', __( '<strong>Error</strong>: The reply you want to move was not found.', 'bbpress' ) );
|
1232 |
}
|
1233 |
|
1234 |
/** Topic to Move From ***************************************************/
|
1238 |
|
1239 |
// No topic
|
1240 |
if ( empty( $source_topic ) ) {
|
1241 |
+
bbp_add_error( 'bbp_move_reply_source_not_found', __( '<strong>Error</strong>: The topic you want to move from was not found.', 'bbpress' ) );
|
1242 |
}
|
1243 |
|
1244 |
// Nonce check failed
|
1245 |
if ( ! bbp_verify_nonce_request( 'bbp-move-reply_' . $move_reply->ID ) ) {
|
1246 |
+
bbp_add_error( 'bbp_move_reply_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
1247 |
return;
|
1248 |
}
|
1249 |
|
1250 |
// Use cannot edit topic
|
1251 |
if ( ! current_user_can( 'edit_topic', $source_topic->ID ) ) {
|
1252 |
+
bbp_add_error( 'bbp_move_reply_source_permission', __( '<strong>Error</strong>: You do not have permission to edit the source topic.', 'bbpress' ) );
|
1253 |
}
|
1254 |
|
1255 |
// How to move
|
1259 |
|
1260 |
// Invalid move option
|
1261 |
if ( empty( $move_option ) || ! in_array( $move_option, array( 'existing', 'topic' ), true ) ) {
|
1262 |
+
bbp_add_error( 'bbp_move_reply_option', __( '<strong>Error</strong>: You need to choose a valid move option.', 'bbpress' ) );
|
1263 |
|
1264 |
// Valid move option
|
1265 |
} else {
|
1272 |
|
1273 |
// Get destination topic id
|
1274 |
if ( empty( $_POST['bbp_destination_topic'] ) ) {
|
1275 |
+
bbp_add_error( 'bbp_move_reply_destination_id', __( '<strong>Error</strong>: A topic ID is required.', 'bbpress' ) );
|
1276 |
} else {
|
1277 |
$destination_topic_id = (int) $_POST['bbp_destination_topic'];
|
1278 |
}
|
1282 |
|
1283 |
// No destination topic
|
1284 |
if ( empty( $destination_topic ) ) {
|
1285 |
+
bbp_add_error( 'bbp_move_reply_destination_not_found', __( '<strong>Error</strong>: The topic you want to move to was not found.', 'bbpress' ) );
|
1286 |
}
|
1287 |
|
1288 |
// User cannot edit the destination topic
|
1289 |
if ( ! current_user_can( 'edit_topic', $destination_topic->ID ) ) {
|
1290 |
+
bbp_add_error( 'bbp_move_reply_destination_permission', __( '<strong>Error</strong>: You do not have permission to edit the destination topic.', 'bbpress' ) );
|
1291 |
}
|
1292 |
|
1293 |
// Bump the reply position
|
1341 |
|
1342 |
// Shouldn't happen
|
1343 |
if ( false === $destination_topic_id || is_wp_error( $destination_topic_id ) || empty( $destination_topic ) ) {
|
1344 |
+
bbp_add_error( 'bbp_move_reply_destination_reply', __( '<strong>Error</strong>: There was a problem converting the reply into the topic. Please try again.', 'bbpress' ) );
|
1345 |
}
|
1346 |
|
1347 |
// User cannot publish posts
|
1348 |
} else {
|
1349 |
+
bbp_add_error( 'bbp_move_reply_destination_permission', __( '<strong>Error</strong>: You do not have permission to create new topics. The reply could not be converted into a topic.', 'bbpress' ) );
|
1350 |
}
|
1351 |
|
1352 |
break;
|
1494 |
// Make sure reply exists
|
1495 |
$reply = bbp_get_reply( $reply_id );
|
1496 |
if ( empty( $reply ) ) {
|
1497 |
+
bbp_add_error( 'bbp_toggle_reply_missing', __( '<strong>Error</strong>: This reply could not be found or no longer exists.', 'bbpress' ) );
|
1498 |
return;
|
1499 |
}
|
1500 |
|
1501 |
// What is the user doing here?
|
1502 |
if ( ! current_user_can( 'edit_reply', $reply_id ) || ( 'bbp_toggle_reply_trash' === $action && ! current_user_can( 'delete_reply', $reply_id ) ) ) {
|
1503 |
+
bbp_add_error( 'bbp_toggle_reply_permission', __( '<strong>Error</strong>: You do not have permission to do that.', 'bbpress' ) );
|
1504 |
return;
|
1505 |
}
|
1506 |
|
1576 |
|
1577 |
$is_approve = bbp_is_reply_pending( $r['id'] );
|
1578 |
$retval['status'] = $is_approve ? bbp_approve_reply( $r['id'] ) : bbp_unapprove_reply( $r['id'] );
|
1579 |
+
$retval['message'] = $is_approve ? __( '<strong>Error</strong>: There was a problem approving the reply.', 'bbpress' ) : __( '<strong>Error</strong>: There was a problem unapproving the reply.', 'bbpress' );
|
1580 |
$retval['view_all'] = ! $is_approve;
|
1581 |
|
1582 |
break;
|
1587 |
|
1588 |
$is_spam = bbp_is_reply_spam( $r['id'] );
|
1589 |
$retval['status'] = $is_spam ? bbp_unspam_reply( $r['id'] ) : bbp_spam_reply( $r['id'] );
|
1590 |
+
$retval['message'] = $is_spam ? __( '<strong>Error</strong>: There was a problem unmarking the reply as spam.', 'bbpress' ) : __( '<strong>Error</strong>: There was a problem marking the reply as spam.', 'bbpress' );
|
1591 |
$retval['view_all'] = ! $is_spam;
|
1592 |
|
1593 |
break;
|
1602 |
|
1603 |
$retval['view_all'] = true;
|
1604 |
$retval['status'] = wp_trash_post( $r['id'] );
|
1605 |
+
$retval['message'] = __( '<strong>Error</strong>: There was a problem trashing the reply.', 'bbpress' );
|
1606 |
|
1607 |
break;
|
1608 |
|
1610 |
check_ajax_referer( "untrash-{$nonce_suffix}" );
|
1611 |
|
1612 |
$retval['status'] = wp_untrash_post( $r['id'] );
|
1613 |
+
$retval['message'] = __( '<strong>Error</strong>: There was a problem untrashing the reply.', 'bbpress' );
|
1614 |
|
1615 |
break;
|
1616 |
|
1618 |
check_ajax_referer( "delete-{$nonce_suffix}" );
|
1619 |
|
1620 |
$retval['status'] = wp_delete_post( $r['id'] );
|
1621 |
+
$retval['message'] = __( '<strong>Error</strong>: There was a problem deleting the reply.', 'bbpress' );
|
1622 |
|
1623 |
break;
|
1624 |
}
|
1833 |
// Set publish status
|
1834 |
$reply->post_status = $status;
|
1835 |
|
1836 |
+
// Set post date GMT - prevents post_date override in wp_update_post()
|
1837 |
+
$reply->post_date_gmt = get_gmt_from_date( $reply->post_date );
|
1838 |
+
|
1839 |
// No revisions
|
1840 |
remove_action( 'pre_post_update', 'wp_save_post_revision' );
|
1841 |
|
includes/replies/template.php
CHANGED
@@ -436,6 +436,7 @@ function bbp_reply_url( $reply_id = 0 ) {
|
|
436 |
|
437 |
// Set needed variables
|
438 |
$reply_id = bbp_get_reply_id( $reply_id );
|
|
|
439 |
|
440 |
// Juggle reply & topic IDs for unpretty URL formatting
|
441 |
if ( bbp_is_reply( $reply_id ) ) {
|
@@ -2493,7 +2494,7 @@ function bbp_form_reply_to() {
|
|
2493 |
$reply_to = 0;
|
2494 |
|
2495 |
// Get $_REQUEST data
|
2496 |
-
if (
|
2497 |
$reply_to = bbp_validate_reply_to( $_REQUEST['bbp_reply_to'] );
|
2498 |
}
|
2499 |
|
436 |
|
437 |
// Set needed variables
|
438 |
$reply_id = bbp_get_reply_id( $reply_id );
|
439 |
+
$topic_id = 0;
|
440 |
|
441 |
// Juggle reply & topic IDs for unpretty URL formatting
|
442 |
if ( bbp_is_reply( $reply_id ) ) {
|
2494 |
$reply_to = 0;
|
2495 |
|
2496 |
// Get $_REQUEST data
|
2497 |
+
if ( isset( $_REQUEST['bbp_reply_to'] ) ) {
|
2498 |
$reply_to = bbp_validate_reply_to( $_REQUEST['bbp_reply_to'] );
|
2499 |
}
|
2500 |
|
includes/topics/functions.php
CHANGED
@@ -102,7 +102,7 @@ function bbp_new_topic_handler( $action = '' ) {
|
|
102 |
|
103 |
// Nonce check
|
104 |
if ( ! bbp_verify_nonce_request( 'bbp-new-topic' ) ) {
|
105 |
-
bbp_add_error( 'bbp_new_topic_nonce', __( '<strong>
|
106 |
return;
|
107 |
}
|
108 |
|
@@ -129,7 +129,7 @@ function bbp_new_topic_handler( $action = '' ) {
|
|
129 |
|
130 |
// User cannot create topics
|
131 |
if ( ! current_user_can( 'publish_topics' ) ) {
|
132 |
-
bbp_add_error( 'bbp_topic_permission', __( '<strong>
|
133 |
return;
|
134 |
}
|
135 |
|
@@ -155,12 +155,12 @@ function bbp_new_topic_handler( $action = '' ) {
|
|
155 |
|
156 |
// No topic title
|
157 |
if ( empty( $topic_title ) ) {
|
158 |
-
bbp_add_error( 'bbp_topic_title', __( '<strong>
|
159 |
}
|
160 |
|
161 |
// Title too long
|
162 |
if ( bbp_is_title_too_long( $topic_title ) ) {
|
163 |
-
bbp_add_error( 'bbp_topic_title', __( '<strong>
|
164 |
}
|
165 |
|
166 |
/** Topic Content *********************************************************/
|
@@ -174,7 +174,7 @@ function bbp_new_topic_handler( $action = '' ) {
|
|
174 |
|
175 |
// No topic content
|
176 |
if ( empty( $topic_content ) ) {
|
177 |
-
bbp_add_error( 'bbp_topic_content', __( '<strong>
|
178 |
}
|
179 |
|
180 |
/** Topic Forum ***********************************************************/
|
@@ -184,11 +184,11 @@ function bbp_new_topic_handler( $action = '' ) {
|
|
184 |
|
185 |
// Empty Forum id was passed
|
186 |
if ( empty( $_POST['bbp_forum_id'] ) ) {
|
187 |
-
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>
|
188 |
|
189 |
// Forum id is not a number
|
190 |
} elseif ( ! is_numeric( $_POST['bbp_forum_id'] ) ) {
|
191 |
-
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>
|
192 |
|
193 |
// Forum id might be valid
|
194 |
} else {
|
@@ -198,15 +198,15 @@ function bbp_new_topic_handler( $action = '' ) {
|
|
198 |
|
199 |
// Forum id is empty
|
200 |
if ( 0 === $posted_forum_id ) {
|
201 |
-
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>
|
202 |
|
203 |
// Forum id is a negative number
|
204 |
} elseif ( 0 > $posted_forum_id ) {
|
205 |
-
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>
|
206 |
|
207 |
// Forum does not exist
|
208 |
} elseif ( ! bbp_get_forum( $posted_forum_id ) ) {
|
209 |
-
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>
|
210 |
|
211 |
// Use the POST'ed forum id
|
212 |
} else {
|
@@ -220,23 +220,23 @@ function bbp_new_topic_handler( $action = '' ) {
|
|
220 |
|
221 |
// Forum is a category
|
222 |
if ( bbp_is_forum_category( $forum_id ) ) {
|
223 |
-
bbp_add_error( 'bbp_new_topic_forum_category', __( '<strong>
|
224 |
|
225 |
// Forum is not a category
|
226 |
} else {
|
227 |
|
228 |
// Forum is closed and user cannot access
|
229 |
if ( bbp_is_forum_closed( $forum_id ) && ! current_user_can( 'edit_forum', $forum_id ) ) {
|
230 |
-
bbp_add_error( 'bbp_new_topic_forum_closed', __( '<strong>
|
231 |
}
|
232 |
|
233 |
// Forum is private and user cannot access
|
234 |
if ( bbp_is_forum_private( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
235 |
-
bbp_add_error( 'bbp_new_topic_forum_private', __( '<strong>
|
236 |
|
237 |
// Forum is hidden and user cannot access
|
238 |
} elseif ( bbp_is_forum_hidden( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
239 |
-
bbp_add_error( 'bbp_new_topic_forum_hidden', __( '<strong>
|
240 |
}
|
241 |
}
|
242 |
}
|
@@ -244,19 +244,19 @@ function bbp_new_topic_handler( $action = '' ) {
|
|
244 |
/** Topic Flooding ********************************************************/
|
245 |
|
246 |
if ( ! bbp_check_for_flood( $anonymous_data, $topic_author ) ) {
|
247 |
-
bbp_add_error( 'bbp_topic_flood', __( '<strong>
|
248 |
}
|
249 |
|
250 |
/** Topic Duplicate *******************************************************/
|
251 |
|
252 |
if ( ! bbp_check_for_duplicate( array( 'post_type' => bbp_get_topic_post_type(), 'post_author' => $topic_author, 'post_content' => $topic_content, 'anonymous_data' => $anonymous_data ) ) ) {
|
253 |
-
bbp_add_error( 'bbp_topic_duplicate', __( '<strong>
|
254 |
}
|
255 |
|
256 |
/** Topic Bad Words *******************************************************/
|
257 |
|
258 |
if ( ! bbp_check_for_moderation( $anonymous_data, $topic_author, $topic_title, $topic_content, true ) ) {
|
259 |
-
bbp_add_error( 'bbp_topic_moderation', __( '<strong>
|
260 |
}
|
261 |
|
262 |
/** Topic Status **********************************************************/
|
@@ -397,11 +397,11 @@ function bbp_new_topic_handler( $action = '' ) {
|
|
397 |
|
398 |
// WP_Error
|
399 |
} elseif ( is_wp_error( $topic_id ) ) {
|
400 |
-
bbp_add_error( 'bbp_topic_error', sprintf( __( '<strong>
|
401 |
|
402 |
// Generic error
|
403 |
} else {
|
404 |
-
bbp_add_error( 'bbp_topic_error', __( '<strong>
|
405 |
}
|
406 |
}
|
407 |
|
@@ -427,7 +427,7 @@ function bbp_edit_topic_handler( $action = '' ) {
|
|
427 |
|
428 |
// Topic id was not passed
|
429 |
if ( empty( $_POST['bbp_topic_id'] ) ) {
|
430 |
-
bbp_add_error( 'bbp_edit_topic_id', __( '<strong>
|
431 |
return;
|
432 |
|
433 |
// Topic id was passed
|
@@ -438,7 +438,7 @@ function bbp_edit_topic_handler( $action = '' ) {
|
|
438 |
|
439 |
// Topic does not exist
|
440 |
if ( empty( $topic ) ) {
|
441 |
-
bbp_add_error( 'bbp_edit_topic_not_found', __( '<strong>
|
442 |
return;
|
443 |
|
444 |
// Topic exists
|
@@ -449,7 +449,7 @@ function bbp_edit_topic_handler( $action = '' ) {
|
|
449 |
|
450 |
// User cannot edit this topic
|
451 |
if ( ! current_user_can( 'edit_topic', $topic_id ) ) {
|
452 |
-
bbp_add_error( 'bbp_edit_topic_permission', __( '<strong>
|
453 |
}
|
454 |
|
455 |
// Set topic author
|
@@ -465,7 +465,7 @@ function bbp_edit_topic_handler( $action = '' ) {
|
|
465 |
|
466 |
// Nonce check
|
467 |
if ( ! bbp_verify_nonce_request( 'bbp-edit-topic_' . $topic_id ) ) {
|
468 |
-
bbp_add_error( 'bbp_edit_topic_nonce', __( '<strong>
|
469 |
return;
|
470 |
}
|
471 |
|
@@ -480,7 +480,7 @@ function bbp_edit_topic_handler( $action = '' ) {
|
|
480 |
|
481 |
// Forum id was not passed
|
482 |
if ( empty( $_POST['bbp_forum_id'] ) ) {
|
483 |
-
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>
|
484 |
|
485 |
// Forum id was passed
|
486 |
} elseif ( is_numeric( $_POST['bbp_forum_id'] ) ) {
|
@@ -495,23 +495,23 @@ function bbp_edit_topic_handler( $action = '' ) {
|
|
495 |
|
496 |
// Forum is a category
|
497 |
if ( bbp_is_forum_category( $forum_id ) ) {
|
498 |
-
bbp_add_error( 'bbp_edit_topic_forum_category', __( '<strong>
|
499 |
|
500 |
// Forum is not a category
|
501 |
} else {
|
502 |
|
503 |
// Forum is closed and user cannot access
|
504 |
if ( bbp_is_forum_closed( $forum_id ) && ! current_user_can( 'edit_forum', $forum_id ) ) {
|
505 |
-
bbp_add_error( 'bbp_edit_topic_forum_closed', __( '<strong>
|
506 |
}
|
507 |
|
508 |
// Forum is private and user cannot access
|
509 |
if ( bbp_is_forum_private( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
510 |
-
bbp_add_error( 'bbp_edit_topic_forum_private', __( '<strong>
|
511 |
|
512 |
// Forum is hidden and user cannot access
|
513 |
} elseif ( bbp_is_forum_hidden( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
514 |
-
bbp_add_error( 'bbp_edit_topic_forum_hidden', __( '<strong>
|
515 |
}
|
516 |
}
|
517 |
}
|
@@ -527,12 +527,12 @@ function bbp_edit_topic_handler( $action = '' ) {
|
|
527 |
|
528 |
// No topic title
|
529 |
if ( empty( $topic_title ) ) {
|
530 |
-
bbp_add_error( 'bbp_edit_topic_title', __( '<strong>
|
531 |
}
|
532 |
|
533 |
// Title too long
|
534 |
if ( bbp_is_title_too_long( $topic_title ) ) {
|
535 |
-
bbp_add_error( 'bbp_topic_title', __( '<strong>
|
536 |
}
|
537 |
|
538 |
/** Topic Content *********************************************************/
|
@@ -546,13 +546,13 @@ function bbp_edit_topic_handler( $action = '' ) {
|
|
546 |
|
547 |
// No topic content
|
548 |
if ( empty( $topic_content ) ) {
|
549 |
-
bbp_add_error( 'bbp_edit_topic_content', __( '<strong>
|
550 |
}
|
551 |
|
552 |
/** Topic Bad Words *******************************************************/
|
553 |
|
554 |
if ( ! bbp_check_for_moderation( $anonymous_data, $topic_author, $topic_title, $topic_content, true ) ) {
|
555 |
-
bbp_add_error( 'bbp_topic_moderation', __( '<strong>
|
556 |
}
|
557 |
|
558 |
/** Topic Status **********************************************************/
|
@@ -713,7 +713,7 @@ function bbp_edit_topic_handler( $action = '' ) {
|
|
713 |
|
714 |
} else {
|
715 |
$append_error = ( is_wp_error( $topic_id ) && $topic_id->get_error_message() ) ? $topic_id->get_error_message() . ' ' : '';
|
716 |
-
bbp_add_error( 'bbp_topic_error', __( '<strong>
|
717 |
}
|
718 |
}
|
719 |
|
@@ -770,9 +770,10 @@ function bbp_update_topic( $topic_id = 0, $forum_id = 0, $anonymous_data = array
|
|
770 |
bbp_stick_topic( $topic_id, true );
|
771 |
break;
|
772 |
|
773 |
-
//
|
774 |
case 'unstick' :
|
775 |
default :
|
|
|
776 |
break;
|
777 |
}
|
778 |
}
|
@@ -786,12 +787,7 @@ function bbp_update_topic( $topic_id = 0, $forum_id = 0, $anonymous_data = array
|
|
786 |
|
787 |
// Set transient for throttle check (only on new, not edit)
|
788 |
if ( empty( $is_edit ) ) {
|
789 |
-
set_transient( '_bbp_' . bbp_current_author_ip() . '_last_posted', time() );
|
790 |
-
}
|
791 |
-
|
792 |
-
} else {
|
793 |
-
if ( empty( $is_edit ) && ! current_user_can( 'throttle' ) ) {
|
794 |
-
bbp_update_user_last_posted( $author_id );
|
795 |
}
|
796 |
}
|
797 |
|
@@ -819,7 +815,10 @@ function bbp_update_topic( $topic_id = 0, $forum_id = 0, $anonymous_data = array
|
|
819 |
// Update associated topic values if this is a new topic
|
820 |
if ( empty( $is_edit ) ) {
|
821 |
|
822 |
-
// Update poster
|
|
|
|
|
|
|
823 |
update_post_meta( $topic_id, '_bbp_author_ip', bbp_current_author_ip(), false );
|
824 |
|
825 |
// Last active time
|
@@ -1082,25 +1081,25 @@ function bbp_merge_topic_handler( $action = '' ) {
|
|
1082 |
|
1083 |
// Topic id
|
1084 |
if ( empty( $_POST['bbp_topic_id'] ) ) {
|
1085 |
-
bbp_add_error( 'bbp_merge_topic_source_id', __( '<strong>
|
1086 |
} else {
|
1087 |
$source_topic_id = (int) $_POST['bbp_topic_id'];
|
1088 |
}
|
1089 |
|
1090 |
// Nonce check
|
1091 |
if ( ! bbp_verify_nonce_request( 'bbp-merge-topic_' . $source_topic_id ) ) {
|
1092 |
-
bbp_add_error( 'bbp_merge_topic_nonce', __( '<strong>
|
1093 |
return;
|
1094 |
|
1095 |
// Source topic not found
|
1096 |
} elseif ( ! $source_topic = bbp_get_topic( $source_topic_id ) ) {
|
1097 |
-
bbp_add_error( 'bbp_merge_topic_source_not_found', __( '<strong>
|
1098 |
return;
|
1099 |
}
|
1100 |
|
1101 |
// Cannot edit source topic
|
1102 |
if ( ! current_user_can( 'edit_topic', $source_topic->ID ) ) {
|
1103 |
-
bbp_add_error( 'bbp_merge_topic_source_permission', __( '<strong>
|
1104 |
return;
|
1105 |
}
|
1106 |
|
@@ -1108,19 +1107,19 @@ function bbp_merge_topic_handler( $action = '' ) {
|
|
1108 |
|
1109 |
// Topic id
|
1110 |
if ( empty( $_POST['bbp_destination_topic'] ) ) {
|
1111 |
-
bbp_add_error( 'bbp_merge_topic_destination_id', __( '<strong>
|
1112 |
} else {
|
1113 |
$destination_topic_id = (int) $_POST['bbp_destination_topic'];
|
1114 |
}
|
1115 |
|
1116 |
// Destination topic not found
|
1117 |
if ( ! $destination_topic = bbp_get_topic( $destination_topic_id ) ) {
|
1118 |
-
bbp_add_error( 'bbp_merge_topic_destination_not_found', __( '<strong>
|
1119 |
}
|
1120 |
|
1121 |
// Cannot edit destination topic
|
1122 |
if ( ! current_user_can( 'edit_topic', $destination_topic->ID ) ) {
|
1123 |
-
bbp_add_error( 'bbp_merge_topic_destination_permission', __( '<strong>
|
1124 |
}
|
1125 |
|
1126 |
// Bail if errors
|
@@ -1340,7 +1339,7 @@ function bbp_split_topic_handler( $action = '' ) {
|
|
1340 |
/** Split Reply ***********************************************************/
|
1341 |
|
1342 |
if ( empty( $_POST['bbp_reply_id'] ) ) {
|
1343 |
-
bbp_add_error( 'bbp_split_topic_reply_id', __( '<strong>
|
1344 |
} else {
|
1345 |
$from_reply_id = (int) $_POST['bbp_reply_id'];
|
1346 |
}
|
@@ -1349,7 +1348,7 @@ function bbp_split_topic_handler( $action = '' ) {
|
|
1349 |
|
1350 |
// Reply exists
|
1351 |
if ( empty( $from_reply ) ) {
|
1352 |
-
bbp_add_error( 'bbp_split_topic_r_not_found', __( '<strong>
|
1353 |
}
|
1354 |
|
1355 |
/** Topic to Split ********************************************************/
|
@@ -1359,18 +1358,18 @@ function bbp_split_topic_handler( $action = '' ) {
|
|
1359 |
|
1360 |
// No topic
|
1361 |
if ( empty( $source_topic ) ) {
|
1362 |
-
bbp_add_error( 'bbp_split_topic_source_not_found', __( '<strong>
|
1363 |
}
|
1364 |
|
1365 |
// Nonce check failed
|
1366 |
if ( ! bbp_verify_nonce_request( 'bbp-split-topic_' . $source_topic->ID ) ) {
|
1367 |
-
bbp_add_error( 'bbp_split_topic_nonce', __( '<strong>
|
1368 |
return;
|
1369 |
}
|
1370 |
|
1371 |
// Use cannot edit topic
|
1372 |
if ( ! current_user_can( 'edit_topic', $source_topic->ID ) ) {
|
1373 |
-
bbp_add_error( 'bbp_split_topic_source_permission', __( '<strong>
|
1374 |
}
|
1375 |
|
1376 |
// How to Split
|
@@ -1380,7 +1379,7 @@ function bbp_split_topic_handler( $action = '' ) {
|
|
1380 |
|
1381 |
// Invalid split option
|
1382 |
if ( empty( $split_option ) || ! in_array( $split_option, array( 'existing', 'reply' ), true ) ) {
|
1383 |
-
bbp_add_error( 'bbp_split_topic_option', __( '<strong>
|
1384 |
|
1385 |
// Valid Split Option
|
1386 |
} else {
|
@@ -1393,7 +1392,7 @@ function bbp_split_topic_handler( $action = '' ) {
|
|
1393 |
|
1394 |
// Get destination topic id
|
1395 |
if ( empty( $_POST['bbp_destination_topic'] ) ) {
|
1396 |
-
bbp_add_error( 'bbp_split_topic_destination_id', __( '<strong>
|
1397 |
} else {
|
1398 |
$destination_topic_id = (int) $_POST['bbp_destination_topic'];
|
1399 |
}
|
@@ -1403,12 +1402,12 @@ function bbp_split_topic_handler( $action = '' ) {
|
|
1403 |
|
1404 |
// No destination topic
|
1405 |
if ( empty( $destination_topic ) ) {
|
1406 |
-
bbp_add_error( 'bbp_split_topic_destination_not_found', __( '<strong>
|
1407 |
}
|
1408 |
|
1409 |
// User cannot edit the destination topic
|
1410 |
if ( ! current_user_can( 'edit_topic', $destination_topic->ID ) ) {
|
1411 |
-
bbp_add_error( 'bbp_split_topic_destination_permission', __( '<strong>
|
1412 |
}
|
1413 |
|
1414 |
break;
|
@@ -1446,12 +1445,12 @@ function bbp_split_topic_handler( $action = '' ) {
|
|
1446 |
|
1447 |
// Shouldn't happen
|
1448 |
if ( false === $destination_topic_id || is_wp_error( $destination_topic_id ) || empty( $destination_topic ) ) {
|
1449 |
-
bbp_add_error( 'bbp_split_topic_destination_reply', __( '<strong>
|
1450 |
}
|
1451 |
|
1452 |
// User cannot publish posts
|
1453 |
} else {
|
1454 |
-
bbp_add_error( 'bbp_split_topic_destination_permission', __( '<strong>
|
1455 |
}
|
1456 |
|
1457 |
break;
|
@@ -1688,7 +1687,7 @@ function bbp_edit_topic_tag_handler( $action = '' ) {
|
|
1688 |
|
1689 |
// Tag does not exist
|
1690 |
if ( is_wp_error( $tag ) && $tag->get_error_message() ) {
|
1691 |
-
bbp_add_error( 'bbp_manage_topic_invalid_tag', sprintf( __( '<strong>
|
1692 |
return;
|
1693 |
}
|
1694 |
|
@@ -1700,19 +1699,19 @@ function bbp_edit_topic_tag_handler( $action = '' ) {
|
|
1700 |
|
1701 |
// Nonce check
|
1702 |
if ( ! bbp_verify_nonce_request( 'update-tag_' . $tag_id ) ) {
|
1703 |
-
bbp_add_error( 'bbp_manage_topic_tag_update_nonce', __( '<strong>
|
1704 |
return;
|
1705 |
}
|
1706 |
|
1707 |
// Can user edit topic tags?
|
1708 |
if ( ! current_user_can( 'edit_topic_tag', $tag_id ) ) {
|
1709 |
-
bbp_add_error( 'bbp_manage_topic_tag_update_permission', __( '<strong>
|
1710 |
return;
|
1711 |
}
|
1712 |
|
1713 |
// No tag name was provided
|
1714 |
if ( empty( $_POST['tag-name'] ) || ! $name = $_POST['tag-name'] ) {
|
1715 |
-
bbp_add_error( 'bbp_manage_topic_tag_update_name', __( '<strong>
|
1716 |
return;
|
1717 |
}
|
1718 |
|
@@ -1727,7 +1726,7 @@ function bbp_edit_topic_tag_handler( $action = '' ) {
|
|
1727 |
|
1728 |
// Cannot update tag
|
1729 |
if ( is_wp_error( $tag ) && $tag->get_error_message() ) {
|
1730 |
-
bbp_add_error( 'bbp_manage_topic_tag_update_error', sprintf( __( '<strong>
|
1731 |
return;
|
1732 |
}
|
1733 |
|
@@ -1744,19 +1743,19 @@ function bbp_edit_topic_tag_handler( $action = '' ) {
|
|
1744 |
|
1745 |
// Nonce check
|
1746 |
if ( ! bbp_verify_nonce_request( 'merge-tag_' . $tag_id ) ) {
|
1747 |
-
bbp_add_error( 'bbp_manage_topic_tag_merge_nonce', __( '<strong>
|
1748 |
return;
|
1749 |
}
|
1750 |
|
1751 |
// Can user edit topic tags?
|
1752 |
if ( ! current_user_can( 'edit_topic_tags' ) ) {
|
1753 |
-
bbp_add_error( 'bbp_manage_topic_tag_merge_permission', __( '<strong>
|
1754 |
return;
|
1755 |
}
|
1756 |
|
1757 |
// No tag name was provided
|
1758 |
if ( empty( $_POST['tag-existing-name'] ) || ! $name = $_POST['tag-existing-name'] ) {
|
1759 |
-
bbp_add_error( 'bbp_manage_topic_tag_merge_name', __( '<strong>
|
1760 |
return;
|
1761 |
}
|
1762 |
|
@@ -1767,7 +1766,7 @@ function bbp_edit_topic_tag_handler( $action = '' ) {
|
|
1767 |
|
1768 |
// Problem inserting the new term
|
1769 |
if ( is_wp_error( $tag ) && $tag->get_error_message() ) {
|
1770 |
-
bbp_add_error( 'bbp_manage_topic_tag_merge_error', sprintf( __( '<strong>
|
1771 |
return;
|
1772 |
}
|
1773 |
|
@@ -1776,7 +1775,7 @@ function bbp_edit_topic_tag_handler( $action = '' ) {
|
|
1776 |
|
1777 |
// Attempting to merge a tag into itself
|
1778 |
if ( $tag_id === $to_tag ) {
|
1779 |
-
bbp_add_error( 'bbp_manage_topic_tag_merge_same', __( '<strong>
|
1780 |
return;
|
1781 |
}
|
1782 |
|
@@ -1788,7 +1787,7 @@ function bbp_edit_topic_tag_handler( $action = '' ) {
|
|
1788 |
|
1789 |
// Error merging the terms
|
1790 |
if ( is_wp_error( $tag ) && $tag->get_error_message() ) {
|
1791 |
-
bbp_add_error( 'bbp_manage_topic_tag_merge_error', sprintf( __( '<strong>
|
1792 |
return;
|
1793 |
}
|
1794 |
|
@@ -1805,13 +1804,13 @@ function bbp_edit_topic_tag_handler( $action = '' ) {
|
|
1805 |
|
1806 |
// Nonce check
|
1807 |
if ( ! bbp_verify_nonce_request( 'delete-tag_' . $tag_id ) ) {
|
1808 |
-
bbp_add_error( 'bbp_manage_topic_tag_delete_nonce', __( '<strong>
|
1809 |
return;
|
1810 |
}
|
1811 |
|
1812 |
// Can user delete topic tags?
|
1813 |
if ( ! current_user_can( 'delete_topic_tag', $tag_id ) ) {
|
1814 |
-
bbp_add_error( 'bbp_manage_topic_tag_delete_permission', __( '<strong>
|
1815 |
return;
|
1816 |
}
|
1817 |
|
@@ -1820,7 +1819,7 @@ function bbp_edit_topic_tag_handler( $action = '' ) {
|
|
1820 |
|
1821 |
// Error deleting term
|
1822 |
if ( is_wp_error( $tag ) && $tag->get_error_message() ) {
|
1823 |
-
bbp_add_error( 'bbp_manage_topic_tag_delete_error', sprintf( __( '<strong>
|
1824 |
return;
|
1825 |
}
|
1826 |
|
@@ -2016,13 +2015,13 @@ function bbp_toggle_topic_handler( $action = '' ) {
|
|
2016 |
// Make sure topic exists
|
2017 |
$topic = bbp_get_topic( $topic_id );
|
2018 |
if ( empty( $topic ) ) {
|
2019 |
-
bbp_add_error( 'bbp_toggle_topic_missing', __( '<strong>
|
2020 |
return;
|
2021 |
}
|
2022 |
|
2023 |
// What is the user doing here?
|
2024 |
if ( ! current_user_can( 'edit_topic', $topic_id ) || ( 'bbp_toggle_topic_trash' === $action && ! current_user_can( 'delete_topic', $topic_id ) ) ) {
|
2025 |
-
bbp_add_error( 'bbp_toggle_topic_permission', __( '<strong>
|
2026 |
return;
|
2027 |
}
|
2028 |
|
@@ -2106,8 +2105,8 @@ function bbp_toggle_topic( $args = array() ) {
|
|
2106 |
|
2107 |
// Feedback
|
2108 |
$retval['message'] = ( true === $is_pending )
|
2109 |
-
? __( '<strong>
|
2110 |
-
: __( '<strong>
|
2111 |
|
2112 |
break;
|
2113 |
|
@@ -2124,8 +2123,8 @@ function bbp_toggle_topic( $args = array() ) {
|
|
2124 |
|
2125 |
// Feedback
|
2126 |
$retval['message'] = ( true === $is_open )
|
2127 |
-
? __( '<strong>
|
2128 |
-
: __( '<strong>
|
2129 |
|
2130 |
break;
|
2131 |
|
@@ -2143,8 +2142,8 @@ function bbp_toggle_topic( $args = array() ) {
|
|
2143 |
|
2144 |
// Feedback
|
2145 |
$retval['message'] = ( true === $is_sticky )
|
2146 |
-
? __( '<strong>
|
2147 |
-
: __( '<strong>
|
2148 |
|
2149 |
break;
|
2150 |
|
@@ -2162,8 +2161,8 @@ function bbp_toggle_topic( $args = array() ) {
|
|
2162 |
|
2163 |
// Feedback
|
2164 |
$retval['message'] = ( true === $is_spam )
|
2165 |
-
? __( '<strong>
|
2166 |
-
: __( '<strong>
|
2167 |
|
2168 |
break;
|
2169 |
|
@@ -2176,7 +2175,7 @@ function bbp_toggle_topic( $args = array() ) {
|
|
2176 |
|
2177 |
$retval['view_all'] = true;
|
2178 |
$retval['status'] = wp_trash_post( $r['id'] );
|
2179 |
-
$retval['message'] = __( '<strong>
|
2180 |
$retval['redirect_to'] = current_user_can( 'view_trash' )
|
2181 |
? bbp_get_topic_permalink( $r['id'] )
|
2182 |
: bbp_get_forum_permalink( bbp_get_topic_forum_id( $r['id'] ) );
|
@@ -2187,7 +2186,7 @@ function bbp_toggle_topic( $args = array() ) {
|
|
2187 |
check_ajax_referer( "untrash-{$nonce_suffix}" );
|
2188 |
|
2189 |
$retval['status'] = wp_untrash_post( $r['id'] );
|
2190 |
-
$retval['message'] = __( '<strong>
|
2191 |
$retval['redirect_to'] = bbp_get_topic_permalink( $r['id'] );
|
2192 |
|
2193 |
break;
|
@@ -2196,7 +2195,7 @@ function bbp_toggle_topic( $args = array() ) {
|
|
2196 |
check_ajax_referer( "delete-{$nonce_suffix}" );
|
2197 |
|
2198 |
$retval['status'] = wp_delete_post( $r['id'] );
|
2199 |
-
$retval['message'] = __( '<strong>
|
2200 |
$retval['redirect_to'] = bbp_get_forum_permalink( $retval['status']->post_parent );
|
2201 |
|
2202 |
break;
|
@@ -2503,9 +2502,8 @@ function bbp_update_topic_forum_id( $topic_id = 0, $forum_id = 0 ) {
|
|
2503 |
$forum_id = get_post_field( 'post_parent', $topic_id );
|
2504 |
}
|
2505 |
|
2506 |
-
|
2507 |
-
|
2508 |
-
update_post_meta( $topic_id, '_bbp_forum_id', $forum_id );
|
2509 |
|
2510 |
// Filter & return
|
2511 |
return (int) apply_filters( 'bbp_update_topic_forum_id', $forum_id, $topic_id );
|
@@ -2521,11 +2519,10 @@ function bbp_update_topic_forum_id( $topic_id = 0, $forum_id = 0 ) {
|
|
2521 |
*/
|
2522 |
function bbp_update_topic_topic_id( $topic_id = 0 ) {
|
2523 |
$topic_id = bbp_get_topic_id( $topic_id );
|
2524 |
-
|
2525 |
-
update_post_meta( $topic_id, '_bbp_topic_id', $topic_id );
|
2526 |
|
2527 |
// Filter & return
|
2528 |
-
return apply_filters( 'bbp_update_topic_topic_id', $topic_id );
|
2529 |
}
|
2530 |
|
2531 |
/**
|
@@ -3238,6 +3235,9 @@ function bbp_approve_topic( $topic_id = 0 ) {
|
|
3238 |
// Set publish status
|
3239 |
$topic->post_status = $status;
|
3240 |
|
|
|
|
|
|
|
3241 |
// No revisions
|
3242 |
remove_action( 'pre_post_update', 'wp_save_post_revision' );
|
3243 |
|
102 |
|
103 |
// Nonce check
|
104 |
if ( ! bbp_verify_nonce_request( 'bbp-new-topic' ) ) {
|
105 |
+
bbp_add_error( 'bbp_new_topic_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
106 |
return;
|
107 |
}
|
108 |
|
129 |
|
130 |
// User cannot create topics
|
131 |
if ( ! current_user_can( 'publish_topics' ) ) {
|
132 |
+
bbp_add_error( 'bbp_topic_permission', __( '<strong>Error</strong>: You do not have permission to create new topics.', 'bbpress' ) );
|
133 |
return;
|
134 |
}
|
135 |
|
155 |
|
156 |
// No topic title
|
157 |
if ( empty( $topic_title ) ) {
|
158 |
+
bbp_add_error( 'bbp_topic_title', __( '<strong>Error</strong>: Your topic needs a title.', 'bbpress' ) );
|
159 |
}
|
160 |
|
161 |
// Title too long
|
162 |
if ( bbp_is_title_too_long( $topic_title ) ) {
|
163 |
+
bbp_add_error( 'bbp_topic_title', __( '<strong>Error</strong>: Your title is too long.', 'bbpress' ) );
|
164 |
}
|
165 |
|
166 |
/** Topic Content *********************************************************/
|
174 |
|
175 |
// No topic content
|
176 |
if ( empty( $topic_content ) ) {
|
177 |
+
bbp_add_error( 'bbp_topic_content', __( '<strong>Error</strong>: Your topic cannot be empty.', 'bbpress' ) );
|
178 |
}
|
179 |
|
180 |
/** Topic Forum ***********************************************************/
|
184 |
|
185 |
// Empty Forum id was passed
|
186 |
if ( empty( $_POST['bbp_forum_id'] ) ) {
|
187 |
+
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>Error</strong>: Forum ID is missing.', 'bbpress' ) );
|
188 |
|
189 |
// Forum id is not a number
|
190 |
} elseif ( ! is_numeric( $_POST['bbp_forum_id'] ) ) {
|
191 |
+
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>Error</strong>: Forum ID must be a number.', 'bbpress' ) );
|
192 |
|
193 |
// Forum id might be valid
|
194 |
} else {
|
198 |
|
199 |
// Forum id is empty
|
200 |
if ( 0 === $posted_forum_id ) {
|
201 |
+
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>Error</strong>: Forum ID is missing.', 'bbpress' ) );
|
202 |
|
203 |
// Forum id is a negative number
|
204 |
} elseif ( 0 > $posted_forum_id ) {
|
205 |
+
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>Error</strong>: Forum ID cannot be a negative number.', 'bbpress' ) );
|
206 |
|
207 |
// Forum does not exist
|
208 |
} elseif ( ! bbp_get_forum( $posted_forum_id ) ) {
|
209 |
+
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>Error</strong>: Forum does not exist.', 'bbpress' ) );
|
210 |
|
211 |
// Use the POST'ed forum id
|
212 |
} else {
|
220 |
|
221 |
// Forum is a category
|
222 |
if ( bbp_is_forum_category( $forum_id ) ) {
|
223 |
+
bbp_add_error( 'bbp_new_topic_forum_category', __( '<strong>Error</strong>: This forum is a category. No topics can be created in this forum.', 'bbpress' ) );
|
224 |
|
225 |
// Forum is not a category
|
226 |
} else {
|
227 |
|
228 |
// Forum is closed and user cannot access
|
229 |
if ( bbp_is_forum_closed( $forum_id ) && ! current_user_can( 'edit_forum', $forum_id ) ) {
|
230 |
+
bbp_add_error( 'bbp_new_topic_forum_closed', __( '<strong>Error</strong>: This forum has been closed to new topics.', 'bbpress' ) );
|
231 |
}
|
232 |
|
233 |
// Forum is private and user cannot access
|
234 |
if ( bbp_is_forum_private( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
235 |
+
bbp_add_error( 'bbp_new_topic_forum_private', __( '<strong>Error</strong>: This forum is private and you do not have the capability to read or create new topics in it.', 'bbpress' ) );
|
236 |
|
237 |
// Forum is hidden and user cannot access
|
238 |
} elseif ( bbp_is_forum_hidden( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
239 |
+
bbp_add_error( 'bbp_new_topic_forum_hidden', __( '<strong>Error</strong>: This forum is hidden and you do not have the capability to read or create new topics in it.', 'bbpress' ) );
|
240 |
}
|
241 |
}
|
242 |
}
|
244 |
/** Topic Flooding ********************************************************/
|
245 |
|
246 |
if ( ! bbp_check_for_flood( $anonymous_data, $topic_author ) ) {
|
247 |
+
bbp_add_error( 'bbp_topic_flood', __( '<strong>Error</strong>: Slow down; you move too fast.', 'bbpress' ) );
|
248 |
}
|
249 |
|
250 |
/** Topic Duplicate *******************************************************/
|
251 |
|
252 |
if ( ! bbp_check_for_duplicate( array( 'post_type' => bbp_get_topic_post_type(), 'post_author' => $topic_author, 'post_content' => $topic_content, 'anonymous_data' => $anonymous_data ) ) ) {
|
253 |
+
bbp_add_error( 'bbp_topic_duplicate', __( '<strong>Error</strong>: Duplicate topic detected; it looks as though you’ve already said that.', 'bbpress' ) );
|
254 |
}
|
255 |
|
256 |
/** Topic Bad Words *******************************************************/
|
257 |
|
258 |
if ( ! bbp_check_for_moderation( $anonymous_data, $topic_author, $topic_title, $topic_content, true ) ) {
|
259 |
+
bbp_add_error( 'bbp_topic_moderation', __( '<strong>Error</strong>: Your topic cannot be created at this time.', 'bbpress' ) );
|
260 |
}
|
261 |
|
262 |
/** Topic Status **********************************************************/
|
397 |
|
398 |
// WP_Error
|
399 |
} elseif ( is_wp_error( $topic_id ) ) {
|
400 |
+
bbp_add_error( 'bbp_topic_error', sprintf( __( '<strong>Error</strong>: The following problem(s) occurred: %s', 'bbpress' ), $topic_id->get_error_message() ) );
|
401 |
|
402 |
// Generic error
|
403 |
} else {
|
404 |
+
bbp_add_error( 'bbp_topic_error', __( '<strong>Error</strong>: The topic was not created.', 'bbpress' ) );
|
405 |
}
|
406 |
}
|
407 |
|
427 |
|
428 |
// Topic id was not passed
|
429 |
if ( empty( $_POST['bbp_topic_id'] ) ) {
|
430 |
+
bbp_add_error( 'bbp_edit_topic_id', __( '<strong>Error</strong>: Topic ID not found.', 'bbpress' ) );
|
431 |
return;
|
432 |
|
433 |
// Topic id was passed
|
438 |
|
439 |
// Topic does not exist
|
440 |
if ( empty( $topic ) ) {
|
441 |
+
bbp_add_error( 'bbp_edit_topic_not_found', __( '<strong>Error</strong>: The topic you want to edit was not found.', 'bbpress' ) );
|
442 |
return;
|
443 |
|
444 |
// Topic exists
|
449 |
|
450 |
// User cannot edit this topic
|
451 |
if ( ! current_user_can( 'edit_topic', $topic_id ) ) {
|
452 |
+
bbp_add_error( 'bbp_edit_topic_permission', __( '<strong>Error</strong>: You do not have permission to edit that topic.', 'bbpress' ) );
|
453 |
}
|
454 |
|
455 |
// Set topic author
|
465 |
|
466 |
// Nonce check
|
467 |
if ( ! bbp_verify_nonce_request( 'bbp-edit-topic_' . $topic_id ) ) {
|
468 |
+
bbp_add_error( 'bbp_edit_topic_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
469 |
return;
|
470 |
}
|
471 |
|
480 |
|
481 |
// Forum id was not passed
|
482 |
if ( empty( $_POST['bbp_forum_id'] ) ) {
|
483 |
+
bbp_add_error( 'bbp_topic_forum_id', __( '<strong>Error</strong>: Forum ID is missing.', 'bbpress' ) );
|
484 |
|
485 |
// Forum id was passed
|
486 |
} elseif ( is_numeric( $_POST['bbp_forum_id'] ) ) {
|
495 |
|
496 |
// Forum is a category
|
497 |
if ( bbp_is_forum_category( $forum_id ) ) {
|
498 |
+
bbp_add_error( 'bbp_edit_topic_forum_category', __( '<strong>Error</strong>: This forum is a category. No topics can be created in it.', 'bbpress' ) );
|
499 |
|
500 |
// Forum is not a category
|
501 |
} else {
|
502 |
|
503 |
// Forum is closed and user cannot access
|
504 |
if ( bbp_is_forum_closed( $forum_id ) && ! current_user_can( 'edit_forum', $forum_id ) ) {
|
505 |
+
bbp_add_error( 'bbp_edit_topic_forum_closed', __( '<strong>Error</strong>: This forum has been closed to new topics.', 'bbpress' ) );
|
506 |
}
|
507 |
|
508 |
// Forum is private and user cannot access
|
509 |
if ( bbp_is_forum_private( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
510 |
+
bbp_add_error( 'bbp_edit_topic_forum_private', __( '<strong>Error</strong>: This forum is private and you do not have the capability to read or create new topics in it.', 'bbpress' ) );
|
511 |
|
512 |
// Forum is hidden and user cannot access
|
513 |
} elseif ( bbp_is_forum_hidden( $forum_id ) && ! current_user_can( 'read_forum', $forum_id ) ) {
|
514 |
+
bbp_add_error( 'bbp_edit_topic_forum_hidden', __( '<strong>Error</strong>: This forum is hidden and you do not have the capability to read or create new topics in it.', 'bbpress' ) );
|
515 |
}
|
516 |
}
|
517 |
}
|
527 |
|
528 |
// No topic title
|
529 |
if ( empty( $topic_title ) ) {
|
530 |
+
bbp_add_error( 'bbp_edit_topic_title', __( '<strong>Error</strong>: Your topic needs a title.', 'bbpress' ) );
|
531 |
}
|
532 |
|
533 |
// Title too long
|
534 |
if ( bbp_is_title_too_long( $topic_title ) ) {
|
535 |
+
bbp_add_error( 'bbp_topic_title', __( '<strong>Error</strong>: Your title is too long.', 'bbpress' ) );
|
536 |
}
|
537 |
|
538 |
/** Topic Content *********************************************************/
|
546 |
|
547 |
// No topic content
|
548 |
if ( empty( $topic_content ) ) {
|
549 |
+
bbp_add_error( 'bbp_edit_topic_content', __( '<strong>Error</strong>: Your topic cannot be empty.', 'bbpress' ) );
|
550 |
}
|
551 |
|
552 |
/** Topic Bad Words *******************************************************/
|
553 |
|
554 |
if ( ! bbp_check_for_moderation( $anonymous_data, $topic_author, $topic_title, $topic_content, true ) ) {
|
555 |
+
bbp_add_error( 'bbp_topic_moderation', __( '<strong>Error</strong>: Your topic cannot be edited at this time.', 'bbpress' ) );
|
556 |
}
|
557 |
|
558 |
/** Topic Status **********************************************************/
|
713 |
|
714 |
} else {
|
715 |
$append_error = ( is_wp_error( $topic_id ) && $topic_id->get_error_message() ) ? $topic_id->get_error_message() . ' ' : '';
|
716 |
+
bbp_add_error( 'bbp_topic_error', __( '<strong>Error</strong>: The following problem(s) have been found with your topic:' . $append_error . 'Please try again.', 'bbpress' ) );
|
717 |
}
|
718 |
}
|
719 |
|
770 |
bbp_stick_topic( $topic_id, true );
|
771 |
break;
|
772 |
|
773 |
+
// Unsticky from everywhere
|
774 |
case 'unstick' :
|
775 |
default :
|
776 |
+
bbp_unstick_topic( $topic_id );
|
777 |
break;
|
778 |
}
|
779 |
}
|
787 |
|
788 |
// Set transient for throttle check (only on new, not edit)
|
789 |
if ( empty( $is_edit ) ) {
|
790 |
+
set_transient( '_bbp_' . bbp_current_author_ip() . '_last_posted', time(), HOUR_IN_SECONDS );
|
|
|
|
|
|
|
|
|
|
|
791 |
}
|
792 |
}
|
793 |
|
815 |
// Update associated topic values if this is a new topic
|
816 |
if ( empty( $is_edit ) ) {
|
817 |
|
818 |
+
// Update poster activity time
|
819 |
+
bbp_update_user_last_posted( $author_id );
|
820 |
+
|
821 |
+
// Update poster IP
|
822 |
update_post_meta( $topic_id, '_bbp_author_ip', bbp_current_author_ip(), false );
|
823 |
|
824 |
// Last active time
|
1081 |
|
1082 |
// Topic id
|
1083 |
if ( empty( $_POST['bbp_topic_id'] ) ) {
|
1084 |
+
bbp_add_error( 'bbp_merge_topic_source_id', __( '<strong>Error</strong>: Topic ID not found.', 'bbpress' ) );
|
1085 |
} else {
|
1086 |
$source_topic_id = (int) $_POST['bbp_topic_id'];
|
1087 |
}
|
1088 |
|
1089 |
// Nonce check
|
1090 |
if ( ! bbp_verify_nonce_request( 'bbp-merge-topic_' . $source_topic_id ) ) {
|
1091 |
+
bbp_add_error( 'bbp_merge_topic_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
1092 |
return;
|
1093 |
|
1094 |
// Source topic not found
|
1095 |
} elseif ( ! $source_topic = bbp_get_topic( $source_topic_id ) ) {
|
1096 |
+
bbp_add_error( 'bbp_merge_topic_source_not_found', __( '<strong>Error</strong>: The topic you want to merge was not found.', 'bbpress' ) );
|
1097 |
return;
|
1098 |
}
|
1099 |
|
1100 |
// Cannot edit source topic
|
1101 |
if ( ! current_user_can( 'edit_topic', $source_topic->ID ) ) {
|
1102 |
+
bbp_add_error( 'bbp_merge_topic_source_permission', __( '<strong>Error</strong>: You do not have permission to edit the source topic.', 'bbpress' ) );
|
1103 |
return;
|
1104 |
}
|
1105 |
|
1107 |
|
1108 |
// Topic id
|
1109 |
if ( empty( $_POST['bbp_destination_topic'] ) ) {
|
1110 |
+
bbp_add_error( 'bbp_merge_topic_destination_id', __( '<strong>Error</strong>: Destination topic ID not found.', 'bbpress' ) );
|
1111 |
} else {
|
1112 |
$destination_topic_id = (int) $_POST['bbp_destination_topic'];
|
1113 |
}
|
1114 |
|
1115 |
// Destination topic not found
|
1116 |
if ( ! $destination_topic = bbp_get_topic( $destination_topic_id ) ) {
|
1117 |
+
bbp_add_error( 'bbp_merge_topic_destination_not_found', __( '<strong>Error</strong>: The topic you want to merge to was not found.', 'bbpress' ) );
|
1118 |
}
|
1119 |
|
1120 |
// Cannot edit destination topic
|
1121 |
if ( ! current_user_can( 'edit_topic', $destination_topic->ID ) ) {
|
1122 |
+
bbp_add_error( 'bbp_merge_topic_destination_permission', __( '<strong>Error</strong>: You do not have permission to edit the destination topic.', 'bbpress' ) );
|
1123 |
}
|
1124 |
|
1125 |
// Bail if errors
|
1339 |
/** Split Reply ***********************************************************/
|
1340 |
|
1341 |
if ( empty( $_POST['bbp_reply_id'] ) ) {
|
1342 |
+
bbp_add_error( 'bbp_split_topic_reply_id', __( '<strong>Error</strong>: A reply ID is required.', 'bbpress' ) );
|
1343 |
} else {
|
1344 |
$from_reply_id = (int) $_POST['bbp_reply_id'];
|
1345 |
}
|
1348 |
|
1349 |
// Reply exists
|
1350 |
if ( empty( $from_reply ) ) {
|
1351 |
+
bbp_add_error( 'bbp_split_topic_r_not_found', __( '<strong>Error</strong>: The reply you want to split from was not found.', 'bbpress' ) );
|
1352 |
}
|
1353 |
|
1354 |
/** Topic to Split ********************************************************/
|
1358 |
|
1359 |
// No topic
|
1360 |
if ( empty( $source_topic ) ) {
|
1361 |
+
bbp_add_error( 'bbp_split_topic_source_not_found', __( '<strong>Error</strong>: The topic you want to split was not found.', 'bbpress' ) );
|
1362 |
}
|
1363 |
|
1364 |
// Nonce check failed
|
1365 |
if ( ! bbp_verify_nonce_request( 'bbp-split-topic_' . $source_topic->ID ) ) {
|
1366 |
+
bbp_add_error( 'bbp_split_topic_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
1367 |
return;
|
1368 |
}
|
1369 |
|
1370 |
// Use cannot edit topic
|
1371 |
if ( ! current_user_can( 'edit_topic', $source_topic->ID ) ) {
|
1372 |
+
bbp_add_error( 'bbp_split_topic_source_permission', __( '<strong>Error</strong>: You do not have permission to edit the source topic.', 'bbpress' ) );
|
1373 |
}
|
1374 |
|
1375 |
// How to Split
|
1379 |
|
1380 |
// Invalid split option
|
1381 |
if ( empty( $split_option ) || ! in_array( $split_option, array( 'existing', 'reply' ), true ) ) {
|
1382 |
+
bbp_add_error( 'bbp_split_topic_option', __( '<strong>Error</strong>: You need to choose a valid split option.', 'bbpress' ) );
|
1383 |
|
1384 |
// Valid Split Option
|
1385 |
} else {
|
1392 |
|
1393 |
// Get destination topic id
|
1394 |
if ( empty( $_POST['bbp_destination_topic'] ) ) {
|
1395 |
+
bbp_add_error( 'bbp_split_topic_destination_id', __( '<strong>Error</strong>: A topic ID is required.', 'bbpress' ) );
|
1396 |
} else {
|
1397 |
$destination_topic_id = (int) $_POST['bbp_destination_topic'];
|
1398 |
}
|
1402 |
|
1403 |
// No destination topic
|
1404 |
if ( empty( $destination_topic ) ) {
|
1405 |
+
bbp_add_error( 'bbp_split_topic_destination_not_found', __( '<strong>Error</strong>: The topic you want to split to was not found.', 'bbpress' ) );
|
1406 |
}
|
1407 |
|
1408 |
// User cannot edit the destination topic
|
1409 |
if ( ! current_user_can( 'edit_topic', $destination_topic->ID ) ) {
|
1410 |
+
bbp_add_error( 'bbp_split_topic_destination_permission', __( '<strong>Error</strong>: You do not have permission to edit the destination topic.', 'bbpress' ) );
|
1411 |
}
|
1412 |
|
1413 |
break;
|
1445 |
|
1446 |
// Shouldn't happen
|
1447 |
if ( false === $destination_topic_id || is_wp_error( $destination_topic_id ) || empty( $destination_topic ) ) {
|
1448 |
+
bbp_add_error( 'bbp_split_topic_destination_reply', __( '<strong>Error</strong>: There was a problem converting the reply into the topic. Please try again.', 'bbpress' ) );
|
1449 |
}
|
1450 |
|
1451 |
// User cannot publish posts
|
1452 |
} else {
|
1453 |
+
bbp_add_error( 'bbp_split_topic_destination_permission', __( '<strong>Error</strong>: You do not have permission to create new topics. The reply could not be converted into a topic.', 'bbpress' ) );
|
1454 |
}
|
1455 |
|
1456 |
break;
|
1687 |
|
1688 |
// Tag does not exist
|
1689 |
if ( is_wp_error( $tag ) && $tag->get_error_message() ) {
|
1690 |
+
bbp_add_error( 'bbp_manage_topic_invalid_tag', sprintf( __( '<strong>Error</strong>: The following problem(s) have been found while getting the tag: %s', 'bbpress' ), $tag->get_error_message() ) );
|
1691 |
return;
|
1692 |
}
|
1693 |
|
1699 |
|
1700 |
// Nonce check
|
1701 |
if ( ! bbp_verify_nonce_request( 'update-tag_' . $tag_id ) ) {
|
1702 |
+
bbp_add_error( 'bbp_manage_topic_tag_update_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
1703 |
return;
|
1704 |
}
|
1705 |
|
1706 |
// Can user edit topic tags?
|
1707 |
if ( ! current_user_can( 'edit_topic_tag', $tag_id ) ) {
|
1708 |
+
bbp_add_error( 'bbp_manage_topic_tag_update_permission', __( '<strong>Error</strong>: You do not have permission to edit the topic tags.', 'bbpress' ) );
|
1709 |
return;
|
1710 |
}
|
1711 |
|
1712 |
// No tag name was provided
|
1713 |
if ( empty( $_POST['tag-name'] ) || ! $name = $_POST['tag-name'] ) {
|
1714 |
+
bbp_add_error( 'bbp_manage_topic_tag_update_name', __( '<strong>Error</strong>: You need to enter a tag name.', 'bbpress' ) );
|
1715 |
return;
|
1716 |
}
|
1717 |
|
1726 |
|
1727 |
// Cannot update tag
|
1728 |
if ( is_wp_error( $tag ) && $tag->get_error_message() ) {
|
1729 |
+
bbp_add_error( 'bbp_manage_topic_tag_update_error', sprintf( __( '<strong>Error</strong>: The following problem(s) have been found while updating the tag: %s', 'bbpress' ), $tag->get_error_message() ) );
|
1730 |
return;
|
1731 |
}
|
1732 |
|
1743 |
|
1744 |
// Nonce check
|
1745 |
if ( ! bbp_verify_nonce_request( 'merge-tag_' . $tag_id ) ) {
|
1746 |
+
bbp_add_error( 'bbp_manage_topic_tag_merge_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
1747 |
return;
|
1748 |
}
|
1749 |
|
1750 |
// Can user edit topic tags?
|
1751 |
if ( ! current_user_can( 'edit_topic_tags' ) ) {
|
1752 |
+
bbp_add_error( 'bbp_manage_topic_tag_merge_permission', __( '<strong>Error</strong>: You do not have permission to edit the topic tags.', 'bbpress' ) );
|
1753 |
return;
|
1754 |
}
|
1755 |
|
1756 |
// No tag name was provided
|
1757 |
if ( empty( $_POST['tag-existing-name'] ) || ! $name = $_POST['tag-existing-name'] ) {
|
1758 |
+
bbp_add_error( 'bbp_manage_topic_tag_merge_name', __( '<strong>Error</strong>: You need to enter a tag name.', 'bbpress' ) );
|
1759 |
return;
|
1760 |
}
|
1761 |
|
1766 |
|
1767 |
// Problem inserting the new term
|
1768 |
if ( is_wp_error( $tag ) && $tag->get_error_message() ) {
|
1769 |
+
bbp_add_error( 'bbp_manage_topic_tag_merge_error', sprintf( __( '<strong>Error</strong>: The following problem(s) have been found while merging the tags: %s', 'bbpress' ), $tag->get_error_message() ) );
|
1770 |
return;
|
1771 |
}
|
1772 |
|
1775 |
|
1776 |
// Attempting to merge a tag into itself
|
1777 |
if ( $tag_id === $to_tag ) {
|
1778 |
+
bbp_add_error( 'bbp_manage_topic_tag_merge_same', __( '<strong>Error</strong>: The tags which are being merged can not be the same.', 'bbpress' ) );
|
1779 |
return;
|
1780 |
}
|
1781 |
|
1787 |
|
1788 |
// Error merging the terms
|
1789 |
if ( is_wp_error( $tag ) && $tag->get_error_message() ) {
|
1790 |
+
bbp_add_error( 'bbp_manage_topic_tag_merge_error', sprintf( __( '<strong>Error</strong>: The following problem(s) have been found while merging the tags: %s', 'bbpress' ), $tag->get_error_message() ) );
|
1791 |
return;
|
1792 |
}
|
1793 |
|
1804 |
|
1805 |
// Nonce check
|
1806 |
if ( ! bbp_verify_nonce_request( 'delete-tag_' . $tag_id ) ) {
|
1807 |
+
bbp_add_error( 'bbp_manage_topic_tag_delete_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
1808 |
return;
|
1809 |
}
|
1810 |
|
1811 |
// Can user delete topic tags?
|
1812 |
if ( ! current_user_can( 'delete_topic_tag', $tag_id ) ) {
|
1813 |
+
bbp_add_error( 'bbp_manage_topic_tag_delete_permission', __( '<strong>Error</strong>: You do not have permission to delete the topic tags.', 'bbpress' ) );
|
1814 |
return;
|
1815 |
}
|
1816 |
|
1819 |
|
1820 |
// Error deleting term
|
1821 |
if ( is_wp_error( $tag ) && $tag->get_error_message() ) {
|
1822 |
+
bbp_add_error( 'bbp_manage_topic_tag_delete_error', sprintf( __( '<strong>Error</strong>: The following problem(s) have been found while deleting the tag: %s', 'bbpress' ), $tag->get_error_message() ) );
|
1823 |
return;
|
1824 |
}
|
1825 |
|
2015 |
// Make sure topic exists
|
2016 |
$topic = bbp_get_topic( $topic_id );
|
2017 |
if ( empty( $topic ) ) {
|
2018 |
+
bbp_add_error( 'bbp_toggle_topic_missing', __( '<strong>Error</strong>: This topic could not be found or no longer exists.', 'bbpress' ) );
|
2019 |
return;
|
2020 |
}
|
2021 |
|
2022 |
// What is the user doing here?
|
2023 |
if ( ! current_user_can( 'edit_topic', $topic_id ) || ( 'bbp_toggle_topic_trash' === $action && ! current_user_can( 'delete_topic', $topic_id ) ) ) {
|
2024 |
+
bbp_add_error( 'bbp_toggle_topic_permission', __( '<strong>Error</strong>: You do not have permission to do that.', 'bbpress' ) );
|
2025 |
return;
|
2026 |
}
|
2027 |
|
2105 |
|
2106 |
// Feedback
|
2107 |
$retval['message'] = ( true === $is_pending )
|
2108 |
+
? __( '<strong>Error</strong>: There was a problem approving the topic.', 'bbpress' )
|
2109 |
+
: __( '<strong>Error</strong>: There was a problem unapproving the topic.', 'bbpress' );
|
2110 |
|
2111 |
break;
|
2112 |
|
2123 |
|
2124 |
// Feedback
|
2125 |
$retval['message'] = ( true === $is_open )
|
2126 |
+
? __( '<strong>Error</strong>: There was a problem closing the topic.', 'bbpress' )
|
2127 |
+
: __( '<strong>Error</strong>: There was a problem opening the topic.', 'bbpress' );
|
2128 |
|
2129 |
break;
|
2130 |
|
2142 |
|
2143 |
// Feedback
|
2144 |
$retval['message'] = ( true === $is_sticky )
|
2145 |
+
? __( '<strong>Error</strong>: There was a problem unsticking the topic.', 'bbpress' )
|
2146 |
+
: __( '<strong>Error</strong>: There was a problem sticking the topic.', 'bbpress' );
|
2147 |
|
2148 |
break;
|
2149 |
|
2161 |
|
2162 |
// Feedback
|
2163 |
$retval['message'] = ( true === $is_spam )
|
2164 |
+
? __( '<strong>Error</strong>: There was a problem unmarking the topic as spam.', 'bbpress' )
|
2165 |
+
: __( '<strong>Error</strong>: There was a problem marking the topic as spam.', 'bbpress' );
|
2166 |
|
2167 |
break;
|
2168 |
|
2175 |
|
2176 |
$retval['view_all'] = true;
|
2177 |
$retval['status'] = wp_trash_post( $r['id'] );
|
2178 |
+
$retval['message'] = __( '<strong>Error</strong>: There was a problem trashing the topic.', 'bbpress' );
|
2179 |
$retval['redirect_to'] = current_user_can( 'view_trash' )
|
2180 |
? bbp_get_topic_permalink( $r['id'] )
|
2181 |
: bbp_get_forum_permalink( bbp_get_topic_forum_id( $r['id'] ) );
|
2186 |
check_ajax_referer( "untrash-{$nonce_suffix}" );
|
2187 |
|
2188 |
$retval['status'] = wp_untrash_post( $r['id'] );
|
2189 |
+
$retval['message'] = __( '<strong>Error</strong>: There was a problem untrashing the topic.', 'bbpress' );
|
2190 |
$retval['redirect_to'] = bbp_get_topic_permalink( $r['id'] );
|
2191 |
|
2192 |
break;
|
2195 |
check_ajax_referer( "delete-{$nonce_suffix}" );
|
2196 |
|
2197 |
$retval['status'] = wp_delete_post( $r['id'] );
|
2198 |
+
$retval['message'] = __( '<strong>Error</strong>: There was a problem deleting the topic.', 'bbpress' );
|
2199 |
$retval['redirect_to'] = bbp_get_forum_permalink( $retval['status']->post_parent );
|
2200 |
|
2201 |
break;
|
2502 |
$forum_id = get_post_field( 'post_parent', $topic_id );
|
2503 |
}
|
2504 |
|
2505 |
+
// Update the forum ID
|
2506 |
+
$forum_id = bbp_update_forum_id( $topic_id, $forum_id );
|
|
|
2507 |
|
2508 |
// Filter & return
|
2509 |
return (int) apply_filters( 'bbp_update_topic_forum_id', $forum_id, $topic_id );
|
2519 |
*/
|
2520 |
function bbp_update_topic_topic_id( $topic_id = 0 ) {
|
2521 |
$topic_id = bbp_get_topic_id( $topic_id );
|
2522 |
+
$topic_id = bbp_update_topic_id( $topic_id, $topic_id );
|
|
|
2523 |
|
2524 |
// Filter & return
|
2525 |
+
return (int) apply_filters( 'bbp_update_topic_topic_id', $topic_id );
|
2526 |
}
|
2527 |
|
2528 |
/**
|
3235 |
// Set publish status
|
3236 |
$topic->post_status = $status;
|
3237 |
|
3238 |
+
// Set post date GMT - prevents post_date override in wp_update_post()
|
3239 |
+
$topic->post_date_gmt = get_gmt_from_date( $topic->post_date );
|
3240 |
+
|
3241 |
// No revisions
|
3242 |
remove_action( 'pre_post_update', 'wp_save_post_revision' );
|
3243 |
|
includes/topics/template.php
CHANGED
@@ -2851,6 +2851,8 @@ function bbp_topic_reply_link( $args = array() ) {
|
|
2851 |
'link_before' => '',
|
2852 |
'link_after' => '',
|
2853 |
'reply_text' => esc_html_x( 'Reply', 'verb', 'bbpress' ),
|
|
|
|
|
2854 |
), 'get_topic_reply_link' );
|
2855 |
|
2856 |
// Get the topic to use it's ID and post_parent
|
@@ -2861,9 +2863,14 @@ function bbp_topic_reply_link( $args = array() ) {
|
|
2861 |
return;
|
2862 |
}
|
2863 |
|
|
|
|
|
|
|
|
|
|
|
2864 |
// Add $uri to the array, to be passed through the filter
|
2865 |
-
$r['uri'] = '#new-post';
|
2866 |
-
$retval = $r['link_before'] . '<a role="button" href="' . esc_url( $r['uri'] ) . '" class="bbp-topic-reply-link">' . $r['reply_text'] . '</a>' . $r['link_after'];
|
2867 |
|
2868 |
// Filter & return
|
2869 |
return apply_filters( 'bbp_get_topic_reply_link', $retval, $r, $args );
|
2851 |
'link_before' => '',
|
2852 |
'link_after' => '',
|
2853 |
'reply_text' => esc_html_x( 'Reply', 'verb', 'bbpress' ),
|
2854 |
+
'add_below' => 'post',
|
2855 |
+
'respond_id' => 'new-reply-' . bbp_get_topic_id(),
|
2856 |
), 'get_topic_reply_link' );
|
2857 |
|
2858 |
// Get the topic to use it's ID and post_parent
|
2863 |
return;
|
2864 |
}
|
2865 |
|
2866 |
+
// Only add onclick if replies are threaded
|
2867 |
+
$onclick = bbp_thread_replies()
|
2868 |
+
? ' onclick="return addReply.cancelForm();"'
|
2869 |
+
: '';
|
2870 |
+
|
2871 |
// Add $uri to the array, to be passed through the filter
|
2872 |
+
$r['uri'] = remove_query_arg( array( 'bbp_reply_to', '_wpnonce' ) ) . '#new-post';
|
2873 |
+
$retval = $r['link_before'] . '<a role="button" href="' . esc_url( $r['uri'] ) . '" class="bbp-topic-reply-link"' . $onclick . '>' . $r['reply_text'] . '</a>' . $r['link_after'];
|
2874 |
|
2875 |
// Filter & return
|
2876 |
return apply_filters( 'bbp_get_topic_reply_link', $retval, $r, $args );
|
includes/users/engagements.php
CHANGED
@@ -605,15 +605,15 @@ function bbp_favorites_handler( $action = '' ) {
|
|
605 |
|
606 |
// Check for empty topic
|
607 |
if ( empty( $topic_id ) ) {
|
608 |
-
bbp_add_error( 'bbp_favorite_topic_id', __( '<strong>
|
609 |
|
610 |
// Check nonce
|
611 |
} elseif ( ! bbp_verify_nonce_request( 'toggle-favorite_' . $topic_id ) ) {
|
612 |
-
bbp_add_error( 'bbp_favorite_nonce', __( '<strong>
|
613 |
|
614 |
// Check current user's ability to edit the user
|
615 |
} elseif ( ! current_user_can( 'edit_user', $user_id ) ) {
|
616 |
-
bbp_add_error( 'bbp_favorite_permission', __( '<strong>
|
617 |
}
|
618 |
|
619 |
// Bail if errors
|
@@ -654,9 +654,9 @@ function bbp_favorites_handler( $action = '' ) {
|
|
654 |
|
655 |
// Fail! Handle errors
|
656 |
} elseif ( 'bbp_favorite_remove' === $action ) {
|
657 |
-
bbp_add_error( 'bbp_favorite_remove', __( '<strong>
|
658 |
} elseif ( 'bbp_favorite_add' === $action ) {
|
659 |
-
bbp_add_error( 'bbp_favorite_add', __( '<strong>
|
660 |
}
|
661 |
|
662 |
return (bool) $success;
|
@@ -846,15 +846,15 @@ function bbp_subscriptions_handler( $action = '' ) {
|
|
846 |
|
847 |
// Check for empty topic
|
848 |
if ( empty( $object_id ) ) {
|
849 |
-
bbp_add_error( 'bbp_subscription_object_id', __( '<strong>
|
850 |
|
851 |
// Check nonce
|
852 |
} elseif ( ! bbp_verify_nonce_request( 'toggle-subscription_' . $object_id ) ) {
|
853 |
-
bbp_add_error( 'bbp_subscription_object_id', __( '<strong>
|
854 |
|
855 |
// Check current user's ability to edit the user
|
856 |
} elseif ( ! current_user_can( 'edit_user', $user_id ) ) {
|
857 |
-
bbp_add_error( 'bbp_subscription_permission', __( '<strong>
|
858 |
}
|
859 |
|
860 |
// Bail if we have errors
|
@@ -897,9 +897,9 @@ function bbp_subscriptions_handler( $action = '' ) {
|
|
897 |
|
898 |
// Fail! Handle errors
|
899 |
} elseif ( 'bbp_unsubscribe' === $action ) {
|
900 |
-
bbp_add_error( 'bbp_unsubscribe', __( '<strong>
|
901 |
} elseif ( 'bbp_subscribe' === $action ) {
|
902 |
-
bbp_add_error( 'bbp_subscribe', __( '<strong>
|
903 |
}
|
904 |
|
905 |
return (bool) $success;
|
605 |
|
606 |
// Check for empty topic
|
607 |
if ( empty( $topic_id ) ) {
|
608 |
+
bbp_add_error( 'bbp_favorite_topic_id', __( '<strong>Error</strong>: No topic was found. Which topic are you marking/unmarking as favorite?', 'bbpress' ) );
|
609 |
|
610 |
// Check nonce
|
611 |
} elseif ( ! bbp_verify_nonce_request( 'toggle-favorite_' . $topic_id ) ) {
|
612 |
+
bbp_add_error( 'bbp_favorite_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
613 |
|
614 |
// Check current user's ability to edit the user
|
615 |
} elseif ( ! current_user_can( 'edit_user', $user_id ) ) {
|
616 |
+
bbp_add_error( 'bbp_favorite_permission', __( '<strong>Error</strong>: You do not have permission to edit favorites for that user.', 'bbpress' ) );
|
617 |
}
|
618 |
|
619 |
// Bail if errors
|
654 |
|
655 |
// Fail! Handle errors
|
656 |
} elseif ( 'bbp_favorite_remove' === $action ) {
|
657 |
+
bbp_add_error( 'bbp_favorite_remove', __( '<strong>Error</strong>: There was a problem removing that topic from favorites.', 'bbpress' ) );
|
658 |
} elseif ( 'bbp_favorite_add' === $action ) {
|
659 |
+
bbp_add_error( 'bbp_favorite_add', __( '<strong>Error</strong>: There was a problem favoriting that topic.', 'bbpress' ) );
|
660 |
}
|
661 |
|
662 |
return (bool) $success;
|
846 |
|
847 |
// Check for empty topic
|
848 |
if ( empty( $object_id ) ) {
|
849 |
+
bbp_add_error( 'bbp_subscription_object_id', __( '<strong>Error</strong>: Not found. What are you subscribing/unsubscribing to?', 'bbpress' ) );
|
850 |
|
851 |
// Check nonce
|
852 |
} elseif ( ! bbp_verify_nonce_request( 'toggle-subscription_' . $object_id ) ) {
|
853 |
+
bbp_add_error( 'bbp_subscription_object_id', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
854 |
|
855 |
// Check current user's ability to edit the user
|
856 |
} elseif ( ! current_user_can( 'edit_user', $user_id ) ) {
|
857 |
+
bbp_add_error( 'bbp_subscription_permission', __( '<strong>Error</strong>: You do not have permission to edit subscriptions of that user.', 'bbpress' ) );
|
858 |
}
|
859 |
|
860 |
// Bail if we have errors
|
897 |
|
898 |
// Fail! Handle errors
|
899 |
} elseif ( 'bbp_unsubscribe' === $action ) {
|
900 |
+
bbp_add_error( 'bbp_unsubscribe', __( '<strong>Error</strong>: There was a problem unsubscribing.', 'bbpress' ) );
|
901 |
} elseif ( 'bbp_subscribe' === $action ) {
|
902 |
+
bbp_add_error( 'bbp_subscribe', __( '<strong>Error</strong>: There was a problem subscribing.', 'bbpress' ) );
|
903 |
}
|
904 |
|
905 |
return (bool) $success;
|
includes/users/functions.php
CHANGED
@@ -193,19 +193,19 @@ function bbp_edit_user_handler( $action = '' ) {
|
|
193 |
|
194 |
// Nonce check
|
195 |
if ( ! bbp_verify_nonce_request( 'update-user_' . $user_id ) ) {
|
196 |
-
bbp_add_error( 'bbp_update_user_nonce', __( '<strong>
|
197 |
return;
|
198 |
}
|
199 |
|
200 |
// Cap check
|
201 |
if ( ! current_user_can( 'edit_user', $user_id ) ) {
|
202 |
-
bbp_add_error( 'bbp_update_user_capability', __( '<strong>
|
203 |
return;
|
204 |
}
|
205 |
|
206 |
// Empty email check
|
207 |
if ( empty( $_POST['email'] ) ) {
|
208 |
-
bbp_add_error( 'bbp_user_email_empty', __( '<strong>
|
209 |
return;
|
210 |
}
|
211 |
|
@@ -217,13 +217,13 @@ function bbp_edit_user_handler( $action = '' ) {
|
|
217 |
|
218 |
// Check that new email address is valid
|
219 |
if ( ! is_email( $_POST['email'] ) ) {
|
220 |
-
bbp_add_error( 'bbp_user_email_invalid', __( '<strong>
|
221 |
return;
|
222 |
}
|
223 |
|
224 |
// Check if email address is already in use
|
225 |
if ( email_exists( $_POST['email'] ) ) {
|
226 |
-
bbp_add_error( 'bbp_user_email_taken', __( '<strong>
|
227 |
return;
|
228 |
}
|
229 |
|
@@ -340,7 +340,7 @@ function bbp_user_email_change_handler( $action = '' ) {
|
|
340 |
if ( email_exists( $new_email['newemail'] ) ) {
|
341 |
delete_user_meta( $user_id, $key );
|
342 |
|
343 |
-
bbp_add_error( 'bbp_user_email_taken', __( '<strong>
|
344 |
|
345 |
// Email address is good to change to
|
346 |
} else {
|
@@ -377,7 +377,7 @@ function bbp_user_email_change_handler( $action = '' ) {
|
|
377 |
// Delete new email address from user options
|
378 |
} elseif ( ! empty( $_GET['dismiss'] ) && ( "{$user_id}{$key}" === $_GET['dismiss'] ) ) {
|
379 |
if ( ! bbp_verify_nonce_request( "dismiss-{$user_id}{$key}" ) ) {
|
380 |
-
bbp_add_error( 'bbp_dismiss_new_email_nonce', __( '<strong>
|
381 |
return;
|
382 |
}
|
383 |
|
@@ -403,7 +403,7 @@ function bbp_edit_user_email_send_notification( $user_id = 0, $args = array() )
|
|
403 |
|
404 |
// Bail if any relevant parameters are empty
|
405 |
if ( empty( $user_id ) || empty( $r['hash'] ) || empty( $r['newemail'] ) ) {
|
406 |
-
bbp_add_error( 'bbp_user_email_invalid_hash', __( '<strong>
|
407 |
return;
|
408 |
}
|
409 |
|
193 |
|
194 |
// Nonce check
|
195 |
if ( ! bbp_verify_nonce_request( 'update-user_' . $user_id ) ) {
|
196 |
+
bbp_add_error( 'bbp_update_user_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
197 |
return;
|
198 |
}
|
199 |
|
200 |
// Cap check
|
201 |
if ( ! current_user_can( 'edit_user', $user_id ) ) {
|
202 |
+
bbp_add_error( 'bbp_update_user_capability', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
203 |
return;
|
204 |
}
|
205 |
|
206 |
// Empty email check
|
207 |
if ( empty( $_POST['email'] ) ) {
|
208 |
+
bbp_add_error( 'bbp_user_email_empty', __( '<strong>Error</strong>: That is not a valid email address.', 'bbpress' ), array( 'form-field' => 'email' ) );
|
209 |
return;
|
210 |
}
|
211 |
|
217 |
|
218 |
// Check that new email address is valid
|
219 |
if ( ! is_email( $_POST['email'] ) ) {
|
220 |
+
bbp_add_error( 'bbp_user_email_invalid', __( '<strong>Error</strong>: That is not a valid email address.', 'bbpress' ), array( 'form-field' => 'email' ) );
|
221 |
return;
|
222 |
}
|
223 |
|
224 |
// Check if email address is already in use
|
225 |
if ( email_exists( $_POST['email'] ) ) {
|
226 |
+
bbp_add_error( 'bbp_user_email_taken', __( '<strong>Error</strong>: That email address is already in use.', 'bbpress' ), array( 'form-field' => 'email' ) );
|
227 |
return;
|
228 |
}
|
229 |
|
340 |
if ( email_exists( $new_email['newemail'] ) ) {
|
341 |
delete_user_meta( $user_id, $key );
|
342 |
|
343 |
+
bbp_add_error( 'bbp_user_email_taken', __( '<strong>Error</strong>: That email address is already in use.', 'bbpress' ), array( 'form-field' => 'email' ) );
|
344 |
|
345 |
// Email address is good to change to
|
346 |
} else {
|
377 |
// Delete new email address from user options
|
378 |
} elseif ( ! empty( $_GET['dismiss'] ) && ( "{$user_id}{$key}" === $_GET['dismiss'] ) ) {
|
379 |
if ( ! bbp_verify_nonce_request( "dismiss-{$user_id}{$key}" ) ) {
|
380 |
+
bbp_add_error( 'bbp_dismiss_new_email_nonce', __( '<strong>Error</strong>: Are you sure you wanted to do that?', 'bbpress' ) );
|
381 |
return;
|
382 |
}
|
383 |
|
403 |
|
404 |
// Bail if any relevant parameters are empty
|
405 |
if ( empty( $user_id ) || empty( $r['hash'] ) || empty( $r['newemail'] ) ) {
|
406 |
+
bbp_add_error( 'bbp_user_email_invalid_hash', __( '<strong>Error</strong>: An error occurred while updating your email address.', 'bbpress' ), array( 'form-field' => 'email' ) );
|
407 |
return;
|
408 |
}
|
409 |
|
includes/users/signups.php
CHANGED
@@ -206,12 +206,12 @@ function bbp_validate_signup_role( $to_validate = '' ) {
|
|
206 |
|
207 |
// Add error if role is empty
|
208 |
if ( empty( $to_validate ) ) {
|
209 |
-
bbp_add_error( 'bbp_signup_role_empty', __( '<strong>
|
210 |
}
|
211 |
|
212 |
// Add error if posted role is not a valid role
|
213 |
if ( ! bbp_is_valid_role( $to_validate ) ) {
|
214 |
-
bbp_add_error( 'bbp_signup_role_invalid', __( '<strong>
|
215 |
}
|
216 |
|
217 |
// If no errors, set return value to the role to validate
|
206 |
|
207 |
// Add error if role is empty
|
208 |
if ( empty( $to_validate ) ) {
|
209 |
+
bbp_add_error( 'bbp_signup_role_empty', __( '<strong>Error</strong>: Empty role.', 'bbpress' ) );
|
210 |
}
|
211 |
|
212 |
// Add error if posted role is not a valid role
|
213 |
if ( ! bbp_is_valid_role( $to_validate ) ) {
|
214 |
+
bbp_add_error( 'bbp_signup_role_invalid', __( '<strong>Error</strong>: Invalid role.', 'bbpress' ) );
|
215 |
}
|
216 |
|
217 |
// If no errors, set return value to the role to validate
|
includes/users/template.php
CHANGED
@@ -487,14 +487,20 @@ function bbp_user_nicename( $user_id = 0, $args = array() ) {
|
|
487 |
'force' => ''
|
488 |
), 'get_user_nicename' );
|
489 |
|
490 |
-
//
|
491 |
-
if ( empty( $r['force'] ) ) {
|
492 |
-
$
|
493 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
494 |
|
495 |
-
//
|
496 |
} else {
|
497 |
-
$nicename =
|
498 |
}
|
499 |
|
500 |
// Maybe wrap the nicename
|
@@ -2293,8 +2299,12 @@ function bbp_current_user_can_access_create_reply_form() {
|
|
2293 |
$retval = bbp_current_user_can_publish_replies();
|
2294 |
|
2295 |
// User can edit this reply
|
2296 |
-
}
|
2297 |
$retval = current_user_can( 'edit_reply', bbp_get_reply_id() );
|
|
|
|
|
|
|
|
|
2298 |
}
|
2299 |
|
2300 |
// Filter & return
|
487 |
'force' => ''
|
488 |
), 'get_user_nicename' );
|
489 |
|
490 |
+
// Force the nicename (likely from a previous user query)
|
491 |
+
if ( ! empty( $r['force'] ) ) {
|
492 |
+
$nicename = (string) $r['force'];
|
493 |
+
|
494 |
+
// Maybe fallback to getting the nicename from user data
|
495 |
+
} elseif ( ! empty( $r['user_id'] ) ) {
|
496 |
+
$user = get_userdata( $r['user_id'] );
|
497 |
+
$nicename = ! empty( $user )
|
498 |
+
? $user->user_nicename
|
499 |
+
: '';
|
500 |
|
501 |
+
// Maybe fallback to empty string so filter still applies
|
502 |
} else {
|
503 |
+
$nicename = '';
|
504 |
}
|
505 |
|
506 |
// Maybe wrap the nicename
|
2299 |
$retval = bbp_current_user_can_publish_replies();
|
2300 |
|
2301 |
// User can edit this reply
|
2302 |
+
} elseif ( bbp_get_reply_id() ) {
|
2303 |
$retval = current_user_can( 'edit_reply', bbp_get_reply_id() );
|
2304 |
+
|
2305 |
+
// User can edit this topic
|
2306 |
+
} elseif ( bbp_get_topic_id() ) {
|
2307 |
+
$retval = current_user_can( 'edit_topic', bbp_get_topic_id() );
|
2308 |
}
|
2309 |
|
2310 |
// Filter & return
|
readme.txt
CHANGED
@@ -1,12 +1,12 @@
|
|
1 |
=== bbPress ===
|
2 |
Contributors: matt, johnjamesjacoby, jmdodd, netweb, sergeybiryukov
|
3 |
Tags: forum, forums, discussion, support
|
4 |
-
Tested up to: 5.
|
5 |
-
Stable tag: 2.6.
|
6 |
License: GPLv2 or later
|
7 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
8 |
Requires PHP: 5.6.20
|
9 |
-
Requires at least:
|
10 |
|
11 |
bbPress is forum software for WordPress.
|
12 |
|
@@ -55,4 +55,4 @@ bbPress is intentionally simple yet infinitely powerful forum software, built by
|
|
55 |
|
56 |
== Changelog ==
|
57 |
|
58 |
-
Check out the [releases page](https://codex.bbpress.org/releases/)
|
1 |
=== bbPress ===
|
2 |
Contributors: matt, johnjamesjacoby, jmdodd, netweb, sergeybiryukov
|
3 |
Tags: forum, forums, discussion, support
|
4 |
+
Tested up to: 5.8
|
5 |
+
Stable tag: 2.6.6
|
6 |
License: GPLv2 or later
|
7 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
8 |
Requires PHP: 5.6.20
|
9 |
+
Requires at least: 5.0
|
10 |
|
11 |
bbPress is forum software for WordPress.
|
12 |
|
55 |
|
56 |
== Changelog ==
|
57 |
|
58 |
+
Check out the [releases page](https://codex.bbpress.org/releases/)
|
templates/default/bbpress/user-profile.php
CHANGED
@@ -35,7 +35,7 @@ do_action( 'bbp_template_before_user_profile' ); ?>
|
|
35 |
|
36 |
<?php if ( bbp_get_user_last_posted() ) : ?>
|
37 |
|
38 |
-
<p class="bbp-user-
|
39 |
|
40 |
<?php endif; ?>
|
41 |
|
35 |
|
36 |
<?php if ( bbp_get_user_last_posted() ) : ?>
|
37 |
|
38 |
+
<p class="bbp-user-last-activity"><?php printf( esc_html__( 'Last Activity: %s', 'bbpress' ), bbp_get_time_since( bbp_get_user_last_posted(), false, true ) ); ?></p>
|
39 |
|
40 |
<?php endif; ?>
|
41 |
|
templates/default/js/reply.js
CHANGED
@@ -24,7 +24,7 @@ addReply = {
|
|
24 |
/* Remove the editor, if its already been moved */
|
25 |
t.removeEditor();
|
26 |
|
27 |
-
/*
|
28 |
if ( ! reply || ! respond || ! cancel || ! parent ) {
|
29 |
return;
|
30 |
}
|
@@ -62,29 +62,46 @@ addReply = {
|
|
62 |
* @returns {void}
|
63 |
*/
|
64 |
cancel.onclick = function () {
|
65 |
-
|
66 |
-
|
67 |
-
respond = r.getElement( r.respondId );
|
68 |
|
69 |
-
|
70 |
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
|
75 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
|
77 |
-
|
78 |
-
temp.parentNode.removeChild( temp );
|
79 |
|
80 |
-
|
81 |
-
|
|
|
|
|
82 |
|
83 |
-
|
84 |
-
};
|
85 |
|
86 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
87 |
|
|
|
88 |
return false;
|
89 |
},
|
90 |
|
24 |
/* Remove the editor, if its already been moved */
|
25 |
t.removeEditor();
|
26 |
|
27 |
+
/* Allow click to go through */
|
28 |
if ( ! reply || ! respond || ! cancel || ! parent ) {
|
29 |
return;
|
30 |
}
|
62 |
* @returns {void}
|
63 |
*/
|
64 |
cancel.onclick = function () {
|
65 |
+
t.cancelForm( this );
|
66 |
+
};
|
|
|
67 |
|
68 |
+
t.scrollToForm();
|
69 |
|
70 |
+
/* Prevent click from going through */
|
71 |
+
return false;
|
72 |
+
},
|
73 |
|
74 |
+
/**
|
75 |
+
* Cancel the reply form.
|
76 |
+
*
|
77 |
+
* @since 2.6.6
|
78 |
+
* @returns {void}
|
79 |
+
*/
|
80 |
+
cancelForm: function () {
|
81 |
+
var r = addReply,
|
82 |
+
temp = r.getElement( 'bbp-temp-form-div' ),
|
83 |
+
cancel = r.getElement( 'bbp-cancel-reply-to-link' ),
|
84 |
+
respond = r.getElement( r.respondId );
|
85 |
|
86 |
+
r.removeEditor();
|
|
|
87 |
|
88 |
+
/* Allow click to go through */
|
89 |
+
if ( ! temp || ! respond ) {
|
90 |
+
return;
|
91 |
+
}
|
92 |
|
93 |
+
r.getElement( 'bbp_reply_to' ).value = '0';
|
|
|
94 |
|
95 |
+
temp.parentNode.insertBefore( respond, temp );
|
96 |
+
temp.parentNode.removeChild( temp );
|
97 |
+
|
98 |
+
cancel.style.display = 'none';
|
99 |
+
cancel.onclick = null;
|
100 |
+
|
101 |
+
r.addEditor();
|
102 |
+
r.scrollToForm();
|
103 |
|
104 |
+
/* Prevent click from going through */
|
105 |
return false;
|
106 |
},
|
107 |
|
templates/default/js/reply.min.js
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
/*! This file is automatically generated. */
|
2 |
|
3 |
-
addReply={moveForm:function(e,t,n,o){var i=this,d=i.getElement(e),l=i.getElement(n),r=i.getElement("bbp-cancel-reply-to-link"),m=i.getElement("bbp_reply_to"),
|
1 |
/*! This file is automatically generated. */
|
2 |
|
3 |
+
addReply={moveForm:function(e,t,n,o){var i=this,d=i.getElement(e),l=i.getElement(n),r=i.getElement("bbp-cancel-reply-to-link"),m=i.getElement("bbp_reply_to"),c=i.getElement("bbp_topic_id");if(i.removeEditor(),d&&l&&r&&m){if(i.respondId=n,o=o||!1,!i.getElement("bbp-temp-form-div")){var p=document.createElement("div");p.id="bbp-temp-form-div",p.style.display="none",l.parentNode.appendChild(p)}return d.parentNode.appendChild(l),c&&o&&(c.value=o),m.value=t,r.style.display="",i.addEditor(),r.onclick=function(){i.cancelForm(this)},i.scrollToForm(),!1}},cancelForm:function(){var e=addReply,t=e.getElement("bbp-temp-form-div"),n=e.getElement("bbp-cancel-reply-to-link"),o=e.getElement(e.respondId);if(e.removeEditor(),t&&o)return e.getElement("bbp_reply_to").value="0",t.parentNode.insertBefore(o,t),t.parentNode.removeChild(t),n.style.display="none",n.onclick=null,e.addEditor(),e.scrollToForm(),!1},scrollToForm:function(){var e=this,t=e.getElement("new-post").getBoundingClientRect(),n=(window.pageYOffset||document.scrollTop)-(document.clientTop||0),o=n+t.top,i=o<n,d=e.getElement("wpadminbar"),l=0;void 0!==d&&(l=d.scrollHeight),distance=!0===i?n-o:o-n;var r=distance>800?30:20,m=Math.min(12,Math.round(distance/r)),c=Math.round(distance/r),p=[],s=0;if(!0===i)for(;n>o;)(n-=c)<o&&(n=o),p.push(n-l),setTimeout(function(){window.scrollTo(0,p.shift())},s*m),s++;else for(;n<o;)(n+=c)>o&&(n=o),p.push(n-l),setTimeout(function(){window.scrollTo(0,p.shift())},s*m),s++},getElement:function(e){return document.getElementById(e)},removeEditor:function(){if("undefined"!=typeof tinyMCE){var e=tinyMCE.get("bbp_reply_content");e&&!e.isHidden()?(this.mode="tmce",e.remove()):this.mode="html"}},addEditor:function(){"undefined"!=typeof tinyMCE&&("tmce"===this.mode?switchEditors.go("bbp_reply_content","tmce"):"html"===this.mode&&switchEditors.go("bbp_reply_content","html"))}};
|