OoohBoi Steroids for Elementor - Version 1.7.1

Version Description

  • New feature added, PSEUDO - it's like a PoopArt for Columns
  • HOVERANIMATOR, Offset TOP and Offset Left properties now support the CSS calc() input too
Download this release

Release Info

Developer ooohboi
Plugin Icon 128x128 OoohBoi Steroids for Elementor
Version 1.7.1
Comparing to
See all releases

Code changes from version 1.7.0 to 1.7.1

assets/css/editor.css CHANGED
@@ -24,7 +24,8 @@
24
  .elementor-control-_ob_hoveranimator_section_title:after,
25
  .elementor-control-_ob_hoveranimator_panel:after,
26
  .elementor-control-_ob_kontrolz:after,
27
- .elementor-control-_ob_widget_stalker:after {
 
28
  content: "";
29
  position: absolute;
30
  height: 20px;
@@ -82,7 +83,8 @@
82
  .rtl .elementor-control-_ob_hoveranimator_section_title:after,
83
  .rtl .elementor-control-_ob_hoveranimator_panel:after,
84
  .rtl .elementor-control-_ob_kontrolz:after,
85
- .rtl .elementor-control-_ob_widget_stalker:after {
 
86
  left: 20px;
87
  right: unset;
88
  }
@@ -113,4 +115,12 @@ sup.ob-new-feature {
113
  font-size: 12px;
114
  font-weight: 600;
115
  letter-spacing: 2px;
 
 
 
 
 
 
 
 
116
  }
24
  .elementor-control-_ob_hoveranimator_section_title:after,
25
  .elementor-control-_ob_hoveranimator_panel:after,
26
  .elementor-control-_ob_kontrolz:after,
27
+ .elementor-control-_ob_widget_stalker:after,
28
+ .elementor-control-_ob_pseudo_section_title:after {
29
  content: "";
30
  position: absolute;
31
  height: 20px;
83
  .rtl .elementor-control-_ob_hoveranimator_section_title:after,
84
  .rtl .elementor-control-_ob_hoveranimator_panel:after,
85
  .rtl .elementor-control-_ob_kontrolz:after,
86
+ .rtl .elementor-control-_ob_widget_stalker:after,
87
+ .rtl .elementor-control-_ob_pseudo_section_title:after {
88
  left: 20px;
89
  right: unset;
90
  }
115
  font-size: 12px;
116
  font-weight: 600;
117
  letter-spacing: 2px;
118
+ }
119
+
120
+ /* pseudo */
121
+ .elementor-column.ob-is-pseudo .elementor-element-populated:before,
122
+ .elementor-column.ob-is-pseudo .elementor-element-populated:after {
123
+ content: '';
124
+ position: absolute;
125
+ pointer-events: none;
126
  }
assets/css/main.css CHANGED
@@ -293,4 +293,12 @@ html.elementor-html::before {
293
  width: 100%;
294
  z-index: 99999;
295
  pointer-events: none;
 
 
 
 
 
 
 
 
296
  }
293
  width: 100%;
294
  z-index: 99999;
295
  pointer-events: none;
296
+ }
297
+
298
+ /* pseudo */
299
+ .elementor-column.ob-is-pseudo .elementor-element-populated:before,
300
+ .elementor-column.ob-is-pseudo .elementor-element-populated:after {
301
+ content: '';
302
+ position: absolute;
303
+ pointer-events: none;
304
  }
