wpForo Forum - Version 1.9.3

Version Description

Download this release

Release Info

Developer Tomdever
Plugin Icon 128x128 wpForo Forum
Version 1.9.3
Comparing to
See all releases

Code changes from version 1.9.2 to 1.9.3

readme.txt CHANGED
@@ -3,7 +3,7 @@ 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
6
- Stable tag: 1.9.2
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,10 +165,14 @@ Find wpForo forum plugin addons on [gVectors Team website...](https://gvectors.c
165
 
166
  == Changelog ==
167
 
168
- = wpForo Forum 1.9.2 | 18.12.2020 =
169
 
170
- [wpForo Forum v1.9.2 Release Summary](https://wpforo.com/community/wpforo-announcements/wpforo-1-9-2-is-released/)
171
 
 
 
 
 
172
  * Added: Better protection against spam user registration
173
  * Added: New hooks on topics and posts getting arguments for custom ordering
174
  * Added: Less number of SQLs on forum and non-forum pages by caching options
3
  Tags: forum, forums, forum plugin, WordPress forum plugin, community, discussion
4
  Requires at least: 4.1
5
  Tested up to: 5.6
6
+ Stable tag: 1.9.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.9.2 / 1.9.3 | 19.12.2020 =
169
 
170
+ [wpForo Forum v1.9.2 / v 1.9.3 Release Summary](https://wpforo.com/community/wpforo-announcements/wpforo-1-9-2-is-released/)
171
 
172
+ * version 1.9.3
173
+ * Fixed Bug: Fatal error with some cache and must loaded (mu-plugins) plugins
174
+ * -----
175
+ * version 1.9.2
176
  * Added: Better protection against spam user registration
177
  * Added: New hooks on topics and posts getting arguments for custom ordering
178
  * Added: Less number of SQLs on forum and non-forum pages by caching options
wpf-includes/class-actions.php CHANGED
@@ -14,7 +14,6 @@ class wpForoAction {
14
  * method for initializing all necessary hooks
15
  */
16
  public function init_hooks(){
17
- add_action( 'plugins_loaded', function(){ if( !WPF()->is_installed() ) wpforo_activation(); });
18
  add_action( 'wpforo_after_init', array( $this, 'do_actions' ), 999 );
19
  add_action( 'deleted_user', array( $this, 'user_delete' ) );
20
  add_action( 'wp_ajax_wpforo_deactivate', array($this, 'deactivate'));
@@ -49,7 +48,7 @@ class wpForoAction {
49
  add_action( 'wp_ajax_wpforo_acp_toggle', array($this, 'acp_toggle') );
50
  add_action( 'wp_ajax_wpforo_clear_all_notifications', array($this, 'clear_all_notifications') );
51
  }else{
52
- add_action( 'wpforo_actions', array($this, 'check_dashboard_permissions'), 1 );
53
  add_action( 'wpforo_actions', array($this, 'repair_lost_main_shortcode_page') );
54
 
55
  add_action( 'wpforo_action_wpforo_synch_user_profiles', array($this, 'synch_user_profiles') );
14
  * method for initializing all necessary hooks
15
  */
16
  public function init_hooks(){
 
17
  add_action( 'wpforo_after_init', array( $this, 'do_actions' ), 999 );
18
  add_action( 'deleted_user', array( $this, 'user_delete' ) );
19
  add_action( 'wp_ajax_wpforo_deactivate', array($this, 'deactivate'));
48
  add_action( 'wp_ajax_wpforo_acp_toggle', array($this, 'acp_toggle') );
49
  add_action( 'wp_ajax_wpforo_clear_all_notifications', array($this, 'clear_all_notifications') );
50
  }else{
51
+ add_action( 'wpforo_actions', array($this, 'check_dashboard_permissions'), 1 );
52
  add_action( 'wpforo_actions', array($this, 'repair_lost_main_shortcode_page') );
53
 
54
  add_action( 'wpforo_action_wpforo_synch_user_profiles', array($this, 'synch_user_profiles') );
wpf-includes/functions-installation.php CHANGED
@@ -97,6 +97,10 @@ function wpforo_activation(){
97
  wpforo_clean_cache();
98
  }
99
 
 
 
 
 
100
  function wpforo_update_options( $option_key, $default, $exlude = array() ) {
101
  $option = get_option( $option_key, array() );
102
 
97
  wpforo_clean_cache();
98
  }
99
 
100
+ add_action('wpforo_actions', function(){
101
+ if( get_option('wpforo_version') && WPFORO_VERSION !== get_option('wpforo_version') ) wpforo_activation();
102
+ });
103
+
104
  function wpforo_update_options( $option_key, $default, $exlude = array() ) {
105
  $option = get_option( $option_key, array() );
106
 
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.9.2
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.9.2');
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' );
@@ -184,10 +184,10 @@ if( !class_exists( 'wpForo' ) ) {
184
  require_once( WPFORO_DIR . '/wpf-includes/functions.php' );
185
  require_once( WPFORO_DIR . '/wpf-includes/functions-integration.php' );
186
  require_once( WPFORO_DIR . '/wpf-includes/functions-template.php' );
187
- require_once( WPFORO_DIR . '/wpf-includes/functions-installation.php' );
188
-
189
- if( wpforo_is_admin() ) require_once( WPFORO_DIR .'/wpf-admin/admin.php' );
190
-
191
  require_once( WPFORO_DIR . '/wpf-includes/class-sqlcache.php' );
192
  require_once( WPFORO_DIR . '/wpf-includes/class-actions.php' );
193
  require_once( WPFORO_DIR . '/wpf-includes/class-cache.php' );
@@ -583,11 +583,13 @@ if( !class_exists( 'wpForo' ) ) {
583
  define('WPFORO_BASE_PERMASTRUCT', $this->base_permastruct );
584
  define('WPFORO_BASE_URL', $this->url );
585
  }
586
-
587
- private function setup(){
588
- register_activation_hook($this->basename, 'do_wpforo_activation');
589
- register_deactivation_hook($this->basename, 'do_wpforo_deactivation');
590
- }
 
 
591
 
592
  public function user_trailingslashit($url) {
593
  $rtrimed_url = '';
@@ -1095,7 +1097,7 @@ if( !class_exists( 'wpForo' ) ) {
1095
  }
1096
 
1097
  public function is_installed(){
1098
- return WPFORO_VERSION === get_option('wpforo_version');
1099
  }
1100
 
1101
  public function can_use_this_slug($slug){
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.9.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.9.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' );
184
  require_once( WPFORO_DIR . '/wpf-includes/functions.php' );
185
  require_once( WPFORO_DIR . '/wpf-includes/functions-integration.php' );
186
  require_once( WPFORO_DIR . '/wpf-includes/functions-template.php' );
187
+ if(wpforo_is_admin()) {
188
+ require_once( WPFORO_DIR . '/wpf-includes/functions-installation.php' );
189
+ require_once( WPFORO_DIR .'/wpf-admin/admin.php' );
190
+ }
191
  require_once( WPFORO_DIR . '/wpf-includes/class-sqlcache.php' );
192
  require_once( WPFORO_DIR . '/wpf-includes/class-actions.php' );
193
  require_once( WPFORO_DIR . '/wpf-includes/class-cache.php' );
583
  define('WPFORO_BASE_PERMASTRUCT', $this->base_permastruct );
584
  define('WPFORO_BASE_URL', $this->url );
585
  }
586
+
587
+ private function setup(){
588
+ if( wpforo_is_admin() ){
589
+ register_activation_hook($this->basename, 'do_wpforo_activation');
590
+ register_deactivation_hook($this->basename, 'do_wpforo_deactivation');
591
+ }
592
+ }
593
 
594
  public function user_trailingslashit($url) {
595
  $rtrimed_url = '';
1097
  }
1098
 
1099
  public function is_installed(){
1100
+ return (bool) get_option('wpforo_version');
1101
  }
1102
 
1103
  public function can_use_this_slug($slug){