Version Description
Download this release
Release Info
Developer | Tomdever |
Plugin | wpForo Forum |
Version | 1.8.3 |
Comparing to | |
See all releases |
Code changes from version 1.8.2 to 1.8.3
- readme.txt +21 -9
- wpf-admin/css/admin.css +13 -0
- wpf-admin/dashboard.php +8 -25
- wpf-admin/forum.php +8 -16
- wpf-assets/js/frontend.js +13 -3
- wpf-includes/class-postmeta.php +9 -5
- wpf-includes/class-posts.php +24 -17
- wpf-includes/class-template.php +4 -4
- wpf-includes/functions-template.php +1 -1
- wpf-includes/functions.php +5 -0
- wpf-includes/wpf-hooks.php +4 -4
- wpf-themes/classic/style-rtl.css +3 -1
- wpf-themes/classic/style.css +4 -2
- wpf-themes/classic/widgets-rtl.css +1 -1
- wpf-themes/classic/widgets.css +1 -1
- wpforo.php +2 -2
readme.txt
CHANGED
@@ -2,8 +2,8 @@
|
|
2 |
Contributors: gVectors Team
|
3 |
Tags: forum, forums, forum plugin, WordPress forum plugin, community, discussion
|
4 |
Requires at least: 4.1
|
5 |
-
Tested up to: 5.
|
6 |
-
Stable tag: 1.8.
|
7 |
Requires PHP: 5.6 and higher
|
8 |
License: GPLv2 or later
|
9 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
@@ -165,15 +165,16 @@ Find wpForo forum plugin addons on [gVectors Team website...](https://gvectors.c
|
|
165 |
|
166 |
== Changelog ==
|
167 |
|
168 |
-
= wpForo Forum 1.8.
|
169 |
|
170 |
-
[wpForo Forum v1.8.
|
171 |
|
172 |
-
*
|
173 |
-
*
|
174 |
-
* Fixed Bug:
|
175 |
-
* Fixed Bug:
|
176 |
-
* Fixed Bug:
|
|
|
177 |
|
178 |
|
179 |
IMPORTANT NOTES for UPDATE
|
@@ -184,6 +185,17 @@ IMPORTANT NOTES for UPDATE
|
|
184 |
- Some JS and CSS files are changed, please refresh (press Ctrl+F5) on forum front-end twice to reset browser cache, otherwise you'll see crashed design.
|
185 |
|
186 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
187 |
= wpForo Forum 1.8.0 / 1.8.1 | 22.07.2020 =
|
188 |
|
189 |
[wpForo Forum v1.8.0 / v1.8.1 Release Summary](https://wpforo.com/community/wpforo-announcements/wpforo-1-8-0-is-released/)
|
2 |
Contributors: gVectors Team
|
3 |
Tags: forum, forums, forum plugin, WordPress forum plugin, community, discussion
|
4 |
Requires at least: 4.1
|
5 |
+
Tested up to: 5.5
|
6 |
+
Stable tag: 1.8.3
|
7 |
Requires PHP: 5.6 and higher
|
8 |
License: GPLv2 or later
|
9 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
165 |
|
166 |
== Changelog ==
|
167 |
|
168 |
+
= wpForo Forum 1.8.3 | 12.08.2020 =
|
169 |
|
170 |
+
[wpForo Forum v1.8.3 Release Summary](https://wpforo.com/community/wpforo-announcements/wpforo-1-8-3-is-released/)
|
171 |
|
172 |
+
* Added: WordPress 5.5 compatibility
|
173 |
+
* Optimized: Forum fulltext search functions
|
174 |
+
* Fixed Bug: Allow edit reply titles in threaded layout
|
175 |
+
* Fixed Bug: Stop changing attachments paths to relative by TinyMCE
|
176 |
+
* Fixed Bug: Advanced search bug in search widget and menu forms
|
177 |
+
* Fixed Bug: Remove Advanced search options button from Tags search
|
178 |
|
179 |
|
180 |
IMPORTANT NOTES for UPDATE
|
185 |
- Some JS and CSS files are changed, please refresh (press Ctrl+F5) on forum front-end twice to reset browser cache, otherwise you'll see crashed design.
|
186 |
|
187 |
|
188 |
+
= wpForo Forum 1.8.2 | 27.07.2020 =
|
189 |
+
|
190 |
+
[wpForo Forum v1.8.2 Release Summary](https://wpforo.com/community/wpforo-announcements/wpforo-1-8-2-is-released/)
|
191 |
+
|
192 |
+
* Fixed Bug: Login issue, forum doesn't recognize login status
|
193 |
+
* Fixed Bug: Forum menu doesn't reflect to login status
|
194 |
+
* Fixed Bug: Cannot approve / unapprove post
|
195 |
+
* Fixed Bug: Cannot edit a topic / post
|
196 |
+
* Fixed Bug: Some forms are disappeared
|
197 |
+
|
198 |
+
|
199 |
= wpForo Forum 1.8.0 / 1.8.1 | 22.07.2020 =
|
200 |
|
201 |
[wpForo Forum v1.8.0 / v1.8.1 Release Summary](https://wpforo.com/community/wpforo-announcements/wpforo-1-8-0-is-released/)
|
wpf-admin/css/admin.css
CHANGED
@@ -363,4 +363,17 @@ body{
|
|
363 |
|
364 |
#wpf-access-table #wpf-access-list tr:nth-child(odd){
|
365 |
background-color: #FCFCFC;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
366 |
}
|
363 |
|
364 |
#wpf-access-table #wpf-access-list tr:nth-child(odd){
|
365 |
background-color: #FCFCFC;
|
366 |
+
}
|
367 |
+
|
368 |
+
#wpf-admin-wrap .wpf-box-wrap{
|
369 |
+
margin: 0 8px;
|
370 |
+
min-height: 100px;
|
371 |
+
}
|
372 |
+
|
373 |
+
#wpf-admin-wrap .wpf-box-header{
|
374 |
+
font-size: 14px;
|
375 |
+
padding: 8px 12px;
|
376 |
+
margin: 0;
|
377 |
+
line-height: 1.4;
|
378 |
+
border-bottom: 1px solid #ccd0d4;
|
379 |
}
|
wpf-admin/dashboard.php
CHANGED
@@ -13,14 +13,9 @@
|
|
13 |
|
14 |
|
15 |
<div class="postbox-container" id="postbox-container-0" style="width:100%;">
|
16 |
-
<div class="
|
17 |
|
18 |
<div class="postbox" id="wpforo_dashboard_widget_0">
|
19 |
-
<button aria-expanded="true" class="handlediv button-link" type="button">
|
20 |
-
<span class="screen-reader-text"> </span>
|
21 |
-
<span class="toggle-indicator"></span>
|
22 |
-
</button>
|
23 |
-
<h2 class="hndle ui-sortable-handle"><span><?php _e('Welcome Message', 'wpforo'); ?></span></h2>
|
24 |
<div class="inside">
|
25 |
<div class="main" style="padding:5px 15px 15px 15px;">
|
26 |
<div style="float:left; vertical-align:top; width:calc(100% - 300px);;">
|
@@ -47,14 +42,10 @@
|
|
47 |
|
48 |
<?php if(current_user_can('administrator') || current_user_can('editor') || current_user_can('author') ): ?>
|
49 |
<div class="postbox-container" id="postbox-container-1">
|
50 |
-
<div class="
|
51 |
|
52 |
<div class="postbox" id="wpforo_dashboard_widget_1">
|
53 |
-
<
|
54 |
-
<span class="screen-reader-text">Toggle panel: General Information</span>
|
55 |
-
<span class="toggle-indicator"></span>
|
56 |
-
</button>
|
57 |
-
<h2 class="hndle ui-sortable-handle"><span><?php _e('General Information', 'wpforo'); ?></span></h2>
|
58 |
<div class="inside">
|
59 |
<div class="main">
|
60 |
<ul>
|
@@ -68,11 +59,7 @@
|
|
68 |
</div><!-- widget / postbox -->
|
69 |
|
70 |
<div class="postbox" id="wpforo_dashboard_widget_server">
|
71 |
-
<
|
72 |
-
<span class="screen-reader-text">Toggle panel: Server Information</span>
|
73 |
-
<span class="toggle-indicator"></span>
|
74 |
-
</button>
|
75 |
-
<h2 class="hndle ui-sortable-handle"><span><?php _e('Server Information', 'wpforo'); ?></span></h2>
|
76 |
<div class="inside">
|
77 |
<div class="main">
|
78 |
<table style="width:98%; margin:0 auto; text-align:left;">
|
@@ -121,14 +108,10 @@
|
|
121 |
</div><!-- wpforo_postbox_container -->
|
122 |
|
123 |
<div class="postbox-container" id="postbox-container-2">
|
124 |
-
<div class="
|
125 |
|
126 |
<div class="postbox" id="wpforo_dashboard_widget_statistic">
|
127 |
-
<
|
128 |
-
<span class="screen-reader-text">Toggle panel: Board Statistic</span>
|
129 |
-
<span class="toggle-indicator"></span>
|
130 |
-
</button>
|
131 |
-
<h2 class="hndle ui-sortable-handle"><span><?php _e('Board Statistic', 'wpforo'); ?></span></h2>
|
132 |
<div class="inside">
|
133 |
<div class="main">
|
134 |
<table style="width:98%; margin:0 auto; text-align:left;">
|
@@ -188,7 +171,7 @@
|
|
188 |
<?php if( wpforo_current_user_is('admin') ) : ?>
|
189 |
<tr>
|
190 |
<td colspan="2">
|
191 |
-
<p class="
|
192 |
<?php _e('Forum Maintenance', 'wpforo'); ?>
|
193 |
</p>
|
194 |
<p class="wpf-info" style="padding:5px 0;"><?php _e("This process may take a few seconds or dozens of minutes, please be patient and don't close this page. If you got 500 Server Error please don't worry, the data updating process is still working in MySQL server.", 'wpforo'); ?></p>
|
@@ -230,7 +213,7 @@
|
|
230 |
<?php endif; ?>
|
231 |
|
232 |
<div class="postbox-container" id="postbox-container-3">
|
233 |
-
<div class="
|
234 |
|
235 |
<?php do_action( 'wpforo_dashboard_widgets_col3', WPF() ); ?>
|
236 |
|
13 |
|
14 |
|
15 |
<div class="postbox-container" id="postbox-container-0" style="width:100%;">
|
16 |
+
<div class="wpf-box-wrap" style="min-height:60px;">
|
17 |
|
18 |
<div class="postbox" id="wpforo_dashboard_widget_0">
|
|
|
|
|
|
|
|
|
|
|
19 |
<div class="inside">
|
20 |
<div class="main" style="padding:5px 15px 15px 15px;">
|
21 |
<div style="float:left; vertical-align:top; width:calc(100% - 300px);;">
|
42 |
|
43 |
<?php if(current_user_can('administrator') || current_user_can('editor') || current_user_can('author') ): ?>
|
44 |
<div class="postbox-container" id="postbox-container-1">
|
45 |
+
<div class="wpf-box-wrap">
|
46 |
|
47 |
<div class="postbox" id="wpforo_dashboard_widget_1">
|
48 |
+
<h2 class="wpf-box-header"><span><?php _e('General Information', 'wpforo'); ?></span></h2>
|
|
|
|
|
|
|
|
|
49 |
<div class="inside">
|
50 |
<div class="main">
|
51 |
<ul>
|
59 |
</div><!-- widget / postbox -->
|
60 |
|
61 |
<div class="postbox" id="wpforo_dashboard_widget_server">
|
62 |
+
<h2 class="wpf-box-header"><span><?php _e('Server Information', 'wpforo'); ?></span></h2>
|
|
|
|
|
|
|
|
|
63 |
<div class="inside">
|
64 |
<div class="main">
|
65 |
<table style="width:98%; margin:0 auto; text-align:left;">
|
108 |
</div><!-- wpforo_postbox_container -->
|
109 |
|
110 |
<div class="postbox-container" id="postbox-container-2">
|
111 |
+
<div class="wpf-box-wrap">
|
112 |
|
113 |
<div class="postbox" id="wpforo_dashboard_widget_statistic">
|
114 |
+
<h2 class="wpf-box-header"><span><?php _e('Board Statistic', 'wpforo'); ?></span></h2>
|
|
|
|
|
|
|
|
|
115 |
<div class="inside">
|
116 |
<div class="main">
|
117 |
<table style="width:98%; margin:0 auto; text-align:left;">
|
171 |
<?php if( wpforo_current_user_is('admin') ) : ?>
|
172 |
<tr>
|
173 |
<td colspan="2">
|
174 |
+
<p class="wpf-box-header" style="padding:25px 0 5px; margin:0; font-size:14px; font-weight:bold;">
|
175 |
<?php _e('Forum Maintenance', 'wpforo'); ?>
|
176 |
</p>
|
177 |
<p class="wpf-info" style="padding:5px 0;"><?php _e("This process may take a few seconds or dozens of minutes, please be patient and don't close this page. If you got 500 Server Error please don't worry, the data updating process is still working in MySQL server.", 'wpforo'); ?></p>
|
213 |
<?php endif; ?>
|
214 |
|
215 |
<div class="postbox-container" id="postbox-container-3">
|
216 |
+
<div class="wpf-box-wrap">
|
217 |
|
218 |
<?php do_action( 'wpforo_dashboard_widgets_col3', WPF() ); ?>
|
219 |
|
wpf-admin/forum.php
CHANGED
@@ -185,8 +185,7 @@
|
|
185 |
<div id="postbox-container-1" class="postbox-container">
|
186 |
<div id="side-sortables" class="meta-box-sortables ui-sortable">
|
187 |
<div id="forum_cat" class="postbox">
|
188 |
-
<
|
189 |
-
<h3 class="hndle"><span><?php _e('Forum Options', 'wpforo'); ?> <a href="https://wpforo.com/docs/root/categories-and-forums/forum-manager/add-new-forum/#forum-options" title="<?php _e('Read the documentation', 'wpforo') ?>" target="_blank" style="font-size: 14px;"><i class="far fa-question-circle"></i></a></span></h3>
|
190 |
<div class="inside">
|
191 |
<div class="form-field">
|
192 |
<p><strong><?php _e('Parent Forum', 'wpforo'); ?></strong></p>
|
@@ -215,8 +214,7 @@
|
|
215 |
</div>
|
216 |
|
217 |
<div id="submitdiv" class="postbox">
|
218 |
-
<
|
219 |
-
<h3 class="hndle"><span><?php _e('Publish', 'wpforo'); ?></span></h3>
|
220 |
<div class="inside">
|
221 |
<div id="major-publishing-actions" style="text-align:right;">
|
222 |
<?php if( $action === 'edit' ) : ?>
|
@@ -233,8 +231,7 @@
|
|
233 |
|
234 |
|
235 |
<div id="forum_permissions" class="postbox">
|
236 |
-
<
|
237 |
-
<h3 class="hndle"><span><?php _e('Forum Permissions', 'wpforo'); ?> <a href="https://wpforo.com/docs/root/categories-and-forums/forum-manager/add-new-forum/#forum-permissions" title="<?php _e('Read the documentation', 'wpforo') ?>" target="_blank" style="font-size: 14px;"><i class="far fa-question-circle"></i></a></span></h3>
|
238 |
<div class="inside">
|
239 |
<table>
|
240 |
<?php WPF()->forum->permissions(); ?>
|
@@ -243,8 +240,7 @@
|
|
243 |
</div>
|
244 |
|
245 |
<div id="forum_color" class="postbox">
|
246 |
-
<
|
247 |
-
<h3 class="hndle"><span><?php _e('Additional Options', 'wpforo'); ?> </span></h3>
|
248 |
<div class="inside">
|
249 |
<div class="wpf-forum-additional-options">
|
250 |
<div style="float: left; padding: 2px 10px 0 0;"><?php _e('Forum Color', 'wpforo') ?></div>
|
@@ -262,8 +258,7 @@
|
|
262 |
<div id="normal-sortables" class="meta-box-sortables ui-sortable">
|
263 |
|
264 |
<div id="forum_layout" class="postbox" <?php if(!wpfkey($data, 'is_cat')) echo 'style="display: none"' ;?>>
|
265 |
-
<
|
266 |
-
<h3 class="hndle">
|
267 |
<span>
|
268 |
<?php if( wpfkey($data, 'is_cat') ): ?>
|
269 |
<?php if( wpfval($data, 'is_cat') ): ?>
|
@@ -296,8 +291,7 @@
|
|
296 |
</div>
|
297 |
|
298 |
<div id="forum_slug" class="postbox">
|
299 |
-
<
|
300 |
-
<h3 class="hndle"><span><?php _e('Forum Slug', 'wpforo'); ?> <a href="https://wpforo.com/docs/root/categories-and-forums/forum-manager/add-new-forum/#forum-slug" title="<?php _e('Read the documentation', 'wpforo') ?>" target="_blank" style="font-size: 14px;"><i class="far fa-question-circle"></i></a></span></h3>
|
301 |
<div class="inside">
|
302 |
<input name="forum[slug]" type="text" value="<?php echo esc_attr(isset($data['slug']) ? $data['slug'] : '') ?>" size="40" />
|
303 |
<p><?php _e('The "slug" is the URL-friendly version of the name. It is usually all lowercase and contains only letters, numbers, and hyphens.', 'wpforo'); ?> </p><br />
|
@@ -305,8 +299,7 @@
|
|
305 |
</div>
|
306 |
|
307 |
<div id="forum_icon" class="postbox">
|
308 |
-
<
|
309 |
-
<h3 class="hndle"><span><?php _e('Forum Icon', 'wpforo'); ?> <a href="https://wpforo.com/docs/root/categories-and-forums/forum-manager/add-new-forum/#forum-icon" title="<?php _e('Read the documentation', 'wpforo') ?>" target="_blank" style="font-size: 14px;"><i class="far fa-question-circle"></i></a></span></h3>
|
310 |
<div class="inside" style="padding-top:10px;">
|
311 |
<div class="form-field">
|
312 |
<label for="tag-icon" style="display:block; padding-bottom:5px;"><?php _e('Font-awesome Icon', 'wpforo'); ?>:</label>
|
@@ -317,8 +310,7 @@
|
|
317 |
</div>
|
318 |
|
319 |
<div id="forum_meta" class="postbox">
|
320 |
-
<
|
321 |
-
<h3 class="hndle"><span><?php _e('Forum SEO', 'wpforo'); ?></span></h3>
|
322 |
<div class="inside" style="padding-top:10px;">
|
323 |
<div class="form-field">
|
324 |
<label for="tag-description" style="display:block; padding-bottom:5px;"><?php _e('Meta Description', 'wpforo'); ?>:</label>
|
185 |
<div id="postbox-container-1" class="postbox-container">
|
186 |
<div id="side-sortables" class="meta-box-sortables ui-sortable">
|
187 |
<div id="forum_cat" class="postbox">
|
188 |
+
<h3 class="wpf-box-header"><span><?php _e('Forum Options', 'wpforo'); ?> <a href="https://wpforo.com/docs/root/categories-and-forums/forum-manager/add-new-forum/#forum-options" title="<?php _e('Read the documentation', 'wpforo') ?>" target="_blank" style="font-size: 14px;"><i class="far fa-question-circle"></i></a></span></h3>
|
|
|
189 |
<div class="inside">
|
190 |
<div class="form-field">
|
191 |
<p><strong><?php _e('Parent Forum', 'wpforo'); ?></strong></p>
|
214 |
</div>
|
215 |
|
216 |
<div id="submitdiv" class="postbox">
|
217 |
+
<h3 class="wpf-box-header"><span><?php _e('Publish', 'wpforo'); ?></span></h3>
|
|
|
218 |
<div class="inside">
|
219 |
<div id="major-publishing-actions" style="text-align:right;">
|
220 |
<?php if( $action === 'edit' ) : ?>
|
231 |
|
232 |
|
233 |
<div id="forum_permissions" class="postbox">
|
234 |
+
<h3 class="wpf-box-header"><span><?php _e('Forum Permissions', 'wpforo'); ?> <a href="https://wpforo.com/docs/root/categories-and-forums/forum-manager/add-new-forum/#forum-permissions" title="<?php _e('Read the documentation', 'wpforo') ?>" target="_blank" style="font-size: 14px;"><i class="far fa-question-circle"></i></a></span></h3>
|
|
|
235 |
<div class="inside">
|
236 |
<table>
|
237 |
<?php WPF()->forum->permissions(); ?>
|
240 |
</div>
|
241 |
|
242 |
<div id="forum_color" class="postbox">
|
243 |
+
<h3 class="wpf-box-header"><span><?php _e('Additional Options', 'wpforo'); ?> </span></h3>
|
|
|
244 |
<div class="inside">
|
245 |
<div class="wpf-forum-additional-options">
|
246 |
<div style="float: left; padding: 2px 10px 0 0;"><?php _e('Forum Color', 'wpforo') ?></div>
|
258 |
<div id="normal-sortables" class="meta-box-sortables ui-sortable">
|
259 |
|
260 |
<div id="forum_layout" class="postbox" <?php if(!wpfkey($data, 'is_cat')) echo 'style="display: none"' ;?>>
|
261 |
+
<h3 class="wpf-box-header">
|
|
|
262 |
<span>
|
263 |
<?php if( wpfkey($data, 'is_cat') ): ?>
|
264 |
<?php if( wpfval($data, 'is_cat') ): ?>
|
291 |
</div>
|
292 |
|
293 |
<div id="forum_slug" class="postbox">
|
294 |
+
<h3 class="wpf-box-header"><span><?php _e('Forum Slug', 'wpforo'); ?> <a href="https://wpforo.com/docs/root/categories-and-forums/forum-manager/add-new-forum/#forum-slug" title="<?php _e('Read the documentation', 'wpforo') ?>" target="_blank" style="font-size: 14px;"><i class="far fa-question-circle"></i></a></span></h3>
|
|
|
295 |
<div class="inside">
|
296 |
<input name="forum[slug]" type="text" value="<?php echo esc_attr(isset($data['slug']) ? $data['slug'] : '') ?>" size="40" />
|
297 |
<p><?php _e('The "slug" is the URL-friendly version of the name. It is usually all lowercase and contains only letters, numbers, and hyphens.', 'wpforo'); ?> </p><br />
|
299 |
</div>
|
300 |
|
301 |
<div id="forum_icon" class="postbox">
|
302 |
+
<h3 class="wpf-box-header"><span><?php _e('Forum Icon', 'wpforo'); ?> <a href="https://wpforo.com/docs/root/categories-and-forums/forum-manager/add-new-forum/#forum-icon" title="<?php _e('Read the documentation', 'wpforo') ?>" target="_blank" style="font-size: 14px;"><i class="far fa-question-circle"></i></a></span></h3>
|
|
|
303 |
<div class="inside" style="padding-top:10px;">
|
304 |
<div class="form-field">
|
305 |
<label for="tag-icon" style="display:block; padding-bottom:5px;"><?php _e('Font-awesome Icon', 'wpforo'); ?>:</label>
|
310 |
</div>
|
311 |
|
312 |
<div id="forum_meta" class="postbox">
|
313 |
+
<h3 class="wpf-box-header"><span><?php _e('Forum SEO', 'wpforo'); ?></span></h3>
|
|
|
314 |
<div class="inside" style="padding-top:10px;">
|
315 |
<div class="form-field">
|
316 |
<label for="tag-description" style="display:block; padding-bottom:5px;"><?php _e('Meta Description', 'wpforo'); ?>:</label>
|
wpf-assets/js/frontend.js
CHANGED
@@ -64,13 +64,23 @@ function wpforo_trigger_custom_event(target, name, detail) {
|
|
64 |
function wpforo_tinymce_initializeIt(selector, do_not_focus) {
|
65 |
if( wpforo_editor.is_tinymce_loaded() ){
|
66 |
tinymce.init({
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
67 |
forced_root_block: "",
|
68 |
force_br_newlines: false,
|
69 |
force_p_newlines: true,
|
70 |
selector: selector,
|
71 |
plugins: wpforo.editor_settings.plugins,
|
72 |
external_plugins: wpforo.editor_settings.external_plugins,
|
73 |
-
menubar:
|
74 |
toolbar: wpforo.editor_settings.tinymce.toolbar1,
|
75 |
content_style: wpforo.editor_settings.tinymce.content_style,
|
76 |
branding: false,
|
@@ -441,9 +451,9 @@ jQuery(document).ready(function($){
|
|
441 |
if(match){
|
442 |
scroll_to = $('#post-' + match[1]);
|
443 |
}else{
|
444 |
-
scroll_to = $("#m_, .wpforo-members-content, .wpforo-search-content", wpforo_wrap);
|
445 |
}
|
446 |
-
if( scroll_to.length ){
|
447 |
$('html, body').scrollTop(scroll_to.offset().top - 25);
|
448 |
}
|
449 |
|
64 |
function wpforo_tinymce_initializeIt(selector, do_not_focus) {
|
65 |
if( wpforo_editor.is_tinymce_loaded() ){
|
66 |
tinymce.init({
|
67 |
+
relative_urls : false,
|
68 |
+
remove_script_host : false,
|
69 |
+
convert_urls : false,
|
70 |
+
keep_styles : false,
|
71 |
+
entities: "38,amp,60,lt,62,gt",
|
72 |
+
entity_encoding: "raw",
|
73 |
+
resize: "vertical",
|
74 |
+
preview_styles: "font-family font-size font-weight font-style text-decoration text-transform",
|
75 |
+
end_container_on_empty_block: true,
|
76 |
+
wpeditimage_html5_captions: true,
|
77 |
forced_root_block: "",
|
78 |
force_br_newlines: false,
|
79 |
force_p_newlines: true,
|
80 |
selector: selector,
|
81 |
plugins: wpforo.editor_settings.plugins,
|
82 |
external_plugins: wpforo.editor_settings.external_plugins,
|
83 |
+
menubar: false,
|
84 |
toolbar: wpforo.editor_settings.tinymce.toolbar1,
|
85 |
content_style: wpforo.editor_settings.tinymce.content_style,
|
86 |
branding: false,
|
451 |
if(match){
|
452 |
scroll_to = $('#post-' + match[1]);
|
453 |
}else{
|
454 |
+
//scroll_to = $("#m_, .wpforo-members-content, .wpforo-search-content", wpforo_wrap);
|
455 |
}
|
456 |
+
if( scroll_to != undefined && scroll_to.length ){
|
457 |
$('html, body').scrollTop(scroll_to.offset().top - 25);
|
458 |
}
|
459 |
|
wpf-includes/class-postmeta.php
CHANGED
@@ -436,19 +436,23 @@ class wpForoPostMeta {
|
|
436 |
}else{
|
437 |
$name = wpfval($_FILES, 'data', 'name', $k);
|
438 |
$tmp_name = wpfval($_FILES, 'data', 'tmp_name', $k);
|
|
|
439 |
$size = intval($field['fileSize']);
|
440 |
$fileExtensions = array_filter( (array) is_scalar($field['fileExtensions']) ? explode(',', trim($field['fileExtensions'])) : $field['fileExtensions'] );
|
441 |
if( $fileExtensions ){
|
442 |
-
|
443 |
-
|
|
|
|
|
|
|
|
|
444 |
}else{
|
445 |
-
$
|
|
|
446 |
}
|
447 |
|
448 |
if( !empty($e) ){
|
449 |
if ( wpfval($_FILES, 'data', 'size', $k) <= ($size * 1024 * 1024) ) {
|
450 |
-
|
451 |
-
$ext = pathinfo($name, PATHINFO_EXTENSION);
|
452 |
$wp_upload_dir = wp_upload_dir();
|
453 |
$uplds_dir = $wp_upload_dir['basedir']."/wpforo";
|
454 |
$attach_dir = $wp_upload_dir['basedir']."/wpforo/default_attachments/" . WPF()->current_userid;
|
436 |
}else{
|
437 |
$name = wpfval($_FILES, 'data', 'name', $k);
|
438 |
$tmp_name = wpfval($_FILES, 'data', 'tmp_name', $k);
|
439 |
+
$ext = pathinfo($name, PATHINFO_EXTENSION);
|
440 |
$size = intval($field['fileSize']);
|
441 |
$fileExtensions = array_filter( (array) is_scalar($field['fileExtensions']) ? explode(',', trim($field['fileExtensions'])) : $field['fileExtensions'] );
|
442 |
if( $fileExtensions ){
|
443 |
+
if( in_array( $ext, $fileExtensions ) ){
|
444 |
+
$extensions = explode( '|', array_search($mime_type, $mime_types) );
|
445 |
+
$e = in_array($ext, $extensions);
|
446 |
+
}else{
|
447 |
+
$e = false;
|
448 |
+
}
|
449 |
}else{
|
450 |
+
$extensions = explode( '|', array_search($mime_type, $allowed_mime_types) );
|
451 |
+
$e = in_array($ext, $extensions);
|
452 |
}
|
453 |
|
454 |
if( !empty($e) ){
|
455 |
if ( wpfval($_FILES, 'data', 'size', $k) <= ($size * 1024 * 1024) ) {
|
|
|
|
|
456 |
$wp_upload_dir = wp_upload_dir();
|
457 |
$uplds_dir = $wp_upload_dir['basedir']."/wpforo";
|
458 |
$attach_dir = $wp_upload_dir['basedir']."/wpforo/default_attachments/" . WPF()->current_userid;
|
wpf-includes/class-posts.php
CHANGED
@@ -946,6 +946,8 @@ class wpForoPost{
|
|
946 |
if(!is_array($args)) $args = array('needle' => $args);
|
947 |
if(!wpfval($args, 'needle')) return array();
|
948 |
|
|
|
|
|
949 |
$default = array(
|
950 |
'needle' => '', // search needle
|
951 |
'forumids' => array(), // array( 2, 10, 25 )
|
@@ -981,27 +983,32 @@ class wpForoPost{
|
|
981 |
}
|
982 |
|
983 |
if($args['needle']){
|
984 |
-
|
985 |
-
|
986 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
987 |
|
988 |
if($args['type'] === 'entire-posts'){
|
989 |
$selects[] = "MATCH(".$fa.".`title`) AGAINST('$needle' IN BOOLEAN MODE) + MATCH(".$fa.".`body`) AGAINST('$needle' IN BOOLEAN MODE) AS matches";
|
990 |
-
$wheres[] = "( MATCH(".$fa.".`title`, ".$fa.".`body`) AGAINST('$needle' IN BOOLEAN MODE) )";
|
991 |
-
$orders[] = "
|
992 |
-
$orders[] = "
|
993 |
}elseif($args['type'] === 'titles-only'){
|
994 |
$selects[] = "MATCH(".$fa.".`title`) AGAINST('$needle' IN BOOLEAN MODE) AS matches";
|
995 |
-
$wheres[] = "( MATCH(".$fa.".`title`) AGAINST('$needle' IN BOOLEAN MODE) )";
|
996 |
-
$orders[] = "
|
997 |
-
$orders[] = "
|
998 |
}elseif($args['type'] === 'user-posts' || $args['type'] === 'user-topics'){
|
999 |
-
$needle = str_replace('*', '%', $needle);
|
1000 |
$innerjoins[] = "INNER JOIN `".WPF()->db->users."` u ON u.`ID` = ".$fa.".`userid`";
|
1001 |
-
$wheres[] = "( u.`user_nicename` LIKE '$needle' OR u.`display_name` LIKE '$needle' )";
|
1002 |
if($args['type'] === 'user-topics') $wheres[] = "".$fa.".`is_first_post` = 1";
|
1003 |
}elseif($args['type'] === 'tag'){
|
1004 |
-
$needle = str_replace('*', '', $needle);
|
1005 |
$fa = "t";
|
1006 |
$from = "`".WPF()->tables->topics."` " . $fa;
|
1007 |
$selects = array($fa.'.`first_postid` AS postid', $fa.'.`topicid`', $fa.'.`private`', $fa.'.`status`', $fa.'.`forumid`', $fa.'.`userid`', $fa.'.`title`', $fa.'.`created`', '1 AS `is_first_post`');
|
@@ -1021,18 +1028,18 @@ class wpForoPost{
|
|
1021 |
$orders = array($fa.'.`forumid`');
|
1022 |
}
|
1023 |
|
1024 |
-
$sql = "SELECT COUNT(*) FROM ". $from ." ".implode(' ', $innerjoins);
|
1025 |
if($wheres) $sql .= " WHERE " . implode( " AND ", $wheres );
|
1026 |
$items_count = (int) WPF()->db->get_var($sql);
|
1027 |
if( $this->options['search_max_results'] && $items_count > $this->options['search_max_results'] ) $items_count = (int) $this->options['search_max_results'];
|
1028 |
|
1029 |
-
$sql = "SELECT ".implode(', ', $selects)." FROM ". $from ." ".implode(' ', $innerjoins);
|
1030 |
if($wheres) $sql .= " WHERE " . implode( " AND ", $wheres );
|
1031 |
-
if($orders) $sql .= " ORDER BY ".implode(' '
|
1032 |
|
1033 |
-
if( $this->options['search_max_results'] ) $sql = "SELECT * FROM ("
|
1034 |
|
1035 |
-
if( $args['row_count'] ) $sql .= " LIMIT ". intval($args['offset']) ."," . intval($args['row_count']);
|
1036 |
|
1037 |
$posts = WPF()->db->get_results($sql, ARRAY_A);
|
1038 |
|
946 |
if(!is_array($args)) $args = array('needle' => $args);
|
947 |
if(!wpfval($args, 'needle')) return array();
|
948 |
|
949 |
+
$args = array_filter($args);
|
950 |
+
|
951 |
$default = array(
|
952 |
'needle' => '', // search needle
|
953 |
'forumids' => array(), // array( 2, 10, 25 )
|
983 |
}
|
984 |
|
985 |
if($args['needle']){
|
986 |
+
if( in_array($args['type'], array('entire-posts', 'titles-only')) ){
|
987 |
+
$words = str_word_count($args['needle'], 1);
|
988 |
+
$words = array_slice($words, 0, 10);
|
989 |
+
$words = array_map(function($w){
|
990 |
+
return '+' . esc_sql( str_replace(array('(', ')', '*', '+', '-', '~', '<', '>', '@', '"'), '', $w) ) . '*';
|
991 |
+
}, $words);
|
992 |
+
$needle = implode(' ', $words);
|
993 |
+
}else{
|
994 |
+
$needle = esc_sql( $args['needle'] );
|
995 |
+
}
|
996 |
|
997 |
if($args['type'] === 'entire-posts'){
|
998 |
$selects[] = "MATCH(".$fa.".`title`) AGAINST('$needle' IN BOOLEAN MODE) + MATCH(".$fa.".`body`) AGAINST('$needle' IN BOOLEAN MODE) AS matches";
|
999 |
+
$wheres[] = "( MATCH(".$fa.".`title`, ".$fa.".`body`) AGAINST('$needle' IN BOOLEAN MODE) OR ".$fa.".`title` LIKE '%". esc_sql( $args['needle'] ) ."%' OR ".$fa.".`body` LIKE '%". esc_sql( $args['needle'] ) ."%' )";
|
1000 |
+
$orders[] = "matches";
|
1001 |
+
$orders[] = "`created`";
|
1002 |
}elseif($args['type'] === 'titles-only'){
|
1003 |
$selects[] = "MATCH(".$fa.".`title`) AGAINST('$needle' IN BOOLEAN MODE) AS matches";
|
1004 |
+
$wheres[] = "( MATCH(".$fa.".`title`) AGAINST('$needle' IN BOOLEAN MODE) OR ".$fa.".`title` LIKE '%". esc_sql( $args['needle'] ) ."%' )";
|
1005 |
+
$orders[] = "matches";
|
1006 |
+
$orders[] = "`created`";
|
1007 |
}elseif($args['type'] === 'user-posts' || $args['type'] === 'user-topics'){
|
|
|
1008 |
$innerjoins[] = "INNER JOIN `".WPF()->db->users."` u ON u.`ID` = ".$fa.".`userid`";
|
1009 |
+
$wheres[] = "( u.`user_nicename` LIKE '%{$needle}%' OR u.`display_name` LIKE '%{$needle}%' )";
|
1010 |
if($args['type'] === 'user-topics') $wheres[] = "".$fa.".`is_first_post` = 1";
|
1011 |
}elseif($args['type'] === 'tag'){
|
|
|
1012 |
$fa = "t";
|
1013 |
$from = "`".WPF()->tables->topics."` " . $fa;
|
1014 |
$selects = array($fa.'.`first_postid` AS postid', $fa.'.`topicid`', $fa.'.`private`', $fa.'.`status`', $fa.'.`forumid`', $fa.'.`userid`', $fa.'.`title`', $fa.'.`created`', '1 AS `is_first_post`');
|
1028 |
$orders = array($fa.'.`forumid`');
|
1029 |
}
|
1030 |
|
1031 |
+
$sql = "SELECT COUNT(*) FROM " . $from . " " . implode(' ', $innerjoins);
|
1032 |
if($wheres) $sql .= " WHERE " . implode( " AND ", $wheres );
|
1033 |
$items_count = (int) WPF()->db->get_var($sql);
|
1034 |
if( $this->options['search_max_results'] && $items_count > $this->options['search_max_results'] ) $items_count = (int) $this->options['search_max_results'];
|
1035 |
|
1036 |
+
$sql = "SELECT " . implode(', ', $selects) . " FROM " . $from . " " . implode(' ', $innerjoins);
|
1037 |
if($wheres) $sql .= " WHERE " . implode( " AND ", $wheres );
|
1038 |
+
if($orders) $sql .= " ORDER BY " . implode(' ' . $args['order'] . ', ', $orders) . " " . $args['order'];
|
1039 |
|
1040 |
+
if( $this->options['search_max_results'] ) $sql = "SELECT * FROM (" . $sql . " LIMIT ". $this->options['search_max_results'] .") AS p";
|
1041 |
|
1042 |
+
if( $args['row_count'] ) $sql .= " LIMIT " . intval($args['offset']) . "," . intval($args['row_count']);
|
1043 |
|
1044 |
$posts = WPF()->db->get_results($sql, ARRAY_A);
|
1045 |
|
wpf-includes/class-template.php
CHANGED
@@ -1380,7 +1380,7 @@ class wpForoTemplate{
|
|
1380 |
</div>
|
1381 |
</div>
|
1382 |
</div>
|
1383 |
-
<div class="wpforo-table wpf-toggle-wrap wpf-search-advanced-wrap"
|
1384 |
<div class="wpforo-tr">
|
1385 |
<div class="wpforo-td wpfw-100 wpfrtd wpf-toggle">
|
1386 |
<span class="wpf-toggle-button wpf-toggle-advanced">
|
@@ -1393,13 +1393,13 @@ class wpForoTemplate{
|
|
1393 |
<div class="wpf-search-advanced-fields">
|
1394 |
<div class="wpforo-table">
|
1395 |
<div class="wpforo-tr">
|
1396 |
-
<div class="wpforo-td wpfw-60 wpfltd"
|
1397 |
<span class="wpf-search-label wpfcl-1"> <?php wpforo_phrase('Search in Forums') ?>:</span><br>
|
1398 |
<select name="wpff[]" class="wpfw-90 wpff" multiple="multiple">
|
1399 |
<?php WPF()->forum->tree('select_box', false, $forumids ) ?>
|
1400 |
</select>
|
1401 |
</div>
|
1402 |
-
<div class="wpforo-td wpfw-40 wpfrtd"
|
1403 |
<span class="wpf-search-label wpfcl-1"> <?php wpforo_phrase('Search in date period') ?>:</span><br>
|
1404 |
<select name="wpfd" class="wpfw-90 wpfd">
|
1405 |
<option value="0" <?php echo $date_period === 0 ? 'selected' : '' ?>> <?php wpforo_phrase('Any Date') ?></option>
|
@@ -1429,7 +1429,7 @@ class wpForoTemplate{
|
|
1429 |
</div>
|
1430 |
</div>
|
1431 |
</div>
|
1432 |
-
<?php if( $search_fields ) : ?>
|
1433 |
<div class="wpforo-table wpf-toggle-wrap wpf-search-custom-wrap">
|
1434 |
<div class="wpforo-tr">
|
1435 |
<div class="wpforo-td wpfw-100 wpfrtd wpf-toggle">
|
1380 |
</div>
|
1381 |
</div>
|
1382 |
</div>
|
1383 |
+
<div class="wpforo-table wpf-toggle-wrap wpf-search-advanced-wrap" <?php if( $is_tag ) echo 'style="display: none;"'; ?>>
|
1384 |
<div class="wpforo-tr">
|
1385 |
<div class="wpforo-td wpfw-100 wpfrtd wpf-toggle">
|
1386 |
<span class="wpf-toggle-button wpf-toggle-advanced">
|
1393 |
<div class="wpf-search-advanced-fields">
|
1394 |
<div class="wpforo-table">
|
1395 |
<div class="wpforo-tr">
|
1396 |
+
<div class="wpforo-td wpfw-60 wpfltd">
|
1397 |
<span class="wpf-search-label wpfcl-1"> <?php wpforo_phrase('Search in Forums') ?>:</span><br>
|
1398 |
<select name="wpff[]" class="wpfw-90 wpff" multiple="multiple">
|
1399 |
<?php WPF()->forum->tree('select_box', false, $forumids ) ?>
|
1400 |
</select>
|
1401 |
</div>
|
1402 |
+
<div class="wpforo-td wpfw-40 wpfrtd">
|
1403 |
<span class="wpf-search-label wpfcl-1"> <?php wpforo_phrase('Search in date period') ?>:</span><br>
|
1404 |
<select name="wpfd" class="wpfw-90 wpfd">
|
1405 |
<option value="0" <?php echo $date_period === 0 ? 'selected' : '' ?>> <?php wpforo_phrase('Any Date') ?></option>
|
1429 |
</div>
|
1430 |
</div>
|
1431 |
</div>
|
1432 |
+
<?php if( $search_fields && !$is_tag ) : ?>
|
1433 |
<div class="wpforo-table wpf-toggle-wrap wpf-search-custom-wrap">
|
1434 |
<div class="wpforo-tr">
|
1435 |
<div class="wpforo-td wpfw-100 wpfrtd wpf-toggle">
|
wpf-includes/functions-template.php
CHANGED
@@ -2965,7 +2965,7 @@ function wpforo_sanitize_search_body($body, $needle){
|
|
2965 |
}
|
2966 |
foreach($words as $word){
|
2967 |
$word = trim($word);
|
2968 |
-
$body =
|
2969 |
}
|
2970 |
}
|
2971 |
return $body;
|
2965 |
}
|
2966 |
foreach($words as $word){
|
2967 |
$word = trim($word);
|
2968 |
+
$body = preg_replace('#(?:^|\s+)'. preg_quote( esc_html($word) ) .'#iu', ' <span class="wpf-sword wpfcl-b">' . esc_html($word) . '</span>', $body);
|
2969 |
}
|
2970 |
}
|
2971 |
return $body;
|
wpf-includes/functions.php
CHANGED
@@ -481,6 +481,11 @@ function wpforo_admin_tools_tabs( $tabs, $current = 'antispam', $subtab = FALSE,
|
|
481 |
}
|
482 |
|
483 |
function wpforo_content_filter( $content ){
|
|
|
|
|
|
|
|
|
|
|
484 |
$content = apply_filters('wpforo_body_text_filter', $content);
|
485 |
$content = preg_replace('#([^\'\"]|^)(https?://[^\s\'\"<>]+\.(?:jpg|jpeg|png|gif|ico|svg|bmp|tiff))([^\'\"]|$)#isu', '$1 <a class="wpforo-auto-embeded-link" href="$2" target="_blank"><img class="wpforo-auto-embeded-image" src="$2"/></a> $3', $content);
|
486 |
$content = preg_replace('#([^\'\"]|^)(https?://[^\s\'\"<>]+)([^\'\"]|$)#isu', '$1 <a class="wpforo-auto-embeded-link" href="$2" target="_blank">$2</a> $3', $content);
|
481 |
}
|
482 |
|
483 |
function wpforo_content_filter( $content ){
|
484 |
+
if( strpos($content, '../') !== FALSE ){
|
485 |
+
$home_url = trim( home_url(), '/\\' ) . '/';
|
486 |
+
$content = preg_replace('|https*\:\/\/[\.\/]+|i', $home_url, $content); //src="https://../../../wp-content/
|
487 |
+
$content = preg_replace('|([\"\']+)([\.\/]+)(wp-content\/)|i', "$1" . $home_url ."$3", $content); //src="../../../wp-content/
|
488 |
+
}
|
489 |
$content = apply_filters('wpforo_body_text_filter', $content);
|
490 |
$content = preg_replace('#([^\'\"]|^)(https?://[^\s\'\"<>]+\.(?:jpg|jpeg|png|gif|ico|svg|bmp|tiff))([^\'\"]|$)#isu', '$1 <a class="wpforo-auto-embeded-link" href="$2" target="_blank"><img class="wpforo-auto-embeded-image" src="$2"/></a> $3', $content);
|
491 |
$content = preg_replace('#([^\'\"]|^)(https?://[^\s\'\"<>]+)([^\'\"]|$)#isu', '$1 <a class="wpforo-auto-embeded-link" href="$2" target="_blank">$2</a> $3', $content);
|
wpf-includes/wpf-hooks.php
CHANGED
@@ -2247,24 +2247,24 @@ function wpforo_default_attachments_filter($text){
|
|
2247 |
$attach_html = '';
|
2248 |
$fileurl = preg_replace('#^https?\:#is', '', $match[1]);
|
2249 |
$filename = $match[2];
|
2250 |
-
|
2251 |
$upload_array = wp_upload_dir();
|
2252 |
$filedir = preg_replace('#^https?\:#is', '', str_replace( preg_replace('#^https?\:#is', '', $upload_array['baseurl']), $upload_array['basedir'], $fileurl ) );
|
2253 |
$filedir = str_replace( basename($filedir), urldecode( basename($filedir) ), $filedir );
|
2254 |
-
|
2255 |
if(file_exists($filedir)){
|
2256 |
if( !WPF()->perm->forum_can('va') || !WPF()->perm->usergroup_can('caa') ){
|
2257 |
$attach_html .= '<br/><div class="wpfa-item wpfa-file"><a class="attach_cant_view" style="cursor:pointer;"><span style="color:#666;">' . wpforo_phrase('Attachment', FALSE) . ':</span> ' . urldecode( basename($filename) ) . '</a></div>';
|
2258 |
}
|
2259 |
}
|
2260 |
-
|
2261 |
if($attach_html){
|
2262 |
$attach_html .= '<br/>';
|
2263 |
$text = str_replace($match[0], $attach_html, $text);
|
2264 |
}
|
2265 |
}
|
2266 |
}
|
2267 |
-
|
2268 |
return $text;
|
2269 |
}
|
2270 |
|
2247 |
$attach_html = '';
|
2248 |
$fileurl = preg_replace('#^https?\:#is', '', $match[1]);
|
2249 |
$filename = $match[2];
|
2250 |
+
|
2251 |
$upload_array = wp_upload_dir();
|
2252 |
$filedir = preg_replace('#^https?\:#is', '', str_replace( preg_replace('#^https?\:#is', '', $upload_array['baseurl']), $upload_array['basedir'], $fileurl ) );
|
2253 |
$filedir = str_replace( basename($filedir), urldecode( basename($filedir) ), $filedir );
|
2254 |
+
|
2255 |
if(file_exists($filedir)){
|
2256 |
if( !WPF()->perm->forum_can('va') || !WPF()->perm->usergroup_can('caa') ){
|
2257 |
$attach_html .= '<br/><div class="wpfa-item wpfa-file"><a class="attach_cant_view" style="cursor:pointer;"><span style="color:#666;">' . wpforo_phrase('Attachment', FALSE) . ':</span> ' . urldecode( basename($filename) ) . '</a></div>';
|
2258 |
}
|
2259 |
}
|
2260 |
+
|
2261 |
if($attach_html){
|
2262 |
$attach_html .= '<br/>';
|
2263 |
$text = str_replace($match[0], $attach_html, $text);
|
2264 |
}
|
2265 |
}
|
2266 |
}
|
2267 |
+
|
2268 |
return $text;
|
2269 |
}
|
2270 |
|
wpf-themes/classic/style-rtl.css
CHANGED
@@ -273,7 +273,7 @@ RTL Style of Classic Theme
|
|
273 |
#wpforo #wpforo-wrap h3.wpforo-forum-title{ padding-top:0;}
|
274 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-membertoggle{cursor:pointer; top:0; font-size:18px; line-height:18px;}
|
275 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo{padding:3px; text-align:center; display:none;}
|
276 |
-
#wpforo #wpforo-wrap .wpforo-post .wpf-member-profile-button {display: inline-block;font-size: 14px;line-height: 14px;margin-left:
|
277 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo .wpf-member-socnet-wrap{ display:block; padding:6px 15px; text-align:center;}
|
278 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo .wpf-member-socnet-button img{ opacity:0.7; border:none; text-decoration:none; float:none; display: inline-block;font-size: 16px;line-height: 16px; padding:0 1px 1px 1px;}
|
279 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo .wpf-member-socnet-button img:hover{opacity:1;}
|
@@ -785,6 +785,8 @@ RTL Style of Classic Theme
|
|
785 |
#wpforo #wpforo-wrap .reply-wrap .wpf-form-wrapper.wpfel-4{width: 100%;}
|
786 |
#wpforo #wpforo-wrap .wpf-form-wrapper.wpfel-4 .wpf-reply-form-title{font-size: 16px;margin: 20px 0 10px 0;font-weight: normal;line-height: 20px;display: block;}
|
787 |
#wpforo #wpforo-wrap #wpf-form-wrapper.wpfel-4 .mce-toolbar .mce-btn-group .mce-btn.mce-last { float: none; }
|
|
|
|
|
788 |
|
789 |
@media all and (max-width: 1000px){
|
790 |
#wpforo #wpforo-wrap .wpf-circle.wpf-m i{font-size: 14px;}
|
273 |
#wpforo #wpforo-wrap h3.wpforo-forum-title{ padding-top:0;}
|
274 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-membertoggle{cursor:pointer; top:0; font-size:18px; line-height:18px;}
|
275 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo{padding:3px; text-align:center; display:none;}
|
276 |
+
#wpforo #wpforo-wrap .wpforo-post .wpf-member-profile-button {display: inline-block;font-size: 14px;line-height: 14px;margin-left:3px; padding:1px;}
|
277 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo .wpf-member-socnet-wrap{ display:block; padding:6px 15px; text-align:center;}
|
278 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo .wpf-member-socnet-button img{ opacity:0.7; border:none; text-decoration:none; float:none; display: inline-block;font-size: 16px;line-height: 16px; padding:0 1px 1px 1px;}
|
279 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo .wpf-member-socnet-button img:hover{opacity:1;}
|
785 |
#wpforo #wpforo-wrap .reply-wrap .wpf-form-wrapper.wpfel-4{width: 100%;}
|
786 |
#wpforo #wpforo-wrap .wpf-form-wrapper.wpfel-4 .wpf-reply-form-title{font-size: 16px;margin: 20px 0 10px 0;font-weight: normal;line-height: 20px;display: block;}
|
787 |
#wpforo #wpforo-wrap #wpf-form-wrapper.wpfel-4 .mce-toolbar .mce-btn-group .mce-btn.mce-last { float: none; }
|
788 |
+
#wpforo #wpforo-wrap .wpfl-4 .post-wrap .wpf-post-create .wpf-field-name-title,
|
789 |
+
#wpforo #wpforo-wrap .wpfl-4 .wpf-post-replies .wpf-post-create .wpf-field-name-title{display:block!important;}
|
790 |
|
791 |
@media all and (max-width: 1000px){
|
792 |
#wpforo #wpforo-wrap .wpf-circle.wpf-m i{font-size: 14px;}
|
wpf-themes/classic/style.css
CHANGED
@@ -278,7 +278,7 @@ Author: gVectors Team
|
|
278 |
#wpforo #wpforo-wrap h3.wpforo-forum-title{ padding-top:0;}
|
279 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-membertoggle{cursor:pointer; top:0; font-size:18px; line-height:18px;}
|
280 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo{padding:3px; text-align:center; display:none;}
|
281 |
-
#wpforo #wpforo-wrap .wpforo-post .wpf-member-profile-button {display: inline-block;font-size: 14px;line-height: 14px;margin-right:
|
282 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo .wpf-member-socnet-wrap{ display:block; padding:6px 15px; text-align:center;}
|
283 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo .wpf-member-socnet-button img{ opacity:0.7; border:none; text-decoration:none; float:none; display: inline-block;font-size: 16px;line-height: 16px; padding:0 1px 1px 1px;}
|
284 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo .wpf-member-socnet-button img:hover{opacity:1;}
|
@@ -790,8 +790,10 @@ Author: gVectors Team
|
|
790 |
#wpforo #wpforo-wrap .reply-wrap .wpf-form-wrapper.wpfel-4{width: 100%;}
|
791 |
#wpforo #wpforo-wrap .wpf-form-wrapper.wpfel-4 .wpf-reply-form-title{font-size: 16px;margin: 20px 0 10px 0;font-weight: normal;line-height: 20px;display: block;}
|
792 |
#wpforo #wpforo-wrap #wpf-form-wrapper.wpfel-4 .mce-toolbar .mce-btn-group .mce-btn.mce-last { float: none; }
|
|
|
|
|
793 |
|
794 |
-
|
795 |
#wpforo #wpforo-wrap .wpf-circle.wpf-m i{font-size: 14px;}
|
796 |
#wpforo #wpforo-wrap .wpf-circle.wpf-s i{font-size: 10px;}
|
797 |
#wpforo #wpforo-wrap .wpfl-4 .wpf-thread-status .wpf-circle:first-child i{font-size: 12px;}
|
278 |
#wpforo #wpforo-wrap h3.wpforo-forum-title{ padding-top:0;}
|
279 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-membertoggle{cursor:pointer; top:0; font-size:18px; line-height:18px;}
|
280 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo{padding:3px; text-align:center; display:none;}
|
281 |
+
#wpforo #wpforo-wrap .wpforo-post .wpf-member-profile-button {display: inline-block;font-size: 14px;line-height: 14px;margin-right:3px; padding:1px;}
|
282 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo .wpf-member-socnet-wrap{ display:block; padding:6px 15px; text-align:center;}
|
283 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo .wpf-member-socnet-button img{ opacity:0.7; border:none; text-decoration:none; float:none; display: inline-block;font-size: 16px;line-height: 16px; padding:0 1px 1px 1px;}
|
284 |
#wpforo #wpforo-wrap .wpforo-post .wpforo-memberinfo .wpf-member-socnet-button img:hover{opacity:1;}
|
790 |
#wpforo #wpforo-wrap .reply-wrap .wpf-form-wrapper.wpfel-4{width: 100%;}
|
791 |
#wpforo #wpforo-wrap .wpf-form-wrapper.wpfel-4 .wpf-reply-form-title{font-size: 16px;margin: 20px 0 10px 0;font-weight: normal;line-height: 20px;display: block;}
|
792 |
#wpforo #wpforo-wrap #wpf-form-wrapper.wpfel-4 .mce-toolbar .mce-btn-group .mce-btn.mce-last { float: none; }
|
793 |
+
#wpforo #wpforo-wrap .wpfl-4 .post-wrap .wpf-post-create .wpf-field-name-title,
|
794 |
+
#wpforo #wpforo-wrap .wpfl-4 .wpf-post-replies .wpf-post-create .wpf-field-name-title{display:block!important;}
|
795 |
|
796 |
+
@media all and (max-width: 1000px){
|
797 |
#wpforo #wpforo-wrap .wpf-circle.wpf-m i{font-size: 14px;}
|
798 |
#wpforo #wpforo-wrap .wpf-circle.wpf-s i{font-size: 10px;}
|
799 |
#wpforo #wpforo-wrap .wpfl-4 .wpf-thread-status .wpf-circle:first-child i{font-size: 12px;}
|
wpf-themes/classic/widgets-rtl.css
CHANGED
@@ -168,7 +168,7 @@
|
|
168 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons,
|
169 |
#wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons{ margin-top: 3px;}
|
170 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a,
|
171 |
-
#wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a{margin-left:
|
172 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a:hover,
|
173 |
#wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a:hover{color: #f5f5f5;}
|
174 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a.wpf-logout,
|
168 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons,
|
169 |
#wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons{ margin-top: 3px;}
|
170 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a,
|
171 |
+
#wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a{margin-left: 3px;padding: 4px 10px 4px 10px;text-align: center;line-height: 16px;font-size: 13px;background:#f5f5f5;margin-top: 10px;display: inline-block; border-radius: 2px;}
|
172 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a:hover,
|
173 |
#wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a:hover{color: #f5f5f5;}
|
174 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a.wpf-logout,
|
wpf-themes/classic/widgets.css
CHANGED
@@ -168,7 +168,7 @@
|
|
168 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons,
|
169 |
#wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons{ margin-top: 3px;}
|
170 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a,
|
171 |
-
#wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a{margin-right:
|
172 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a:hover,
|
173 |
#wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a:hover{color: #f5f5f5;}
|
174 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a.wpf-logout,
|
168 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons,
|
169 |
#wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons{ margin-top: 3px;}
|
170 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a,
|
171 |
+
#wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a{margin-right: 3px;padding: 4px 10px 4px 10px;text-align: center;line-height: 16px;font-size: 13px;background:#f5f5f5;margin-top: 10px;display: inline-block; border-radius: 2px;}
|
172 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a:hover,
|
173 |
#wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a:hover{color: #f5f5f5;}
|
174 |
#wpforo #wpf-widget-profile .wpf-prof-footer .wpf-prof-buttons a.wpf-logout,
|
wpforo.php
CHANGED
@@ -5,14 +5,14 @@
|
|
5 |
* Description: WordPress Forum plugin. wpForo is a full-fledged forum solution for your community. Comes with multiple modern forum layouts.
|
6 |
* Author: gVectors Team
|
7 |
* Author URI: https://gvectors.com/
|
8 |
-
* Version: 1.8.
|
9 |
* Text Domain: wpforo
|
10 |
* Domain Path: /wpf-languages
|
11 |
*/
|
12 |
|
13 |
//Exit if accessed directly
|
14 |
if( !defined( 'ABSPATH' ) ) exit;
|
15 |
-
if( !defined( 'WPFORO_VERSION' ) ) define('WPFORO_VERSION', '1.8.
|
16 |
|
17 |
function wpforo_load_plugin_textdomain() { load_plugin_textdomain( 'wpforo', FALSE, basename( dirname( __FILE__ ) ) . '/wpf-languages/' ); }
|
18 |
add_action( 'plugins_loaded', 'wpforo_load_plugin_textdomain' );
|
5 |
* Description: WordPress Forum plugin. wpForo is a full-fledged forum solution for your community. Comes with multiple modern forum layouts.
|
6 |
* Author: gVectors Team
|
7 |
* Author URI: https://gvectors.com/
|
8 |
+
* Version: 1.8.3
|
9 |
* Text Domain: wpforo
|
10 |
* Domain Path: /wpf-languages
|
11 |
*/
|
12 |
|
13 |
//Exit if accessed directly
|
14 |
if( !defined( 'ABSPATH' ) ) exit;
|
15 |
+
if( !defined( 'WPFORO_VERSION' ) ) define('WPFORO_VERSION', '1.8.3');
|
16 |
|
17 |
function wpforo_load_plugin_textdomain() { load_plugin_textdomain( 'wpforo', FALSE, basename( dirname( __FILE__ ) ) . '/wpf-languages/' ); }
|
18 |
add_action( 'plugins_loaded', 'wpforo_load_plugin_textdomain' );
|