Happy Addons for Elementor (Mega Menu, Post Grid, Woocommerce Product Grid, Table, Event Calendar, Slider Elementor Widget) - Version 2.4.2

Version Description

  • 12 December 2019 =

  • Fix: Compatibility with Elementor 2.8.*

  • Fix: Extension loading issue for non logged in users

Download this release

Release Info

Developer thehappymonster
Plugin Icon 128x128 Happy Addons for Elementor (Mega Menu, Post Grid, Woocommerce Product Grid, Table, Event Calendar, Slider Elementor Widget)
Version 2.4.2
Comparing to
See all releases

Code changes from version 2.4.1 to 2.4.2

assets/admin/js/editor.js CHANGED
@@ -65,7 +65,8 @@
65
  var controlValue = this.constructor.__super__.getControlValue.call(this),
66
  model = this.model,
67
  valueToMigrate = this.getValueToMigrate(),
68
- newValue = { value: '', library: 'happy-icons' };
 
69
 
70
  if ( _.isObject( controlValue ) &&
71
  !_.isEmpty( controlValue ) &&
@@ -73,13 +74,13 @@
73
  controlValue.value.indexOf( 'fashm' ) === 0
74
  ) {
75
  newValue.value = controlValue.value.substr( controlValue.value.indexOf( 'hm hm-' ) );
76
- this.elementSettingsModel.set( model.get( 'name' ), newValue );
77
  return newValue;
78
  }
79
 
80
  if ( ! _.isObject( controlValue ) && valueToMigrate && valueToMigrate.indexOf( 'hm hm-' ) === 0 ) {
81
  newValue.value = valueToMigrate;
82
- this.elementSettingsModel.set( model.get( 'name' ), newValue );
83
  return newValue;
84
  }
85
 
@@ -92,7 +93,7 @@
92
  return controlValue;
93
  }
94
 
95
- var didMigration = this.elementSettingsModel.get( this.dataKeys.migratedKey ),
96
  controlName = model.get( 'name' );
97
 
98
  // Check if migration had been done and is stored locally
65
  var controlValue = this.constructor.__super__.getControlValue.call(this),
66
  model = this.model,
67
  valueToMigrate = this.getValueToMigrate(),
68
+ newValue = { value: '', library: 'happy-icons' },
69
+ elementSettingsModel = ( this.container && this.container.settings ) || this.elementSettingsModel;
70
 
71
  if ( _.isObject( controlValue ) &&
72
  !_.isEmpty( controlValue ) &&
74
  controlValue.value.indexOf( 'fashm' ) === 0
75
  ) {
76
  newValue.value = controlValue.value.substr( controlValue.value.indexOf( 'hm hm-' ) );
77
+ elementSettingsModel.set( model.get( 'name' ), newValue );
78
  return newValue;
79
  }
80
 
81
  if ( ! _.isObject( controlValue ) && valueToMigrate && valueToMigrate.indexOf( 'hm hm-' ) === 0 ) {
82
  newValue.value = valueToMigrate;
83
+ elementSettingsModel.set( model.get( 'name' ), newValue );
84
  return newValue;
85
  }
86
 
93
  return controlValue;
94
  }
95
 
96
+ var didMigration = elementSettingsModel.get( this.dataKeys.migratedKey ),
97
  controlName = model.get( 'name' );
98
 
99
  // Check if migration had been done and is stored locally