assets/js/ooohboi-steroids-min.js CHANGED
@@ -1 +1 @@
1
- "use strict";!function(e,t){var o=e(t);o.on("elementor/frontend/init",(function(){var t=elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initPoopArtPerspektiveHA(),this.initHoverAnimator()},initPoopArtPerspektiveHA:function(){this.isEdit&&(this.$element.addClass("ob-has-background-overlay"),"yes"===this.getElementSettings("_ob_perspektive_use")&&this.$element.addClass("ob-use-perspektive"),"yes"===this.getElementSettings("_ob_widget_stalker_use")&&this.$element.addClass("ob-got-stalker"))},initHoverAnimator:function(){this.routeHoverAnimator()},onElementChange:function(e){"_ob_perspektive_use"===e&&("yes"===this.getElementSettings("_ob_perspektive_use")?this.$element.addClass("ob-use-perspektive"):this.$element.removeClass("ob-use-perspektive")),"_ob_allow_hoveranimator"===e&&this.routeHoverAnimator(),-1!==["_ob_hoveranimator_opacity_hover","_ob_hoveranimator_y_hover","_ob_hoveranimator_x_hover","_ob_hoveranimator_rot_hover","_ob_hoveranimator_scalex_hover","_ob_hoveranimator_scaley_hover","_ob_hoveranimator_blur_hover"].indexOf(e)&&this.isHoverAnimator()&&this.doHoverAnimator(),"_ob_widget_stalker_use"===e&&this.routeWidgetStalkerWidget()},isWidgetStalkerWidget:function(){return this.$element.hasClass("ob-got-stalker")},routeWidgetStalkerWidget:function(){this.isWidgetStalkerWidget()||"yes"!==this.getElementSettings("_ob_widget_stalker_use")?this.$element.removeClass("ob-got-stalker"):this.$element.addClass("ob-got-stalker")},isPerspektive:function(){return this.$element.hasClass("ob-use-perspektive")},isHoverAnimator:function(){return this.$element.hasClass("ob-is-hoveranimal")},routeHoverAnimator:function(){this.isEdit?(this.isHoverAnimator()||"yes"!==this.getElementSettings("_ob_allow_hoveranimator")||(this.$element.addClass("ob-is-hoveranimal"),this.doHoverAnimator()),this.isHoverAnimator()&&"yes"!==this.getElementSettings("_ob_allow_hoveranimator")&&(this.$element.removeClass("ob-is-hoveranimal"),this.stopHoverAnimator())):!this.isEdit&&this.isHoverAnimator()&&this.doHoverAnimator()},doHoverAnimator:function(){var t=this.$element,o=t.parent().closest(".ob-is-hoveranimator");if(o.length){var s,i,n,r,l,a,d,h,m=o.data("id");this.isEdit?(s=this.getElementSettings("_ob_hoveranimator_opacity_hover"),i=this.getElementSettings("_ob_hoveranimator_y_hover"),n=this.getElementSettings("_ob_hoveranimator_x_hover"),r=this.getElementSettings("_ob_hoveranimator_rot_hover"),a=this.getElementSettings("_ob_hoveranimator_scalex_hover"),l=this.getElementSettings("_ob_hoveranimator_scaley_hover"),d=this.getElementSettings("_ob_hoveranimator_blur_hover")):this.isEdit||(s=(h=e.parseJSON(t.attr("data-settings")))._ob_hoveranimator_opacity_hover,i=h._ob_hoveranimator_y_hover,n=h._ob_hoveranimator_x_hover,r=h._ob_hoveranimator_rot_hover,a=h._ob_hoveranimator_scalex_hover,l=h._ob_hoveranimator_scaley_hover,d=h._ob_hoveranimator_blur_hover);var _={opacity:s.size,top:i.size+i.unit,left:n.size+n.unit,transform:"rotate("+r.size+"deg) scaleX("+a.size+") scaleY("+l.size+")",filter:"blur("+d.size+d.unit+")"};o.on("mouseenter."+m,(function(){t.css(_)})),o.on("mouseleave."+m,(function(){t.removeAttr("style")}))}},stopHoverAnimator:function(){var e=this.$element,t=this.$element.parent().closest(".ob-is-hoveranimator");if(t.length){var o=t.data("id"),s={opacity:"",top:"",left:"",transform:"",filter:""};t.on("mouseenter."+o,(function(){e.css(s)})),t.on("mouseleave."+o,(function(){e.removeAttr("style")}))}}}),i=elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initHarakiri()},initHarakiri:function(){this.isEdit&&"inherit"!==this.getElementSettings("_ob_harakiri_writing_mode")&&this.$element.addClass("ob-harakiri")},onElementChange:function(e){"_ob_harakiri_writing_mode"===e&&("inherit"!==this.getElementSettings("_ob_harakiri_writing_mode")?this.$element.addClass("ob-harakiri"):this.$element.removeClass("ob-harakiri"))}}),n={widget:t,"heading.default":i,"text-editor.default":i,section:elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initSectionExtends()},isBreakingBad:function(){return this.$element.hasClass("ob-is-breaking-bad")},isGlider:function(){return this.$element.hasClass("ob-is-glider")},isInnerSection:function(){return this.$element.hasClass("elementor-inner-section")},onElementChange:function(e){"_ob_bbad_use_it"===e&&("yes"===this.getElementSettings("_ob_bbad_use_it")?(this.$element.addClass("ob-is-breaking-bad"),this.isInnerSection()&&this.$element.addClass("ob-bb-inner")):(this.$element.removeClass("ob-is-breaking-bad"),this.isInnerSection()&&this.$element.removeClass("ob-bb-inner"))),"_ob_glider_is_slider"===e&&("yes"===this.getElementSettings("_ob_glider_is_slider")?(this.$element.addClass("ob-is-glider"),this.addClassesRouteGlider(".elementor-element-"+this.$element.attr("data-id"),"addClass"),this.initSwiperElements()):"yes"!=this.getElementSettings("_ob_glider_is_slider")&&(this.$element.removeClass("ob-is-glider"),this.addClassesRouteGlider(".elementor-element-"+this.$element.attr("data-id"),"removeClass"))),"_ob_bbad_sssic_use"===e&&this.isInnerSection()&&("yes"===this.getElementSettings("_ob_bbad_sssic_use")?this.$element.addClass("ob-is-sticky-inner-section"):this.$element.removeClass("ob-is-sticky-inner-section"))},addClassesRouteGlider:function(t,o){var s=e(t).children(".elementor-container").first();s.length&&s.addClass("swiper-container");var i=e(s).children(".elementor-row").first();i.length&&"addClass"==o?(i.addClass("swiper-wrapper"),e(i).children("div.elementor-column").addClass("swiper-slide")):i.length||"addClass"!=o||(e(s).children("div.elementor-column").wrapAll('<div class="swiper-wrapper" />'),e(s).children(".swiper-wrapper").first().children("div.elementor-column").addClass("swiper-slide")),i.length&&"removeClass"==o?(s.removeClass("swiper-container"),i.removeClass("swiper-wrapper"),e(i).children("div.elementor-column").removeClass("swiper-slide")):i.length||"removeClass"!=o||(s.removeClass("swiper-container"),e(s).children("div.swiper-wrapper").unwrap(),e(s).children("div.elementor-column").removeClass("swiper-slide"))},initSectionExtends:function(){if(this.isEdit?("yes"!==this.getElementSettings("_ob_bbad_use_it")||this.isBreakingBad()||(this.$element.addClass("ob-is-breaking-bad"),this.isInnerSection()&&this.$element.addClass("ob-bb-inner")),"yes"===this.getElementSettings("_ob_glider_is_slider")&&(this.$element.addClass("ob-is-glider"),this.addClassesRouteGlider(".elementor-element-"+this.$element.attr("data-id"),"addClass"),this.initSwiperElements())):"yes"===this.getElementSettings("_ob_glider_is_slider")&&(this.$element.addClass("ob-is-glider"),this.addClassesRouteGlider(".elementor-element-"+this.$element.attr("data-id"),"addClass"),this.initSwiperElements()),"yes"===this.getElementSettings("_ob_bbad_sssic_use")&&this.isInnerSection()){this.isEdit&&this.$element.addClass("ob-is-sticky-inner-section");var e=this.$element.closest(".elementor-widget-wrap");e.length&&e.addClass("ob-sssic-wrapper")}},initSwiperElements:function(){this.$element.children(".elementor-container").find(".swiper-button-next").first().length||this.$element.children(".elementor-container").first().append('<div class="swiper-button-next"><svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMin" viewBox="0 0 27 44"><path d="M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z"></path></svg></div>'),this.$element.children(".elementor-container").find(".swiper-button-prev").first().length||this.$element.children(".elementor-container").first().append('<div class="swiper-button-prev"><svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMin" viewBox="0 0 27 44"><path d="M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z"></path></svg></div>'),this.$element.children(".elementor-container").find(".swiper-pagination").first().length||this.$element.children(".elementor-container").first().append('<div class="swiper-pagination"></div>');var e={};e.pagination_type=this.getElementSettings("_ob_glider_pagination_type"),e.allowTouchMove=this.getElementSettings("_ob_glider_allow_touch_move"),e.autoheight=this.getElementSettings("_ob_glider_auto_h"),e.effect=this.getElementSettings("_ob_glider_effect"),e.loop=this.getElementSettings("_ob_glider_loop"),e.direction=this.getElementSettings("_ob_glider_direction"),e.parallax=this.getElementSettings("_ob_glider_parallax"),e.speed=this.getElementSettings("_ob_glider_speed");var t=this.getElementSettings("_ob_glider_autoplay");e.autoplay=!!t&&{delay:this.getElementSettings("_ob_glider_autoplay_delay")},e.allowMultiSlides=this.getElementSettings("_ob_glider_allow_multi_slides");var o={},i=elementorFrontend.config.breakpoints;o[i.lg]={slidesPerView:this.getElementSettings("_ob_glider_slides_per_view"),slidesPerGroup:this.getElementSettings("_ob_glider_slides_to_scroll"),spaceBetween:+this.getElementSettings("_ob_glider_space_between")||0},o[i.md]={slidesPerView:this.getElementSettings("_ob_glider_slides_per_view_tablet"),slidesPerGroup:this.getElementSettings("_ob_glider_slides_to_scroll_tablet"),spaceBetween:+this.getElementSettings("_ob_glider_space_between_tablet")||0},o[0]={slidesPerView:this.getElementSettings("_ob_glider_slides_per_view_mobile"),slidesPerGroup:this.getElementSettings("_ob_glider_slides_to_scroll_mobile"),spaceBetween:+this.getElementSettings("_ob_glider_space_between_mobile")||0},e.breakpoints=o,s(this.$element.attr("data-id"),e,"glider_"+this.$element.attr("data-id"))}}),column:elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.$element.find(".elementor-column-wrap").first().length||this.$element.addClass("ob-is-e3");var e=navigator.userAgent.toLowerCase();e.indexOf("chrome")>-1&&this.teleporterChromeResize(),this.initColumnExtends()},teleporterChromeResize:function(){if(this.isTeleporter()){var e=this,t=this.$element.attr("data-id");o.on("resize",(function(){e.$element.closest(".ob-is-teleporter").addClass("ob-chrome-resize"),clearTimeout(t),t=setTimeout((function(){var t=parseInt(e.$element.closest(".ob-is-teleporter").css("height")),o=e.$element.find(".elementor-column-wrap").first();o.length?o.css({height:t}):e.$element.find(".elementor-widget-wrap").first().css({height:t}),e.$element.closest(".ob-is-teleporter").removeClass("ob-chrome-resize")}),500)})),o.trigger("resize")}},isTeleporter:function(){return this.$element.hasClass("ob-is-teleporter")},isHoverAnimatorCol:function(){return this.$element.hasClass("ob-is-hoveranimator")},isWidgetStalkerCol:function(){return this.$element.hasClass("ob-is-stalker")},initColumnExtends:function(){this.isEdit&&"use-teleporter"===this.getElementSettings("_ob_teleporter_use")&&(this.$element.addClass("ob-is-teleporter"),this.$element.find(".elementor-widget-wrap").first().addClass("ob-tele-midget"),this.doTeleporterEditor()),!this.isEdit&&this.isTeleporter()&&(this.$element.find(".elementor-widget-wrap").first().addClass("ob-tele-midget"),this.doTeleporter()),this.isEdit&&"yes"===this.getElementSettings("_ob_column_hoveranimator")&&this.$element.addClass("ob-is-hoveranimator"),this.isEdit&&"yes"===this.getElementSettings("_ob_bbad_is_stalker")&&this.$element.addClass("ob-is-stalker")},onElementChange:function(e){"_ob_teleporter_overlay_color"===e?this.$element.find('div[class*="ob-teleporter-"] > .ob-tele-overlay').css("background-color",this.getElementSettings("_ob_teleporter_overlay_color")):"_ob_teleporter_no_pass_tablet"===e?"no-tablet"===this.getElementSettings("_ob_teleporter_no_pass_tablet")?this.$element.addClass("ob-tele-no-tablet"):this.$element.removeClass("ob-tele-no-tablet"):"_ob_teleporter_no_pass_mobile"===e&&("no-mobile"===this.getElementSettings("_ob_teleporter_no_pass_mobile")?this.$element.addClass("ob-tele-no-mobile"):this.$element.removeClass("ob-tele-no-mobile")),"_ob_column_hoveranimator"===e&&this.routeHoverAnimatorCol(),"_ob_bbad_is_stalker"===e&&this.routeWidgetStalkerCol()},routeHoverAnimatorCol:function(){this.isHoverAnimatorCol()||"yes"!==this.getElementSettings("_ob_column_hoveranimator")?this.$element.removeClass("ob-is-hoveranimator"):this.$element.addClass("ob-is-hoveranimator")},routeWidgetStalkerCol:function(){this.isWidgetStalkerCol()||"yes"!==this.getElementSettings("_ob_bbad_is_stalker")?this.$element.removeClass("ob-is-stalker"):this.$element.addClass("ob-is-stalker")},doTeleporterEditor:function(){if("use-teleporter"===this.getElementSettings("_ob_teleporter_use")){var t=this.$element.find(".elementor-widget-wrap").first();if(t.length&&(t.wrapInner('<div class="widget-wrap-children" />'),t.find(".elementor-background-overlay").first().length&&t.find(".elementor-background-overlay").first().insertBefore(t.find(".elementor-background-overlay").first().parent())),"do-pass"===this.getElementSettings("_ob_teleporter_pass")){var o=this,s=this.$element,i=this.$element.attr("data-id");"no-tablet"===this.getElementSettings("_ob_teleporter_no_pass_tablet")&&this.$element.addClass("ob-tele-no-tablet"),"no-mobile"===this.getElementSettings("_ob_teleporter_no_pass_mobile")&&this.$element.addClass("ob-tele-no-mobile");var n="section"===this.getElementSettings("_ob_teleporter_pass_element")?this.$element.closest(".elementor-section"):this.$element.closest(".elementor-container");if(n.length){n.css("overflow","hidden");var r=this.getElementSettings("_ob_teleporter_pass_effect"),l='<div class="ob-teleporter-'+i+" ob-tele-eff-"+r+'" data-id-teleporter="'+i+'"><div class="ob-tele-overlay" style="background-color: '+this.getElementSettings("_ob_teleporter_overlay_color")+';"></div></div>';e(".ob-teleporter-"+i).length||this.$element.prepend(l),this.$element.off("mouseenter mouseleave"),this.$element.on("mouseenter mouseleave",(function(t){if("mouseenter"===t.type){if("no-tablet"===o.getElementSettings("_ob_teleporter_no_pass_tablet")&&"tablet"===elementorFrontend.getCurrentDeviceMode())return;if("no-mobile"===o.getElementSettings("_ob_teleporter_no_pass_mobile")&&"mobile"===elementorFrontend.getCurrentDeviceMode())return;if("do-pass"!==o.getElementSettings("_ob_teleporter_pass"))return;var r={"background-color":e(".ob-teleporter-"+i).css("background-color"),"background-image":e(".ob-teleporter-"+i).css("background-image"),"background-position":e(".ob-teleporter-"+i).css("background-position"),"background-size":e(".ob-teleporter-"+i).css("background-size"),"background-repeat":e(".ob-teleporter-"+i).css("background-repeat")};if("section"===o.getElementSettings("_ob_teleporter_pass_element")){var l=n.children().not(".elementor-container").detach();n.addClass("ob-tele-mom-hover").prepend(e(".ob-teleporter-"+i)),n.prepend(l)}else n.addClass("ob-tele-mom-hover").prepend(e(".ob-teleporter-"+i));e(".ob-teleporter-"+i).css(r).hide(),e(".ob-teleporter-"+i).addClass("ob-teleporter-hover").show()}else n.removeClass("ob-tele-mom-hover"),setTimeout((function(){e(".ob-teleporter-"+i).removeAttr("style").removeClass("ob-teleporter-hover"),s.prepend(e(".ob-teleporter-"+i))}),100)}))}}}},doTeleporter:function(){var t=e.parseJSON(this.$element.attr("data-settings"));if("use-teleporter"===t._ob_teleporter_use){var o=this.$element.find(".elementor-widget-wrap").first();o.length&&(o.wrapInner('<div class="widget-wrap-children" />'),o.find(".elementor-background-overlay").first().length&&o.find(".elementor-background-overlay").first().insertBefore(o.find(".elementor-background-overlay").first().parent()));var s=this.$element,i=this.$element.attr("data-id");if("no-tablet"===t._ob_teleporter_no_pass_tablet&&this.$element.addClass("ob-tele-no-tablet"),"no-mobile"===t._ob_teleporter_no_pass_mobile&&this.$element.addClass("ob-tele-no-mobile"),void 0!==t._ob_teleporter_link){var n=t._ob_teleporter_link;if(""===n.url)return;this.$element.off("click.obTeleporter"),this.$element.on("click.obTeleporter",(function(){n.is_external?window.open(n.url):location.href=n.url}))}if("do-pass"===t._ob_teleporter_pass){var r="section"===t._ob_teleporter_pass_element?this.$element.closest(".elementor-section"):this.$element.closest(".elementor-container");if(r.length){r.css("overflow","hidden");var l=t._ob_teleporter_pass_effect,a='<div class="ob-teleporter-'+i+" ob-tele-eff-"+l+'" data-id-teleporter="'+i+'"><div class="ob-tele-overlay" style="background-color: '+t._ob_teleporter_overlay_color+';"></div>';e(".ob-teleporter-"+i).length||this.$element.prepend(a),this.$element.off("mouseenter mouseleave"),this.$element.on("mouseenter",(function(){if(!("no-tablet"===t._ob_teleporter_no_pass_tablet&&"tablet"===elementorFrontend.getCurrentDeviceMode()||"no-mobile"===t._ob_teleporter_no_pass_mobile&&"mobile"===elementorFrontend.getCurrentDeviceMode())){var o={"background-color":e(".ob-teleporter-"+i).css("background-color"),"background-image":e(".ob-teleporter-"+i).css("background-image"),"background-position":e(".ob-teleporter-"+i).css("background-position"),"background-size":e(".ob-teleporter-"+i).css("background-size"),"background-repeat":e(".ob-teleporter-"+i).css("background-repeat")};if("section"===t._ob_teleporter_pass_element){var s=r.children().not(".elementor-container").detach();r.addClass("ob-tele-mom-hover").prepend(e(".ob-teleporter-"+i)),r.prepend(s)}else r.addClass("ob-tele-mom-hover").prepend(e(".ob-teleporter-"+i));e(".ob-teleporter-"+i).css(o).hide(),e(".ob-teleporter-"+i).show().addClass("ob-teleporter-hover")}})),this.$element.on("mouseleave",(function(){r.removeClass("ob-tele-mom-hover"),setTimeout((function(){e(".ob-teleporter-"+i).removeAttr("style").removeClass("ob-teleporter-hover"),s.prepend(e(".ob-teleporter-"+i))}),100)}))}}}}}),"search-form.default":elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initSearchCop()},onElementChange:function(e){"_ob_searchcop_srch_options"===e&&this.routeSearchCop()},initSearchCop:function(){this.routeSearchCop()},routeSearchCop:function(){var e=this.getElementSettings("_ob_searchcop_srch_options");if("post"===e||"page"===e){var t=this.$element.find(".elementor-search-form__container");if(!t.length)return;var o='<input type="hidden" name="post_type" value="'+e+'" />';t.prepend(o)}}}),"button.default":elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initButterButton()},isButterButton:function(){return this.$element.hasClass("ob-is-butterbutton")},onElementChange:function(e){"_ob_butterbutton_use_it"===e&&this.routeButterButton()},initButterButton:function(){this.isEdit&&"yes"===this.getElementSettings("_ob_butterbutton_use_it")&&this.$element.addClass("ob-is-butterbutton")},routeButterButton:function(){this.isButterButton()||"yes"!==this.getElementSettings("_ob_butterbutton_use_it")?this.$element.removeClass("ob-is-butterbutton"):this.$element.addClass("ob-is-butterbutton")}}),"image.default":elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initPhotoMorph()},isPhotoMorph:function(){return this.$element.hasClass("ob-photomorph")},onElementChange:function(e){"_ob_photomorph_use"===e&&this.routePhotoMorph()},initPhotoMorph:function(){this.isEdit&&"yes"===this.getElementSettings("_ob_photomorph_use")&&this.$element.addClass("ob-photomorph")},routePhotoMorph:function(){this.isPhotoMorph()||"yes"!==this.getElementSettings("_ob_photomorph_use")?this.$element.removeClass("ob-photomorph"):this.$element.addClass("ob-photomorph")}}),"post-comments.theme_comments":elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initCommentz()},isCommentz:function(){return this.$element.hasClass("ob-commentz")},onElementChange:function(e){"_ob_commentz_use"===e&&this.routeCommentz()},initCommentz:function(){this.isEdit&&"yes"===this.getElementSettings("_ob_commentz_use")&&this.$element.addClass("ob-commentz")},routeCommentz:function(){this.isCommentz()||"yes"!==this.getElementSettings("_ob_commentz_use")?this.$element.removeClass("ob-commentz"):this.$element.addClass("ob-commentz")}}),"spacer.default":elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initSpaceRat()},isSpaceRat:function(){return this.$element.hasClass("ob-spacerat")},onElementChange:function(e){"_ob_spacerat_use"===e&&this.routeSpaceRat()},initSpaceRat:function(){if(this.isEdit&&"yes"===this.getElementSettings("_ob_spacerat_use")&&this.$element.addClass("ob-spacerat"),!this.isEdit&&"yes"===this.getElementSettings("_ob_spacerat_use")){var t=e.parseJSON(this.$element.attr("data-settings"));if(void 0!==t._ob_spacerat_link){var o=t._ob_spacerat_link;if(""===o.url)return;this.$element.off("click.obSpacerat"),this.$element.on("click.obSpacerat",(function(){o.is_external?window.open(o.url):location.href=o.url}))}}},routeSpaceRat:function(){this.isSpaceRat()||"yes"!==this.getElementSettings("_ob_spacerat_use")?this.$element.removeClass("ob-spacerat"):this.$element.addClass("ob-spacerat")}})};e.each(n,(function(e,t){elementorFrontend.hooks.addAction("frontend/element_ready/"+e,(function(e){elementorFrontend.elementsHandler.addHandler(t,{$element:e})}))}))}));var s=function(t,o){var s,i=e(".elementor-element-"+t),n=e(".elementor-element-"+t+" .swiper-container").first(),r=n.parent().parent().find("nav.glider-controller"),l={allowTouchMove:"yes"===o.allowTouchMove,autoHeight:"yes"===o.autoheight,effect:o.effect,loop:o.loop,direction:"fade"===o.effect?"horizontal":o.direction,parallax:"yes"===o.parallax,speed:o.speed,breakpoints:"yes"===o.allowMultiSlides&&o.breakpoints,navigation:{nextEl:".elementor-element-"+t+" .swiper-button-next",prevEl:".elementor-element-"+t+" .swiper-button-prev"},pagination:{el:".elementor-element-"+t+" .swiper-pagination",type:o.pagination_type,clickable:!0},autoplay:o.autoplay,watchOverflow:!0};if("undefined"==typeof Swiper){new(0,elementorFrontend.utils.swiper)(n,l).then((e=>{s=e}))}else s=new Swiper(n,l);n.find('[class*="glider-control"]').on("click",(function(t){if(void 0!==e(this).data("gotoslide"))s.slideTo(parseInt(e(this).data("gotoslide")));else{var o=parseInt(e(this).attr("class").match(/glider-control-(\d+)/)[1]);o>0&&s.slideTo(o)}t.preventDefault()})),r.find('[class*="glider-control"]').on("click",(function(t){if(void 0!==e(this).data("gotoslide"))s.slideTo(parseInt(e(this).data("gotoslide")));else{var o=parseInt(e(this).attr("class").match(/glider-control-(\d+)/)[1]);o>0&&s.slideTo(o)}t.preventDefault()})),i.css("visibility","visible")}}(jQuery,window);
1
+ "use strict";!function(e,t){var o=e(t);o.on("elementor/frontend/init",(function(){var t=elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initPoopArtPerspektiveHA(),this.initHoverAnimator()},initPoopArtPerspektiveHA:function(){this.isEdit&&(this.$element.addClass("ob-has-background-overlay"),"yes"===this.getElementSettings("_ob_perspektive_use")&&this.$element.addClass("ob-use-perspektive"),"yes"===this.getElementSettings("_ob_widget_stalker_use")&&this.$element.addClass("ob-got-stalker"))},initHoverAnimator:function(){this.routeHoverAnimator()},onElementChange:function(e){"_ob_perspektive_use"===e&&("yes"===this.getElementSettings("_ob_perspektive_use")?this.$element.addClass("ob-use-perspektive"):this.$element.removeClass("ob-use-perspektive")),"_ob_allow_hoveranimator"===e&&this.routeHoverAnimator(),-1!==["_ob_hoveranimator_opacity_hover","_ob_hoveranimator_y_hover","_ob_hoveranimator_y_hover_alt","_ob_hoveranimator_x_hover","_ob_hoveranimator_x_hover_alt","_ob_hoveranimator_rot_hover","_ob_hoveranimator_scalex_hover","_ob_hoveranimator_scaley_hover","_ob_hoveranimator_blur_hover"].indexOf(e)&&this.isHoverAnimator()&&this.doHoverAnimator(),"_ob_widget_stalker_use"===e&&this.routeWidgetStalkerWidget()},isWidgetStalkerWidget:function(){return this.$element.hasClass("ob-got-stalker")},routeWidgetStalkerWidget:function(){this.isWidgetStalkerWidget()||"yes"!==this.getElementSettings("_ob_widget_stalker_use")?this.$element.removeClass("ob-got-stalker"):this.$element.addClass("ob-got-stalker")},isPerspektive:function(){return this.$element.hasClass("ob-use-perspektive")},isHoverAnimator:function(){return this.$element.hasClass("ob-is-hoveranimal")},routeHoverAnimator:function(){this.isEdit?(this.isHoverAnimator()||"yes"!==this.getElementSettings("_ob_allow_hoveranimator")||(this.$element.addClass("ob-is-hoveranimal"),this.doHoverAnimator()),this.isHoverAnimator()&&"yes"!==this.getElementSettings("_ob_allow_hoveranimator")&&(this.$element.removeClass("ob-is-hoveranimal"),this.stopHoverAnimator())):!this.isEdit&&this.isHoverAnimator()&&this.doHoverAnimator()},doHoverAnimator:function(){var t=this.$element,o=t.parent().closest(".ob-is-hoveranimator");if(o.length){var s,i,n,r,l,a,d,h,m,_,p,b,c=o.data("id");this.isEdit?(s=this.getElementSettings("_ob_hoveranimator_opacity_hover"),i=this.getElementSettings("_ob_hoveranimator_y_hover"),n=this.getElementSettings("_ob_hoveranimator_y_hover_alt"),r=this.getElementSettings("_ob_hoveranimator_x_hover"),l=this.getElementSettings("_ob_hoveranimator_x_hover_alt"),a=this.getElementSettings("_ob_hoveranimator_rot_hover"),h=this.getElementSettings("_ob_hoveranimator_scalex_hover"),d=this.getElementSettings("_ob_hoveranimator_scaley_hover"),m=this.getElementSettings("_ob_hoveranimator_blur_hover")):this.isEdit||(s=(_=e.parseJSON(t.attr("data-settings")))._ob_hoveranimator_opacity_hover,i=_._ob_hoveranimator_y_hover,n=_._ob_hoveranimator_y_hover_alt,r=_._ob_hoveranimator_x_hover,l=_._ob_hoveranimator_x_hover_alt,a=_._ob_hoveranimator_rot_hover,h=_._ob_hoveranimator_scalex_hover,d=_._ob_hoveranimator_scaley_hover,m=_._ob_hoveranimator_blur_hover),b=""!=e.trim(l)&&void 0!==l?"calc("+l+")":r.size+r.unit,p=""!=e.trim(n)&&void 0!==n?"calc("+n+")":i.size+i.unit;var u={opacity:s.size,top:p,left:b,transform:"rotate("+a.size+"deg) scaleX("+h.size+") scaleY("+d.size+")",filter:"blur("+m.size+m.unit+")"};o.on("mouseenter."+c,(function(){t.css(u)})),o.on("mouseleave."+c,(function(){t.removeAttr("style")}))}},stopHoverAnimator:function(){var e=this.$element,t=this.$element.parent().closest(".ob-is-hoveranimator");if(t.length){var o=t.data("id"),s={opacity:"",top:"",left:"",transform:"",filter:""};t.on("mouseenter."+o,(function(){e.css(s)})),t.on("mouseleave."+o,(function(){e.removeAttr("style")}))}}}),i=elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initHarakiri()},initHarakiri:function(){this.isEdit&&"inherit"!==this.getElementSettings("_ob_harakiri_writing_mode")&&this.$element.addClass("ob-harakiri")},onElementChange:function(e){"_ob_harakiri_writing_mode"===e&&("inherit"!==this.getElementSettings("_ob_harakiri_writing_mode")?this.$element.addClass("ob-harakiri"):this.$element.removeClass("ob-harakiri"))}}),n={widget:t,"heading.default":i,"text-editor.default":i,section:elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initSectionExtends()},isBreakingBad:function(){return this.$element.hasClass("ob-is-breaking-bad")},isGlider:function(){return this.$element.hasClass("ob-is-glider")},isInnerSection:function(){return this.$element.hasClass("elementor-inner-section")},onElementChange:function(e){"_ob_bbad_use_it"===e&&("yes"===this.getElementSettings("_ob_bbad_use_it")?(this.$element.addClass("ob-is-breaking-bad"),this.isInnerSection()&&this.$element.addClass("ob-bb-inner")):(this.$element.removeClass("ob-is-breaking-bad"),this.isInnerSection()&&this.$element.removeClass("ob-bb-inner"))),"_ob_glider_is_slider"===e&&("yes"===this.getElementSettings("_ob_glider_is_slider")?(this.$element.addClass("ob-is-glider"),this.addClassesRouteGlider(".elementor-element-"+this.$element.attr("data-id"),"addClass"),this.initSwiperElements()):"yes"!=this.getElementSettings("_ob_glider_is_slider")&&(this.$element.removeClass("ob-is-glider"),this.addClassesRouteGlider(".elementor-element-"+this.$element.attr("data-id"),"removeClass"))),"_ob_bbad_sssic_use"===e&&this.isInnerSection()&&("yes"===this.getElementSettings("_ob_bbad_sssic_use")?this.$element.addClass("ob-is-sticky-inner-section"):this.$element.removeClass("ob-is-sticky-inner-section"))},addClassesRouteGlider:function(t,o){var s=e(t).children(".elementor-container").first();s.length&&s.addClass("swiper-container");var i=e(s).children(".elementor-row").first();i.length&&"addClass"==o?(i.addClass("swiper-wrapper"),e(i).children("div.elementor-column").addClass("swiper-slide")):i.length||"addClass"!=o||(e(s).children("div.elementor-column").wrapAll('<div class="swiper-wrapper" />'),e(s).children(".swiper-wrapper").first().children("div.elementor-column").addClass("swiper-slide")),i.length&&"removeClass"==o?(s.removeClass("swiper-container"),i.removeClass("swiper-wrapper"),e(i).children("div.elementor-column").removeClass("swiper-slide")):i.length||"removeClass"!=o||(s.removeClass("swiper-container"),e(s).children("div.swiper-wrapper").unwrap(),e(s).children("div.elementor-column").removeClass("swiper-slide"))},initSectionExtends:function(){if(this.isEdit?("yes"!==this.getElementSettings("_ob_bbad_use_it")||this.isBreakingBad()||(this.$element.addClass("ob-is-breaking-bad"),this.isInnerSection()&&this.$element.addClass("ob-bb-inner")),"yes"===this.getElementSettings("_ob_glider_is_slider")&&(this.$element.addClass("ob-is-glider"),this.addClassesRouteGlider(".elementor-element-"+this.$element.attr("data-id"),"addClass"),this.initSwiperElements())):"yes"===this.getElementSettings("_ob_glider_is_slider")&&(this.$element.addClass("ob-is-glider"),this.addClassesRouteGlider(".elementor-element-"+this.$element.attr("data-id"),"addClass"),this.initSwiperElements()),"yes"===this.getElementSettings("_ob_bbad_sssic_use")&&this.isInnerSection()){this.isEdit&&this.$element.addClass("ob-is-sticky-inner-section");var e=this.$element.closest(".elementor-widget-wrap");e.length&&e.addClass("ob-sssic-wrapper")}},initSwiperElements:function(){this.$element.children(".elementor-container").find(".swiper-button-next").first().length||this.$element.children(".elementor-container").first().append('<div class="swiper-button-next"><svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMin" viewBox="0 0 27 44"><path d="M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z"></path></svg></div>'),this.$element.children(".elementor-container").find(".swiper-button-prev").first().length||this.$element.children(".elementor-container").first().append('<div class="swiper-button-prev"><svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMin" viewBox="0 0 27 44"><path d="M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z"></path></svg></div>'),this.$element.children(".elementor-container").find(".swiper-pagination").first().length||this.$element.children(".elementor-container").first().append('<div class="swiper-pagination"></div>');var e={};e.pagination_type=this.getElementSettings("_ob_glider_pagination_type"),e.allowTouchMove=this.getElementSettings("_ob_glider_allow_touch_move"),e.autoheight=this.getElementSettings("_ob_glider_auto_h"),e.effect=this.getElementSettings("_ob_glider_effect"),e.loop=this.getElementSettings("_ob_glider_loop"),e.direction=this.getElementSettings("_ob_glider_direction"),e.parallax=this.getElementSettings("_ob_glider_parallax"),e.speed=this.getElementSettings("_ob_glider_speed");var t=this.getElementSettings("_ob_glider_autoplay");e.autoplay=!!t&&{delay:this.getElementSettings("_ob_glider_autoplay_delay")},e.allowMultiSlides=this.getElementSettings("_ob_glider_allow_multi_slides");var o={},i=elementorFrontend.config.breakpoints;o[i.lg]={slidesPerView:this.getElementSettings("_ob_glider_slides_per_view"),slidesPerGroup:this.getElementSettings("_ob_glider_slides_to_scroll"),spaceBetween:+this.getElementSettings("_ob_glider_space_between")||0},o[i.md]={slidesPerView:this.getElementSettings("_ob_glider_slides_per_view_tablet"),slidesPerGroup:this.getElementSettings("_ob_glider_slides_to_scroll_tablet"),spaceBetween:+this.getElementSettings("_ob_glider_space_between_tablet")||0},o[0]={slidesPerView:this.getElementSettings("_ob_glider_slides_per_view_mobile"),slidesPerGroup:this.getElementSettings("_ob_glider_slides_to_scroll_mobile"),spaceBetween:+this.getElementSettings("_ob_glider_space_between_mobile")||0},e.breakpoints=o,s(this.$element.attr("data-id"),e,"glider_"+this.$element.attr("data-id"))}}),column:elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.$element.find(".elementor-column-wrap").first().length||this.$element.addClass("ob-is-e3");var e=navigator.userAgent.toLowerCase();e.indexOf("chrome")>-1&&this.teleporterChromeResize(),this.initColumnExtends()},teleporterChromeResize:function(){if(this.isTeleporter()){var e=this,t=this.$element.attr("data-id");o.on("resize",(function(){e.$element.closest(".ob-is-teleporter").addClass("ob-chrome-resize"),clearTimeout(t),t=setTimeout((function(){var t=parseInt(e.$element.closest(".ob-is-teleporter").css("height")),o=e.$element.find(".elementor-column-wrap").first();o.length?o.css({height:t}):e.$element.find(".elementor-widget-wrap").first().css({height:t}),e.$element.closest(".ob-is-teleporter").removeClass("ob-chrome-resize")}),500)})),o.trigger("resize")}},isTeleporter:function(){return this.$element.hasClass("ob-is-teleporter")},isHoverAnimatorCol:function(){return this.$element.hasClass("ob-is-hoveranimator")},isWidgetStalkerCol:function(){return this.$element.hasClass("ob-is-stalker")},isPseudoCol:function(){return this.$element.hasClass("ob-is-pseudo")},initColumnExtends:function(){this.isEdit&&"use-teleporter"===this.getElementSettings("_ob_teleporter_use")&&(this.$element.addClass("ob-is-teleporter"),this.$element.find(".elementor-widget-wrap").first().addClass("ob-tele-midget"),this.doTeleporterEditor()),!this.isEdit&&this.isTeleporter()&&(this.$element.find(".elementor-widget-wrap").first().addClass("ob-tele-midget"),this.doTeleporter()),this.isEdit&&"yes"===this.getElementSettings("_ob_column_hoveranimator")&&this.$element.addClass("ob-is-hoveranimator"),this.isEdit&&"yes"===this.getElementSettings("_ob_bbad_is_stalker")&&this.$element.addClass("ob-is-stalker"),this.isEdit&&"yes"===this.getElementSettings("_ob_column_has_pseudo")&&this.$element.addClass("ob-is-pseudo")},onElementChange:function(e){"_ob_teleporter_overlay_color"===e?this.$element.find('div[class*="ob-teleporter-"] > .ob-tele-overlay').css("background-color",this.getElementSettings("_ob_teleporter_overlay_color")):"_ob_teleporter_no_pass_tablet"===e?"no-tablet"===this.getElementSettings("_ob_teleporter_no_pass_tablet")?this.$element.addClass("ob-tele-no-tablet"):this.$element.removeClass("ob-tele-no-tablet"):"_ob_teleporter_no_pass_mobile"===e&&("no-mobile"===this.getElementSettings("_ob_teleporter_no_pass_mobile")?this.$element.addClass("ob-tele-no-mobile"):this.$element.removeClass("ob-tele-no-mobile")),"_ob_column_hoveranimator"===e&&this.routeHoverAnimatorCol(),"_ob_bbad_is_stalker"===e&&this.routeWidgetStalkerCol(),"_ob_column_has_pseudo"===e&&this.routePseudoCol()},routeHoverAnimatorCol:function(){this.isHoverAnimatorCol()||"yes"!==this.getElementSettings("_ob_column_hoveranimator")?this.$element.removeClass("ob-is-hoveranimator"):this.$element.addClass("ob-is-hoveranimator")},routeWidgetStalkerCol:function(){this.isWidgetStalkerCol()||"yes"!==this.getElementSettings("_ob_bbad_is_stalker")?this.$element.removeClass("ob-is-stalker"):this.$element.addClass("ob-is-stalker")},routePseudoCol:function(){this.isPseudoCol()||"yes"!==this.getElementSettings("_ob_column_has_pseudo")?this.$element.removeClass("ob-is-pseudo"):this.$element.addClass("ob-is-pseudo")},doTeleporterEditor:function(){if("use-teleporter"===this.getElementSettings("_ob_teleporter_use")){var t=this.$element.find(".elementor-widget-wrap").first();if(t.length&&(t.wrapInner('<div class="widget-wrap-children" />'),t.find(".elementor-background-overlay").first().length&&t.find(".elementor-background-overlay").first().insertBefore(t.find(".elementor-background-overlay").first().parent())),"do-pass"===this.getElementSettings("_ob_teleporter_pass")){var o=this,s=this.$element,i=this.$element.attr("data-id");"no-tablet"===this.getElementSettings("_ob_teleporter_no_pass_tablet")&&this.$element.addClass("ob-tele-no-tablet"),"no-mobile"===this.getElementSettings("_ob_teleporter_no_pass_mobile")&&this.$element.addClass("ob-tele-no-mobile");var n="section"===this.getElementSettings("_ob_teleporter_pass_element")?this.$element.closest(".elementor-section"):this.$element.closest(".elementor-container");if(n.length){n.css("overflow","hidden");var r=this.getElementSettings("_ob_teleporter_pass_effect"),l='<div class="ob-teleporter-'+i+" ob-tele-eff-"+r+'" data-id-teleporter="'+i+'"><div class="ob-tele-overlay" style="background-color: '+this.getElementSettings("_ob_teleporter_overlay_color")+';"></div></div>';e(".ob-teleporter-"+i).length||this.$element.prepend(l),this.$element.off("mouseenter mouseleave"),this.$element.on("mouseenter mouseleave",(function(t){if("mouseenter"===t.type){if("no-tablet"===o.getElementSettings("_ob_teleporter_no_pass_tablet")&&"tablet"===elementorFrontend.getCurrentDeviceMode())return;if("no-mobile"===o.getElementSettings("_ob_teleporter_no_pass_mobile")&&"mobile"===elementorFrontend.getCurrentDeviceMode())return;if("do-pass"!==o.getElementSettings("_ob_teleporter_pass"))return;var r={"background-color":e(".ob-teleporter-"+i).css("background-color"),"background-image":e(".ob-teleporter-"+i).css("background-image"),"background-position":e(".ob-teleporter-"+i).css("background-position"),"background-size":e(".ob-teleporter-"+i).css("background-size"),"background-repeat":e(".ob-teleporter-"+i).css("background-repeat")};if("section"===o.getElementSettings("_ob_teleporter_pass_element")){var l=n.children().not(".elementor-container").detach();n.addClass("ob-tele-mom-hover").prepend(e(".ob-teleporter-"+i)),n.prepend(l)}else n.addClass("ob-tele-mom-hover").prepend(e(".ob-teleporter-"+i));e(".ob-teleporter-"+i).css(r).hide(),e(".ob-teleporter-"+i).addClass("ob-teleporter-hover").show()}else n.removeClass("ob-tele-mom-hover"),setTimeout((function(){e(".ob-teleporter-"+i).removeAttr("style").removeClass("ob-teleporter-hover"),s.prepend(e(".ob-teleporter-"+i))}),100)}))}}}},doTeleporter:function(){var t=e.parseJSON(this.$element.attr("data-settings"));if("use-teleporter"===t._ob_teleporter_use){var o=this.$element.find(".elementor-widget-wrap").first();o.length&&(o.wrapInner('<div class="widget-wrap-children" />'),o.find(".elementor-background-overlay").first().length&&o.find(".elementor-background-overlay").first().insertBefore(o.find(".elementor-background-overlay").first().parent()));var s=this.$element,i=this.$element.attr("data-id");if("no-tablet"===t._ob_teleporter_no_pass_tablet&&this.$element.addClass("ob-tele-no-tablet"),"no-mobile"===t._ob_teleporter_no_pass_mobile&&this.$element.addClass("ob-tele-no-mobile"),void 0!==t._ob_teleporter_link){var n=t._ob_teleporter_link;if(""===n.url)return;this.$element.off("click.obTeleporter"),this.$element.on("click.obTeleporter",(function(){n.is_external?window.open(n.url):location.href=n.url}))}if("do-pass"===t._ob_teleporter_pass){var r="section"===t._ob_teleporter_pass_element?this.$element.closest(".elementor-section"):this.$element.closest(".elementor-container");if(r.length){r.css("overflow","hidden");var l=t._ob_teleporter_pass_effect,a='<div class="ob-teleporter-'+i+" ob-tele-eff-"+l+'" data-id-teleporter="'+i+'"><div class="ob-tele-overlay" style="background-color: '+t._ob_teleporter_overlay_color+';"></div>';e(".ob-teleporter-"+i).length||this.$element.prepend(a),this.$element.off("mouseenter mouseleave"),this.$element.on("mouseenter",(function(){if(!("no-tablet"===t._ob_teleporter_no_pass_tablet&&"tablet"===elementorFrontend.getCurrentDeviceMode()||"no-mobile"===t._ob_teleporter_no_pass_mobile&&"mobile"===elementorFrontend.getCurrentDeviceMode())){var o={"background-color":e(".ob-teleporter-"+i).css("background-color"),"background-image":e(".ob-teleporter-"+i).css("background-image"),"background-position":e(".ob-teleporter-"+i).css("background-position"),"background-size":e(".ob-teleporter-"+i).css("background-size"),"background-repeat":e(".ob-teleporter-"+i).css("background-repeat")};if("section"===t._ob_teleporter_pass_element){var s=r.children().not(".elementor-container").detach();r.addClass("ob-tele-mom-hover").prepend(e(".ob-teleporter-"+i)),r.prepend(s)}else r.addClass("ob-tele-mom-hover").prepend(e(".ob-teleporter-"+i));e(".ob-teleporter-"+i).css(o).hide(),e(".ob-teleporter-"+i).show().addClass("ob-teleporter-hover")}})),this.$element.on("mouseleave",(function(){r.removeClass("ob-tele-mom-hover"),setTimeout((function(){e(".ob-teleporter-"+i).removeAttr("style").removeClass("ob-teleporter-hover"),s.prepend(e(".ob-teleporter-"+i))}),100)}))}}}}}),"search-form.default":elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initSearchCop()},onElementChange:function(e){"_ob_searchcop_srch_options"===e&&this.routeSearchCop()},initSearchCop:function(){this.routeSearchCop()},routeSearchCop:function(){var e=this.getElementSettings("_ob_searchcop_srch_options");if("post"===e||"page"===e){var t=this.$element.find(".elementor-search-form__container");if(!t.length)return;var o='<input type="hidden" name="post_type" value="'+e+'" />';t.prepend(o)}}}),"button.default":elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initButterButton()},isButterButton:function(){return this.$element.hasClass("ob-is-butterbutton")},onElementChange:function(e){"_ob_butterbutton_use_it"===e&&this.routeButterButton()},initButterButton:function(){this.isEdit&&"yes"===this.getElementSettings("_ob_butterbutton_use_it")&&this.$element.addClass("ob-is-butterbutton")},routeButterButton:function(){this.isButterButton()||"yes"!==this.getElementSettings("_ob_butterbutton_use_it")?this.$element.removeClass("ob-is-butterbutton"):this.$element.addClass("ob-is-butterbutton")}}),"image.default":elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initPhotoMorph()},isPhotoMorph:function(){return this.$element.hasClass("ob-photomorph")},onElementChange:function(e){"_ob_photomorph_use"===e&&this.routePhotoMorph()},initPhotoMorph:function(){this.isEdit&&"yes"===this.getElementSettings("_ob_photomorph_use")&&this.$element.addClass("ob-photomorph")},routePhotoMorph:function(){this.isPhotoMorph()||"yes"!==this.getElementSettings("_ob_photomorph_use")?this.$element.removeClass("ob-photomorph"):this.$element.addClass("ob-photomorph")}}),"post-comments.theme_comments":elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initCommentz()},isCommentz:function(){return this.$element.hasClass("ob-commentz")},onElementChange:function(e){"_ob_commentz_use"===e&&this.routeCommentz()},initCommentz:function(){this.isEdit&&"yes"===this.getElementSettings("_ob_commentz_use")&&this.$element.addClass("ob-commentz")},routeCommentz:function(){this.isCommentz()||"yes"!==this.getElementSettings("_ob_commentz_use")?this.$element.removeClass("ob-commentz"):this.$element.addClass("ob-commentz")}}),"spacer.default":elementorModules.frontend.handlers.Base.extend({onInit:function(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments),this.initSpaceRat()},isSpaceRat:function(){return this.$element.hasClass("ob-spacerat")},onElementChange:function(e){"_ob_spacerat_use"===e&&this.routeSpaceRat()},initSpaceRat:function(){if(this.isEdit&&"yes"===this.getElementSettings("_ob_spacerat_use")&&this.$element.addClass("ob-spacerat"),!this.isEdit&&"yes"===this.getElementSettings("_ob_spacerat_use")){var t=e.parseJSON(this.$element.attr("data-settings"));if(void 0!==t._ob_spacerat_link){var o=t._ob_spacerat_link;if(""===o.url)return;this.$element.off("click.obSpacerat"),this.$element.on("click.obSpacerat",(function(){o.is_external?window.open(o.url):location.href=o.url}))}}},routeSpaceRat:function(){this.isSpaceRat()||"yes"!==this.getElementSettings("_ob_spacerat_use")?this.$element.removeClass("ob-spacerat"):this.$element.addClass("ob-spacerat")}})};e.each(n,(function(e,t){elementorFrontend.hooks.addAction("frontend/element_ready/"+e,(function(e){elementorFrontend.elementsHandler.addHandler(t,{$element:e})}))}))}));var s=function(t,o){var s,i=e(".elementor-element-"+t),n=e(".elementor-element-"+t+" .swiper-container").first(),r=n.parent().parent().find("nav.glider-controller"),l={allowTouchMove:"yes"===o.allowTouchMove,autoHeight:"yes"===o.autoheight,effect:o.effect,loop:o.loop,direction:"fade"===o.effect?"horizontal":o.direction,parallax:"yes"===o.parallax,speed:o.speed,breakpoints:"yes"===o.allowMultiSlides&&o.breakpoints,navigation:{nextEl:".elementor-element-"+t+" .swiper-button-next",prevEl:".elementor-element-"+t+" .swiper-button-prev"},pagination:{el:".elementor-element-"+t+" .swiper-pagination",type:o.pagination_type,clickable:!0},autoplay:o.autoplay,watchOverflow:!0};if("undefined"==typeof Swiper){new(0,elementorFrontend.utils.swiper)(n,l).then((e=>{s=e}))}else s=new Swiper(n,l);n.find('[class*="glider-control"]').on("click",(function(t){if(void 0!==e(this).data("gotoslide"))s.slideTo(parseInt(e(this).data("gotoslide")));else{var o=parseInt(e(this).attr("class").match(/glider-control-(\d+)/)[1]);o>0&&s.slideTo(o)}t.preventDefault()})),r.find('[class*="glider-control"]').on("click",(function(t){if(void 0!==e(this).data("gotoslide"))s.slideTo(parseInt(e(this).data("gotoslide")));else{var o=parseInt(e(this).attr("class").match(/glider-control-(\d+)/)[1]);o>0&&s.slideTo(o)}t.preventDefault()})),i.css("visibility","visible")}}(jQuery,window);
assets/js/ooohboi-steroids.js CHANGED
@@ -48,7 +48,7 @@
48
  if( changedProp === '_ob_allow_hoveranimator' ) {
49
  this.routeHoverAnimator();
50
  }
