PluginProbe
bbPress / 2.0-rc-3
bbPress v2.0-rc-3
2.6.17 trunk 2.0 2.0-beta-1 2.0-beta-2b 2.0-beta-3 2.0-beta-3b 2.0-rc-2 2.0-rc-3 2.0-rc-4 2.0-rc-5 2.0.1 2.0.2 2.0.3 2.1 2.1-beta-1 2.1-rc1 2.1-rc2 2.1-rc3 2.1-rc4 2.1.1 2.1.2 2.1.3 2.2 2.2.1 All 72 releases
bbpress / bbp-includes / bbp-core-options.php

bbp-core-options.php in bbPress 2.0-rc-3, at bbp-includes/bbp-core-options.php

278 lines 6.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 /**
4 * bbPress Options
5 *
6 * @package bbPress
7 * @subpackage Options
8 */
9
10 // Exit if accessed directly
11 if ( !defined( 'ABSPATH' ) ) exit;
12
13 /**
14 * Get the default site options and their values
15 *
16 * @since bbPress (r3421)
17 *
18 * @return array Filtered option names and values
19 */
20 function bbp_get_default_options() {
21
22 // Default options
23 $options = array (
24
25 /** DB Version ********************************************************/
26
27 '_bbp_db_version' => '155',
28
29 /** Settings **********************************************************/
30
31 // Lock post editing after 5 minutes
32 '_bbp_edit_lock' => '5',
33
34 // Throttle post time to 10 seconds
35 '_bbp_throttle_time' => '10',
36
37 // Favorites
38 '_bbp_enable_favorites' => true,
39
40 // Subscriptions
41 '_bbp_enable_subscriptions' => true,
42
43 // Allow anonymous posting
44 '_bbp_allow_anonymous' => false,
45
46 // Users from all sites can post
47 '_bbp_allow_global_access' => false,
48
49 /** Per Page **********************************************************/
50
51 // Topics per page
52 '_bbp_topics_per_page' => '15',
53
54 // Replies per page
55 '_bbp_replies_per_page' => '15',
56
57 // Forums per page
58 '_bbp_forums_per_page' => '50',
59
60 // Topics per RSS page
61 '_bbp_topics_per_rss_page' => '25',
62
63 // Replies per RSS page
64 '_bbp_replies_per_rss_page' => '25',
65
66 /** Page For **********************************************************/
67
68 // Page for forums
69 '_bbp_page_for_forums' => '0',
70
71 // Page for forums
72 '_bbp_page_for_topics' => '0',
73
74 // Page for login
75 '_bbp_page_for_login' => '0',
76
77 // Page for register
78 '_bbp_page_for_register' => '0',
79
80 // Page for lost-pass
81 '_bbp_page_for_lost_pass' => '0',
82
83 /** Archive Slugs *****************************************************/
84
85 // Forum archive slug
86 '_bbp_root_slug' => 'forums',
87
88 // Topic archive slug
89 '_bbp_topic_archive_slug' => 'topics',
90
91 /** Single Slugs ******************************************************/
92
93 // Include Forum archive before single slugs
94 '_bbp_include_root' => true,
95
96 // Forum slug
97 '_bbp_forum_slug' => 'forum',
98
99 // Topic slug
100 '_bbp_topic_slug' => 'topic',
101
102 // Reply slug
103 '_bbp_reply_slug' => 'reply',
104
105 // Topic tag slug
106 '_bbp_topic_tag_slug' => 'topic-tag',
107
108 /** Other Slugs *******************************************************/
109
110 // User profile slug
111 '_bbp_user_slug' => 'users',
112
113 // View slug
114 '_bbp_view_slug' => 'view',
115
116 /** Topics ************************************************************/
117
118 // Title Max Length
119 '_bbp_title_max_length' => '80',
120
121 // Super stickies
122 '_bbp_super_sticky_topics' => '',
123
124 /** Forums ************************************************************/
125
126 // Private forums
127 '_bbp_private_forums' => '',
128
129 // Hidden forums
130 '_bbp_hidden_forums' => '',
131 );
132
133 return apply_filters( 'bbp_get_default_options', $options );
134 }
135
136 /**
137 * Add default options
138 *
139 * Hooked to bbp_activate, it is only called once when bbPress is activated.
140 * This is non-destructive, so existing settings will not be overridden.
141 *
142 * @uses add_option() Adds default options
143 * @uses do_action() Calls 'bbp_add_options'
144 */
145 function bbp_add_options() {
146
147 // Get the default options and values
148 $options = bbp_get_default_options();
149
150 // Add default options
151 foreach ( $options as $key => $value )
152 add_option( $key, $value );
153
154 // Allow previously activated plugins to append their own options.
155 // This is an extremely rare use-case.
156 do_action( 'bbp_add_options' );
157 }
158 /**
159 * Delete default options
160 *
161 * Hooked to bbp_uninstall, it is only called once when bbPress is uninstalled.
162 * This is destructive, so existing settings will be destroyed.
163 *
164 * @uses delete_option() Removes default options
165 * @uses do_action() Calls 'bbp_delete_options'
166 */
167 function bbp_delete_options() {
168
169 // Get the default options and values
170 $options = bbp_get_default_options();
171
172 // Add default options
173 foreach ( $options as $key => $value )
174 delete_option( $key );
175
176 // Allow previously activated plugins to append their own options.
177 // This is an extremely rare use-case.
178 do_action( 'bbp_delete_options' );
179 }
180
181 /** Active? *******************************************************************/
182
183 /**
184 * Checks if favorites feature is enabled.
185 *
186 * @since bbPress (r2658)
187 *
188 * @param $default bool Optional.Default value
189 *
190 * @uses get_option() To get the favorites option
191 * @return bool Is favorites enabled or not
192 */
193 function bbp_is_favorites_active( $default = true ) {
194 return apply_filters( 'bbp_is_favorites_active', (bool) get_option( '_bbp_enable_favorites', $default ) );
195 }
196
197 /**
198 * Checks if subscription feature is enabled.
199 *
200 * @since bbPress (r2658)
201 *
202 * @param $default bool Optional.Default value
203 *
204 * @uses get_option() To get the subscriptions option
205 * @return bool Is subscription enabled or not
206 */
207 function bbp_is_subscriptions_active( $default = true ) {
208 return apply_filters( 'bbp_is_subscriptions_active', (bool) get_option( '_bbp_enable_subscriptions', $default ) );
209 }
210
211 /**
212 * Are topic and reply revisions allowed
213 *
214 * @since bbPress (r3412)
215 *
216 * @param $default bool Optional. Default value
217 *
218 * @uses get_option() To get the allow revisions
219 * @return bool Are revisions allowed?
220 */
221 function bbp_allow_revisions( $default = true ) {
222 return apply_filters( 'bbp_allow_revisions', (bool) get_option( '_bbp_allow_revisions', $default ) );
223 }
224
225 /**
226 * Is the anonymous posting allowed?
227 *
228 * @since bbPress (r2659)
229 *
230 * @param $default bool Optional. Default value
231 *
232 * @uses get_option() To get the allow anonymous option
233 * @return bool Is anonymous posting allowed?
234 */
235 function bbp_allow_anonymous( $default = false ) {
236 return apply_filters( 'bbp_allow_anonymous', (bool) get_option( '_bbp_allow_anonymous', $default ) );
237 }
238
239 /**
240 * Is this forum available to all users on all sites in this installation?
241 *
242 * @since bbPress (r3378)
243 *
244 * @param $default bool Optional. Default value
245 *
246 * @uses get_option() To get the global access option
247 * @return bool Is global access allowed?
248 */
249 function bbp_allow_global_access( $default = false ) {
250 return apply_filters( 'bbp_allow_global_access', (bool) get_option( '_bbp_allow_global_access', $default ) );
251 }
252
253 /**
254 * Output the maximum length of a title
255 *
256 * @since bbPress (r3246)
257 *
258 * @param $default bool Optional. Default value
259 */
260 function bbp_title_max_length( $default = '80' ) {
261 echo bbp_get_title_max_length( $default );
262 }
263 /**
264 * Return the maximum length of a title
265 *
266 * @since bbPress (r3246)
267 *
268 * @param $default bool Optional. Default value
269 *
270 * @uses get_option() To get the maximum title length
271 * @return int Is anonymous posting allowed?
272 */
273 function bbp_get_title_max_length( $default = '80' ) {
274 return apply_filters( 'bbp_get_title_max_length', (int) get_option( '_bbp_title_max_length', $default ) );
275 }
276
277 ?>
278