assets/admin/js/editor.min.js CHANGED
@@ -1 +1 @@
1
- !function(e,t,n){"use strict";function i(){return{translate:["x","y","x_tablet","y_tablet","x_mobile","y_mobile"],skew:["x","y","x_tablet","y_tablet","x_mobile","y_mobile"],scale:["x","y","x_tablet","y_tablet","x_mobile","y_mobile"],rotate:["x","y","z","x_tablet","y_tablet","z_tablet","x_mobile","y_mobile","z_mobile"]}}function a(t,n,i){t="ha_transform_fx_"+t,n="ha_transform_fx_"+n,i.on("change:"+t,function(t,a){if(!a){var o=e.getPanelView().getCurrentPageView().children.find(function(e){return e.model.get("name")===n});i.set(n,_.extend({},i.defaults[n])),o&&o.render()}})}function o(t){var n=elementorFrontend.config.elements.data[t.cid];_.each(i(),function(e,t){_.each(e,function(e){a(t+"_toggle",t+"_"+e,n)})}),e.getPanelView().getCurrentPageView().model.on("editor:close",function(){_.each(i(),function(e,t){n.off("change:ha_transform_fx_"+t+"_toggle")})})}if(e.on("panel:init",function(){t("#elementor-panel-elements-search-input").on("keyup",_.debounce(function(){t("#elementor-panel-elements").find(".hm").parents(".elementor-element").addClass("is-ha-widget")},100))}),e.hooks.addAction("panel/open_editor/widget",function(e,t){o(t)}),e.modules.controls.Icons){var l=e.modules.controls.Icons.extend({getControlValue:function(){var e=this.constructor.__super__.getControlValue.call(this),t=this.model,n=this.getValueToMigrate(),i={value:"",library:"happy-icons"};if(_.isObject(e)&&!_.isEmpty(e)&&"svg"!==e.library&&0===e.value.indexOf("fashm"))return i.value=e.value.substr(e.value.indexOf("hm hm-")),this.elementSettingsModel.set(t.get("name"),i),i;if(!_.isObject(e)&&n&&0===n.indexOf("hm hm-"))return i.value=n,this.elementSettingsModel.set(t.get("name"),i),i;if(!this.isMigrationAllowed())return n;if(!n)return e;var a=this.elementSettingsModel.get(this.dataKeys.migratedKey),o=t.get("name");return this.cache.migratedFlag[o]?this.cache.migratedFlag[o]:a&&a[o]?e:this.migrateFa4toFa5(n)}});e.addControlView("icons",l)}n.ha_has_icon_library=function(){return e.helpers&&e.helpers.renderIcon},n.ha_get_feature_label=function(e){var t=document.createElement("DIV");return t.innerHTML=e,e=t.textContent||t.innerText||e,e.length>20?e.substring(0,20)+"...":e},e.modules.layouts.panel.pages.menu.Menu.addItem({name:"happyaddons-home",icon:"hm hm-happyaddons",title:HappyAddonsEditor.editorPanelHomeLinkTitle,type:"link",link:HappyAddonsEditor.editorPanelHomeLinkURL,newTab:!0},"settings"),e.modules.layouts.panel.pages.menu.Menu.addItem({name:"happyaddons-widgets",icon:"hm hm-cross-game",title:HappyAddonsEditor.editorPanelWidgetsLinkTitle,type:"link",link:HappyAddonsEditor.editorPanelWidgetsLinkURL,newTab:!0},"settings")}(elementor,jQuery,window);
1
+ !function(e,t,n){"use strict";function i(){return{translate:["x","y","x_tablet","y_tablet","x_mobile","y_mobile"],skew:["x","y","x_tablet","y_tablet","x_mobile","y_mobile"],scale:["x","y","x_tablet","y_tablet","x_mobile","y_mobile"],rotate:["x","y","z","x_tablet","y_tablet","z_tablet","x_mobile","y_mobile","z_mobile"]}}function a(t,n,i){t="ha_transform_fx_"+t,n="ha_transform_fx_"+n,i.on("change:"+t,function(t,a){if(!a){var o=e.getPanelView().getCurrentPageView().children.find(function(e){return e.model.get("name")===n});i.set(n,_.extend({},i.defaults[n])),o&&o.render()}})}function o(t){var n=elementorFrontend.config.elements.data[t.cid];_.each(i(),function(e,t){_.each(e,function(e){a(t+"_toggle",t+"_"+e,n)})}),e.getPanelView().getCurrentPageView().model.on("editor:close",function(){_.each(i(),function(e,t){n.off("change:ha_transform_fx_"+t+"_toggle")})})}if(e.on("panel:init",function(){t("#elementor-panel-elements-search-input").on("keyup",_.debounce(function(){t("#elementor-panel-elements").find(".hm").parents(".elementor-element").addClass("is-ha-widget")},100))}),e.hooks.addAction("panel/open_editor/widget",function(e,t){o(t)}),e.modules.controls.Icons){var l=e.modules.controls.Icons.extend({getControlValue:function(){var e=this.constructor.__super__.getControlValue.call(this),t=this.model,n=this.getValueToMigrate(),i={value:"",library:"happy-icons"},a=this.container&&this.container.settings||this.elementSettingsModel;if(_.isObject(e)&&!_.isEmpty(e)&&"svg"!==e.library&&0===e.value.indexOf("fashm"))return i.value=e.value.substr(e.value.indexOf("hm hm-")),a.set(t.get("name"),i),i;if(!_.isObject(e)&&n&&0===n.indexOf("hm hm-"))return i.value=n,a.set(t.get("name"),i),i;if(!this.isMigrationAllowed())return n;if(!n)return e;var o=a.get(this.dataKeys.migratedKey),l=t.get("name");return this.cache.migratedFlag[l]?this.cache.migratedFlag[l]:o&&o[l]?e:this.migrateFa4toFa5(n)}});e.addControlView("icons",l)}n.ha_has_icon_library=function(){return e.helpers&&e.helpers.renderIcon},n.ha_get_feature_label=function(e){var t=document.createElement("DIV");return t.innerHTML=e,e=t.textContent||t.innerText||e,e.length>20?e.substring(0,20)+"...":e},e.modules.layouts.panel.pages.menu.Menu.addItem({name:"happyaddons-home",icon:"hm hm-happyaddons",title:HappyAddonsEditor.editorPanelHomeLinkTitle,type:"link",link:HappyAddonsEditor.editorPanelHomeLinkURL,newTab:!0},"settings"),e.modules.layouts.panel.pages.menu.Menu.addItem({name:"happyaddons-widgets",icon:"hm hm-cross-game",title:HappyAddonsEditor.editorPanelWidgetsLinkTitle,type:"link",link:HappyAddonsEditor.editorPanelWidgetsLinkURL,newTab:!0},"settings")}(elementor,jQuery,window);
base.php CHANGED
@@ -46,12 +46,12 @@ class Base {
46
  Assets_Manager::init();
47
  Cache_Manager::init();
48
  Icons_Manager::init();
 
49
 
50
  $this->init_appsero_tracking();
51
 
52
  if ( is_user_logged_in() ) {
53
  Admin_Bar::init();
54
- Extensions_Manager::init();
55
  }
56
 
57
  if ( is_admin() ) {
@@ -98,6 +98,7 @@ class Base {
98
 
99
  include_once( HAPPY_ADDONS_DIR_PATH . 'classes/widgets-cache.php' );
100
  include_once( HAPPY_ADDONS_DIR_PATH . 'classes/assets-cache.php' );
 
101
 
102
  if ( is_admin() ) {
103
  include_once( HAPPY_ADDONS_DIR_PATH . 'classes/class.communicator.php' );
@@ -109,7 +110,6 @@ class Base {
109
  if ( is_user_logged_in() ) {
110
  include_once( HAPPY_ADDONS_DIR_PATH . 'classes/admin-bar.php' );
111
  include_once( HAPPY_ADDONS_DIR_PATH . 'classes/clone-handler.php' );
112
- include_once( HAPPY_ADDONS_DIR_PATH . 'classes/extensions-manager.php' );
113
  }
114
  }
115
 
46
  Assets_Manager::init();
47
  Cache_Manager::init();
48
  Icons_Manager::init();
49
+ Extensions_Manager::init();
50
 
51
  $this->init_appsero_tracking();
52
 
53
  if ( is_user_logged_in() ) {
54
  Admin_Bar::init();
 
55
  }
56
 
57
  if ( is_admin() ) {
98
 
99
  include_once( HAPPY_ADDONS_DIR_PATH . 'classes/widgets-cache.php' );
100
  include_once( HAPPY_ADDONS_DIR_PATH . 'classes/assets-cache.php' );
101
+ include_once( HAPPY_ADDONS_DIR_PATH . 'classes/extensions-manager.php' );
102
 
103
  if ( is_admin() ) {
104
  include_once( HAPPY_ADDONS_DIR_PATH . 'classes/class.communicator.php' );
110
  if ( is_user_logged_in() ) {
111
  include_once( HAPPY_ADDONS_DIR_PATH . 'classes/admin-bar.php' );
112
  include_once( HAPPY_ADDONS_DIR_PATH . 'classes/clone-handler.php' );
 
113
  }
114
  }
115
 
changelog.txt CHANGED
@@ -1,3 +1,8 @@
 
 
 
 
 
1
  = 2.4.1 - 10 December 2019 =
2
 
3
  - Fix: News Ticket single post selection issue
1
+ = 2.4.2 - 12 December 2019 =
2
+
3
+ - Fix: Compatibility with Elementor 2.8.*
4
+ - Fix: Extension loading issue for non logged in users
5
+
6
  = 2.4.1 - 10 December 2019 =
7
 
8
  - Fix: News Ticket single post selection issue
plugin.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: Happy Elementor Addons
4
  * Plugin URI: https://happyaddons.com/
5
  * Description: <a href="https://happyaddons.com/">HappyAddons</a> is a collection of slick, powerful widgets that works seamlessly with Elementor page builder. It’s trendy look with detail customization features allows to create extraordinary designs instantly. <a href="https://happyaddons.com/">HappyAddons</a> is free, rapidly growing and comes with great support.
6
- * Version: 2.4.1
7
  * Author: weDevs
8
  * Author URI: https://happyaddons.com/
9
  * License: GPLv2
@@ -34,7 +34,7 @@ Copyright 2019 HappyMonster <http://happymonster.me>
34
 
35
  defined( 'ABSPATH' ) || die();
36
 
37
- define( 'HAPPY_ADDONS_VERSION', '2.4.1' );
38
  define( 'HAPPY_ADDONS__FILE__', __FILE__ );
39
  define( 'HAPPY_ADDONS_DIR_PATH', plugin_dir_path( HAPPY_ADDONS__FILE__ ) );
40
  define( 'HAPPY_ADDONS_DIR_URL', plugin_dir_url( HAPPY_ADDONS__FILE__ ) );
3
  * Plugin Name: Happy Elementor Addons
4
  * Plugin URI: https://happyaddons.com/
5
  * Description: <a href="https://happyaddons.com/">HappyAddons</a> is a collection of slick, powerful widgets that works seamlessly with Elementor page builder. It’s trendy look with detail customization features allows to create extraordinary designs instantly. <a href="https://happyaddons.com/">HappyAddons</a> is free, rapidly growing and comes with great support.
6
+ * Version: 2.4.2
7
  * Author: weDevs
8
  * Author URI: https://happyaddons.com/
9
  * License: GPLv2
34
 
35
  defined( 'ABSPATH' ) || die();
36
 
37
+ define( 'HAPPY_ADDONS_VERSION', '2.4.2' );
38
  define( 'HAPPY_ADDONS__FILE__', __FILE__ );
39
  define( 'HAPPY_ADDONS_DIR_PATH', plugin_dir_path( HAPPY_ADDONS__FILE__ ) );
40
  define( 'HAPPY_ADDONS_DIR_URL', plugin_dir_url( HAPPY_ADDONS__FILE__ ) );
readme.txt CHANGED
@@ -1,6 +1,6 @@
1
  === Happy Elementor Addons ===
2
  Plugin Name: Happy Elementor Addons
3
- Version: 2.4.1
4
  Author: weDevs
5
  Author URI: https://happyaddons.com/
6
  Contributors: thehappymonster, happyaddons, hasinhayder, mosaddek73, tareq1988, sourav926, wedevs, iqbalrony, obiplabon
@@ -258,6 +258,11 @@ It's really easy and super simple to install **Happy Elementor Addons** plugin b
258
 
259
  == Changelog ==
260
 
 
 
 
 
 
261
  = 2.4.1 - 10 December 2019 =
262
 
263
  - Fix: News Ticket single post selection issue
1
  === Happy Elementor Addons ===
2
  Plugin Name: Happy Elementor Addons
3
+ Version: 2.4.2
4
  Author: weDevs
5
  Author URI: https://happyaddons.com/
6
  Contributors: thehappymonster, happyaddons, hasinhayder, mosaddek73, tareq1988, sourav926, wedevs, iqbalrony, obiplabon
258
 
259
  == Changelog ==
260
 
261
+ = 2.4.2 - 12 December 2019 =
262
+
263
+ - Fix: Compatibility with Elementor 2.8.*
264
+ - Fix: Extension loading issue for non logged in users
265
+
266
  = 2.4.1 - 10 December 2019 =
267
 
268
  - Fix: News Ticket single post selection issue