51
- if( [ '_ob_hoveranimator_opacity_hover', '_ob_hoveranimator_y_hover', '_ob_hoveranimator_x_hover', '_ob_hoveranimator_rot_hover', '_ob_hoveranimator_scalex_hover', '_ob_hoveranimator_scaley_hover', '_ob_hoveranimator_blur_hover' ].indexOf( changedProp ) !== -1
52
  && this.isHoverAnimator() ) {
53
  this.doHoverAnimator();
54
  }
@@ -100,11 +100,13 @@
100
  var parent_column = myself.parent().closest( '.ob-is-hoveranimator' );
101
  if( parent_column.length ) {
102
  var col_id = parent_column.data( 'id' );
103
- var opacity, pos_y, pos_x, rot, scale_y, scale_x, blur, el_settingz;
104
  if( this.isEdit ) {
105
  opacity = this.getElementSettings( '_ob_hoveranimator_opacity_hover' );
106
- pos_y = this.getElementSettings( '_ob_hoveranimator_y_hover' );
 
107
  pos_x = this.getElementSettings( '_ob_hoveranimator_x_hover' );
 
108
  rot = this.getElementSettings( '_ob_hoveranimator_rot_hover' );
109
  scale_x = this.getElementSettings( '_ob_hoveranimator_scalex_hover' );
110
  scale_y = this.getElementSettings( '_ob_hoveranimator_scaley_hover' );
@@ -113,17 +115,25 @@
113
  el_settingz = $.parseJSON( myself.attr( 'data-settings' ) ); // get from JSON
114
  opacity = el_settingz._ob_hoveranimator_opacity_hover;
115
  pos_y = el_settingz._ob_hoveranimator_y_hover;
 
116
  pos_x = el_settingz._ob_hoveranimator_x_hover;
 
117
  rot = el_settingz._ob_hoveranimator_rot_hover;
118
  scale_x = el_settingz._ob_hoveranimator_scalex_hover;
119
  scale_y = el_settingz._ob_hoveranimator_scaley_hover;
120
  blur = el_settingz._ob_hoveranimator_blur_hover;
121
  }
 
 
 
 
 
 
122
 
123
  var hover_css = {
124
  'opacity': opacity.size,
125
- 'top': pos_y.size + pos_y.unit,
126
- 'left': pos_x.size + pos_x.unit,
127
  'transform': 'rotate(' + rot.size + 'deg) scaleX(' + scale_x.size + ') scaleY(' + scale_y.size + ')',
128
  'filter': 'blur(' + blur.size + blur.unit + ')'
129
  };
@@ -416,6 +426,10 @@
416
  isWidgetStalkerCol: function() {
417
  return this.$element.hasClass( 'ob-is-stalker' );
418
  },
 
 
 
 
419
  initColumnExtends: function() {
420
  /* Teleporter */
421
  if( this.isEdit && 'use-teleporter' === this.getElementSettings( '_ob_teleporter_use' ) ) {
@@ -435,7 +449,10 @@
435
  if( this.isEdit && 'yes' === this.getElementSettings( '_ob_bbad_is_stalker' ) ) {
436
  this.$element.addClass( 'ob-is-stalker' );
437
  }
438
-
 
 
 
439
  },
440
  onElementChange: function( changedProp ) {
441
 
@@ -460,6 +477,10 @@
460
  if( changedProp === '_ob_bbad_is_stalker' ) {
461
  this.routeWidgetStalkerCol();
462
  }
 
 
 
 
463
 
464
  },
465
  /* Hoveranimator */
@@ -472,6 +493,11 @@
472
  if( ! this.isWidgetStalkerCol() && 'yes' === this.getElementSettings( '_ob_bbad_is_stalker' ) ) this.$element.addClass( 'ob-is-stalker' );
473
  else this.$element.removeClass( 'ob-is-stalker' );
474
  },
 
 
 
 
 
475
  /* Teleporter */
476
  doTeleporterEditor: function() {
477
 
48
  if( changedProp === '_ob_allow_hoveranimator' ) {
49
  this.routeHoverAnimator();
50
  }
51
+ if( [ '_ob_hoveranimator_opacity_hover', '_ob_hoveranimator_y_hover', '_ob_hoveranimator_y_hover_alt', '_ob_hoveranimator_x_hover', '_ob_hoveranimator_x_hover_alt', '_ob_hoveranimator_rot_hover', '_ob_hoveranimator_scalex_hover', '_ob_hoveranimator_scaley_hover', '_ob_hoveranimator_blur_hover' ].indexOf( changedProp ) !== -1
52
  && this.isHoverAnimator() ) {
53
  this.doHoverAnimator();
54
  }
100
  var parent_column = myself.parent().closest( '.ob-is-hoveranimator' );
101
  if( parent_column.length ) {
102
  var col_id = parent_column.data( 'id' );
103
+ var opacity, pos_y, pos_y_alt, pos_x, pos_x_alt, rot, scale_y, scale_x, blur, el_settingz, top_alt, left_alt;
104
  if( this.isEdit ) {
105
  opacity = this.getElementSettings( '_ob_hoveranimator_opacity_hover' );
106
+ pos_y = this.getElementSettings( '_ob_hoveranimator_y_hover' );
107
+ pos_y_alt = this.getElementSettings( '_ob_hoveranimator_y_hover_alt' );
108
  pos_x = this.getElementSettings( '_ob_hoveranimator_x_hover' );
109
+ pos_x_alt = this.getElementSettings( '_ob_hoveranimator_x_hover_alt' );
110
  rot = this.getElementSettings( '_ob_hoveranimator_rot_hover' );
111
  scale_x = this.getElementSettings( '_ob_hoveranimator_scalex_hover' );
112
  scale_y = this.getElementSettings( '_ob_hoveranimator_scaley_hover' );
115
  el_settingz = $.parseJSON( myself.attr( 'data-settings' ) ); // get from JSON
116
  opacity = el_settingz._ob_hoveranimator_opacity_hover;
117
  pos_y = el_settingz._ob_hoveranimator_y_hover;
118
+ pos_y_alt = el_settingz._ob_hoveranimator_y_hover_alt;
119
  pos_x = el_settingz._ob_hoveranimator_x_hover;
120
+ pos_x_alt = el_settingz._ob_hoveranimator_x_hover_alt;
121
  rot = el_settingz._ob_hoveranimator_rot_hover;
122
  scale_x = el_settingz._ob_hoveranimator_scalex_hover;
123
  scale_y = el_settingz._ob_hoveranimator_scaley_hover;
124
  blur = el_settingz._ob_hoveranimator_blur_hover;
125
  }
126
+
127
+ // alt values chckpoint
128
+ if( '' != $.trim( pos_x_alt ) && undefined !== pos_x_alt ) left_alt = 'calc(' + pos_x_alt + ')';
129
+ else left_alt = pos_x.size + pos_x.unit;
130
+ if( '' != $.trim( pos_y_alt ) && undefined !== pos_y_alt ) top_alt = 'calc(' + pos_y_alt + ')';
131
+ else top_alt = pos_y.size + pos_y.unit;
132
 
133
  var hover_css = {
134
  'opacity': opacity.size,
135
+ 'top': top_alt,
136
+ 'left': left_alt,
137
  'transform': 'rotate(' + rot.size + 'deg) scaleX(' + scale_x.size + ') scaleY(' + scale_y.size + ')',
138
  'filter': 'blur(' + blur.size + blur.unit + ')'
139
  };
426
  isWidgetStalkerCol: function() {
427
  return this.$element.hasClass( 'ob-is-stalker' );
428
  },
429
+ /* Pseudo */
430
+ isPseudoCol: function() {
431
+ return this.$element.hasClass( 'ob-is-pseudo' );
432
+ },
433
  initColumnExtends: function() {
434
  /* Teleporter */
435
  if( this.isEdit && 'use-teleporter' === this.getElementSettings( '_ob_teleporter_use' ) ) {
449
  if( this.isEdit && 'yes' === this.getElementSettings( '_ob_bbad_is_stalker' ) ) {
450
  this.$element.addClass( 'ob-is-stalker' );
451
  }
452
+ /* Pseudo */
453
+ if( this.isEdit && 'yes' === this.getElementSettings( '_ob_column_has_pseudo' ) ) {
454
+ this.$element.addClass( 'ob-is-pseudo' );
455
+ }
456
  },
457
  onElementChange: function( changedProp ) {
458
 
477
  if( changedProp === '_ob_bbad_is_stalker' ) {
478
  this.routeWidgetStalkerCol();
479
  }
480
+ /* Widget Stalker */
481
+ if( changedProp === '_ob_column_has_pseudo' ) {
482
+ this.routePseudoCol();
483
+ }
484
 
485
  },
486
  /* Hoveranimator */
493
  if( ! this.isWidgetStalkerCol() && 'yes' === this.getElementSettings( '_ob_bbad_is_stalker' ) ) this.$element.addClass( 'ob-is-stalker' );
494
  else this.$element.removeClass( 'ob-is-stalker' );
495
  },
496
+ /* Pseudo */
497
+ routePseudoCol: function() {
498
+ if( ! this.isPseudoCol() && 'yes' === this.getElementSettings( '_ob_column_has_pseudo' ) ) this.$element.addClass( 'ob-is-pseudo' );
499
+ else this.$element.removeClass( 'ob-is-pseudo' );
500
+ },
501
  /* Teleporter */
502
  doTeleporterEditor: function() {
503
 
controls/ooohboi-hover-animator.php CHANGED
@@ -328,14 +328,30 @@ class OoohBoi_Hover_Animator {
328
  'size' => 0,
329
  ],
330
  'selectors' => [
331
- '{{WRAPPER}}.ob-is-hoveranimal' => 'top: {{SIZE}}{{UNIT}};',
332
  ],
333
  'condition' => [
 
334
  '_ob_allow_hoveranimator' => 'yes',
335
  ],
336
  ]
337
  );
338
- // --------------------------------------------------------------------------------------------- CONTROL OFFSET TOP _hover
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
339
  $element->add_control(
340
  '_ob_hoveranimator_y_hover',
341
  [
@@ -357,11 +373,25 @@ class OoohBoi_Hover_Animator {
357
  'size' => 0,
358
  ],
359
  'condition' => [
360
- '_ob_allow_hoveranimator' => 'yes',
 
361
  ],
362
  'frontend_available' => true,
363
  ]
364
  );
 
 
 
 
 
 
 
 
 
 
 
 
 
365
  // --------------------------------------------------------------------------------------------- CONTROL Offset Top duration
366
  $element->add_control(
367
  '_ob_hoveranimator_y_duration',
@@ -483,10 +513,26 @@ class OoohBoi_Hover_Animator {
483
  '{{WRAPPER}}.ob-is-hoveranimal' => 'left: {{SIZE}}{{UNIT}};',
484
  ],
485
  'condition' => [
 
486
  '_ob_allow_hoveranimator' => 'yes',
487
  ],
488
  ]
489
  );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
490
  // --------------------------------------------------------------------------------------------- CONTROL OFFSET LEFT _hover
491
  $element->add_control(
492
  '_ob_hoveranimator_x_hover',
@@ -508,6 +554,20 @@ class OoohBoi_Hover_Animator {
508
  'unit' => 'px',
509
  'size' => 0,
510
  ],
 
 
 
 
 
 
 
 
 
 
 
 
 
 
511
  'condition' => [
512
  '_ob_allow_hoveranimator' => 'yes',
513
  ],
328
  'size' => 0,
329
  ],
330
  'selectors' => [
331
+ '{{WRAPPER}}.ob-is-hoveranimal' => 'top: {{SIZE}}{{UNIT}};',
332
  ],
333
  'condition' => [
334
+ '_ob_hoveranimator_y_alt' => '',
335
  '_ob_allow_hoveranimator' => 'yes',
336
  ],
337
  ]
338
  );
339
+ // --------------------------------------------------------------------------------------------- CONTROL CALC OFFSET TOP
340
+ $element->add_control(
341
+ '_ob_hoveranimator_y_alt',
342
+ [
343
+ 'label' => __( 'Calc Offset Top Normal', 'ooohboi-steroids' ),
344
+ 'description' => __( 'Enter CSS calc value only! Like: 100% - 50px or 100% + 2em', 'ooohboi-steroids' ),
345
+ 'type' => Controls_Manager::TEXT,
346
+ 'selectors' => [
347
+ '{{WRAPPER}}.ob-is-hoveranimal' => 'top: calc({{VALUE}});',
348
+ ],
349
+ 'condition' => [
350
+ '_ob_allow_hoveranimator' => 'yes',
351
+ ],
352
+ ]
353
+ );
354
+ // --------------------------------------------------------------------------------------------- CONTROL OFFSET TOP HOVER
355
  $element->add_control(
356
  '_ob_hoveranimator_y_hover',
357
  [
373
  'size' => 0,
374
  ],
375
  'condition' => [
376
+ '_ob_hoveranimator_y_hover_alt' => '',
377
+ '_ob_allow_hoveranimator' => 'yes',
378
  ],
379
  'frontend_available' => true,
380
  ]
381
  );
382
+ // --------------------------------------------------------------------------------------------- CONTROL CALC OFFSET TOP HOVER
383
+ $element->add_control(
384
+ '_ob_hoveranimator_y_hover_alt',
385
+ [
386
+ 'label' => __( 'Calc Offset Top Hover', 'ooohboi-steroids' ),
387
+ 'description' => __( 'Enter CSS calc value only! Like: 100% - 50px or 100% + 2em', 'ooohboi-steroids' ),
388
+ 'type' => Controls_Manager::TEXT,
389
+ 'condition' => [
390
+ '_ob_allow_hoveranimator' => 'yes',
391
+ ],
392
+ 'frontend_available' => true,
393
+ ]
394
+ );
395
  // --------------------------------------------------------------------------------------------- CONTROL Offset Top duration
396
  $element->add_control(
397
  '_ob_hoveranimator_y_duration',
513
  '{{WRAPPER}}.ob-is-hoveranimal' => 'left: {{SIZE}}{{UNIT}};',
514
  ],
515
  'condition' => [
516
+ '_ob_hoveranimator_x_alt' => '',
517
  '_ob_allow_hoveranimator' => 'yes',
518
  ],
519
  ]
520
  );
521
+ // --------------------------------------------------------------------------------------------- CONTROL CALC OFFSET TOP
522
+ $element->add_control(
523
+ '_ob_hoveranimator_x_alt',
524
+ [
525
+ 'label' => __( 'Calc Offset Left Normal', 'ooohboi-steroids' ),
526
+ 'description' => __( 'Enter CSS calc value only! Like: 100% - 50px or 100% + 2em', 'ooohboi-steroids' ),
527
+ 'type' => Controls_Manager::TEXT,
528
+ 'selectors' => [
529
+ '{{WRAPPER}}.ob-is-hoveranimal' => 'left: calc({{VALUE}});',
530
+ ],
531
+ 'condition' => [
532
+ '_ob_allow_hoveranimator' => 'yes',
533
+ ],
534
+ ]
535
+ );
536
  // --------------------------------------------------------------------------------------------- CONTROL OFFSET LEFT _hover
537
  $element->add_control(
538
  '_ob_hoveranimator_x_hover',
554
  'unit' => 'px',
555
  'size' => 0,
556
  ],
557
+ 'condition' => [
558
+ '_ob_hoveranimator_x_hover_alt' => '',
559
+ '_ob_allow_hoveranimator' => 'yes',
560
+ ],
561
+ 'frontend_available' => true,
562
+ ]
563
+ );
564
+ // --------------------------------------------------------------------------------------------- CONTROL CALC OFFSET TOP HOVER
565
+ $element->add_control(
566
+ '_ob_hoveranimator_x_hover_alt',
567
+ [
568
+ 'label' => __( 'Calc Offset Left Hover', 'ooohboi-steroids' ),
569
+ 'description' => __( 'Enter CSS calc value only! Like: 100% - 50px or 100% + 2em', 'ooohboi-steroids' ),
570
+ 'type' => Controls_Manager::TEXT,
571
  'condition' => [
572
  '_ob_allow_hoveranimator' => 'yes',
573
  ],
controls/ooohboi-pseudo.php ADDED
@@ -0,0 +1,1335 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ use Elementor\Controls_Manager;
3
+ use Elementor\Controls_Stack;
4
+ use Elementor\Element_Base;
5
+ use Elementor\Group_Control_Background;
6
+ use Elementor\Group_Control_Border;
7
+ use Elementor\Group_Control_Css_Filter;
8
+
9
+ if ( ! defined( 'ABSPATH' ) ) {
10
+ exit; // Exit if accessed directly.
11
+ }
12
+
13
+ /**
14
+ * Main OoohBoi Pseudo Class
15
+ *
16
+ * The main class that initiates and runs the plugin.
17
+ *
18
+ * @since 1.7.1
19
+ */
20
+ class OoohBoi_Pseudo {
21
+
22
+ /**
23
+ * Initialize
24
+ *
25
+ * @since 1.7.1
26
+ *
27
+ * @access public
28
+ */
29
+ public static function init() {
30
+
31
+ add_action( 'elementor/element/column/section_advanced/after_section_end', [ __CLASS__, 'ooohboi_handle_pseudo' ] );
32
+
33
+ add_action( 'elementor/frontend/column/before_render', function( Element_Base $element ) {
34
+
35
+ if ( \Elementor\Plugin::instance()->editor->is_edit_mode() ) return;
36
+ $settings = $element->get_settings_for_display();
37
+
38
+ if ( isset( $settings[ '_ob_column_has_pseudo' ] ) && 'yes' === $settings[ '_ob_column_has_pseudo' ] ) {
39
+
40
+ $element->add_render_attribute( '_wrapper', [
41
+ 'class' => 'ob-is-pseudo'
42
+ ] );
43
+
44
+ }
45
+
46
+ } );
47
+
48
+
49
+ }
50
+
51
+ public static function ooohboi_handle_pseudo( Element_Base $element ) {
52
+
53
+ // create panel
54
+ $element->start_controls_section(
55
+ '_ob_pseudo_section_title',
56
+ [
57
+ 'label' => 'P S E U D O',
58
+ 'tab' => Controls_Manager::TAB_ADVANCED,
59
+ ]
60
+ );
61
+ // ------------------------------------------------------------------------- CONTROL: Use Pseudo for Section and Columns
62
+ $element->add_control(
63
+ '_ob_column_has_pseudo',
64
+ [
65
+ 'label' => __( 'Enable Pseudo?', 'ooohboi-steroids' ),
66
+ 'description' => __( 'This is how you can create and manage :before and :after pseudo elements for this column', 'ooohboi-steroids' ),
67
+ 'separator' => 'before',
68
+ 'type' => Controls_Manager::SWITCHER,
69
+ 'label_on' => __( 'Yes', 'ooohboi-steroids' ),
70
+ 'label_off' => __( 'No', 'ooohboi-steroids' ),
71
+ 'return_value' => 'yes',
72
+ 'default' => 'no',
73
+ 'frontend_available' => true,
74
+ ]
75
+ );
76
+
77
+ // --------------------------------------------------------------------------------------------- START 2 TABS Before & After
78
+ $element->start_controls_tabs( '_ob_pseudo_tabs' );
79
+
80
+ // --------------------------------------------------------------------------------------------- START TAB Before
81
+ $element->start_controls_tab(
82
+ '_ob_pseudo_tab_before',
83
+ [
84
+ 'label' => __( 'Before', 'ooohboi-steroids' ),
85
+ ]
86
+ );
87
+ // --------------------------------------------------------------------------------------------- CONTROL BACKGROUND
88
+ $element->add_group_control(
89
+ Group_Control_Background::get_type(),
90
+ [
91
+ 'name' => '_ob_pseudo_before_background',
92
+ 'selector' => '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before',
93
+ 'condition' => [
94
+ '_ob_column_has_pseudo' => 'yes',
95
+ ],
96
+ ]
97
+ );
98
+ // --------------------------------------------------------------------------------------------- CONTROL BACKGROUND OPACITY
99
+ $element->add_control(
100
+ '_ob_pseudo_before_bg_opacity',
101
+ [
102
+ 'label' => __( 'Opacity', 'ooohboi-steroids' ),
103
+ 'type' => Controls_Manager::SLIDER,
104
+ 'default' => [
105
+ 'size' => 1,
106
+ ],
107
+ 'range' => [
108
+ 'px' => [
109
+ 'max' => 1,
110
+ 'step' => 0.01,
111
+ ],
112
+ ],
113
+ 'selectors' => [
114
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => 'opacity: {{SIZE}};',
115
+ ],
116
+ 'condition' => [
117
+ '_ob_column_has_pseudo' => 'yes',
118
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
119
+ ],
120
+ ]
121
+ );
122
+ // --------------------------------------------------------------------------------------------- CONTROL FILTERS
123
+ $element->add_group_control(
124
+ Group_Control_Css_Filter::get_type(),
125
+ [
126
+ 'name' => '_ob_pseudo_before_bg_filters',
127
+ 'selector' => '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before',
128
+ 'condition' => [
129
+ '_ob_column_has_pseudo' => 'yes',
130
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
131
+ ],
132
+ ]
133
+ );
134
+ // --------------------------------------------------------------------------------------------- CONTROL BLEND MODE
135
+ $element->add_control(
136
+ '_ob_pseudo_before_bg_blend_mode',
137
+ [
138
+ 'label' => __( 'Blend Mode', 'ooohboi-steroids' ),
139
+ 'type' => Controls_Manager::SELECT,
140
+ 'options' => [
141
+ '' => __( 'Normal', 'ooohboi-steroids' ),
142
+ 'multiply' => 'Multiply',
143
+ 'screen' => 'Screen',
144
+ 'overlay' => 'Overlay',
145
+ 'darken' => 'Darken',
146
+ 'lighten' => 'Lighten',
147
+ 'color-dodge' => 'Color Dodge',
148
+ 'saturation' => 'Saturation',
149
+ 'color' => 'Color',
150
+ 'luminosity' => 'Luminosity',
151
+ ],
152
+ 'selectors' => [
153
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => 'mix-blend-mode: {{VALUE}}',
154
+ ],
155
+ 'condition' => [
156
+ '_ob_column_has_pseudo' => 'yes',
157
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
158
+ ],
159
+ ]
160
+ );
161
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER W H Y X Rot
162
+ $element->add_control(
163
+ '_ob_pseudo_before_popover_whyxrot',
164
+ [
165
+ 'label' => __( 'Position and Size', 'ooohboi-steroids' ),
166
+ 'type' => Controls_Manager::POPOVER_TOGGLE,
167
+ 'return_value' => 'yes',
168
+ 'frontend_available' => true,
169
+ 'condition' => [
170
+ '_ob_column_has_pseudo' => 'yes',
171
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
172
+ ],
173
+ ]
174
+ );
175
+
176
+ $element->start_popover();
177
+
178
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER WIDTH
179
+ $element->add_responsive_control(
180
+ '_ob_pseudo_before_w',
181
+ [
182
+ 'label' => __( 'Width', 'ooohboi-steroids' ),
183
+ 'type' => Controls_Manager::SLIDER,
184
+ 'size_units' => [ 'px', '%' ],
185
+ 'range' => [
186
+ 'px' => [
187
+ 'min' => 0,
188
+ 'max' => 1000,
189
+ ],
190
+ '%' => [
191
+ 'min' => 0,
192
+ 'max' => 500,
193
+ ],
194
+ ],
195
+ 'default' => [
196
+ 'unit' => '%',
197
+ 'size' => 50,
198
+ ],
199
+ 'device_args' => [
200
+ Controls_Stack::RESPONSIVE_TABLET => [
201
+ 'condition' => [
202
+ '_ob_column_has_pseudo' => 'yes',
203
+ '_ob_pseudo_before_w_alt_tablet' => '',
204
+ ],
205
+ ],
206
+ Controls_Stack::RESPONSIVE_MOBILE => [
207
+ 'condition' => [
208
+ '_ob_column_has_pseudo' => 'yes',
209
+ '_ob_pseudo_before_w_alt_mobile' => '',
210
+ ],
211
+ ],
212
+ ],
213
+ 'selectors' => [
214
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => 'width: {{SIZE}}{{UNIT}};',
215
+ ],
216
+ 'condition' => [
217
+ '_ob_column_has_pseudo' => 'yes',
218
+ '_ob_pseudo_before_w_alt' => '',
219
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
220
+ ],
221
+ ]
222
+ );
223
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER WIDTH - Alternative
224
+ $element->add_responsive_control(
225
+ '_ob_pseudo_before_w_alt',
226
+ [
227
+ 'label' => __( 'Calc Width', 'ooohboi-steroids' ),
228
+ 'description' => __( 'Enter CSS calc value only! Like: 100% - 50px or 100% + 2em', 'ooohboi-steroids' ),
229
+ 'type' => Controls_Manager::TEXT,
230
+ 'selectors' => [
231
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => 'width: calc({{VALUE}});',
232
+ ],
233
+ 'condition' => [
234
+ '_ob_column_has_pseudo' => 'yes',
235
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
236
+ ],
237
+ ]
238
+ );
239
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER HEIGHT
240
+ $element->add_responsive_control(
241
+ '_ob_pseudo_before_h',
242
+ [
243
+ 'label' => __( 'Height', 'ooohboi-steroids' ),
244
+ 'type' => Controls_Manager::SLIDER,
245
+ 'size_units' => [ 'px', '%' ],
246
+ 'range' => [
247
+ 'px' => [
248
+ 'min' => 0,
249
+ 'max' => 1000,
250
+ ],
251
+ '%' => [
252
+ 'min' => 0,
253
+ 'max' => 500,
254
+ ],
255
+ ],
256
+ 'default' => [
257
+ 'unit' => '%',
258
+ 'size' => 50,
259
+ ],
260
+ 'device_args' => [
261
+ Controls_Stack::RESPONSIVE_TABLET => [
262
+ 'condition' => [
263
+ '_ob_column_has_pseudo' => 'yes',
264
+ '_ob_pseudo_before_h_alt_tablet' => '',
265
+ ],
266
+ ],
267
+ Controls_Stack::RESPONSIVE_MOBILE => [
268
+ 'condition' => [
269
+ '_ob_column_has_pseudo' => 'yes',
270
+ '_ob_pseudo_before_h_alt_mobile' => '',
271
+ ],
272
+ ],
273
+ ],
274
+ 'selectors' => [
275
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => 'height: {{SIZE}}{{UNIT}};',
276
+ ],
277
+ 'condition' => [
278
+ '_ob_column_has_pseudo' => 'yes',
279
+ '_ob_pseudo_before_h_alt' => '',
280
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
281
+ ],
282
+ ]
283
+ );
284
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER HEIGHT - Alternative
285
+ $element->add_responsive_control(
286
+ '_ob_pseudo_before_h_alt',
287
+ [
288
+ 'label' => __( 'Calc Height', 'ooohboi-steroids' ),
289
+ 'description' => __( 'Enter CSS calc value only! Like: 45% + 85px or 100% - 3em', 'ooohboi-steroids' ),
290
+ 'type' => Controls_Manager::TEXT,
291
+ 'selectors' => [
292
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => 'height: calc({{VALUE}});',
293
+ ],
294
+ 'condition' => [
295
+ '_ob_column_has_pseudo' => 'yes',
296
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
297
+ ],
298
+ ]
299
+ );
300
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER OFFSET TOP
301
+ $element->add_responsive_control(
302
+ '_ob_pseudo_before_y',
303
+ [
304
+ 'label' => __( 'Offset Top', 'ooohboi-steroids' ),
305
+ 'type' => Controls_Manager::SLIDER,
306
+ 'size_units' => [ 'px', '%' ],
307
+ 'range' => [
308
+ 'px' => [
309
+ 'min' => -500,
310
+ 'max' => 500,
311
+ ],
312
+ '%' => [
313
+ 'min' => -500,
314
+ 'max' => 500,
315
+ ],
316
+ ],
317
+ 'default' => [
318
+ 'unit' => '%',
319
+ 'size' => 0,
320
+ ],
321
+ 'device_args' => [
322
+ Controls_Stack::RESPONSIVE_TABLET => [
323
+ 'condition' => [
324
+ '_ob_column_has_pseudo' => 'yes',
325
+ '_ob_pseudo_before_y_alt_tablet' => '',
326
+ ],
327
+ ],
328
+ Controls_Stack::RESPONSIVE_MOBILE => [
329
+ 'condition' => [
330
+ '_ob_column_has_pseudo' => 'yes',
331
+ '_ob_pseudo_before_y_alt_mobile' => '',
332
+ ],
333
+ ],
334
+ ],
335
+ 'selectors' => [
336
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => 'top: {{SIZE}}{{UNIT}};',
337
+ ],
338
+ 'condition' => [
339
+ '_ob_column_has_pseudo' => 'yes',
340
+ '_ob_pseudo_before_y_alt' => '',
341
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
342
+ ],
343
+ ]
344
+ );
345
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER OFFSET TOP - Alternative
346
+ $element->add_responsive_control(
347
+ '_ob_pseudo_before_y_alt',
348
+ [
349
+ 'label' => __( 'Calc Offset Top', 'ooohboi-steroids' ),
350
+ 'description' => __( 'Enter CSS calc value only! Like: 100% - 50px or 100% + 2em', 'ooohboi-steroids' ),
351
+ 'type' => Controls_Manager::TEXT,
352
+ 'selectors' => [
353
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => 'top: calc({{VALUE}});',
354
+ ],
355
+ 'condition' => [
356
+ '_ob_column_has_pseudo' => 'yes',
357
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
358
+ ],
359
+ ]
360
+ );
361
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER OFFSET LEFT
362
+ $element->add_responsive_control(
363
+ '_ob_pseudo_before_x',
364
+ [
365
+ 'label' => __( 'Offset Left', 'ooohboi-steroids' ),
366
+ 'type' => Controls_Manager::SLIDER,
367
+ 'size_units' => [ 'px', '%' ],
368
+ 'range' => [
369
+ 'px' => [
370
+ 'min' => -500,
371
+ 'max' => 500,
372
+ ],
373
+ '%' => [
374
+ 'min' => -500,
375
+ 'max' => 500,
376
+ ],
377
+ ],
378
+ 'default' => [
379
+ 'unit' => '%',
380
+ 'size' => 0,
381
+ ],
382
+ 'device_args' => [
383
+ Controls_Stack::RESPONSIVE_TABLET => [
384
+ 'condition' => [
385
+ '_ob_column_has_pseudo' => 'yes',
386
+ '_ob_pseudo_before_x_alt_tablet' => '',
387
+ ],
388
+ ],
389
+ Controls_Stack::RESPONSIVE_MOBILE => [
390
+ 'condition' => [
391
+ '_ob_column_has_pseudo' => 'yes',
392
+ '_ob_pseudo_before_x_alt_mobile' => '',
393
+ ],
394
+ ],
395
+ ],
396
+ 'selectors' => [
397
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => 'left: {{SIZE}}{{UNIT}};',
398
+ ],
399
+ 'condition' => [
400
+ '_ob_column_has_pseudo' => 'yes',
401
+ '_ob_pseudo_before_x_alt' => '',
402
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
403
+ ],
404
+ ]
405
+ );
406
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER OFFSET LEFT - Alternative
407
+ $element->add_responsive_control(
408
+ '_ob_pseudo_before_x_alt',
409
+ [
410
+ 'label' => __( 'Calc Offset Left', 'ooohboi-steroids' ),
411
+ 'description' => __( 'Enter CSS calc value only! Like: 45% + 85px or 100% - 3em', 'ooohboi-steroids' ),
412
+ 'type' => Controls_Manager::TEXT,
413
+ 'selectors' => [
414
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => 'left: calc({{VALUE}});',
415
+ ],
416
+ 'condition' => [
417
+ '_ob_column_has_pseudo' => 'yes',
418
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
419
+ ],
420
+ ]
421
+ );
422
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER ROTATION
423
+ # NOTE : this is the hack. Elementor does not do well with 'deg' when speaking of responsiveness!
424
+ $element->add_responsive_control(
425
+ '_ob_pseudo_before_rot',
426
+ [
427
+ 'label' => __( 'Rotate', 'ooohboi-steroids' ),
428
+ 'type' => Controls_Manager::SLIDER,
429
+ 'range' => [
430
+ 'px' => [
431
+ 'min' => 0,
432
+ 'max' => 360,
433
+ 'step' => 5,
434
+ ],
435
+ ],
436
+ 'default' => [
437
+ 'size' => 0,
438
+ ],
439
+ 'selectors' => [
440
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => 'transform: rotate({{SIZE}}deg);',
441
+ ],
442
+ 'condition' => [
443
+ '_ob_column_has_pseudo' => 'yes',
444
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
445
+ ],
446
+ ]
447
+ );
448
+
449
+ $element->end_popover(); // popover end
450
+
451
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER BORDER
452
+ $element->add_control(
453
+ '_ob_pseudo_before_popover_border',
454
+ [
455
+ 'label' => __( 'Border', 'ooohboi-steroids' ),
456
+ 'type' => Controls_Manager::POPOVER_TOGGLE,
457
+ 'return_value' => 'yes',
458
+ 'frontend_available' => true,
459
+ 'condition' => [
460
+ '_ob_column_has_pseudo' => 'yes',
461
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
462
+ ],
463
+ ]
464
+ );
465
+
466
+ $element->start_popover();
467
+
468
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER BORDER ALL
469
+ $element->add_group_control(
470
+ Group_Control_Border::get_type(),
471
+ [
472
+ 'name' => '_ob_pseudo_before_borders',
473
+ 'label' => __( 'Border', 'ooohboi-steroids' ),
474
+ 'selector' => '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before',
475
+ 'condition' => [
476
+ '_ob_column_has_pseudo' => 'yes',
477
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
478
+ ],
479
+ ]
480
+ );
481
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER BORDER RADIUS
482
+ $element->add_responsive_control(
483
+ '_ob_pseudo_before_border_rad',
484
+ [
485
+ 'label' => __( 'Border Radius', 'ooohboi-steroids' ),
486
+ 'type' => Controls_Manager::DIMENSIONS,
487
+ 'size_units' => [ 'px', '%' ],
488
+ 'selectors' => [
489
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
490
+ ],
491
+ 'condition' => [
492
+ '_ob_column_has_pseudo' => 'yes',
493
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
494
+ ],
495
+ ]
496
+ );
497
+
498
+ $element->end_popover(); // popover BORdER end
499
+
500
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER MASQ
501
+ $element->add_control(
502
+ '_ob_pseudo_before_popover_masq',
503
+ [
504
+ 'label' => __( 'Before Mask', 'ooohboi-steroids' ),
505
+ 'type' => Controls_Manager::POPOVER_TOGGLE,
506
+ 'return_value' => 'yes',
507
+ 'frontend_available' => true,
508
+ 'condition' => [
509
+ '_ob_column_has_pseudo' => 'yes',
510
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
511
+ ],
512
+ ]
513
+ );
514
+
515
+ $element->start_popover();
516
+
517
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER MASQ IMAGE
518
+ $element->add_responsive_control(
519
+ '_ob_pseudo_before_mask_img',
520
+ [
521
+ 'label' => __( 'Choose Image Mask', 'ooohboi-steroids' ),
522
+ 'description' => __( 'NOTE: Image Mask should be black-and-transparent SVG file! Anything that’s 100% black in the image mask with be completely visible, anything that’s transparent will be completely hidden.', 'ooohboi-steroids' ),
523
+ 'type' => Controls_Manager::MEDIA,
524
+ 'default' => [
525
+ 'url' => '',
526
+ ],
527
+ 'selectors' => [
528
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => '-webkit-mask-image: url("{{URL}}"); mask-image: url("{{URL}}"); -webkit-mask-mode: alpha; mask-mode: alpha;',
529
+ ],
530
+ 'condition' => [
531
+ '_ob_column_has_pseudo' => 'yes',
532
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
533
+ ],
534
+ ]
535
+ );
536
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER MASQ POSITION
537
+ $element->add_responsive_control(
538
+ '_ob_pseudo_before_mask_position',
539
+ [
540
+ 'label' => __( 'Mask position', 'ooohboi-steroids' ),
541
+ 'type' => Controls_Manager::SELECT,
542
+ 'default' => 'center center',
543
+ 'options' => [
544
+ '' => __( 'Default', 'ooohboi-steroids' ),
545
+ 'center center' => __( 'Center Center', 'ooohboi-steroids' ),
546
+ 'center left' => __( 'Center Left', 'ooohboi-steroids' ),
547
+ 'center right' => __( 'Center Right', 'ooohboi-steroids' ),
548
+ 'top center' => __( 'Top Center', 'ooohboi-steroids' ),
549
+ 'top left' => __( 'Top Left', 'ooohboi-steroids' ),
550
+ 'top right' => __( 'Top Right', 'ooohboi-steroids' ),
551
+ 'bottom center' => __( 'Bottom Center', 'ooohboi-steroids' ),
552
+ 'bottom left' => __( 'Bottom Left', 'ooohboi-steroids' ),
553
+ 'bottom right' => __( 'Bottom Right', 'ooohboi-steroids' ),
554
+ ],
555
+ 'selectors' => [
556
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => '-webkit-mask-position: {{VALUE}}; mask-position: {{VALUE}};',
557
+ ],
558
+ 'condition' => [
559
+ '_ob_column_has_pseudo' => 'yes',
560
+ '_ob_pseudo_before_mask_img[url]!' => '',
561
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
562
+ ],
563
+ ]
564
+ );
565
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER MASQ SIZE
566
+ $element->add_responsive_control(
567
+ '_ob_pseudo_before_mask_size',
568
+ [
569
+ 'label' => __( 'Mask size', 'ooohboi-steroids' ),
570
+ 'type' => Controls_Manager::SELECT,
571
+ 'default' => 'contain',
572
+ 'options' => [
573
+ '' => __( 'Default', 'ooohboi-steroids' ),
574
+ 'auto' => __( 'Auto', 'ooohboi-steroids' ),
575
+ 'cover' => __( 'Cover', 'ooohboi-steroids' ),
576
+ 'contain' => __( 'Contain', 'ooohboi-steroids' ),
577
+ 'initial' => __( 'Custom', 'ooohboi-steroids' ),
578
+ ],
579
+ 'selectors' => [
580
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => '-webkit-mask-size: {{VALUE}}; mask-size: {{VALUE}};',
581
+ ],
582
+ 'condition' => [
583
+ '_ob_column_has_pseudo' => 'yes',
584
+ '_ob_pseudo_before_mask_img[url]!' => '',
585
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
586
+ ],
587
+ ]
588
+ );
589
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER MASQ SIZE Custom
590
+ $element->add_responsive_control(
591
+ '_ob_pseudo_before_mask_size_width',
592
+ [
593
+ 'label' => __( 'Width', 'ooohboi-steroids' ),
594
+ 'type' => Controls_Manager::SLIDER,
595
+ 'size_units' => [ '%', 'px' ],
596
+ 'range' => [
597
+ 'px' => [
598
+ 'min' => 0,
599
+ 'max' => 1000,
600
+ ],
601
+ '%' => [
602
+ 'min' => 0,
603
+ 'max' => 300,
604
+ ],
605
+ ],
606
+ 'default' => [
607
+ 'size' => 100,
608
+ 'unit' => '%',
609
+ ],
610
+ 'selectors' => [
611
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => '-webkit-mask-size: {{SIZE}}{{UNIT}} auto; mask-size: {{SIZE}}{{UNIT}} auto;',
612
+ ],
613
+ 'condition' => [
614
+ '_ob_column_has_pseudo' => 'yes',
615
+ '_ob_pseudo_before_mask_size' => [ 'initial' ],
616
+ '_ob_pseudo_before_mask_img[url]!' => '',
617
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
618
+ ],
619
+ 'device_args' => [
620
+ Controls_Stack::RESPONSIVE_TABLET => [
621
+ 'selectors' => [
622
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => '-webkit-mask-size: {{SIZE}}{{UNIT}} auto; mask-size: {{SIZE}}{{UNIT}} auto;',
623
+ ],
624
+ 'condition' => [
625
+ '_ob_column_has_pseudo' => 'yes',
626
+ '_ob_pseudo_before_mask_size_tablet' => [ 'initial' ],
627
+ ],
628
+ ],
629
+ Controls_Stack::RESPONSIVE_MOBILE => [
630
+ 'selectors' => [
631
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => '-webkit-mask-size: {{SIZE}}{{UNIT}} auto; mask-size: {{SIZE}}{{UNIT}} auto;',
632
+ ],
633
+ 'condition' => [
634
+ '_ob_column_has_pseudo' => 'yes',
635
+ '_ob_pseudo_before_mask_size_mobile' => [ 'initial' ],
636
+ ],
637
+ ],
638
+ ],
639
+ ]
640
+ );
641
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER MASQ REPEAT
642
+ $element->add_responsive_control(
643
+ '_ob_pseudo_before_mask_repeat',
644
+ [
645
+ 'label' => __( 'Mask repeat', 'ooohboi-steroids' ),
646
+ 'type' => Controls_Manager::SELECT,
647
+ 'default' => 'no-repeat',
648
+ 'options' => [
649
+ 'no-repeat' => __( 'No-repeat', 'ooohboi-steroids' ),
650
+ 'repeat' => __( 'Repeat', 'ooohboi-steroids' ),
651
+ 'repeat-x' => __( 'Repeat-x', 'ooohboi-steroids' ),
652
+ 'repeat-y' => __( 'Repeat-y', 'ooohboi-steroids' ),
653
+ ],
654
+ 'selectors' => [
655
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => '-webkit-mask-repeat: {{VALUE}}; mask-repeat: {{VALUE}};',
656
+ ],
657
+ 'condition' => [
658
+ '_ob_column_has_pseudo' => 'yes',
659
+ '_ob_pseudo_before_mask_img[url]!' => '',
660
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
661
+ ],
662
+ ]
663
+ );
664
+
665
+ $element->end_popover(); // popover MASQ end
666
+
667
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER CLIP PATH since 1.6.4
668
+ $element->add_control(
669
+ '_ob_pseudo_before_clip_path',
670
+ [
671
+ 'label' => __( 'Clip path', 'ooohboi-steroids' ),
672
+ 'description' => sprintf(
673
+ __( 'Enter the full clip-path property! See the copy-paste examples at %sClippy%s', 'ooohboi-steroids' ),
674
+ '<a href="https://bennettfeely.com/clippy/" target="_blank">',
675
+ '</a>'
676
+ ),
677
+ 'default' => '',
678
+ 'type' => Controls_Manager::TEXTAREA,
679
+ 'rows' => 3,
680
+ 'selectors' => [
681
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => '{{VALUE}}',
682
+ ],
683
+ 'condition' => [
684
+ '_ob_column_has_pseudo' => 'yes',
685
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
686
+ ],
687
+ ]
688
+ );
689
+
690
+ // --------------------------------------------------------------------------------------------- CONTROL Z-INDeX
691
+ $element->add_control(
692
+ '_ob_pseudo_before_z_index',
693
+ [
694
+ 'label' => __( 'Z-Index', 'ooohboi-steroids' ),
695
+ 'type' => Controls_Manager::NUMBER,
696
+ 'min' => -9999,
697
+ 'default' => 0,
698
+ 'selectors' => [
699
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:before' => 'z-index: {{VALUE}};',
700
+ ],
701
+ 'label_block' => false,
702
+ 'condition' => [
703
+ '_ob_column_has_pseudo' => 'yes',
704
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
705
+ ],
706
+ ]
707
+ );
708
+
709
+ $element->end_controls_tab(); // Before tab end
710
+
711
+ // --------------------------------------------------------------------------------------------- START TAB After ------------------------------- >>>>>
712
+
713
+ $element->start_controls_tab(
714
+ '_ob_pseudo_tab_after',
715
+ [
716
+ 'label' => __( 'After', 'ooohboi-steroids' ),
717
+ ]
718
+ );
719
+
720
+ // --------------------------------------------------------------------------------------------- CONTROL BACKGROUND
721
+ $element->add_group_control(
722
+ Group_Control_Background::get_type(),
723
+ [
724
+ 'name' => '_ob_pseudo_after_background',
725
+ 'selector' => '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after',
726
+ 'condition' => [
727
+ '_ob_column_has_pseudo' => 'yes',
728
+ ],
729
+ ]
730
+ );
731
+ // --------------------------------------------------------------------------------------------- CONTROL BACKGROUND OPACITY
732
+ $element->add_control(
733
+ '_ob_pseudo_after_bg_opacity',
734
+ [
735
+ 'label' => __( 'Opacity', 'ooohboi-steroids' ),
736
+ 'type' => Controls_Manager::SLIDER,
737
+ 'default' => [
738
+ 'size' => 1,
739
+ ],
740
+ 'range' => [
741
+ 'px' => [
742
+ 'max' => 1,
743
+ 'step' => 0.01,
744
+ ],
745
+ ],
746
+ 'selectors' => [
747
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => 'opacity: {{SIZE}};',
748
+ ],
749
+ 'condition' => [
750
+ '_ob_column_has_pseudo' => 'yes',
751
+ '_ob_pseudo_after_background_background' => [ 'classic', 'gradient' ],
752
+ ],
753
+ ]
754
+ );
755
+ // --------------------------------------------------------------------------------------------- CONTROL FILTERS
756
+ $element->add_group_control(
757
+ Group_Control_Css_Filter::get_type(),
758
+ [
759
+ 'name' => '_ob_pseudo_after_bg_filters',
760
+ 'selector' => '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after',
761
+ 'condition' => [
762
+ '_ob_column_has_pseudo' => 'yes',
763
+ '_ob_pseudo_after_background_background' => [ 'classic', 'gradient' ],
764
+ ],
765
+ ]
766
+ );
767
+ // --------------------------------------------------------------------------------------------- CONTROL BLEND MODE
768
+ $element->add_control(
769
+ '_ob_pseudo_after_bg_blend_mode',
770
+ [
771
+ 'label' => __( 'Blend Mode', 'ooohboi-steroids' ),
772
+ 'type' => Controls_Manager::SELECT,
773
+ 'options' => [
774
+ '' => __( 'Normal', 'ooohboi-steroids' ),
775
+ 'multiply' => 'Multiply',
776
+ 'screen' => 'Screen',
777
+ 'overlay' => 'Overlay',
778
+ 'darken' => 'Darken',
779
+ 'lighten' => 'Lighten',
780
+ 'color-dodge' => 'Color Dodge',
781
+ 'saturation' => 'Saturation',
782
+ 'color' => 'Color',
783
+ 'luminosity' => 'Luminosity',
784
+ ],
785
+ 'selectors' => [
786
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => 'mix-blend-mode: {{VALUE}}',
787
+ ],
788
+ 'condition' => [
789
+ '_ob_column_has_pseudo' => 'yes',
790
+ '_ob_pseudo_after_background_background' => [ 'classic', 'gradient' ],
791
+ ],
792
+ ]
793
+ );
794
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER W H Y X Rot
795
+ $element->add_control(
796
+ '_ob_pseudo_after_popover_whyxrot',
797
+ [
798
+ 'label' => __( 'Position and Size', 'ooohboi-steroids' ),
799
+ 'type' => Controls_Manager::POPOVER_TOGGLE,
800
+ 'return_value' => 'yes',
801
+ 'frontend_available' => true,
802
+ 'condition' => [
803
+ '_ob_column_has_pseudo' => 'yes',
804
+ '_ob_pseudo_after_background_background' => [ 'classic', 'gradient' ],
805
+ ],
806
+ ]
807
+ );
808
+
809
+ $element->start_popover();
810
+
811
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER WIDTH
812
+ $element->add_responsive_control(
813
+ '_ob_pseudo_after_w',
814
+ [
815
+ 'label' => __( 'Width', 'ooohboi-steroids' ),
816
+ 'type' => Controls_Manager::SLIDER,
817
+ 'size_units' => [ 'px', '%' ],
818
+ 'range' => [
819
+ 'px' => [
820
+ 'min' => 0,
821
+ 'max' => 1000,
822
+ ],
823
+ '%' => [
824
+ 'min' => 0,
825
+ 'max' => 500,
826
+ ],
827
+ ],
828
+ 'default' => [
829
+ 'unit' => '%',
830
+ 'size' => 50,
831
+ ],
832
+ 'device_args' => [
833
+ Controls_Stack::RESPONSIVE_TABLET => [
834
+ 'condition' => [
835
+ '_ob_column_has_pseudo' => 'yes',
836
+ '_ob_pseudo_after_w_alt_tablet' => '',
837
+ ],
838
+ ],
839
+ Controls_Stack::RESPONSIVE_MOBILE => [
840
+ 'condition' => [
841
+ '_ob_column_has_pseudo' => 'yes',
842
+ '_ob_pseudo_after_w_alt_mobile' => '',
843
+ ],
844
+ ],
845
+ ],
846
+ 'selectors' => [
847
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => 'width: {{SIZE}}{{UNIT}};',
848
+ ],
849
+ 'condition' => [
850
+ '_ob_column_has_pseudo' => 'yes',
851
+ '_ob_pseudo_after_w_alt' => '',
852
+ ],
853
+ ]
854
+ );
855
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER WIDTH - Alternative
856
+ $element->add_responsive_control(
857
+ '_ob_pseudo_after_w_alt',
858
+ [
859
+ 'label' => __( 'Calc Width', 'ooohboi-steroids' ),
860
+ 'description' => __( 'Enter CSS calc value only! Like: 100% - 50px or 100% + 2em', 'ooohboi-steroids' ),
861
+ 'type' => Controls_Manager::TEXT,
862
+ 'selectors' => [
863
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => 'width: calc({{VALUE}});',
864
+ ],
865
+ 'condition' => [
866
+ '_ob_column_has_pseudo' => 'yes',
867
+ ],
868
+ ]
869
+ );
870
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER HEIGHT
871
+ $element->add_responsive_control(
872
+ '_ob_pseudo_after_h',
873
+ [
874
+ 'label' => __( 'Height', 'ooohboi-steroids' ),
875
+ 'type' => Controls_Manager::SLIDER,
876
+ 'size_units' => [ 'px', '%' ],
877
+ 'range' => [
878
+ 'px' => [
879
+ 'min' => 0,
880
+ 'max' => 1000,
881
+ ],
882
+ '%' => [
883
+ 'min' => 0,
884
+ 'max' => 500,
885
+ ],
886
+ ],
887
+ 'default' => [
888
+ 'unit' => '%',
889
+ 'size' => 50,
890
+ ],
891
+ 'device_args' => [
892
+ Controls_Stack::RESPONSIVE_TABLET => [
893
+ 'condition' => [
894
+ '_ob_column_has_pseudo' => 'yes',
895
+ '_ob_pseudo_after_h_alt_tablet' => '',
896
+ ],
897
+ ],
898
+ Controls_Stack::RESPONSIVE_MOBILE => [
899
+ 'condition' => [
900
+ '_ob_column_has_pseudo' => 'yes',
901
+ '_ob_pseudo_after_h_alt_mobile' => '',
902
+ ],
903
+ ],
904
+ ],
905
+ 'selectors' => [
906
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => 'height: {{SIZE}}{{UNIT}};',
907
+ ],
908
+ 'condition' => [
909
+ '_ob_column_has_pseudo' => 'yes',
910
+ '_ob_pseudo_after_h_alt' => '',
911
+ ],
912
+ ]
913
+ );
914
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER HEIGHT - Alternative
915
+ $element->add_responsive_control(
916
+ '_ob_pseudo_after_h_alt',
917
+ [
918
+ 'label' => __( 'Calc Height', 'ooohboi-steroids' ),
919
+ 'description' => __( 'Enter CSS calc value only! Like: 45% + 85px or 100% - 3em', 'ooohboi-steroids' ),
920
+ 'type' => Controls_Manager::TEXT,
921
+ 'selectors' => [
922
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => 'height: calc({{VALUE}});',
923
+ ],
924
+ 'condition' => [
925
+ '_ob_column_has_pseudo' => 'yes',
926
+ ],
927
+ ]
928
+ );
929
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER OFFSET TOP
930
+ $element->add_responsive_control(
931
+ '_ob_pseudo_after_y',
932
+ [
933
+ 'label' => __( 'Offset Top', 'ooohboi-steroids' ),
934
+ 'type' => Controls_Manager::SLIDER,
935
+ 'size_units' => [ 'px', '%' ],
936
+ 'range' => [
937
+ 'px' => [
938
+ 'min' => -500,
939
+ 'max' => 500,
940
+ ],
941
+ '%' => [
942
+ 'min' => -500,
943
+ 'max' => 500,
944
+ ],
945
+ ],
946
+ 'default' => [
947
+ 'unit' => '%',
948
+ 'size' => 0,
949
+ ],
950
+ 'device_args' => [
951
+ Controls_Stack::RESPONSIVE_TABLET => [
952
+ 'condition' => [
953
+ '_ob_column_has_pseudo' => 'yes',
954
+ '_ob_pseudo_after_y_alt_tablet' => '',
955
+ ],
956
+ ],
957
+ Controls_Stack::RESPONSIVE_MOBILE => [
958
+ 'condition' => [
959
+ '_ob_column_has_pseudo' => 'yes',
960
+ '_ob_pseudo_after_y_alt_mobile' => '',
961
+ ],
962
+ ],
963
+ ],
964
+ 'selectors' => [
965
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => 'top: {{SIZE}}{{UNIT}};',
966
+ ],
967
+ 'condition' => [
968
+ '_ob_column_has_pseudo' => 'yes',
969
+ '_ob_pseudo_after_y_alt' => '',
970
+ ],
971
+ ]
972
+ );
973
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER OFFSET TOP - Alternative
974
+ $element->add_responsive_control(
975
+ '_ob_pseudo_after_y_alt',
976
+ [
977
+ 'label' => __( 'Calc Offset Top', 'ooohboi-steroids' ),
978
+ 'description' => __( 'Enter CSS calc value only! Like: 100% - 50px or 100% + 2em', 'ooohboi-steroids' ),
979
+ 'type' => Controls_Manager::TEXT,
980
+ 'selectors' => [
981
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => 'top: calc({{VALUE}});',
982
+ ],
983
+ 'condition' => [
984
+ '_ob_column_has_pseudo' => 'yes',
985
+ ],
986
+ ]
987
+ );
988
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER OFFSET LEFT
989
+ $element->add_responsive_control(
990
+ '_ob_pseudo_after_x',
991
+ [
992
+ 'label' => __( 'Offset Left', 'ooohboi-steroids' ),
993
+ 'type' => Controls_Manager::SLIDER,
994
+ 'size_units' => [ 'px', '%' ],
995
+ 'range' => [
996
+ 'px' => [
997
+ 'min' => -500,
998
+ 'max' => 500,
999
+ ],
1000
+ '%' => [
1001
+ 'min' => -500,
1002
+ 'max' => 500,
1003
+ ],
1004
+ ],
1005
+ 'default' => [
1006
+ 'unit' => '%',
1007
+ 'size' => 0,
1008
+ ],
1009
+ 'device_args' => [
1010
+ Controls_Stack::RESPONSIVE_TABLET => [
1011
+ 'condition' => [
1012
+ '_ob_column_has_pseudo' => 'yes',
1013
+ '_ob_pseudo_after_x_alt_tablet' => '',
1014
+ ],
1015
+ ],
1016
+ Controls_Stack::RESPONSIVE_MOBILE => [
1017
+ 'condition' => [
1018
+ '_ob_column_has_pseudo' => 'yes',
1019
+ '_ob_pseudo_after_x_alt_mobile' => '',
1020
+ ],
1021
+ ],
1022
+ ],
1023
+ 'selectors' => [
1024
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => 'left: {{SIZE}}{{UNIT}};',
1025
+ ],
1026
+ 'condition' => [
1027
+ '_ob_column_has_pseudo' => 'yes',
1028
+ '_ob_pseudo_after_x_alt' => '',
1029
+ ],
1030
+ ]
1031
+ );
1032
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER OFFSET LEFT - Alternative
1033
+ $element->add_responsive_control(
1034
+ '_ob_pseudo_after_x_alt',
1035
+ [
1036
+ 'label' => __( 'Calc Offset Left', 'ooohboi-steroids' ),
1037
+ 'description' => __( 'Enter CSS calc value only! Like: 100% - 50px or 100% + 2em', 'ooohboi-steroids' ),
1038
+ 'type' => Controls_Manager::TEXT,
1039
+ 'selectors' => [
1040
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => 'left: calc({{VALUE}});',
1041
+ ],
1042
+ 'condition' => [
1043
+ '_ob_column_has_pseudo' => 'yes',
1044
+ ],
1045
+ ]
1046
+ );
1047
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER ROTATION
1048
+ # NOTE : this is the hack. Elementor does not do well with 'deg' when speaking of responsiveness!
1049
+ $element->add_responsive_control(
1050
+ '_ob_pseudo_after_rot',
1051
+ [
1052
+ 'label' => __( 'Rotate', 'ooohboi-steroids' ),
1053
+ 'type' => Controls_Manager::SLIDER,
1054
+ 'range' => [
1055
+ 'px' => [
1056
+ 'min' => 0,
1057
+ 'max' => 360,
1058
+ 'step' => 5,
1059
+ ],
1060
+ ],
1061
+ 'default' => [
1062
+ 'size' => 0,
1063
+ ],
1064
+ 'selectors' => [
1065
+ '_ob_column_has_pseudo' => 'yes',
1066
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => 'transform: rotate({{SIZE}}deg);',
1067
+ ],
1068
+ ]
1069
+ );
1070
+
1071
+ $element->end_popover(); // popover end
1072
+
1073
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER BORDER
1074
+ $element->add_control(
1075
+ '_ob_pseudo_after_popover_border',
1076
+ [
1077
+ 'label' => __( 'Border', 'ooohboi-steroids' ),
1078
+ 'type' => Controls_Manager::POPOVER_TOGGLE,
1079
+ 'return_value' => 'yes',
1080
+ 'frontend_available' => true,
1081
+ 'condition' => [
1082
+ '_ob_column_has_pseudo' => 'yes',
1083
+ '_ob_pseudo_after_background_background' => [ 'classic', 'gradient' ],
1084
+ ],
1085
+ ]
1086
+ );
1087
+
1088
+ $element->start_popover();
1089
+
1090
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER BORDER ALL
1091
+ $element->add_group_control(
1092
+ Group_Control_Border::get_type(),
1093
+ [
1094
+ 'name' => '_ob_pseudo_after_borders',
1095
+ 'label' => __( 'Border', 'ooohboi-steroids' ),
1096
+ 'selector' => '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after',
1097
+ 'condition' => [
1098
+ '_ob_column_has_pseudo' => 'yes',
1099
+ '_ob_pseudo_after_background_background' => [ 'classic', 'gradient' ],
1100
+ ],
1101
+ ]
1102
+ );
1103
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER BORDER RADIUS
1104
+ $element->add_responsive_control(
1105
+ '_ob_pseudo_after_border_rad',
1106
+ [
1107
+ 'label' => __( 'Border Radius', 'ooohboi-steroids' ),
1108
+ 'type' => Controls_Manager::DIMENSIONS,
1109
+ 'size_units' => [ 'px', '%' ],
1110
+ 'selectors' => [
1111
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
1112
+ ],
1113
+ 'condition' => [
1114
+ '_ob_column_has_pseudo' => 'yes',
1115
+ '_ob_pseudo_after_background_background' => [ 'classic', 'gradient' ],
1116
+ ],
1117
+ ]
1118
+ );
1119
+
1120
+ $element->end_popover(); // popover BORdER end
1121
+
1122
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER MASQ - After ------------------->>
1123
+ $element->add_control(
1124
+ '_ob_pseudo_after_popover_masq',
1125
+ [
1126
+ 'label' => __( 'After Mask', 'ooohboi-steroids' ),
1127
+ 'type' => Controls_Manager::POPOVER_TOGGLE,
1128
+ 'return_value' => 'yes',
1129
+ 'frontend_available' => true,
1130
+ 'condition' => [
1131
+ '_ob_column_has_pseudo' => 'yes',
1132
+ '_ob_pseudo_after_background_background' => [ 'classic', 'gradient' ],
1133
+ ],
1134
+ ]
1135
+ );
1136
+
1137
+ $element->start_popover();
1138
+
1139
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER MASQ IMAGE
1140
+ $element->add_responsive_control(
1141
+ '_ob_pseudo_after_mask_img',
1142
+ [
1143
+ 'label' => __( 'Choose Image Mask', 'ooohboi-steroids' ),
1144
+ 'description' => __( 'NOTE: Image Mask should be black-and-transparent SVG file! Anything that’s 100% black in the image mask with be completely visible, anything that’s transparent will be completely hidden.', 'ooohboi-steroids' ),
1145
+ 'type' => Controls_Manager::MEDIA,
1146
+ 'default' => [
1147
+ 'url' => '',
1148
+ ],
1149
+ 'selectors' => [
1150
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => '-webkit-mask-image: url("{{URL}}"); mask-image: url("{{URL}}"); -webkit-mask-mode: alpha; mask-mode: alpha;',
1151
+ ],
1152
+ 'condition' => [
1153
+ '_ob_column_has_pseudo' => 'yes',
1154
+ '_ob_pseudo_after_background_background' => [ 'classic', 'gradient' ],
1155
+ ],
1156
+ ]
1157
+ );
1158
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER MASQ POSITION
1159
+ $element->add_responsive_control(
1160
+ '_ob_pseudo_after_mask_position',
1161
+ [
1162
+ 'label' => __( 'Mask position', 'ooohboi-steroids' ),
1163
+ 'type' => Controls_Manager::SELECT,
1164
+ 'default' => 'center center',
1165
+ 'options' => [
1166
+ '' => __( 'Default', 'ooohboi-steroids' ),
1167
+ 'center center' => __( 'Center Center', 'ooohboi-steroids' ),
1168
+ 'center left' => __( 'Center Left', 'ooohboi-steroids' ),
1169
+ 'center right' => __( 'Center Right', 'ooohboi-steroids' ),
1170
+ 'top center' => __( 'Top Center', 'ooohboi-steroids' ),
1171
+ 'top left' => __( 'Top Left', 'ooohboi-steroids' ),
1172
+ 'top right' => __( 'Top Right', 'ooohboi-steroids' ),
1173
+ 'bottom center' => __( 'Bottom Center', 'ooohboi-steroids' ),
1174
+ 'bottom left' => __( 'Bottom Left', 'ooohboi-steroids' ),
1175
+ 'bottom right' => __( 'Bottom Right', 'ooohboi-steroids' ),
1176
+ ],
1177
+ 'selectors' => [
1178
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => '-webkit-mask-position: {{VALUE}}; mask-position: {{VALUE}};',
1179
+ ],
1180
+ 'condition' => [
1181
+ '_ob_column_has_pseudo' => 'yes',
1182
+ '_ob_pseudo_after_mask_img[url]!' => '',
1183
+ ],
1184
+ ]
1185
+ );
1186
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER MASQ SIZE
1187
+ $element->add_responsive_control(
1188
+ '_ob_pseudo_after_mask_size',
1189
+ [
1190
+ 'label' => __( 'Mask size', 'ooohboi-steroids' ),
1191
+ 'type' => Controls_Manager::SELECT,
1192
+ 'default' => 'contain',
1193
+ 'options' => [
1194
+ '' => __( 'Default', 'ooohboi-steroids' ),
1195
+ 'auto' => __( 'Auto', 'ooohboi-steroids' ),
1196
+ 'cover' => __( 'Cover', 'ooohboi-steroids' ),
1197
+ 'contain' => __( 'Contain', 'ooohboi-steroids' ),
1198
+ 'initial' => __( 'Custom', 'ooohboi-steroids' ),
1199
+ ],
1200
+ 'selectors' => [
1201
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => '-webkit-mask-size: {{VALUE}}; mask-size: {{VALUE}};',
1202
+ ],
1203
+ 'condition' => [
1204
+ '_ob_column_has_pseudo' => 'yes',
1205
+ '_ob_pseudo_after_mask_img[url]!' => '',
1206
+ ],
1207
+ ]
1208
+ );
1209
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER MASQ SIZE Custom
1210
+ $element->add_responsive_control(
1211
+ '_ob_pseudo_after_mask_size_width',
1212
+ [
1213
+ 'label' => __( 'Width', 'ooohboi-steroids' ),
1214
+ 'type' => Controls_Manager::SLIDER,
1215
+ 'size_units' => [ '%', 'px' ],
1216
+ 'range' => [
1217
+ 'px' => [
1218
+ 'min' => 0,
1219
+ 'max' => 1000,
1220
+ ],
1221
+ '%' => [
1222
+ 'min' => 0,
1223
+ 'max' => 300,
1224
+ ],
1225
+ ],
1226
+ 'default' => [
1227
+ 'size' => 100,
1228
+ 'unit' => '%',
1229
+ ],
1230
+ 'selectors' => [
1231
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => '-webkit-mask-size: {{SIZE}}{{UNIT}} auto; mask-size: {{SIZE}}{{UNIT}} auto;',
1232
+ ],
1233
+ 'condition' => [
1234
+ '_ob_column_has_pseudo' => 'yes',
1235
+ '_ob_pseudo_after_mask_size' => [ 'initial' ],
1236
+ '_ob_pseudo_after_mask_img[url]!' => '',
1237
+ ],
1238
+ 'device_args' => [
1239
+ Controls_Stack::RESPONSIVE_TABLET => [
1240
+ 'selectors' => [
1241
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => '-webkit-mask-size: {{SIZE}}{{UNIT}} auto; mask-size: {{SIZE}}{{UNIT}} auto;',
1242
+ ],
1243
+ 'condition' => [
1244
+ '_ob_column_has_pseudo' => 'yes',
1245
+ '_ob_pseudo_after_mask_size_tablet' => [ 'initial' ],
1246
+ ],
1247
+ ],
1248
+ Controls_Stack::RESPONSIVE_MOBILE => [
1249
+ 'selectors' => [
1250
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => '-webkit-mask-size: {{SIZE}}{{UNIT}} auto; mask-size: {{SIZE}}{{UNIT}} auto;',
1251
+ ],
1252
+ 'condition' => [
1253
+ '_ob_column_has_pseudo' => 'yes',
1254
+ '_ob_pseudo_after_mask_size_mobile' => [ 'initial' ],
1255
+ ],
1256
+ ],
1257
+ ],
1258
+ ]
1259
+ );
1260
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER MASQ REPEAT
1261
+ $element->add_responsive_control(
1262
+ '_ob_pseudo_after_mask_repeat',
1263
+ [
1264
+ 'label' => __( 'Mask repeat', 'ooohboi-steroids' ),
1265
+ 'type' => Controls_Manager::SELECT,
1266
+ 'default' => 'no-repeat',
1267
+ 'options' => [
1268
+ 'no-repeat' => __( 'No-repeat', 'ooohboi-steroids' ),
1269
+ 'repeat' => __( 'Repeat', 'ooohboi-steroids' ),
1270
+ 'repeat-x' => __( 'Repeat-x', 'ooohboi-steroids' ),
1271
+ 'repeat-y' => __( 'Repeat-y', 'ooohboi-steroids' ),
1272
+ ],
1273
+ 'selectors' => [
1274
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => '-webkit-mask-repeat: {{VALUE}}; mask-repeat: {{VALUE}};',
1275
+ ],
1276
+ 'condition' => [
1277
+ '_ob_column_has_pseudo' => 'yes',
1278
+ '_ob_pseudo_after_mask_img[url]!' => '',
1279
+ ],
1280
+ ]
1281
+ );
1282
+
1283
+ $element->end_popover(); // popover MASQ end
1284
+
1285
+ // --------------------------------------------------------------------------------------------- CONTROL POPOVER CLIP PATH since 1.6.4
1286
+ $element->add_control(
1287
+ '_ob_pseudo_after_clip_path',
1288
+ [
1289
+ 'label' => __( 'Clip path', 'ooohboi-steroids' ),
1290
+ 'description' => sprintf(
1291
+ __( 'Enter the full clip-path property! See the copy-paste examples at %sClippy%s', 'ooohboi-steroids' ),
1292
+ '<a href="https://bennettfeely.com/clippy/" target="_blank">',
1293
+ '</a>'
1294
+ ),
1295
+ 'default' => '',
1296
+ 'type' => Controls_Manager::TEXTAREA,
1297
+ 'rows' => 3,
1298
+ 'selectors' => [
1299
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => '{{VALUE}}',
1300
+ ],
1301
+ 'condition' => [
1302
+ '_ob_column_has_pseudo' => 'yes',
1303
+ '_ob_pseudo_before_background_background' => [ 'classic', 'gradient' ],
1304
+ ],
1305
+ ]
1306
+ );
1307
+
1308
+ // --------------------------------------------------------------------------------------------- CONTROL Z-INDeX
1309
+ $element->add_control(
1310
+ '_ob_pseudo_after_z_index',
1311
+ [
1312
+ 'label' => __( 'Z-Index', 'ooohboi-steroids' ),
1313
+ 'type' => Controls_Manager::NUMBER,
1314
+ 'min' => -9999,
1315
+ 'default' => 0,
1316
+ 'selectors' => [
1317
+ '{{WRAPPER}}.ob-is-pseudo .elementor-element-populated:after' => 'z-index: {{VALUE}};',
1318
+ ],
1319
+ 'label_block' => false,
1320
+ 'condition' => [
1321
+ '_ob_column_has_pseudo' => 'yes',
1322
+ '_ob_pseudo_after_background_background' => [ 'classic', 'gradient' ],
1323
+ ],
1324
+ ]
1325
+ );
1326
+
1327
+ $element->end_controls_tab(); // After tab end
1328
+
1329
+ $element->end_controls_tabs(); // After and Before tabs end
1330
+
1331
+ $element->end_controls_section(); // END SECTION / PANEL
1332
+
1333
+ }
1334
+
1335
+ }
inc/common-functions.php CHANGED
@@ -145,6 +145,12 @@ $options_page = array(
145
  'text' => sprintf( __( '%sStack widgets like flex elements%s', 'ooohboi-steroids' ), '<span class="ob-option-desc">', '</span>' ),
146
  'checked' => 1,
147
  ),
 
 
 
 
 
 
148
  ),
149
  ),
150
  ),
145
  'text' => sprintf( __( '%sStack widgets like flex elements%s', 'ooohboi-steroids' ), '<span class="ob-option-desc">', '</span>' ),
146
  'checked' => 1,
147
  ),
148
+ 'ob_use_pseudo' => array(
149
+ 'title' => 'PSEUDO',
150
+ 'type' => 'checkbox',
151
+ 'text' => sprintf( __( '%sTake control over the Column\'s pseudo elements%s', 'ooohboi-steroids' ), '<span class="ob-option-desc">', '</span>' ),
152
+ 'checked' => 1,
153
+ ),
154
  ),
155
  ),
156
  ),
inc/img/pseudo.png ADDED
Binary file
inc/info/ob-landing.php CHANGED
@@ -10,28 +10,19 @@
10
 
11
  <div class="col-8">
12
 
13
- <h3>What's new in v1.7.0</h3>
14
- <p>
15
- Overlaiz, Glider, Harakiri and Imbox extensions bring new set of useful options!
16
- </p>
17
  <ul>
18
- <li>
19
- OVERLAIZ - Using the Mask option was reserved for the "Image" background type only but from now on, you can apply the Mask on the "Clssic" or "Gradient" background types.
20
- </li>
21
  <li>
22
  <p>
23
- GLIDER - There are few bug fixes included to this release, but the most important is the new feature - multiple slides per view. Big THANKS to Xmastermind on contribution!
24
- From now on Glider can be controlled via external links by using the ".glider-controller" custom class name on the top Section, and ".glider-control-1", ".glider-control-2",
25
- ".glider-control-3" (etc) with every control-link. Video tutorial with the detailed explanation is coming soon.
26
  </p>
27
  <p>
28
- <img src="<?php echo SFE_DIR_URL . 'img/multiple-slides-glider.png'; ?>" alt="Multiple slides for Glider" />
29
  </p>
30
  </li>
31
- <li>HARAKIRI - Two new options added: responsive "Mix Blend Mode", and the text color on hover. </li>
32
- <li>
33
- IMBOX - Border controls are added to both image and the text box
34
- </li>
35
  </ul>
36
 
37
  </div>
@@ -72,7 +63,7 @@
72
 
73
  <div class="col-12">
74
  <hr />
75
- <p class="small-text">Current version: 1.7.0</p>
76
  </div>
77
 
78
  </div>
10
 
11
  <div class="col-8">
12
 
13
+ <h3>What's new in v1.7.1</h3>
 
 
 
14
  <ul>
 
 
 
15
  <li>
16
  <p>
17
+ The new extension is here! PSEUDO allows you to add and manage so called pseudo elements (:before and :after) of any Column. The functionality is almost identical to already existing PoopArt extension.
18
+ With over 20 controls, CSS effects, masking option, and clip-path per pseudo-element, it literally feels like you have 2 additional Background Overlay elements. You can find a new control panel under the "Advanced" tab of any Column - including the Inner Section's columns.
 
19
  </p>
20
  <p>
21
+ <img src="<?php echo SFE_DIR_URL . 'img/pseudo.png'; ?>" alt="Pseudo extension" />
22
  </p>
23
  </li>
24
+ <li>HOVERANIMATOR - Offset TOP and Offset Left animatable properties now support the CSS calc() input too, so from now on, your hover animations can be built with the greater precision.</li>
25
+
 
 
26
  </ul>
27
 
28
  </div>
63
 
64
  <div class="col-12">
65
  <hr />
66
+ <p class="small-text">Current version: 1.7.1</p>
67
  </div>
68
 
69
  </div>
lang/ooohboi-steroids.pot CHANGED
@@ -3,8 +3,8 @@ msgid ""
3
  msgstr ""
4
  "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
5
  "Project-Id-Version: OoohBoi Steroids for Elementor\n"
6
- "POT-Creation-Date: 2021-04-01 13:39+0200\n"
7
- "PO-Revision-Date: 2021-04-01 13:38+0200\n"
8
  "Last-Translator: \n"
9
  "Language-Team: \n"
10
  "MIME-Version: 1.0\n"
@@ -46,9 +46,9 @@ msgstr ""
46
  #: controls/ooohboi-overlay-underlay.php:1258
47
  #: controls/ooohboi-overlay-underlay.php:1277 controls/ooohboi-paginini.php:220
48
  #: controls/ooohboi-perspektive.php:74 controls/ooohboi-photomorph.php:66
49
- #: controls/ooohboi-photomorph.php:142 controls/ooohboi-shadough.php:50
50
- #: controls/ooohboi-spacerat.php:69 controls/ooohboi-spacerat.php:339
51
- #: controls/ooohboi-widget-stalker.php:67
52
  msgid "Yes"
53
  msgstr ""
54
 
@@ -67,9 +67,9 @@ msgstr ""
67
  #: controls/ooohboi-overlay-underlay.php:1259
68
  #: controls/ooohboi-overlay-underlay.php:1278 controls/ooohboi-paginini.php:221
69
  #: controls/ooohboi-perspektive.php:75 controls/ooohboi-photomorph.php:67
70
- #: controls/ooohboi-photomorph.php:143 controls/ooohboi-shadough.php:51
71
- #: controls/ooohboi-spacerat.php:70 controls/ooohboi-spacerat.php:340
72
- #: controls/ooohboi-widget-stalker.php:68
73
  msgid "No"
74
  msgstr ""
75
 
@@ -159,7 +159,9 @@ msgstr ""
159
  #: controls/ooohboi-overlaiz.php:578 controls/ooohboi-overlay-underlay.php:170
160
  #: controls/ooohboi-overlay-underlay.php:557
161
  #: controls/ooohboi-overlay-underlay.php:766
162
- #: controls/ooohboi-overlay-underlay.php:1132 controls/ooohboi-spacerat.php:238
 
 
163
  #: controls/ooohboi-videomasq.php:122
164
  msgid "Width"
165
  msgstr ""
@@ -191,7 +193,8 @@ msgstr ""
191
 
192
  #: controls/ooohboi-breaking-bad.php:311 controls/ooohboi-overlaiz.php:558
193
  #: controls/ooohboi-overlay-underlay.php:539
194
- #: controls/ooohboi-overlay-underlay.php:1115 controls/ooohboi-spacerat.php:220
 
195
  #: controls/ooohboi-videomasq.php:104 controls/ooohboi-widget-stalker.php:194
196
  msgid "Auto"
197
  msgstr ""
@@ -331,7 +334,9 @@ msgstr ""
331
  #: controls/ooohboi-overlay-underlay.php:443
332
  #: controls/ooohboi-overlay-underlay.php:1003
333
  #: controls/ooohboi-overlay-underlay.php:1020 controls/ooohboi-paginini.php:146
334
- #: controls/ooohboi-paginini.php:195
 
 
335
  msgid "Border"
336
  msgstr ""
337
 
@@ -344,7 +349,8 @@ msgstr ""
344
  #: controls/ooohboi-kontrolz.php:207 controls/ooohboi-overlaiz.php:399
345
  #: controls/ooohboi-overlay-underlay.php:454
346
  #: controls/ooohboi-overlay-underlay.php:1031 controls/ooohboi-paginini.php:154
347
- #: controls/ooohboi-paginini.php:203
 
348
  msgid "Border Radius"
349
  msgstr ""
350
 
@@ -723,6 +729,7 @@ msgstr ""
723
 
724
  #: controls/ooohboi-harakiri.php:80 controls/ooohboi-overlay-underlay.php:131
725
  #: controls/ooohboi-overlay-underlay.php:727 controls/ooohboi-photomorph.php:81
 
726
  #: controls/ooohboi-teleporter.php:129
727
  msgid "Normal"
728
  msgstr ""
@@ -733,21 +740,24 @@ msgstr ""
733
 
734
  #: controls/ooohboi-harakiri.php:131 controls/ooohboi-overlaiz.php:142
735
  #: controls/ooohboi-overlay-underlay.php:227
736
- #: controls/ooohboi-overlay-underlay.php:819
 
737
  msgid "Height"
738
  msgstr ""
739
 
740
  #: controls/ooohboi-harakiri.php:135 controls/ooohboi-harakiri.php:214
741
  #: controls/ooohboi-hover-animator.php:276
742
- #: controls/ooohboi-hover-animator.php:428
743
- #: controls/ooohboi-hover-animator.php:580
744
- #: controls/ooohboi-hover-animator.php:815
745
- #: controls/ooohboi-hover-animator.php:971 controls/ooohboi-overlaiz.php:527
746
  #: controls/ooohboi-overlaiz.php:557 controls/ooohboi-overlay-underlay.php:510
747
  #: controls/ooohboi-overlay-underlay.php:538
748
  #: controls/ooohboi-overlay-underlay.php:1087
749
  #: controls/ooohboi-overlay-underlay.php:1114
750
- #: controls/ooohboi-photomorph.php:189 controls/ooohboi-spacerat.php:191
 
 
751
  #: controls/ooohboi-spacerat.php:219 controls/ooohboi-videomasq.php:75
752
  #: controls/ooohboi-videomasq.php:103
753
  msgid "Default"
@@ -759,7 +769,8 @@ msgstr ""
759
 
760
  #: controls/ooohboi-harakiri.php:137 controls/ooohboi-overlaiz.php:561
761
  #: controls/ooohboi-overlay-underlay.php:542
762
- #: controls/ooohboi-overlay-underlay.php:1118 controls/ooohboi-spacerat.php:223
 
763
  #: controls/ooohboi-videomasq.php:107
764
  msgid "Custom"
765
  msgstr ""
@@ -879,7 +890,8 @@ msgstr ""
879
 
880
  #: controls/ooohboi-hover-animator.php:157
881
  #: controls/ooohboi-overlay-underlay.php:94
882
- #: controls/ooohboi-overlay-underlay.php:690
 
883
  msgid "Opacity"
884
  msgstr ""
885
 
@@ -892,56 +904,57 @@ msgid "Opacity Hover"
892
  msgstr ""
893
 
894
  #: controls/ooohboi-hover-animator.php:216
895
- #: controls/ooohboi-hover-animator.php:369
896
- #: controls/ooohboi-hover-animator.php:521
897
- #: controls/ooohboi-hover-animator.php:756
898
- #: controls/ooohboi-hover-animator.php:912
899
  msgid "Duration"
900
  msgstr ""
901
 
902
  #: controls/ooohboi-hover-animator.php:243
903
- #: controls/ooohboi-hover-animator.php:396
904
- #: controls/ooohboi-hover-animator.php:548
905
- #: controls/ooohboi-hover-animator.php:783
906
- #: controls/ooohboi-hover-animator.php:939
907
  msgid "Delay"
908
  msgstr ""
909
 
910
  #: controls/ooohboi-hover-animator.php:270
911
- #: controls/ooohboi-hover-animator.php:423
912
- #: controls/ooohboi-hover-animator.php:575
913
- #: controls/ooohboi-hover-animator.php:810
914
- #: controls/ooohboi-hover-animator.php:966
915
  msgid "Easing"
916
  msgstr ""
917
 
918
  #: controls/ooohboi-hover-animator.php:277
919
- #: controls/ooohboi-hover-animator.php:429
920
- #: controls/ooohboi-hover-animator.php:581
921
- #: controls/ooohboi-hover-animator.php:816
922
- #: controls/ooohboi-hover-animator.php:972 controls/ooohboi-photomorph.php:190
923
  msgid "Ease-in"
924
  msgstr ""
925
 
926
  #: controls/ooohboi-hover-animator.php:278
927
- #: controls/ooohboi-hover-animator.php:430
928
- #: controls/ooohboi-hover-animator.php:582
929
- #: controls/ooohboi-hover-animator.php:817
930
- #: controls/ooohboi-hover-animator.php:973 controls/ooohboi-photomorph.php:191
931
  msgid "Ease-out"
932
  msgstr ""
933
 
934
  #: controls/ooohboi-hover-animator.php:279
935
- #: controls/ooohboi-hover-animator.php:431
936
- #: controls/ooohboi-hover-animator.php:583
937
- #: controls/ooohboi-hover-animator.php:818
938
- #: controls/ooohboi-hover-animator.php:974 controls/ooohboi-photomorph.php:192
939
  msgid "Ease-in-out"
940
  msgstr ""
941
 
942
  #: controls/ooohboi-hover-animator.php:298
943
  #: controls/ooohboi-overlay-underlay.php:284
944
- #: controls/ooohboi-overlay-underlay.php:872
 
945
  msgid "Offset Top"
946
  msgstr ""
947
 
@@ -949,62 +962,94 @@ msgstr ""
949
  msgid "Offset Top Normal"
950
  msgstr ""
951
 
952
- #: controls/ooohboi-hover-animator.php:342
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
953
  msgid "Offset Top Hover"
954
  msgstr ""
955
 
956
- #: controls/ooohboi-hover-animator.php:450
 
 
 
 
957
  #: controls/ooohboi-overlay-underlay.php:341
958
- #: controls/ooohboi-overlay-underlay.php:925
 
959
  msgid "Offset Left"
960
  msgstr ""
961
 
962
- #: controls/ooohboi-hover-animator.php:465
963
  msgid "Offset Left Normal"
964
  msgstr ""
965
 
966
- #: controls/ooohboi-hover-animator.php:494
 
 
 
 
967
  msgid "Offset Left Hover"
968
  msgstr ""
969
 
970
- #: controls/ooohboi-hover-animator.php:602
 
 
 
 
971
  msgid "Transforms"
972
  msgstr ""
973
 
974
- #: controls/ooohboi-hover-animator.php:617
975
  msgid "ScaleX Normal"
976
  msgstr ""
977
 
978
- #: controls/ooohboi-hover-animator.php:641
979
  msgid "ScaleX Hover"
980
  msgstr ""
981
 
982
- #: controls/ooohboi-hover-animator.php:663
983
  msgid "ScaleY Normal"
984
  msgstr ""
985
 
986
- #: controls/ooohboi-hover-animator.php:687
987
  msgid "ScaleY Hover"
988
  msgstr ""
989
 
990
- #: controls/ooohboi-hover-animator.php:709
991
  msgid "Rotation Normal"
992
  msgstr ""
993
 
994
- #: controls/ooohboi-hover-animator.php:733
995
  msgid "Rotation Hover"
996
  msgstr ""
997
 
998
- #: controls/ooohboi-hover-animator.php:837 controls/ooohboi-shadough.php:123
999
  #: controls/ooohboi-spacerat.php:433
1000
  msgid "Blur"
1001
  msgstr ""
1002
 
1003
- #: controls/ooohboi-hover-animator.php:852
1004
  msgid "Blur Normal"
1005
  msgstr ""
1006
 
1007
- #: controls/ooohboi-hover-animator.php:883
1008
  msgid "Blur Hover"
1009
  msgstr ""
1010
 
@@ -1075,6 +1120,7 @@ msgstr ""
1075
  #: controls/ooohboi-overlay-underlay.php:633
1076
  #: controls/ooohboi-overlay-underlay.php:1206
1077
  #: controls/ooohboi-photomorph.php:89 controls/ooohboi-photomorph.php:119
 
1078
  #: controls/ooohboi-spacerat.php:496
1079
  #, php-format
1080
  msgid ""
@@ -1098,22 +1144,14 @@ msgid "Enable Overlaiz?"
1098
  msgstr ""
1099
 
1100
  #: controls/ooohboi-overlaiz.php:126 controls/ooohboi-overlay-underlay.php:212
1101
- #: controls/ooohboi-overlay-underlay.php:807
 
1102
  msgid "Calc Width"
1103
  msgstr ""
1104
 
1105
- #: controls/ooohboi-overlaiz.php:127 controls/ooohboi-overlaiz.php:194
1106
- #: controls/ooohboi-overlaiz.php:261 controls/ooohboi-overlaiz.php:328
1107
- #: controls/ooohboi-overlay-underlay.php:213
1108
- #: controls/ooohboi-overlay-underlay.php:327
1109
- #: controls/ooohboi-overlay-underlay.php:808
1110
- #: controls/ooohboi-overlay-underlay.php:914
1111
- #: controls/ooohboi-overlay-underlay.php:967
1112
- msgid "Enter CSS calc value only! Like: 100% - 50px or 100% + 2em"
1113
- msgstr ""
1114
-
1115
  #: controls/ooohboi-overlaiz.php:193 controls/ooohboi-overlay-underlay.php:269
1116
- #: controls/ooohboi-overlay-underlay.php:860
 
1117
  msgid "Calc Height"
1118
  msgstr ""
1119
 
@@ -1138,7 +1176,8 @@ msgid "Rotation"
1138
  msgstr ""
1139
 
1140
  #: controls/ooohboi-overlaiz.php:445 controls/ooohboi-overlay-underlay.php:631
1141
- #: controls/ooohboi-overlay-underlay.php:1204 controls/ooohboi-spacerat.php:494
 
1142
  msgid "Clip path"
1143
  msgstr ""
1144
 
@@ -1154,12 +1193,14 @@ msgid ""
1154
  msgstr ""
1155
 
1156
  #: controls/ooohboi-overlaiz.php:503 controls/ooohboi-overlay-underlay.php:488
1157
- #: controls/ooohboi-overlay-underlay.php:1065 controls/ooohboi-spacerat.php:169
 
1158
  msgid "Choose Image Mask"
1159
  msgstr ""
1160
 
1161
  #: controls/ooohboi-overlaiz.php:504 controls/ooohboi-overlay-underlay.php:489
1162
- #: controls/ooohboi-overlay-underlay.php:1066 controls/ooohboi-spacerat.php:170
 
1163
  #, php-format
1164
  msgid ""
1165
  "NOTE: Image Mask should be black-and-transparent SVG file! Anything that’s "
@@ -1168,146 +1209,171 @@ msgid ""
1168
  msgstr ""
1169
 
1170
  #: controls/ooohboi-overlaiz.php:523 controls/ooohboi-overlay-underlay.php:506
1171
- #: controls/ooohboi-overlay-underlay.php:1083 controls/ooohboi-spacerat.php:187
 
1172
  #: controls/ooohboi-videomasq.php:71
1173
  msgid "Mask position"
1174
  msgstr ""
1175
 
1176
  #: controls/ooohboi-overlaiz.php:528 controls/ooohboi-overlay-underlay.php:511
1177
- #: controls/ooohboi-overlay-underlay.php:1088 controls/ooohboi-spacerat.php:192
 
1178
  #: controls/ooohboi-videomasq.php:76
1179
  msgid "Center Center"
1180
  msgstr ""
1181
 
1182
  #: controls/ooohboi-overlaiz.php:529 controls/ooohboi-overlay-underlay.php:512
1183
- #: controls/ooohboi-overlay-underlay.php:1089 controls/ooohboi-spacerat.php:193
 
1184
  #: controls/ooohboi-videomasq.php:77
1185
  msgid "Center Left"
1186
  msgstr ""
1187
 
1188
  #: controls/ooohboi-overlaiz.php:530 controls/ooohboi-overlay-underlay.php:513
1189
- #: controls/ooohboi-overlay-underlay.php:1090 controls/ooohboi-spacerat.php:194
 
1190
  #: controls/ooohboi-videomasq.php:78
1191
  msgid "Center Right"
1192
  msgstr ""
1193
 
1194
  #: controls/ooohboi-overlaiz.php:531 controls/ooohboi-overlay-underlay.php:514
1195
- #: controls/ooohboi-overlay-underlay.php:1091 controls/ooohboi-spacerat.php:195
 
1196
  #: controls/ooohboi-videomasq.php:79
1197
  msgid "Top Center"
1198
  msgstr ""
1199
 
1200
  #: controls/ooohboi-overlaiz.php:532 controls/ooohboi-overlay-underlay.php:515
1201
- #: controls/ooohboi-overlay-underlay.php:1092 controls/ooohboi-spacerat.php:196
 
1202
  #: controls/ooohboi-videomasq.php:80
1203
  msgid "Top Left"
1204
  msgstr ""
1205
 
1206
  #: controls/ooohboi-overlaiz.php:533 controls/ooohboi-overlay-underlay.php:516
1207
- #: controls/ooohboi-overlay-underlay.php:1093 controls/ooohboi-spacerat.php:197
 
1208
  #: controls/ooohboi-videomasq.php:81
1209
  msgid "Top Right"
1210
  msgstr ""
1211
 
1212
  #: controls/ooohboi-overlaiz.php:534 controls/ooohboi-overlay-underlay.php:517
1213
- #: controls/ooohboi-overlay-underlay.php:1094 controls/ooohboi-spacerat.php:198
 
1214
  #: controls/ooohboi-videomasq.php:82
1215
  msgid "Bottom Center"
1216
  msgstr ""
1217
 
1218
  #: controls/ooohboi-overlaiz.php:535 controls/ooohboi-overlay-underlay.php:518
1219
- #: controls/ooohboi-overlay-underlay.php:1095 controls/ooohboi-spacerat.php:199
 
1220
  #: controls/ooohboi-videomasq.php:83
1221
  msgid "Bottom Left"
1222
  msgstr ""
1223
 
1224
  #: controls/ooohboi-overlaiz.php:536 controls/ooohboi-overlay-underlay.php:519
1225
- #: controls/ooohboi-overlay-underlay.php:1096 controls/ooohboi-spacerat.php:200
 
1226
  #: controls/ooohboi-videomasq.php:84
1227
  msgid "Bottom Right"
1228
  msgstr ""
1229
 
1230
  #: controls/ooohboi-overlaiz.php:553 controls/ooohboi-overlay-underlay.php:534
1231
- #: controls/ooohboi-overlay-underlay.php:1110 controls/ooohboi-spacerat.php:215
 
1232
  #: controls/ooohboi-videomasq.php:99
1233
  msgid "Mask size"
1234
  msgstr ""
1235
 
1236
  #: controls/ooohboi-overlaiz.php:559 controls/ooohboi-overlay-underlay.php:540
1237
- #: controls/ooohboi-overlay-underlay.php:1116 controls/ooohboi-spacerat.php:221
 
1238
  #: controls/ooohboi-videomasq.php:105
1239
  msgid "Cover"
1240
  msgstr ""
1241
 
1242
  #: controls/ooohboi-overlaiz.php:560 controls/ooohboi-overlay-underlay.php:541
1243
- #: controls/ooohboi-overlay-underlay.php:1117 controls/ooohboi-spacerat.php:222
 
1244
  #: controls/ooohboi-videomasq.php:106
1245
  msgid "Contain"
1246
  msgstr ""
1247
 
1248
  #: controls/ooohboi-overlaiz.php:635 controls/ooohboi-overlay-underlay.php:606
1249
- #: controls/ooohboi-overlay-underlay.php:1180 controls/ooohboi-spacerat.php:289
 
1250
  #: controls/ooohboi-videomasq.php:171
1251
  msgid "Mask repeat"
1252
  msgstr ""
1253
 
1254
  #: controls/ooohboi-overlaiz.php:639 controls/ooohboi-overlay-underlay.php:610
1255
- #: controls/ooohboi-overlay-underlay.php:1184 controls/ooohboi-spacerat.php:293
 
1256
  #: controls/ooohboi-videomasq.php:175
1257
  msgid "No-repeat"
1258
  msgstr ""
1259
 
1260
  #: controls/ooohboi-overlaiz.php:640 controls/ooohboi-overlay-underlay.php:611
1261
- #: controls/ooohboi-overlay-underlay.php:1185 controls/ooohboi-spacerat.php:294
 
1262
  #: controls/ooohboi-videomasq.php:176
1263
  msgid "Repeat"
1264
  msgstr ""
1265
 
1266
  #: controls/ooohboi-overlaiz.php:641 controls/ooohboi-overlay-underlay.php:612
1267
- #: controls/ooohboi-overlay-underlay.php:1186 controls/ooohboi-spacerat.php:295
 
1268
  #: controls/ooohboi-videomasq.php:177
1269
  msgid "Repeat-x"
1270
  msgstr ""
1271
 
1272
  #: controls/ooohboi-overlaiz.php:642 controls/ooohboi-overlay-underlay.php:613
1273
- #: controls/ooohboi-overlay-underlay.php:1187 controls/ooohboi-spacerat.php:296
 
1274
  #: controls/ooohboi-videomasq.php:178
1275
  msgid "Repeat-y"
1276
  msgstr ""
1277
 
1278
  #: controls/ooohboi-overlaiz.php:662 controls/ooohboi-overlay-underlay.php:653
1279
- #: controls/ooohboi-overlay-underlay.php:1226
 
1280
  msgid "Z-Index"
1281
  msgstr ""
1282
 
1283
  #: controls/ooohboi-overlay-underlay.php:128
1284
- #: controls/ooohboi-overlay-underlay.php:724
 
1285
  msgid "Blend Mode"
1286
  msgstr ""
1287
 
1288
  #: controls/ooohboi-overlay-underlay.php:154
1289
- #: controls/ooohboi-overlay-underlay.php:750
 
1290
  msgid "Position and Size"
1291
  msgstr ""
1292
 
1293
  #: controls/ooohboi-overlay-underlay.php:270
1294
  #: controls/ooohboi-overlay-underlay.php:384
1295
- #: controls/ooohboi-overlay-underlay.php:861
 
1296
  msgid "Enter CSS calc value only! Like: 45% + 85px or 100% - 3em"
1297
  msgstr ""
1298
 
1299
  #: controls/ooohboi-overlay-underlay.php:326
1300
- #: controls/ooohboi-overlay-underlay.php:913
 
1301
  msgid "Calc Offset Top"
1302
  msgstr ""
1303
 
1304
  #: controls/ooohboi-overlay-underlay.php:383
1305
- #: controls/ooohboi-overlay-underlay.php:966
 
1306
  msgid "Calc Offset Left"
1307
  msgstr ""
1308
 
1309
  #: controls/ooohboi-overlay-underlay.php:399
1310
- #: controls/ooohboi-overlay-underlay.php:979
 
1311
  msgid "Rotate"
1312
  msgstr ""
1313
 
@@ -1469,6 +1535,32 @@ msgstr ""
1469
  msgid "Animation delay"
1470
  msgstr ""
1471
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1472
  #: controls/ooohboi-searchcop.php:45
1473
  msgid "Search Target"
1474
  msgstr ""
@@ -1777,6 +1869,11 @@ msgstr ""
1777
  msgid "%sStack widgets like flex elements%s"
1778
  msgstr ""
1779
 
 
 
 
 
 
1780
  #. Plugin Name of the plugin/theme
1781
  msgid "OoohBoi Steroids for Elementor"
1782
  msgstr ""
3
  msgstr ""
4
  "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
5
  "Project-Id-Version: OoohBoi Steroids for Elementor\n"
6
+ "POT-Creation-Date: 2021-04-05 16:37+0200\n"
7
+ "PO-Revision-Date: 2021-04-05 16:37+0200\n"
8
  "Last-Translator: \n"
9
  "Language-Team: \n"
10
  "MIME-Version: 1.0\n"
46
  #: controls/ooohboi-overlay-underlay.php:1258
47
  #: controls/ooohboi-overlay-underlay.php:1277 controls/ooohboi-paginini.php:220
48
  #: controls/ooohboi-perspektive.php:74 controls/ooohboi-photomorph.php:66
49
+ #: controls/ooohboi-photomorph.php:142 controls/ooohboi-pseudo.php:69
50
+ #: controls/ooohboi-shadough.php:50 controls/ooohboi-spacerat.php:69
51
+ #: controls/ooohboi-spacerat.php:339 controls/ooohboi-widget-stalker.php:67
52
  msgid "Yes"
53
  msgstr ""
54
 
67
  #: controls/ooohboi-overlay-underlay.php:1259
68
  #: controls/ooohboi-overlay-underlay.php:1278 controls/ooohboi-paginini.php:221
69
  #: controls/ooohboi-perspektive.php:75 controls/ooohboi-photomorph.php:67
70
+ #: controls/ooohboi-photomorph.php:143 controls/ooohboi-pseudo.php:70
71
+ #: controls/ooohboi-shadough.php:51 controls/ooohboi-spacerat.php:70
72
+ #: controls/ooohboi-spacerat.php:340 controls/ooohboi-widget-stalker.php:68
73
  msgid "No"
74
  msgstr ""
75
 
159
  #: controls/ooohboi-overlaiz.php:578 controls/ooohboi-overlay-underlay.php:170
160
  #: controls/ooohboi-overlay-underlay.php:557
161
  #: controls/ooohboi-overlay-underlay.php:766
162
+ #: controls/ooohboi-overlay-underlay.php:1132 controls/ooohboi-pseudo.php:182
163
+ #: controls/ooohboi-pseudo.php:593 controls/ooohboi-pseudo.php:815
164
+ #: controls/ooohboi-pseudo.php:1213 controls/ooohboi-spacerat.php:238
165
  #: controls/ooohboi-videomasq.php:122
166
  msgid "Width"
167
  msgstr ""
193
 
194
  #: controls/ooohboi-breaking-bad.php:311 controls/ooohboi-overlaiz.php:558
195
  #: controls/ooohboi-overlay-underlay.php:539
196
+ #: controls/ooohboi-overlay-underlay.php:1115 controls/ooohboi-pseudo.php:574
197
+ #: controls/ooohboi-pseudo.php:1195 controls/ooohboi-spacerat.php:220
198
  #: controls/ooohboi-videomasq.php:104 controls/ooohboi-widget-stalker.php:194
199
  msgid "Auto"
200
  msgstr ""
334
  #: controls/ooohboi-overlay-underlay.php:443
335
  #: controls/ooohboi-overlay-underlay.php:1003
336
  #: controls/ooohboi-overlay-underlay.php:1020 controls/ooohboi-paginini.php:146
337
+ #: controls/ooohboi-paginini.php:195 controls/ooohboi-pseudo.php:455
338
+ #: controls/ooohboi-pseudo.php:473 controls/ooohboi-pseudo.php:1077
339
+ #: controls/ooohboi-pseudo.php:1095
340
  msgid "Border"
341
  msgstr ""
342
 
349
  #: controls/ooohboi-kontrolz.php:207 controls/ooohboi-overlaiz.php:399
350
  #: controls/ooohboi-overlay-underlay.php:454
351
  #: controls/ooohboi-overlay-underlay.php:1031 controls/ooohboi-paginini.php:154
352
+ #: controls/ooohboi-paginini.php:203 controls/ooohboi-pseudo.php:485
353
+ #: controls/ooohboi-pseudo.php:1107
354
  msgid "Border Radius"
355
  msgstr ""
356
 
729
 
730
  #: controls/ooohboi-harakiri.php:80 controls/ooohboi-overlay-underlay.php:131
731
  #: controls/ooohboi-overlay-underlay.php:727 controls/ooohboi-photomorph.php:81
732
+ #: controls/ooohboi-pseudo.php:141 controls/ooohboi-pseudo.php:774
733
  #: controls/ooohboi-teleporter.php:129
734
  msgid "Normal"
735
  msgstr ""
740
 
741
  #: controls/ooohboi-harakiri.php:131 controls/ooohboi-overlaiz.php:142
742
  #: controls/ooohboi-overlay-underlay.php:227
743
+ #: controls/ooohboi-overlay-underlay.php:819 controls/ooohboi-pseudo.php:243
744
+ #: controls/ooohboi-pseudo.php:874
745
  msgid "Height"
746
  msgstr ""
747
 
748
  #: controls/ooohboi-harakiri.php:135 controls/ooohboi-harakiri.php:214
749
  #: controls/ooohboi-hover-animator.php:276
750
+ #: controls/ooohboi-hover-animator.php:458
751
+ #: controls/ooohboi-hover-animator.php:640
752
+ #: controls/ooohboi-hover-animator.php:875
753
+ #: controls/ooohboi-hover-animator.php:1031 controls/ooohboi-overlaiz.php:527
754
  #: controls/ooohboi-overlaiz.php:557 controls/ooohboi-overlay-underlay.php:510
755
  #: controls/ooohboi-overlay-underlay.php:538
756
  #: controls/ooohboi-overlay-underlay.php:1087
757
  #: controls/ooohboi-overlay-underlay.php:1114
758
+ #: controls/ooohboi-photomorph.php:189 controls/ooohboi-pseudo.php:544
759
+ #: controls/ooohboi-pseudo.php:573 controls/ooohboi-pseudo.php:1166
760
+ #: controls/ooohboi-pseudo.php:1194 controls/ooohboi-spacerat.php:191
761
  #: controls/ooohboi-spacerat.php:219 controls/ooohboi-videomasq.php:75
762
  #: controls/ooohboi-videomasq.php:103
763
  msgid "Default"
769
 
770
  #: controls/ooohboi-harakiri.php:137 controls/ooohboi-overlaiz.php:561
771
  #: controls/ooohboi-overlay-underlay.php:542
772
+ #: controls/ooohboi-overlay-underlay.php:1118 controls/ooohboi-pseudo.php:577
773
+ #: controls/ooohboi-pseudo.php:1198 controls/ooohboi-spacerat.php:223
774
  #: controls/ooohboi-videomasq.php:107
775
  msgid "Custom"
776
  msgstr ""
890
 
891
  #: controls/ooohboi-hover-animator.php:157
892
  #: controls/ooohboi-overlay-underlay.php:94
893
+ #: controls/ooohboi-overlay-underlay.php:690 controls/ooohboi-pseudo.php:102
894
+ #: controls/ooohboi-pseudo.php:735
895
  msgid "Opacity"
896
  msgstr ""
897
 
904
  msgstr ""
905
 
906
  #: controls/ooohboi-hover-animator.php:216
907
+ #: controls/ooohboi-hover-animator.php:399
908
+ #: controls/ooohboi-hover-animator.php:581
909
+ #: controls/ooohboi-hover-animator.php:816
910
+ #: controls/ooohboi-hover-animator.php:972
911
  msgid "Duration"
912
  msgstr ""
913
 
914
  #: controls/ooohboi-hover-animator.php:243
915
+ #: controls/ooohboi-hover-animator.php:426
916
+ #: controls/ooohboi-hover-animator.php:608
917
+ #: controls/ooohboi-hover-animator.php:843
918
+ #: controls/ooohboi-hover-animator.php:999
919
  msgid "Delay"
920
  msgstr ""
921
 
922
  #: controls/ooohboi-hover-animator.php:270
923
+ #: controls/ooohboi-hover-animator.php:453
924
+ #: controls/ooohboi-hover-animator.php:635
925
+ #: controls/ooohboi-hover-animator.php:870
926
+ #: controls/ooohboi-hover-animator.php:1026
927
  msgid "Easing"
928
  msgstr ""
929
 
930
  #: controls/ooohboi-hover-animator.php:277
931
+ #: controls/ooohboi-hover-animator.php:459
932
+ #: controls/ooohboi-hover-animator.php:641
933
+ #: controls/ooohboi-hover-animator.php:876
934
+ #: controls/ooohboi-hover-animator.php:1032 controls/ooohboi-photomorph.php:190
935
  msgid "Ease-in"
936
  msgstr ""
937
 
938
  #: controls/ooohboi-hover-animator.php:278
939
+ #: controls/ooohboi-hover-animator.php:460
940
+ #: controls/ooohboi-hover-animator.php:642
941
+ #: controls/ooohboi-hover-animator.php:877
942
+ #: controls/ooohboi-hover-animator.php:1033 controls/ooohboi-photomorph.php:191
943
  msgid "Ease-out"
944
  msgstr ""
945
 
946
  #: controls/ooohboi-hover-animator.php:279
947
+ #: controls/ooohboi-hover-animator.php:461
948
+ #: controls/ooohboi-hover-animator.php:643
949
+ #: controls/ooohboi-hover-animator.php:878
950
+ #: controls/ooohboi-hover-animator.php:1034 controls/ooohboi-photomorph.php:192
951
  msgid "Ease-in-out"
952
  msgstr ""
953
 
954
  #: controls/ooohboi-hover-animator.php:298
955
  #: controls/ooohboi-overlay-underlay.php:284
956
+ #: controls/ooohboi-overlay-underlay.php:872 controls/ooohboi-pseudo.php:304
957
+ #: controls/ooohboi-pseudo.php:933
958
  msgid "Offset Top"
959
  msgstr ""
960
 
962
  msgid "Offset Top Normal"
963
  msgstr ""
964
 
965
+ #: controls/ooohboi-hover-animator.php:343
966
+ msgid "Calc Offset Top Normal"
967
+ msgstr ""
968
+
969
+ #: controls/ooohboi-hover-animator.php:344
970
+ #: controls/ooohboi-hover-animator.php:387
971
+ #: controls/ooohboi-hover-animator.php:526
972
+ #: controls/ooohboi-hover-animator.php:569 controls/ooohboi-overlaiz.php:127
973
+ #: controls/ooohboi-overlaiz.php:194 controls/ooohboi-overlaiz.php:261
974
+ #: controls/ooohboi-overlaiz.php:328 controls/ooohboi-overlay-underlay.php:213
975
+ #: controls/ooohboi-overlay-underlay.php:327
976
+ #: controls/ooohboi-overlay-underlay.php:808
977
+ #: controls/ooohboi-overlay-underlay.php:914
978
+ #: controls/ooohboi-overlay-underlay.php:967 controls/ooohboi-pseudo.php:228
979
+ #: controls/ooohboi-pseudo.php:350 controls/ooohboi-pseudo.php:860
980
+ #: controls/ooohboi-pseudo.php:978 controls/ooohboi-pseudo.php:1037
981
+ msgid "Enter CSS calc value only! Like: 100% - 50px or 100% + 2em"
982
+ msgstr ""
983
+
984
+ #: controls/ooohboi-hover-animator.php:358
985
  msgid "Offset Top Hover"
986
  msgstr ""
987
 
988
+ #: controls/ooohboi-hover-animator.php:386
989
+ msgid "Calc Offset Top Hover"
990
+ msgstr ""
991
+
992
+ #: controls/ooohboi-hover-animator.php:480
993
  #: controls/ooohboi-overlay-underlay.php:341
994
+ #: controls/ooohboi-overlay-underlay.php:925 controls/ooohboi-pseudo.php:365
995
+ #: controls/ooohboi-pseudo.php:992
996
  msgid "Offset Left"
997
  msgstr ""
998
 
999
+ #: controls/ooohboi-hover-animator.php:495
1000
  msgid "Offset Left Normal"
1001
  msgstr ""
1002
 
1003
+ #: controls/ooohboi-hover-animator.php:525
1004
+ msgid "Calc Offset Left Normal"
1005
+ msgstr ""
1006
+
1007
+ #: controls/ooohboi-hover-animator.php:540
1008
  msgid "Offset Left Hover"
1009
  msgstr ""
1010
 
1011
+ #: controls/ooohboi-hover-animator.php:568
1012
+ msgid "Calc Offset Left Hover"
1013
+ msgstr ""
1014
+
1015
+ #: controls/ooohboi-hover-animator.php:662
1016
  msgid "Transforms"
1017
  msgstr ""
1018
 
1019
+ #: controls/ooohboi-hover-animator.php:677
1020
  msgid "ScaleX Normal"
1021
  msgstr ""
1022
 
1023
+ #: controls/ooohboi-hover-animator.php:701
1024
  msgid "ScaleX Hover"
1025
  msgstr ""
1026
 
1027
+ #: controls/ooohboi-hover-animator.php:723
1028
  msgid "ScaleY Normal"
1029
  msgstr ""
1030
 
1031
+ #: controls/ooohboi-hover-animator.php:747
1032
  msgid "ScaleY Hover"
1033
  msgstr ""
1034
 
1035
+ #: controls/ooohboi-hover-animator.php:769
1036
  msgid "Rotation Normal"
1037
  msgstr ""
1038
 
1039
+ #: controls/ooohboi-hover-animator.php:793
1040
  msgid "Rotation Hover"
1041
  msgstr ""
1042
 
1043
+ #: controls/ooohboi-hover-animator.php:897 controls/ooohboi-shadough.php:123
1044
  #: controls/ooohboi-spacerat.php:433
1045
  msgid "Blur"
1046
  msgstr ""
1047
 
1048
+ #: controls/ooohboi-hover-animator.php:912
1049
  msgid "Blur Normal"
1050
  msgstr ""
1051
 
1052
+ #: controls/ooohboi-hover-animator.php:943
1053
  msgid "Blur Hover"
1054
  msgstr ""
1055
 
1120
  #: controls/ooohboi-overlay-underlay.php:633
1121
  #: controls/ooohboi-overlay-underlay.php:1206
1122
  #: controls/ooohboi-photomorph.php:89 controls/ooohboi-photomorph.php:119
1123
+ #: controls/ooohboi-pseudo.php:673 controls/ooohboi-pseudo.php:1291
1124
  #: controls/ooohboi-spacerat.php:496
1125
  #, php-format
1126
  msgid ""
1144
  msgstr ""
1145
 
1146
  #: controls/ooohboi-overlaiz.php:126 controls/ooohboi-overlay-underlay.php:212
1147
+ #: controls/ooohboi-overlay-underlay.php:807 controls/ooohboi-pseudo.php:227
1148
+ #: controls/ooohboi-pseudo.php:859
1149
  msgid "Calc Width"
1150
  msgstr ""
1151
 
 
 
 
 
 
 
 
 
 
 
1152
  #: controls/ooohboi-overlaiz.php:193 controls/ooohboi-overlay-underlay.php:269
1153
+ #: controls/ooohboi-overlay-underlay.php:860 controls/ooohboi-pseudo.php:288
1154
+ #: controls/ooohboi-pseudo.php:918
1155
  msgid "Calc Height"
1156
  msgstr ""
1157
 
1176
  msgstr ""
1177
 
1178
  #: controls/ooohboi-overlaiz.php:445 controls/ooohboi-overlay-underlay.php:631
1179
+ #: controls/ooohboi-overlay-underlay.php:1204 controls/ooohboi-pseudo.php:671
1180
+ #: controls/ooohboi-pseudo.php:1289 controls/ooohboi-spacerat.php:494
1181
  msgid "Clip path"
1182
  msgstr ""
1183
 
1193
  msgstr ""
1194
 
1195
  #: controls/ooohboi-overlaiz.php:503 controls/ooohboi-overlay-underlay.php:488
1196
+ #: controls/ooohboi-overlay-underlay.php:1065 controls/ooohboi-pseudo.php:521
1197
+ #: controls/ooohboi-pseudo.php:1143 controls/ooohboi-spacerat.php:169
1198
  msgid "Choose Image Mask"
1199
  msgstr ""
1200
 
1201
  #: controls/ooohboi-overlaiz.php:504 controls/ooohboi-overlay-underlay.php:489
1202
+ #: controls/ooohboi-overlay-underlay.php:1066 controls/ooohboi-pseudo.php:522
1203
+ #: controls/ooohboi-pseudo.php:1144 controls/ooohboi-spacerat.php:170
1204
  #, php-format
1205
  msgid ""
1206
  "NOTE: Image Mask should be black-and-transparent SVG file! Anything that’s "
1209
  msgstr ""
1210
 
1211
  #: controls/ooohboi-overlaiz.php:523 controls/ooohboi-overlay-underlay.php:506
1212
+ #: controls/ooohboi-overlay-underlay.php:1083 controls/ooohboi-pseudo.php:540
1213
+ #: controls/ooohboi-pseudo.php:1162 controls/ooohboi-spacerat.php:187
1214
  #: controls/ooohboi-videomasq.php:71
1215
  msgid "Mask position"
1216
  msgstr ""
1217
 
1218
  #: controls/ooohboi-overlaiz.php:528 controls/ooohboi-overlay-underlay.php:511
1219
+ #: controls/ooohboi-overlay-underlay.php:1088 controls/ooohboi-pseudo.php:545
1220
+ #: controls/ooohboi-pseudo.php:1167 controls/ooohboi-spacerat.php:192
1221
  #: controls/ooohboi-videomasq.php:76
1222
  msgid "Center Center"
1223
  msgstr ""
1224
 
1225
  #: controls/ooohboi-overlaiz.php:529 controls/ooohboi-overlay-underlay.php:512
1226
+ #: controls/ooohboi-overlay-underlay.php:1089 controls/ooohboi-pseudo.php:546
1227
+ #: controls/ooohboi-pseudo.php:1168 controls/ooohboi-spacerat.php:193
1228
  #: controls/ooohboi-videomasq.php:77
1229
  msgid "Center Left"
1230
  msgstr ""
1231
 
1232
  #: controls/ooohboi-overlaiz.php:530 controls/ooohboi-overlay-underlay.php:513
1233
+ #: controls/ooohboi-overlay-underlay.php:1090 controls/ooohboi-pseudo.php:547
1234
+ #: controls/ooohboi-pseudo.php:1169 controls/ooohboi-spacerat.php:194
1235
  #: controls/ooohboi-videomasq.php:78
1236
  msgid "Center Right"
1237
  msgstr ""
1238
 
1239
  #: controls/ooohboi-overlaiz.php:531 controls/ooohboi-overlay-underlay.php:514
1240
+ #: controls/ooohboi-overlay-underlay.php:1091 controls/ooohboi-pseudo.php:548
1241
+ #: controls/ooohboi-pseudo.php:1170 controls/ooohboi-spacerat.php:195
1242
  #: controls/ooohboi-videomasq.php:79
1243
  msgid "Top Center"
1244
  msgstr ""
1245
 
1246
  #: controls/ooohboi-overlaiz.php:532 controls/ooohboi-overlay-underlay.php:515
1247
+ #: controls/ooohboi-overlay-underlay.php:1092 controls/ooohboi-pseudo.php:549
1248
+ #: controls/ooohboi-pseudo.php:1171 controls/ooohboi-spacerat.php:196
1249
  #: controls/ooohboi-videomasq.php:80
1250
  msgid "Top Left"
1251
  msgstr ""
1252
 
1253
  #: controls/ooohboi-overlaiz.php:533 controls/ooohboi-overlay-underlay.php:516
1254
+ #: controls/ooohboi-overlay-underlay.php:1093 controls/ooohboi-pseudo.php:550
1255
+ #: controls/ooohboi-pseudo.php:1172 controls/ooohboi-spacerat.php:197
1256
  #: controls/ooohboi-videomasq.php:81
1257
  msgid "Top Right"
1258
  msgstr ""
1259
 
1260
  #: controls/ooohboi-overlaiz.php:534 controls/ooohboi-overlay-underlay.php:517
1261
+ #: controls/ooohboi-overlay-underlay.php:1094 controls/ooohboi-pseudo.php:551
1262
+ #: controls/ooohboi-pseudo.php:1173 controls/ooohboi-spacerat.php:198
1263
  #: controls/ooohboi-videomasq.php:82
1264
  msgid "Bottom Center"
1265
  msgstr ""
1266
 
1267
  #: controls/ooohboi-overlaiz.php:535 controls/ooohboi-overlay-underlay.php:518
1268
+ #: controls/ooohboi-overlay-underlay.php:1095 controls/ooohboi-pseudo.php:552
1269
+ #: controls/ooohboi-pseudo.php:1174 controls/ooohboi-spacerat.php:199
1270
  #: controls/ooohboi-videomasq.php:83
1271
  msgid "Bottom Left"
1272
  msgstr ""
1273
 
1274
  #: controls/ooohboi-overlaiz.php:536 controls/ooohboi-overlay-underlay.php:519
1275
+ #: controls/ooohboi-overlay-underlay.php:1096 controls/ooohboi-pseudo.php:553
1276
+ #: controls/ooohboi-pseudo.php:1175 controls/ooohboi-spacerat.php:200
1277
  #: controls/ooohboi-videomasq.php:84
1278
  msgid "Bottom Right"
1279
  msgstr ""
1280
 
1281
  #: controls/ooohboi-overlaiz.php:553 controls/ooohboi-overlay-underlay.php:534
1282
+ #: controls/ooohboi-overlay-underlay.php:1110 controls/ooohboi-pseudo.php:569
1283
+ #: controls/ooohboi-pseudo.php:1190 controls/ooohboi-spacerat.php:215
1284
  #: controls/ooohboi-videomasq.php:99
1285
  msgid "Mask size"
1286
  msgstr ""
1287
 
1288
  #: controls/ooohboi-overlaiz.php:559 controls/ooohboi-overlay-underlay.php:540
1289
+ #: controls/ooohboi-overlay-underlay.php:1116 controls/ooohboi-pseudo.php:575
1290
+ #: controls/ooohboi-pseudo.php:1196 controls/ooohboi-spacerat.php:221
1291
  #: controls/ooohboi-videomasq.php:105
1292
  msgid "Cover"
1293
  msgstr ""
1294
 
1295
  #: controls/ooohboi-overlaiz.php:560 controls/ooohboi-overlay-underlay.php:541
1296
+ #: controls/ooohboi-overlay-underlay.php:1117 controls/ooohboi-pseudo.php:576
1297
+ #: controls/ooohboi-pseudo.php:1197 controls/ooohboi-spacerat.php:222
1298
  #: controls/ooohboi-videomasq.php:106
1299
  msgid "Contain"
1300
  msgstr ""
1301
 
1302
  #: controls/ooohboi-overlaiz.php:635 controls/ooohboi-overlay-underlay.php:606
1303
+ #: controls/ooohboi-overlay-underlay.php:1180 controls/ooohboi-pseudo.php:645
1304
+ #: controls/ooohboi-pseudo.php:1264 controls/ooohboi-spacerat.php:289
1305
  #: controls/ooohboi-videomasq.php:171
1306
  msgid "Mask repeat"
1307
  msgstr ""
1308
 
1309
  #: controls/ooohboi-overlaiz.php:639 controls/ooohboi-overlay-underlay.php:610
1310
+ #: controls/ooohboi-overlay-underlay.php:1184 controls/ooohboi-pseudo.php:649
1311
+ #: controls/ooohboi-pseudo.php:1268 controls/ooohboi-spacerat.php:293
1312
  #: controls/ooohboi-videomasq.php:175
1313
  msgid "No-repeat"
1314
  msgstr ""
1315
 
1316
  #: controls/ooohboi-overlaiz.php:640 controls/ooohboi-overlay-underlay.php:611
1317
+ #: controls/ooohboi-overlay-underlay.php:1185 controls/ooohboi-pseudo.php:650
1318
+ #: controls/ooohboi-pseudo.php:1269 controls/ooohboi-spacerat.php:294
1319
  #: controls/ooohboi-videomasq.php:176
1320
  msgid "Repeat"
1321
  msgstr ""
1322
 
1323
  #: controls/ooohboi-overlaiz.php:641 controls/ooohboi-overlay-underlay.php:612
1324
+ #: controls/ooohboi-overlay-underlay.php:1186 controls/ooohboi-pseudo.php:651
1325
+ #: controls/ooohboi-pseudo.php:1270 controls/ooohboi-spacerat.php:295
1326
  #: controls/ooohboi-videomasq.php:177
1327
  msgid "Repeat-x"
1328
  msgstr ""
1329
 
1330
  #: controls/ooohboi-overlaiz.php:642 controls/ooohboi-overlay-underlay.php:613
1331
+ #: controls/ooohboi-overlay-underlay.php:1187 controls/ooohboi-pseudo.php:652
1332
+ #: controls/ooohboi-pseudo.php:1271 controls/ooohboi-spacerat.php:296
1333
  #: controls/ooohboi-videomasq.php:178
1334
  msgid "Repeat-y"
1335
  msgstr ""
1336
 
1337
  #: controls/ooohboi-overlaiz.php:662 controls/ooohboi-overlay-underlay.php:653
1338
+ #: controls/ooohboi-overlay-underlay.php:1226 controls/ooohboi-pseudo.php:694
1339
+ #: controls/ooohboi-pseudo.php:1312
1340
  msgid "Z-Index"
1341
  msgstr ""
1342
 
1343
  #: controls/ooohboi-overlay-underlay.php:128
1344
+ #: controls/ooohboi-overlay-underlay.php:724 controls/ooohboi-pseudo.php:138
1345
+ #: controls/ooohboi-pseudo.php:771
1346
  msgid "Blend Mode"
1347
  msgstr ""
1348
 
1349
  #: controls/ooohboi-overlay-underlay.php:154
1350
+ #: controls/ooohboi-overlay-underlay.php:750 controls/ooohboi-pseudo.php:165
1351
+ #: controls/ooohboi-pseudo.php:798
1352
  msgid "Position and Size"
1353
  msgstr ""
1354
 
1355
  #: controls/ooohboi-overlay-underlay.php:270
1356
  #: controls/ooohboi-overlay-underlay.php:384
1357
+ #: controls/ooohboi-overlay-underlay.php:861 controls/ooohboi-pseudo.php:289
1358
+ #: controls/ooohboi-pseudo.php:411 controls/ooohboi-pseudo.php:919
1359
  msgid "Enter CSS calc value only! Like: 45% + 85px or 100% - 3em"
1360
  msgstr ""
1361
 
1362
  #: controls/ooohboi-overlay-underlay.php:326
1363
+ #: controls/ooohboi-overlay-underlay.php:913 controls/ooohboi-pseudo.php:349
1364
+ #: controls/ooohboi-pseudo.php:977
1365
  msgid "Calc Offset Top"
1366
  msgstr ""
1367
 
1368
  #: controls/ooohboi-overlay-underlay.php:383
1369
+ #: controls/ooohboi-overlay-underlay.php:966 controls/ooohboi-pseudo.php:410
1370
+ #: controls/ooohboi-pseudo.php:1036
1371
  msgid "Calc Offset Left"
1372
  msgstr ""
1373
 
1374
  #: controls/ooohboi-overlay-underlay.php:399
1375
+ #: controls/ooohboi-overlay-underlay.php:979 controls/ooohboi-pseudo.php:427
1376
+ #: controls/ooohboi-pseudo.php:1052
1377
  msgid "Rotate"
1378
  msgstr ""
1379
 
1535
  msgid "Animation delay"
1536
  msgstr ""
1537
 
1538
+ #: controls/ooohboi-pseudo.php:65
1539
+ msgid "Enable Pseudo?"
1540
+ msgstr ""
1541
+
1542
+ #: controls/ooohboi-pseudo.php:66
1543
+ msgid ""
1544
+ "This is how you can create and manage :before and :after pseudo elements for "
1545
+ "this column"
1546
+ msgstr ""
1547
+
1548
+ #: controls/ooohboi-pseudo.php:84
1549
+ msgid "Before"
1550
+ msgstr ""
1551
+
1552
+ #: controls/ooohboi-pseudo.php:504
1553
+ msgid "Before Mask"
1554
+ msgstr ""
1555
+
1556
+ #: controls/ooohboi-pseudo.php:716
1557
+ msgid "After"
1558
+ msgstr ""
1559
+
1560
+ #: controls/ooohboi-pseudo.php:1126
1561
+ msgid "After Mask"
1562
+ msgstr ""
1563
+
1564
  #: controls/ooohboi-searchcop.php:45
1565
  msgid "Search Target"
1566
  msgstr ""
1869
  msgid "%sStack widgets like flex elements%s"
1870
  msgstr ""
1871
 
1872
+ #: inc/common-functions.php:151
1873
+ #, php-format
1874
+ msgid "%sTake control over the Column's pseudo elements%s"
1875
+ msgstr ""
1876
+
1877
  #. Plugin Name of the plugin/theme
1878
  msgid "OoohBoi Steroids for Elementor"
1879
  msgstr ""
ooohboi-steroids.php CHANGED
@@ -2,7 +2,7 @@
2
  /**
3
  * Plugin Name: OoohBoi Steroids for Elementor
4
  * Description: An awesome set of tools, options and settings that expand Elementor defaults. Instead of creating new Elementor Widgets, these act like an upgrade of existing options or the self-standing panels.
5
- * Version: 1.7.0
6
  * Author: OoohBoi
7
  * Author URI: https://www.youtube.com/c/OoohBoi
8
  * Text Domain: ooohboi-steroids
@@ -31,7 +31,7 @@ final class OoohBoi_Steroids {
31
  *
32
  * @var string The plugin version.
33
  */
34
- const VERSION = '1.7.0';
35
 
36
  /**
37
  * Minimum Elementor Version
@@ -152,7 +152,7 @@ final class OoohBoi_Steroids {
152
  'ooohboi-steroids-admin',
153
  plugins_url( 'assets/css/admin.css', __FILE__ ),
154
  [],
155
- self::VERSION . '31032021f'
156
  );
157
  } );
158
 
@@ -177,7 +177,7 @@ final class OoohBoi_Steroids {
177
  'ooohboi-steroids-preview',
178
  plugins_url( 'assets/css/preview.css', __FILE__ ),
179
  [ 'editor-preview' ],
180
- self::VERSION . '31032021'
181
  );
182
  } );
183
 
@@ -220,6 +220,7 @@ final class OoohBoi_Steroids {
220
  OoohBoi_Hover_Animator::init(); // OoohBoi Hover Animator
221
  OoohBoi_Kontrolz::init(); // OoohBoi Kontrolz
222
  OoohBoi_Widget_Stalker::init(); // OoohBoi Widget Stalker
 
223
  } else {
224
  // Init Extensions
225
  if( FALSE === isset( $ob_settings_options[ 'harakiri' ] ) || 'on' === $ob_settings_options[ 'harakiri' ] ) OoohBoi_Harakiri::init(); // OoohBoi Harakiri
@@ -243,6 +244,7 @@ final class OoohBoi_Steroids {
243
  if( FALSE === isset( $ob_settings_options[ 'hover_animator' ] ) || 'on' === $ob_settings_options[ 'hover_animator' ] ) OoohBoi_Hover_Animator::init(); // OoohBoi Hover Animator
244
  if( FALSE === isset( $ob_settings_options[ 'kontrolz' ] ) || 'on' === $ob_settings_options[ 'kontrolz' ] ) OoohBoi_Kontrolz::init(); // OoohBoi Kontrolz
245
  if( FALSE === isset( $ob_settings_options[ 'widget_stalker' ] ) || 'on' === $ob_settings_options[ 'widget_stalker' ] ) OoohBoi_Widget_Stalker::init(); // OoohBoi Widget Stalker
 
246
  }
247
 
248
  }
@@ -257,7 +259,7 @@ final class OoohBoi_Steroids {
257
  */
258
  public function ooohboi_register_styles_editor() {
259
 
260
- wp_enqueue_style( 'ooohboi-steroids-styles-editor', plugins_url( 'assets/css/editor.css', __FILE__ ), [ 'elementor-editor' ], self::VERSION . '31032021' );
261
 
262
  }
263
 
@@ -272,7 +274,7 @@ final class OoohBoi_Steroids {
272
  */
273
  public function ooohboi_register_styles() {
274
 
275
- wp_register_style( 'ooohboi-steroids-styles', plugins_url( 'assets/css/main.css', __FILE__ ), NULL, self::VERSION . '31032021' );
276
 
277
  }
278
 
@@ -287,7 +289,7 @@ final class OoohBoi_Steroids {
287
  */
288
  public function ooohboi_register_scripts_front() {
289
 
290
- wp_register_script( 'ooohboi-steroids', plugins_url( 'assets/js/ooohboi-steroids-min.js', __FILE__ ), [ 'jquery' ], self::VERSION . '31032021', true );
291
 
292
  }
293
 
@@ -320,7 +322,8 @@ final class OoohBoi_Steroids {
320
  include_once plugin_dir_path( __FILE__ ) . 'controls/ooohboi-icobox.php'; // OoohBoi Icobox
321
  include_once plugin_dir_path( __FILE__ ) . 'controls/ooohboi-hover-animator.php'; // OoohBoi Hover Animator
322
  include_once plugin_dir_path( __FILE__ ) . 'controls/ooohboi-kontrolz.php'; // OoohBoi Kontrolz
323
- include_once plugin_dir_path( __FILE__ ) . 'controls/ooohboi-widget-stalker.php'; // OoohBoi Widget Stalker
 
324
  }
325
 
326
  }
2
  /**
3
  * Plugin Name: OoohBoi Steroids for Elementor
4
  * Description: An awesome set of tools, options and settings that expand Elementor defaults. Instead of creating new Elementor Widgets, these act like an upgrade of existing options or the self-standing panels.
5
+ * Version: 1.7.1
6
  * Author: OoohBoi
7
  * Author URI: https://www.youtube.com/c/OoohBoi
8
  * Text Domain: ooohboi-steroids
31
  *
32
  * @var string The plugin version.
33
  */
34
+ const VERSION = '1.7.1';
35
 
36
  /**
37
  * Minimum Elementor Version
152
  'ooohboi-steroids-admin',
153
  plugins_url( 'assets/css/admin.css', __FILE__ ),
154
  [],
155
+ self::VERSION . '05042021east'
156
  );
157
  } );
158
 
177
  'ooohboi-steroids-preview',
178
  plugins_url( 'assets/css/preview.css', __FILE__ ),
179
  [ 'editor-preview' ],
180
+ self::VERSION . '05042021'
181
  );
182
  } );
183
 
220
  OoohBoi_Hover_Animator::init(); // OoohBoi Hover Animator
221
  OoohBoi_Kontrolz::init(); // OoohBoi Kontrolz
222
  OoohBoi_Widget_Stalker::init(); // OoohBoi Widget Stalker
223
+ OoohBoi_Pseudo::init(); // OoohBoi Pseudo
224
  } else {
225
  // Init Extensions
226
  if( FALSE === isset( $ob_settings_options[ 'harakiri' ] ) || 'on' === $ob_settings_options[ 'harakiri' ] ) OoohBoi_Harakiri::init(); // OoohBoi Harakiri
244
  if( FALSE === isset( $ob_settings_options[ 'hover_animator' ] ) || 'on' === $ob_settings_options[ 'hover_animator' ] ) OoohBoi_Hover_Animator::init(); // OoohBoi Hover Animator
245
  if( FALSE === isset( $ob_settings_options[ 'kontrolz' ] ) || 'on' === $ob_settings_options[ 'kontrolz' ] ) OoohBoi_Kontrolz::init(); // OoohBoi Kontrolz
246
  if( FALSE === isset( $ob_settings_options[ 'widget_stalker' ] ) || 'on' === $ob_settings_options[ 'widget_stalker' ] ) OoohBoi_Widget_Stalker::init(); // OoohBoi Widget Stalker
247
+ if( FALSE === isset( $ob_settings_options[ 'pseudo' ] ) || 'on' === $ob_settings_options[ 'pseudo' ] ) OoohBoi_Pseudo::init(); // OoohBoi Pseudo
248
  }
249
 
250
  }
259
  */
260
  public function ooohboi_register_styles_editor() {
261
 
262
+ wp_enqueue_style( 'ooohboi-steroids-styles-editor', plugins_url( 'assets/css/editor.css', __FILE__ ), [ 'elementor-editor' ], self::VERSION . '050420217' );
263
 
264
  }
265
 
274
  */
275
  public function ooohboi_register_styles() {
276
 
277
+ wp_register_style( 'ooohboi-steroids-styles', plugins_url( 'assets/css/main.css', __FILE__ ), NULL, self::VERSION . '050420217' );
278
 
279
  }
280
 
289
  */
290
  public function ooohboi_register_scripts_front() {
291
 
292
+ wp_register_script( 'ooohboi-steroids', plugins_url( 'assets/js/ooohboi-steroids-min.js', __FILE__ ), [ 'jquery' ], self::VERSION . '05042021east', true );
293
 
294
  }
295
 
322
  include_once plugin_dir_path( __FILE__ ) . 'controls/ooohboi-icobox.php'; // OoohBoi Icobox
323
  include_once plugin_dir_path( __FILE__ ) . 'controls/ooohboi-hover-animator.php'; // OoohBoi Hover Animator
324
  include_once plugin_dir_path( __FILE__ ) . 'controls/ooohboi-kontrolz.php'; // OoohBoi Kontrolz
325
+ include_once plugin_dir_path( __FILE__ ) . 'controls/ooohboi-widget-stalker.php'; // OoohBoi Widget Stalker
326
+ include_once plugin_dir_path( __FILE__ ) . 'controls/ooohboi-pseudo.php'; // OoohBoi Pseudo
327
  }
328
 
329
  }
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: page-builder, elementor, add-on, background-overlay, vertical text, ghost
4
  Donate link: https://www.paypal.me/ooohboi
5
  Requires at least: 5.0
6
  Tested up to: 5.7
7
- Stable tag: 1.7.0
8
  Requires PHP: 7.0
9
  License: GPLv3
10
  License URI: http://www.gnu.org/licenses/gpl-3.0
@@ -17,7 +17,9 @@ An awesome set of tools, options and settings that expand Elementor defaults. In
17
 
18
  = What is new? =
19
 
20
- Icon Box widget got bigger! More controls to all the individual elements of that very widget. Likewise, the Image Box widget is now more powerful; stretch the image full-height, apply clip-path, add the background, padding, margin, etc.
 
 
21
 
22
  = In the package so far =
23
 
@@ -84,10 +86,13 @@ Allows you to additionaly style Image Carousel and Media Carousel controls.
84
  21. WIDGET STALKER
85
  Stack widgets one after another inside the column.
86
 
87
- 21. ICOBOX
88
  More controls to the Icon Box widget.
89
 
90
- 23. MORE IS COMING SOON!
 
 
 
91
 
92
  == Installation ==
93
 
@@ -96,7 +101,7 @@ More controls to the Icon Box widget.
96
 
97
  == Upgrade Notice ==
98
 
99
- 1.7.0 - Beware of the changes to the language file!
100
 
101
  == Frequently Asked Questions ==
102
 
@@ -140,6 +145,10 @@ No, you don't. It'll work with both free version of Elementor and Elementor PRO.
140
 
141
  == Changelog ==
142
 
 
 
 
 
143
  = 1.7.0 =
144
  - OVERLAIZ, the Mask option now works for all types of backgrounds
145
  - GLIDER, added support for multiple slides per view (thanks to xmastermind)
4
  Donate link: https://www.paypal.me/ooohboi
5
  Requires at least: 5.0
6
  Tested up to: 5.7
7
+ Stable tag: 1.7.1
8
  Requires PHP: 7.0
9
  License: GPLv3
10
  License URI: http://www.gnu.org/licenses/gpl-3.0
17
 
18
  = What is new? =
19
 
20
+ The new extension is here! PSEUDO allows you to add and manage so called pseudo elements (:before and :after) of any Column. The functionality is almost identical to already existing PoopArt extension.
21
+ With over 20 controls, CSS effects, masking option, and clip-path per pseudo-element, it literally feels like you have 2 additional Background Overlay elements. You can find a new control panel under the "Advanced" tab of any Column - including the Inner Section's columns.
22
+ When it comes to the HOVERANIMATOR extension, Offset TOP and Offset Left animatable properties now support the CSS calc() input too, so from now on, your hover animations can be built with the greater precision.
23
 
24
  = In the package so far =
25
 
86
  21. WIDGET STALKER
87
  Stack widgets one after another inside the column.
88
 
89
+ 22. ICOBOX
90
  More controls to the Icon Box widget.
91
 
92
+ 23. PSEUDO
93
+ Add and manage Column's pseudo elements. It's a PoopArt for Columns!
94
+
95
+ 24. MORE IS COMING SOON!
96
 
97
  == Installation ==
98
 
101
 
102
  == Upgrade Notice ==
103
 
104
+ 1.7.1 - Beware of the changes to the language file!
105
 
106
  == Frequently Asked Questions ==
107
 
145
 
146
  == Changelog ==
147
 
148
+ = 1.7.1 =
149
+ - New feature added, PSEUDO - it's like a PoopArt for Columns
150
+ - HOVERANIMATOR, Offset TOP and Offset Left properties now support the CSS calc() input too
151
+
152
  = 1.7.0 =
153
  - OVERLAIZ, the Mask option now works for all types of backgrounds
154
  - GLIDER, added support for multiple slides per view (thanks to xmastermind)