SiteOrigin Widgets Bundle - Version 1.15.9

Version Description

  • 11 November 2019 =
  • Contact Form: Improved default email address handling.
  • Contact Form: Improved subject field labeling.
  • Post Carousel: Loop the carousel when reaching the end.
  • Social Media Buttons: Fixed issue with responsive breakpoint unit of measurement.
  • Google Maps: Ensured settings modal window opens when directed to insert API key.
  • Google Maps: Fixed map center field when used in the Customizer.
  • Fixed compatibility with WordPress 5.3.
  • Minor code style and widget label improvements.
Download this release

Release Info

Developer gpriday
Plugin Icon 128x128 SiteOrigin Widgets Bundle
Version 1.15.9
Comparing to
See all releases

Code changes from version 1.15.8 to 1.15.9

admin/admin.js CHANGED
@@ -165,4 +165,10 @@ jQuery( function( $ ){
165
  $( '#widgets-list .so-widget-settings' ).prop('disabled', false);
166
  } );
167
 
 
 
 
 
 
 
168
  } );
165
  $( '#widgets-list .so-widget-settings' ).prop('disabled', false);
166
  } );
167
 
168
+ // Automatically open settings modal based on hash
169
+ if( window.location.hash && window.location.hash.substring(0, 10) === '#settings-' ) {
170
+ var openSettingsId = window.location.hash.substring(10);
171
+ $('div[data-id="' + openSettingsId + '"] button.so-widget-settings').click();
172
+ }
173
+
174
  } );
admin/admin.min.js CHANGED
@@ -1 +1 @@
1
- jQuery(function(a){a(".so-widget-toggle-active button").click(function(){var i=a(this),e=i.data("status"),s=i.closest(".so-widget");e?s.addClass("so-widget-is-active").removeClass("so-widget-is-inactive"):s.removeClass("so-widget-is-active").addClass("so-widget-is-inactive"),a.post(soWidgetsAdmin.toggleUrl,{widget:s.data("id"),active:e},function(i){})}),a(".so-widget-banner").each(function(){var i=a(this),e=i.find("img");if(e.length)128<e.width()&&e.css("margin-left",-(e.width()-128)/2);else{var s=Trianglify({width:128,height:128,variance:1,cell_size:32,seed:i.data("seed")});i.append(s.svg())}});function i(){var e=a(this).val().toLowerCase();""===e?a(".so-widget-wrap").show():a(".so-widget").each(function(){var i=a(this);-1<i.find("h3").html().toLowerCase().indexOf(e)?i.parent().show():i.parent().hide()})}a("#sow-widget-search input").on({keyup:i,search:i}),a(window).resize(function(){var i=a(".so-widget-text").css("height","auto"),e=0;i.each(function(){e=Math.max(e,a(this).height())}),i.each(function(){a(this).css("height",e)})}).resize(),a("#sow-widgets-page .page-nav a").click(function(i){i.preventDefault();var e=a(this),s=e.attr("href"),t=e.closest("li");switch(a("#sow-widgets-page .page-nav li").not(t).removeClass("active"),t.addClass("active"),s){case"#all":a(".so-widget-wrap").show();break;case"#enabled":a(".so-widget-wrap").hide(),a(".so-widget-wrap .so-widget-is-active").each(function(){a(this).closest(".so-widget-wrap").show()}),a(".so-widget-wrap .so-widget-is-inactive").each(function(){a(this).closest(".so-widget-wrap").hide()});break;case"#disabled":a(".so-widget-wrap .so-widget-is-active").each(function(){a(this).closest(".so-widget-wrap").hide()}),a(".so-widget-wrap .so-widget-is-inactive").each(function(){a(this).closest(".so-widget-wrap").show()})}a(window).resize()}),a("#widgets-list").addClass("so-animated");var s=a("#sow-settings-dialog");a("#widgets-list .so-widget-settings").click(function(i){var e=a(this);i.preventDefault(),s.find(".so-content").empty().addClass("so-loading").load(e.data("form-url"),function(){a(this).removeClass("so-loading")}),s.show()}),s.find(".so-close").click(function(i){i.preventDefault(),s.hide()}),s.find(".so-save").click(function(i){i.preventDefault();var e=a(this);e.prop("disabled",!0),a("#widgets-list .so-widget-settings").prop("disabled",!0),s.find("form").submit(function(){e.prop("disabled",!1),s.hide()}).submit()}),a("#so-widget-settings-save").load(function(){a("#widgets-list .so-widget-settings").prop("disabled",!1)})});
1
+ jQuery(function(a){a(".so-widget-toggle-active button").click(function(){var i=a(this),s=i.data("status"),t=i.closest(".so-widget");s?t.addClass("so-widget-is-active").removeClass("so-widget-is-inactive"):t.removeClass("so-widget-is-active").addClass("so-widget-is-inactive"),a.post(soWidgetsAdmin.toggleUrl,{widget:t.data("id"),active:s},function(i){})}),a(".so-widget-banner").each(function(){var i=a(this),s=i.find("img");if(s.length)128<s.width()&&s.css("margin-left",-(s.width()-128)/2);else{var t=Trianglify({width:128,height:128,variance:1,cell_size:32,seed:i.data("seed")});i.append(t.svg())}});function i(){var s=a(this).val().toLowerCase();""===s?a(".so-widget-wrap").show():a(".so-widget").each(function(){var i=a(this);-1<i.find("h3").html().toLowerCase().indexOf(s)?i.parent().show():i.parent().hide()})}a("#sow-widget-search input").on({keyup:i,search:i}),a(window).resize(function(){var i=a(".so-widget-text").css("height","auto"),s=0;i.each(function(){s=Math.max(s,a(this).height())}),i.each(function(){a(this).css("height",s)})}).resize(),a("#sow-widgets-page .page-nav a").click(function(i){i.preventDefault();var s=a(this),t=s.attr("href"),e=s.closest("li");switch(a("#sow-widgets-page .page-nav li").not(e).removeClass("active"),e.addClass("active"),t){case"#all":a(".so-widget-wrap").show();break;case"#enabled":a(".so-widget-wrap").hide(),a(".so-widget-wrap .so-widget-is-active").each(function(){a(this).closest(".so-widget-wrap").show()}),a(".so-widget-wrap .so-widget-is-inactive").each(function(){a(this).closest(".so-widget-wrap").hide()});break;case"#disabled":a(".so-widget-wrap .so-widget-is-active").each(function(){a(this).closest(".so-widget-wrap").hide()}),a(".so-widget-wrap .so-widget-is-inactive").each(function(){a(this).closest(".so-widget-wrap").show()})}a(window).resize()}),a("#widgets-list").addClass("so-animated");var t=a("#sow-settings-dialog");if(a("#widgets-list .so-widget-settings").click(function(i){var s=a(this);i.preventDefault(),t.find(".so-content").empty().addClass("so-loading").load(s.data("form-url"),function(){a(this).removeClass("so-loading")}),t.show()}),t.find(".so-close").click(function(i){i.preventDefault(),t.hide()}),t.find(".so-save").click(function(i){i.preventDefault();var s=a(this);s.prop("disabled",!0),a("#widgets-list .so-widget-settings").prop("disabled",!0),t.find("form").submit(function(){s.prop("disabled",!1),t.hide()}).submit()}),a("#so-widget-settings-save").load(function(){a("#widgets-list .so-widget-settings").prop("disabled",!1)}),window.location.hash&&"#settings-"===window.location.hash.substring(0,10)){var s=window.location.hash.substring(10);a('div[data-id="'+s+'"] button.so-widget-settings').click()}});
base/siteorigin-widget.class.php CHANGED
@@ -1370,21 +1370,23 @@ abstract class SiteOrigin_Widget extends WP_Widget {
1370
  $show_preview = apply_filters( 'siteorigin_widgets_form_show_preview_button', $show_preview, $this );
1371
  return $show_preview;
1372
  }
1373
-
1374
  /**
1375
  * Get the global settings from the options table.
1376
  *
 
 
1377
  * @return mixed
1378
  */
1379
- function get_global_settings( ){
1380
  $values = get_option( 'so_widget_settings[' . $this->widget_class . ']', array() );
1381
 
1382
  // Add in the defaults
1383
  if( $this->has_form( 'settings' ) ) {
1384
  $values = $this->add_defaults( $this->get_settings_form(), $values );
1385
  }
1386
-
1387
- return $values;
1388
  }
1389
 
1390
  /**
1370
  $show_preview = apply_filters( 'siteorigin_widgets_form_show_preview_button', $show_preview, $this );
1371
  return $show_preview;
1372
  }
1373
+
1374
  /**
1375
  * Get the global settings from the options table.
1376
  *
1377
+ * @param string|null $key
1378
+ *
1379
  * @return mixed
1380
  */
1381
+ function get_global_settings( $key = null ){
1382
  $values = get_option( 'so_widget_settings[' . $this->widget_class . ']', array() );
1383
 
1384
  // Add in the defaults
1385
  if( $this->has_form( 'settings' ) ) {
1386
  $values = $this->add_defaults( $this->get_settings_form(), $values );
1387
  }
1388
+
1389
+ return !empty( $key ) ? $values[$key] : $values;
1390
  }
1391
 
1392
  /**
compat/block-editor/widget-block.js CHANGED
@@ -82,7 +82,7 @@
82
  }
83
 
84
  function setupWidgetForm( formContainer ) {
85
- var $mainForm = $( formContainer ).find( '.siteorigin-widget-form-main' );
86
  if ( $mainForm.length > 0 && ! props.formInitialized ) {
87
  var $previewContainer = $mainForm.siblings('.siteorigin-widget-preview');
88
  $previewContainer.find( '> a' ).on( 'click', function ( event ) {
@@ -112,7 +112,7 @@
112
 
113
  function setupWidgetPreview() {
114
  if ( ! props.previewInitialized ) {
115
- $( window.sowb ).trigger( 'setup_widgets', { preview: true } );
116
  props.setState( { previewInitialized: true } );
117
  }
118
  }
@@ -136,7 +136,7 @@
136
 
137
  var loadWidgetForm = props.attributes.widgetClass && ! props.widgetFormHtml;
138
  if ( loadWidgetForm ) {
139
- $.post( {
140
  url: sowbBlockEditorAdmin.restUrl + 'sowb/v1/widgets/forms',
141
  beforeSend: function ( xhr ) {
142
  xhr.setRequestHeader( 'X-WP-Nonce', sowbBlockEditorAdmin.nonce );
@@ -220,7 +220,7 @@
220
  props.attributes.widgetClass &&
221
  props.attributes.widgetData;
222
  if ( loadWidgetPreview ) {
223
- $.post( {
224
  url: sowbBlockEditorAdmin.restUrl + 'sowb/v1/widgets/previews',
225
  beforeSend: function ( xhr ) {
226
  xhr.setRequestHeader( 'X-WP-Nonce', sowbBlockEditorAdmin.nonce );
82
  }
83
 
84
  function setupWidgetForm( formContainer ) {
85
+ var $mainForm = jQuery( formContainer ).find( '.siteorigin-widget-form-main' );
86
  if ( $mainForm.length > 0 && ! props.formInitialized ) {
87
  var $previewContainer = $mainForm.siblings('.siteorigin-widget-preview');
88
  $previewContainer.find( '> a' ).on( 'click', function ( event ) {
112
 
113
  function setupWidgetPreview() {
114
  if ( ! props.previewInitialized ) {
115
+ jQuery( window.sowb ).trigger( 'setup_widgets', { preview: true } );
116
  props.setState( { previewInitialized: true } );
117
  }
118
  }
136
 
137
  var loadWidgetForm = props.attributes.widgetClass && ! props.widgetFormHtml;
138
  if ( loadWidgetForm ) {
139
+ jQuery.post( {
140
  url: sowbBlockEditorAdmin.restUrl + 'sowb/v1/widgets/forms',
141
  beforeSend: function ( xhr ) {
142
  xhr.setRequestHeader( 'X-WP-Nonce', sowbBlockEditorAdmin.nonce );
220
  props.attributes.widgetClass &&
221
  props.attributes.widgetData;
222
  if ( loadWidgetPreview ) {
223
+ jQuery.post( {
224
  url: sowbBlockEditorAdmin.restUrl + 'sowb/v1/widgets/previews',
225
  beforeSend: function ( xhr ) {
226
  xhr.setRequestHeader( 'X-WP-Nonce', sowbBlockEditorAdmin.nonce );
compat/block-editor/widget-block.min.js CHANGED
@@ -1 +1 @@
1
- !function(e,t,i,n,o,s){var r=n.createElement,d=t.registerBlockType,a=e.BlockControls,l=o.SelectControl,w=s.withState,g=o.Toolbar,c=o.IconButton,u=o.Placeholder,m=o.Spinner,b=i.__;d("sowb/widget-block",{title:b("SiteOrigin Widget","so-widgets-bundle"),description:b("Select a SiteOrigin widget from the dropdown.","so-widgets-bundle"),icon:function(){return r("span",{className:"widget-icon so-widget-icon so-block-editor-icon"})},category:"widgets",keywords:[sowbBlockEditorAdmin.widgets.reduce(function(e,t){return 0<e.length&&(e+=","),e+t.name},"")],supports:{html:!1},attributes:{widgetClass:{type:"string"},widgetData:{type:"object"}},edit:w({editing:!1,formInitialized:!1,previewInitialized:!1,widgetFormHtml:"",widgetSettingsChanged:!1,widgetPreviewHtml:""})(function(i){function n(){i.setState({editing:!1,previewInitialized:!1})}if(!i.editing&&i.attributes.widgetClass&&i.attributes.widgetData){var e=!i.loadingWidgets&&!i.editing&&!i.widgetPreviewHtml&&i.attributes.widgetClass&&i.attributes.widgetData;e&&$.post({url:sowbBlockEditorAdmin.restUrl+"sowb/v1/widgets/previews",beforeSend:function(e){e.setRequestHeader("X-WP-Nonce",sowbBlockEditorAdmin.nonce)},data:{widgetClass:i.attributes.widgetClass,widgetData:i.attributes.widgetData||{}}}).done(function(e){i.setState({widgetPreviewHtml:e,previewInitialized:!1})}).fail(function(e){var t="";e.hasOwnProperty("responseJSON")?t=e.responseJSON.message:e.hasOwnProperty("responseText")&&(t=e.responseText),i.setState({widgetPreviewHtml:"<div>"+t+"</div>"})});var t=i.widgetPreviewHtml?i.widgetPreviewHtml:"";return[r(a,{key:"controls"},r(g,null,r(c,{className:"components-icon-button components-toolbar__control",label:b("Edit widget.","so-widgets-bundle"),onClick:function(){i.setState({editing:!0,formInitialized:!1})},icon:"edit"}))),r("div",{key:"preview",className:"so-widget-preview-container"},e?r("div",{className:"so-widgets-spinner-container"},r("span",null,r(m))):r("div",{dangerouslySetInnerHTML:{__html:t},ref:function(){i.previewInitialized||($(window.sowb).trigger("setup_widgets",{preview:!0}),i.setState({previewInitialized:!0}))}}))]}var o=[];sowbBlockEditorAdmin.widgets&&(sowbBlockEditorAdmin.widgets.sort(function(e,t){return e.name<t.name?-1:e.name>t.name?1:0}),(o=sowbBlockEditorAdmin.widgets.map(function(e){return{value:e.class,label:e.name}})).unshift({value:"",label:b("Select widget type","so-widgets-bundle")}));var s=i.attributes.widgetClass&&!i.widgetFormHtml;s&&$.post({url:sowbBlockEditorAdmin.restUrl+"sowb/v1/widgets/forms",beforeSend:function(e){e.setRequestHeader("X-WP-Nonce",sowbBlockEditorAdmin.nonce)},data:{widgetClass:i.attributes.widgetClass,widgetData:i.attributes.widgetData}}).done(function(e){i.setState({widgetFormHtml:e})}).fail(function(e){var t="";e.hasOwnProperty("responseJSON")?t=e.responseJSON.message:e.hasOwnProperty("responseText")&&(t=e.responseText),i.setState({widgetFormHtml:"<div>"+t+"</div>"})});var d=i.widgetFormHtml?i.widgetFormHtml:"";return[!!d&&r(a,{key:"controls"},r(g,null,r(c,{className:"components-icon-button components-toolbar__control",label:b("Preview widget.","so-widgets-bundle"),onClick:n,icon:"visibility"}))),r(u,{key:"placeholder",className:"so-widget-placeholder",label:b("SiteOrigin Widget","so-widgets-bundle"),instructions:b("Select the type of widget you want to use:","so-widgets-bundle")},i.loadingWidgets||s?r(m):r("div",{className:"so-widget-block-container"},r(l,{options:o,value:i.attributes.widgetClass,onChange:function(e){if(""!==e){if(i.widgetSettingsChanged&&!confirm(sowbBlockEditorAdmin.confirmChangeWidget))return!1;i.setAttributes({widgetClass:e,widgetData:null}),i.setState({editing:!0,widgetFormHtml:null,formInitialized:!1,widgetSettingsChanged:!1,widgetPreviewHtml:null,previewInitialized:!1})}}}),r("div",{className:"so-widget-block-form-container",dangerouslySetInnerHTML:{__html:d},ref:function(e){var t=$(e).find(".siteorigin-widget-form-main");0<t.length&&!i.formInitialized&&(t.siblings(".siteorigin-widget-preview").find("> a").on("click",function(e){e.stopImmediatePropagation(),n()}),t.data("backupDisabled",!0),t.sowSetupForm(),i.attributes.widgetData?sowbForms.setWidgetFormValues(t,i.attributes.widgetData):i.setAttributes({widgetData:sowbForms.getWidgetFormValues(t)}),t.on("change",function(){i.setAttributes({widgetData:sowbForms.getWidgetFormValues(t)}),i.setState({widgetSettingsChanged:!0,widgetPreviewHtml:null,previewInitialized:!1})}),i.setState({formInitialized:!0}))}})))]}),save:function(){return null}})}(window.wp.editor,window.wp.blocks,window.wp.i18n,window.wp.element,window.wp.components,window.wp.compose);
1
+ !function(e,t,i,n,o,s){var r=n.createElement,d=t.registerBlockType,a=e.BlockControls,l=o.SelectControl,w=s.withState,g=o.Toolbar,c=o.IconButton,u=o.Placeholder,m=o.Spinner,b=i.__;d("sowb/widget-block",{title:b("SiteOrigin Widget","so-widgets-bundle"),description:b("Select a SiteOrigin widget from the dropdown.","so-widgets-bundle"),icon:function(){return r("span",{className:"widget-icon so-widget-icon so-block-editor-icon"})},category:"widgets",keywords:[sowbBlockEditorAdmin.widgets.reduce(function(e,t){return 0<e.length&&(e+=","),e+t.name},"")],supports:{html:!1},attributes:{widgetClass:{type:"string"},widgetData:{type:"object"}},edit:w({editing:!1,formInitialized:!1,previewInitialized:!1,widgetFormHtml:"",widgetSettingsChanged:!1,widgetPreviewHtml:""})(function(i){function n(){i.setState({editing:!1,previewInitialized:!1})}if(!i.editing&&i.attributes.widgetClass&&i.attributes.widgetData){var e=!i.loadingWidgets&&!i.editing&&!i.widgetPreviewHtml&&i.attributes.widgetClass&&i.attributes.widgetData;e&&jQuery.post({url:sowbBlockEditorAdmin.restUrl+"sowb/v1/widgets/previews",beforeSend:function(e){e.setRequestHeader("X-WP-Nonce",sowbBlockEditorAdmin.nonce)},data:{widgetClass:i.attributes.widgetClass,widgetData:i.attributes.widgetData||{}}}).done(function(e){i.setState({widgetPreviewHtml:e,previewInitialized:!1})}).fail(function(e){var t="";e.hasOwnProperty("responseJSON")?t=e.responseJSON.message:e.hasOwnProperty("responseText")&&(t=e.responseText),i.setState({widgetPreviewHtml:"<div>"+t+"</div>"})});var t=i.widgetPreviewHtml?i.widgetPreviewHtml:"";return[r(a,{key:"controls"},r(g,null,r(c,{className:"components-icon-button components-toolbar__control",label:b("Edit widget.","so-widgets-bundle"),onClick:function(){i.setState({editing:!0,formInitialized:!1})},icon:"edit"}))),r("div",{key:"preview",className:"so-widget-preview-container"},e?r("div",{className:"so-widgets-spinner-container"},r("span",null,r(m))):r("div",{dangerouslySetInnerHTML:{__html:t},ref:function(){i.previewInitialized||(jQuery(window.sowb).trigger("setup_widgets",{preview:!0}),i.setState({previewInitialized:!0}))}}))]}var o=[];sowbBlockEditorAdmin.widgets&&(sowbBlockEditorAdmin.widgets.sort(function(e,t){return e.name<t.name?-1:e.name>t.name?1:0}),(o=sowbBlockEditorAdmin.widgets.map(function(e){return{value:e.class,label:e.name}})).unshift({value:"",label:b("Select widget type","so-widgets-bundle")}));var s=i.attributes.widgetClass&&!i.widgetFormHtml;s&&jQuery.post({url:sowbBlockEditorAdmin.restUrl+"sowb/v1/widgets/forms",beforeSend:function(e){e.setRequestHeader("X-WP-Nonce",sowbBlockEditorAdmin.nonce)},data:{widgetClass:i.attributes.widgetClass,widgetData:i.attributes.widgetData}}).done(function(e){i.setState({widgetFormHtml:e})}).fail(function(e){var t="";e.hasOwnProperty("responseJSON")?t=e.responseJSON.message:e.hasOwnProperty("responseText")&&(t=e.responseText),i.setState({widgetFormHtml:"<div>"+t+"</div>"})});var d=i.widgetFormHtml?i.widgetFormHtml:"";return[!!d&&r(a,{key:"controls"},r(g,null,r(c,{className:"components-icon-button components-toolbar__control",label:b("Preview widget.","so-widgets-bundle"),onClick:n,icon:"visibility"}))),r(u,{key:"placeholder",className:"so-widget-placeholder",label:b("SiteOrigin Widget","so-widgets-bundle"),instructions:b("Select the type of widget you want to use:","so-widgets-bundle")},i.loadingWidgets||s?r(m):r("div",{className:"so-widget-block-container"},r(l,{options:o,value:i.attributes.widgetClass,onChange:function(e){if(""!==e){if(i.widgetSettingsChanged&&!confirm(sowbBlockEditorAdmin.confirmChangeWidget))return!1;i.setAttributes({widgetClass:e,widgetData:null}),i.setState({editing:!0,widgetFormHtml:null,formInitialized:!1,widgetSettingsChanged:!1,widgetPreviewHtml:null,previewInitialized:!1})}}}),r("div",{className:"so-widget-block-form-container",dangerouslySetInnerHTML:{__html:d},ref:function(e){var t=jQuery(e).find(".siteorigin-widget-form-main");0<t.length&&!i.formInitialized&&(t.siblings(".siteorigin-widget-preview").find("> a").on("click",function(e){e.stopImmediatePropagation(),n()}),t.data("backupDisabled",!0),t.sowSetupForm(),i.attributes.widgetData?sowbForms.setWidgetFormValues(t,i.attributes.widgetData):i.setAttributes({widgetData:sowbForms.getWidgetFormValues(t)}),t.on("change",function(){i.setAttributes({widgetData:sowbForms.getWidgetFormValues(t)}),i.setState({widgetSettingsChanged:!0,widgetPreviewHtml:null,previewInitialized:!1})}),i.setState({formInitialized:!0}))}})))]}),save:function(){return null}})}(window.wp.editor,window.wp.blocks,window.wp.i18n,window.wp.element,window.wp.components,window.wp.compose);
lang/so-widgets-bundle.pot CHANGED
@@ -284,7 +284,7 @@ msgstr ""
284
  msgid "An accordion widget."
285
  msgstr ""
286
 
287
- #: widgets/accordion/accordion.php:47, widgets/accordion/accordion.php:60, widgets/contact/contact.php:48, widgets/cta/cta.php:64, widgets/editor/editor.php:33, widgets/features/features.php:133, widgets/post-carousel/post-carousel.php:98, widgets/price-table/price-table.php:42, widgets/price-table/price-table.php:61, widgets/simple-masonry/simple-masonry.php:44, widgets/simple-masonry/simple-masonry.php:75, widgets/social-media-buttons/social-media-buttons.php:54, widgets/tabs/tabs.php:47, widgets/tabs/tabs.php:60, widgets/taxonomy/taxonomy.php:34, widgets/testimonial/testimonial.php:41, widgets/video/video.php:33, base/inc/fields/posts.class.php:97
288
  msgid "Title"
289
  msgstr ""
290
 
@@ -384,11 +384,11 @@ msgstr ""
384
  msgid "Open in a new window"
385
  msgstr ""
386
 
387
- #: widgets/button/button.php:62, widgets/button/button.php:66, widgets/features/features.php:76, widgets/icon/icon.php:31, widgets/price-table/price-table.php:119
388
  msgid "Icon"
389
  msgstr ""
390
 
391
- #: widgets/button/button.php:71, widgets/features/features.php:86, widgets/price-table/price-table.php:123, widgets/social-media-buttons/social-media-buttons.php:82
392
  msgid "Icon color"
393
  msgstr ""
394
 
@@ -404,19 +404,19 @@ msgstr ""
404
  msgid "Icon Placement"
405
  msgstr ""
406
 
407
- #: widgets/button/button.php:85, widgets/features/features.php:64
408
  msgid "Top"
409
  msgstr ""
410
 
411
- #: widgets/button/button.php:86, widgets/button/button.php:112, widgets/contact/contact.php:401, widgets/contact/contact.php:416, widgets/contact/contact.php:640, widgets/cta/cta.php:103, widgets/features/features.php:65, widgets/headline/headline.php:92, widgets/headline/headline.php:163, widgets/headline/headline.php:218, widgets/icon/icon.php:50, widgets/image/image.php:49, widgets/image/image.php:61, widgets/social-media-buttons/social-media-buttons.php:153, widgets/social-media-buttons/social-media-buttons.php:164, widgets/testimonial/testimonial.php:255
412
  msgid "Right"
413
  msgstr ""
414
 
415
- #: widgets/button/button.php:87, widgets/features/features.php:66
416
  msgid "Bottom"
417
  msgstr ""
418
 
419
- #: widgets/button/button.php:88, widgets/button/button.php:111, widgets/contact/contact.php:400, widgets/contact/contact.php:415, widgets/contact/contact.php:639, widgets/cta/cta.php:102, widgets/features/features.php:67, widgets/headline/headline.php:91, widgets/headline/headline.php:162, widgets/headline/headline.php:217, widgets/icon/icon.php:49, widgets/image/image.php:48, widgets/image/image.php:60, widgets/social-media-buttons/social-media-buttons.php:152, widgets/social-media-buttons/social-media-buttons.php:163, widgets/testimonial/testimonial.php:254
420
  msgid "Left"
421
  msgstr ""
422
 
@@ -472,7 +472,7 @@ msgstr ""
472
  msgid "Use hover effects"
473
  msgstr ""
474
 
475
- #: widgets/button/button.php:148, widgets/contact/contact.php:380, widgets/contact/contact.php:430, widgets/features/features.php:138, widgets/features/features.php:159, widgets/features/features.php:180, widgets/headline/headline.php:78, widgets/headline/headline.php:149
476
  msgid "Font"
477
  msgstr ""
478
 
@@ -617,7 +617,7 @@ msgid "Default subject"
617
  msgstr ""
618
 
619
  #: widgets/contact/contact.php:77
620
- msgid "Subject to use when there isn't one available."
621
  msgstr ""
622
 
623
  #: widgets/contact/contact.php:81
@@ -700,11 +700,11 @@ msgstr ""
700
  msgid "Phone Number"
701
  msgstr ""
702
 
703
- #: widgets/contact/contact.php:152, widgets/contact/contact.php:747
704
  msgid "Subject"
705
  msgstr ""
706
 
707
- #: widgets/contact/contact.php:153, widgets/features/features.php:111, widgets/features/features.php:154, widgets/headline/headline.php:43, widgets/headline/headline.php:114, widgets/price-table/price-table.php:111, widgets/taxonomy/taxonomy.php:51, widgets/testimonial/testimonial.php:82
708
  msgid "Text"
709
  msgstr ""
710
 
@@ -740,7 +740,7 @@ msgstr ""
740
  msgid "Required Field"
741
  msgstr ""
742
 
743
- #: widgets/contact/contact.php:182, widgets/contact/contact.php:1046
744
  msgid "Required field"
745
  msgstr ""
746
 
@@ -816,7 +816,7 @@ msgstr ""
816
  msgid "Audio"
817
  msgstr ""
818
 
819
- #: widgets/contact/contact.php:286, widgets/contact/contact.php:504, widgets/features/features.php:143, widgets/features/features.php:164, widgets/features/features.php:185, widgets/icon/icon.php:41
820
  msgid "Size"
821
  msgstr ""
822
 
@@ -892,7 +892,7 @@ msgstr ""
892
  msgid "Field labels"
893
  msgstr ""
894
 
895
- #: widgets/contact/contact.php:390, widgets/contact/contact.php:509, widgets/contact/contact.php:678, widgets/features/features.php:147, widgets/features/features.php:168, widgets/features/features.php:189, widgets/google-map/google-map.php:368, widgets/headline/headline.php:70, widgets/headline/headline.php:141, widgets/headline/headline.php:201, widgets/icon/icon.php:36, widgets/taxonomy/taxonomy.php:56
896
  msgid "Color"
897
  msgstr ""
898
 
@@ -1028,63 +1028,63 @@ msgstr ""
1028
  msgid "SiteOrigin Premium"
1029
  msgstr ""
1030
 
1031
- #: widgets/contact/contact.php:731
1032
  msgid "Your Name"
1033
  msgstr ""
1034
 
1035
- #: widgets/contact/contact.php:734
1036
  msgid "Please enter your name"
1037
  msgstr ""
1038
 
1039
- #: widgets/contact/contact.php:739
1040
  msgid "Your Email"
1041
  msgstr ""
1042
 
1043
- #: widgets/contact/contact.php:742
1044
  msgid "Please enter a valid email address"
1045
  msgstr ""
1046
 
1047
- #: widgets/contact/contact.php:750
1048
  msgid "Please enter a subject"
1049
  msgstr ""
1050
 
1051
- #: widgets/contact/contact.php:755
1052
  msgid "Message"
1053
  msgstr ""
1054
 
1055
- #: widgets/contact/contact.php:758
1056
  msgid "Please write something"
1057
  msgstr ""
1058
 
1059
- #: widgets/contact/contact.php:1058
1060
  msgid "Invalid email address."
1061
  msgstr ""
1062
 
1063
- #: widgets/contact/contact.php:1137
1064
  msgid "Error sending email, please try again later."
1065
  msgstr ""
1066
 
1067
- #: widgets/contact/contact.php:1163
1068
  msgid "A valid email is required"
1069
  msgstr ""
1070
 
1071
- #: widgets/contact/contact.php:1165
1072
  msgid "The email address is invalid"
1073
  msgstr ""
1074
 
1075
- #: widgets/contact/contact.php:1169
1076
  msgid "Missing subject"
1077
  msgstr ""
1078
 
1079
- #: widgets/contact/contact.php:1203
1080
  msgid "Error validating your Captcha response."
1081
  msgstr ""
1082
 
1083
- #: widgets/contact/contact.php:1235
1084
  msgid "Unfortunately our system identified your message as spam."
1085
  msgstr ""
1086
 
1087
- #: widgets/contact/contact.php:1243
1088
  msgctxt "The name of who sent this email"
1089
  msgid "From"
1090
  msgstr ""
@@ -1173,87 +1173,87 @@ msgstr ""
1173
  msgid "Icon container color"
1174
  msgstr ""
1175
 
1176
- #: widgets/features/features.php:62
1177
  msgid "Icon container position"
1178
  msgstr ""
1179
 
1180
- #: widgets/features/features.php:81, widgets/social-media-buttons/social-media-buttons.php:78
1181
  msgid "Icon title"
1182
  msgstr ""
1183
 
1184
- #: widgets/features/features.php:93
1185
  msgid "Icon image"
1186
  msgstr ""
1187
 
1188
- #: widgets/features/features.php:94
1189
  msgid "Use your own icon image."
1190
  msgstr ""
1191
 
1192
- #: widgets/features/features.php:99
1193
  msgid "Icon image size"
1194
  msgstr ""
1195
 
1196
- #: widgets/features/features.php:106, widgets/image/image.php:68
1197
  msgid "Title text"
1198
  msgstr ""
1199
 
1200
- #: widgets/features/features.php:116
1201
  msgid "More link text"
1202
  msgstr ""
1203
 
1204
- #: widgets/features/features.php:121
1205
  msgid "More link URL"
1206
  msgstr ""
1207
 
1208
- #: widgets/features/features.php:128
1209
  msgid "Font Design"
1210
  msgstr ""
1211
 
1212
- #: widgets/features/features.php:175
1213
  msgid "More Link"
1214
  msgstr ""
1215
 
1216
- #: widgets/features/features.php:198
1217
  msgid "Icon container shape"
1218
  msgstr ""
1219
 
1220
- #: widgets/features/features.php:205
1221
  msgid "Icon container size"
1222
  msgstr ""
1223
 
1224
- #: widgets/features/features.php:211, widgets/social-media-buttons/social-media-buttons.php:117
1225
  msgid "Icon size"
1226
  msgstr ""
1227
 
1228
- #: widgets/features/features.php:217
1229
  msgid "Use icon size for custom icon"
1230
  msgstr ""
1231
 
1232
- #: widgets/features/features.php:223
1233
  msgid "Features per row"
1234
  msgstr ""
1235
 
1236
- #: widgets/features/features.php:229
1237
  msgid "Responsive layout"
1238
  msgstr ""
1239
 
1240
- #: widgets/features/features.php:235
1241
  msgid "Link feature title to more URL"
1242
  msgstr ""
1243
 
1244
- #: widgets/features/features.php:241
1245
  msgid "Link icon to more URL"
1246
  msgstr ""
1247
 
1248
- #: widgets/features/features.php:247
1249
  msgid "Open more URL in a new window"
1250
  msgstr ""
1251
 
1252
- #: widgets/features/features.php:302, widgets/social-media-buttons/social-media-buttons.php:33, base/inc/widgets/base-slider.class.php:153
1253
  msgid "Responsive Breakpoint"
1254
  msgstr ""
1255
 
1256
- #: widgets/features/features.php:304
1257
  msgid "This setting controls when the features widget will collapse for mobile devices. The default value is 520px"
1258
  msgstr ""
1259
 
@@ -1761,7 +1761,7 @@ msgstr ""
1761
  msgid "Dynamically adjust your heading font size based on screen size."
1762
  msgstr ""
1763
 
1764
- #: widgets/headline/headline.php:261, widgets/hero/hero.php:235
1765
  msgid "FitText Compressor Strength"
1766
  msgstr ""
1767
 
@@ -1873,6 +1873,10 @@ msgstr ""
1873
  msgid "Enter the h1 font size. h2 - h6 will be proportionally sized based on this value."
1874
  msgstr ""
1875
 
 
 
 
 
1876
  #: widgets/hero/hero.php:246, widgets/layout-slider/layout-slider.php:175
1877
  msgid "Heading shadow intensity"
1878
  msgstr ""
@@ -1894,7 +1898,7 @@ msgid "Link color"
1894
  msgstr ""
1895
 
1896
  #: widgets/hero/hero.php:283
1897
- msgid "Link Hover Color"
1898
  msgstr ""
1899
 
1900
  #: widgets/icon/icon.php:4
@@ -2273,7 +2277,7 @@ msgstr ""
2273
  msgid "Mobile Align"
2274
  msgstr ""
2275
 
2276
- #: widgets/social-media-buttons/social-media-buttons.php:314
2277
  msgid "Add custom social networks with %sSiteOrigin Premium%s"
2278
  msgstr ""
2279
 
@@ -2983,186 +2987,190 @@ msgid "Snapchat"
2983
  msgstr ""
2984
 
2985
  #: widgets/social-media-buttons/data/networks.php:47
2986
- msgid "LinkedIn"
2987
  msgstr ""
2988
 
2989
  #: widgets/social-media-buttons/data/networks.php:53
2990
- msgid "Pinterest"
2991
  msgstr ""
2992
 
2993
  #: widgets/social-media-buttons/data/networks.php:59
2994
- msgid "Tumblr"
2995
  msgstr ""
2996
 
2997
  #: widgets/social-media-buttons/data/networks.php:65
2998
- msgid "Instagram"
2999
  msgstr ""
3000
 
3001
  #: widgets/social-media-buttons/data/networks.php:71
3002
- msgid "VK"
3003
  msgstr ""
3004
 
3005
  #: widgets/social-media-buttons/data/networks.php:77
3006
- msgid "Flickr"
3007
  msgstr ""
3008
 
3009
  #: widgets/social-media-buttons/data/networks.php:83
 
 
 
 
3010
  msgid "Vine"
3011
  msgstr ""
3012
 
3013
- #: widgets/social-media-buttons/data/networks.php:92
3014
  msgid "500px"
3015
  msgstr ""
3016
 
3017
- #: widgets/social-media-buttons/data/networks.php:98
3018
  msgid "AngelList"
3019
  msgstr ""
3020
 
3021
- #: widgets/social-media-buttons/data/networks.php:104
3022
  msgid "Bandcamp"
3023
  msgstr ""
3024
 
3025
- #: widgets/social-media-buttons/data/networks.php:110
3026
  msgid "Behance"
3027
  msgstr ""
3028
 
3029
- #: widgets/social-media-buttons/data/networks.php:116
3030
  msgid "Bitbucket"
3031
  msgstr ""
3032
 
3033
- #: widgets/social-media-buttons/data/networks.php:122
3034
  msgid "Blogger"
3035
  msgstr ""
3036
 
3037
- #: widgets/social-media-buttons/data/networks.php:128
3038
  msgid "Codepen"
3039
  msgstr ""
3040
 
3041
- #: widgets/social-media-buttons/data/networks.php:134
3042
  msgid "Delicious"
3043
  msgstr ""
3044
 
3045
- #: widgets/social-media-buttons/data/networks.php:140
3046
  msgid "deviantArt"
3047
  msgstr ""
3048
 
3049
- #: widgets/social-media-buttons/data/networks.php:146
3050
  msgid "Dribbble"
3051
  msgstr ""
3052
 
3053
- #: widgets/social-media-buttons/data/networks.php:152
3054
  msgid "Dropbox"
3055
  msgstr ""
3056
 
3057
- #: widgets/social-media-buttons/data/networks.php:158
3058
  msgid "Foursquare"
3059
  msgstr ""
3060
 
3061
- #: widgets/social-media-buttons/data/networks.php:164
3062
  msgid "Github"
3063
  msgstr ""
3064
 
3065
- #: widgets/social-media-buttons/data/networks.php:170
3066
  msgid "Gratipay"
3067
  msgstr ""
3068
 
3069
- #: widgets/social-media-buttons/data/networks.php:176
3070
  msgid "Goodreads"
3071
  msgstr ""
3072
 
3073
- #: widgets/social-media-buttons/data/networks.php:182
3074
  msgid "Hacker News"
3075
  msgstr ""
3076
 
3077
- #: widgets/social-media-buttons/data/networks.php:188
3078
  msgid "JSFiddle"
3079
  msgstr ""
3080
 
3081
- #: widgets/social-media-buttons/data/networks.php:194
3082
  msgid "Last.fm"
3083
  msgstr ""
3084
 
3085
- #: widgets/social-media-buttons/data/networks.php:200
3086
  msgid "Reddit"
3087
  msgstr ""
3088
 
3089
- #: widgets/social-media-buttons/data/networks.php:206
3090
  msgid "Slack"
3091
  msgstr ""
3092
 
3093
- #: widgets/social-media-buttons/data/networks.php:212
3094
  msgid "Slideshare"
3095
  msgstr ""
3096
 
3097
- #: widgets/social-media-buttons/data/networks.php:218
3098
  msgid "Soundcloud"
3099
  msgstr ""
3100
 
3101
- #: widgets/social-media-buttons/data/networks.php:224
3102
  msgid "Spotify"
3103
  msgstr ""
3104
 
3105
- #: widgets/social-media-buttons/data/networks.php:230
3106
  msgid "Stack Exchange"
3107
  msgstr ""
3108
 
3109
- #: widgets/social-media-buttons/data/networks.php:236
3110
  msgid "Stack Overflow"
3111
  msgstr ""
3112
 
3113
- #: widgets/social-media-buttons/data/networks.php:242
3114
  msgid "Steam"
3115
  msgstr ""
3116
 
3117
- #: widgets/social-media-buttons/data/networks.php:248
3118
  msgid "Strava"
3119
  msgstr ""
3120
 
3121
- #: widgets/social-media-buttons/data/networks.php:254
3122
  msgid "StumbleUpon"
3123
  msgstr ""
3124
 
3125
- #: widgets/social-media-buttons/data/networks.php:260
3126
  msgid "Telegram"
3127
  msgstr ""
3128
 
3129
- #: widgets/social-media-buttons/data/networks.php:266
3130
  msgid "Trello"
3131
  msgstr ""
3132
 
3133
- #: widgets/social-media-buttons/data/networks.php:272
3134
  msgid "TripAdvisor"
3135
  msgstr ""
3136
 
3137
- #: widgets/social-media-buttons/data/networks.php:278
3138
  msgid "Twitch"
3139
  msgstr ""
3140
 
3141
- #: widgets/social-media-buttons/data/networks.php:284
3142
  msgid "Vimeo"
3143
  msgstr ""
3144
 
3145
- #: widgets/social-media-buttons/data/networks.php:290
3146
  msgid "WhatsApp"
3147
  msgstr ""
3148
 
3149
- #: widgets/social-media-buttons/data/networks.php:296
3150
  msgid "WordPress"
3151
  msgstr ""
3152
 
3153
- #: widgets/social-media-buttons/data/networks.php:302
3154
  msgid "Xing"
3155
  msgstr ""
3156
 
3157
- #: widgets/social-media-buttons/data/networks.php:308
3158
  msgid "Yahoo"
3159
  msgstr ""
3160
 
3161
- #: widgets/social-media-buttons/data/networks.php:314
3162
  msgid "Yelp"
3163
  msgstr ""
3164
 
3165
- #: widgets/social-media-buttons/data/networks.php:320
3166
  msgid "YouTube"
3167
  msgstr ""
3168
 
284
  msgid "An accordion widget."
285
  msgstr ""
286
 
287
+ #: widgets/accordion/accordion.php:47, widgets/accordion/accordion.php:60, widgets/contact/contact.php:48, widgets/cta/cta.php:64, widgets/editor/editor.php:33, widgets/features/features.php:135, widgets/post-carousel/post-carousel.php:98, widgets/price-table/price-table.php:42, widgets/price-table/price-table.php:61, widgets/simple-masonry/simple-masonry.php:44, widgets/simple-masonry/simple-masonry.php:75, widgets/social-media-buttons/social-media-buttons.php:54, widgets/tabs/tabs.php:47, widgets/tabs/tabs.php:60, widgets/taxonomy/taxonomy.php:34, widgets/testimonial/testimonial.php:41, widgets/video/video.php:33, base/inc/fields/posts.class.php:97
288
  msgid "Title"
289
  msgstr ""
290
 
384
  msgid "Open in a new window"
385
  msgstr ""
386
 
387
+ #: widgets/button/button.php:62, widgets/button/button.php:66, widgets/features/features.php:78, widgets/icon/icon.php:31, widgets/price-table/price-table.php:119
388
  msgid "Icon"
389
  msgstr ""
390
 
391
+ #: widgets/button/button.php:71, widgets/features/features.php:88, widgets/price-table/price-table.php:123, widgets/social-media-buttons/social-media-buttons.php:82
392
  msgid "Icon color"
393
  msgstr ""
394
 
404
  msgid "Icon Placement"
405
  msgstr ""
406
 
407
+ #: widgets/button/button.php:85, widgets/features/features.php:66
408
  msgid "Top"
409
  msgstr ""
410
 
411
+ #: widgets/button/button.php:86, widgets/button/button.php:112, widgets/contact/contact.php:401, widgets/contact/contact.php:416, widgets/contact/contact.php:640, widgets/cta/cta.php:103, widgets/features/features.php:67, widgets/headline/headline.php:92, widgets/headline/headline.php:163, widgets/headline/headline.php:218, widgets/icon/icon.php:50, widgets/image/image.php:49, widgets/image/image.php:61, widgets/social-media-buttons/social-media-buttons.php:153, widgets/social-media-buttons/social-media-buttons.php:164, widgets/testimonial/testimonial.php:255
412
  msgid "Right"
413
  msgstr ""
414
 
415
+ #: widgets/button/button.php:87, widgets/features/features.php:68
416
  msgid "Bottom"
417
  msgstr ""
418
 
419
+ #: widgets/button/button.php:88, widgets/button/button.php:111, widgets/contact/contact.php:400, widgets/contact/contact.php:415, widgets/contact/contact.php:639, widgets/cta/cta.php:102, widgets/features/features.php:69, widgets/headline/headline.php:91, widgets/headline/headline.php:162, widgets/headline/headline.php:217, widgets/icon/icon.php:49, widgets/image/image.php:48, widgets/image/image.php:60, widgets/social-media-buttons/social-media-buttons.php:152, widgets/social-media-buttons/social-media-buttons.php:163, widgets/testimonial/testimonial.php:254
420
  msgid "Left"
421
  msgstr ""
422
 
472
  msgid "Use hover effects"
473
  msgstr ""
474
 
475
+ #: widgets/button/button.php:148, widgets/contact/contact.php:380, widgets/contact/contact.php:430, widgets/features/features.php:140, widgets/features/features.php:161, widgets/features/features.php:182, widgets/headline/headline.php:78, widgets/headline/headline.php:149
476
  msgid "Font"
477
  msgstr ""
478
 
617
  msgstr ""
618
 
619
  #: widgets/contact/contact.php:77
620
+ msgid "Subject to use when there isn't one supplied by the user. If you make use of this option it won't be possible to set the Subject field as required because the default subject will be used as a fallback."
621
  msgstr ""
622
 
623
  #: widgets/contact/contact.php:81
700
  msgid "Phone Number"
701
  msgstr ""
702
 
703
+ #: widgets/contact/contact.php:152, widgets/contact/contact.php:748
704
  msgid "Subject"
705
  msgstr ""
706
 
707
+ #: widgets/contact/contact.php:153, widgets/features/features.php:113, widgets/features/features.php:156, widgets/headline/headline.php:43, widgets/headline/headline.php:114, widgets/price-table/price-table.php:111, widgets/taxonomy/taxonomy.php:51, widgets/testimonial/testimonial.php:82
708
  msgid "Text"
709
  msgstr ""
710
 
740
  msgid "Required Field"
741
  msgstr ""
742
 
743
+ #: widgets/contact/contact.php:182, widgets/contact/contact.php:1047
744
  msgid "Required field"
745
  msgstr ""
746
 
816
  msgid "Audio"
817
  msgstr ""
818
 
819
+ #: widgets/contact/contact.php:286, widgets/contact/contact.php:504, widgets/features/features.php:145, widgets/features/features.php:166, widgets/features/features.php:187, widgets/icon/icon.php:41
820
  msgid "Size"
821
  msgstr ""
822
 
892
  msgid "Field labels"
893
  msgstr ""
894
 
895
+ #: widgets/contact/contact.php:390, widgets/contact/contact.php:509, widgets/contact/contact.php:678, widgets/features/features.php:149, widgets/features/features.php:170, widgets/features/features.php:191, widgets/google-map/google-map.php:368, widgets/headline/headline.php:70, widgets/headline/headline.php:141, widgets/headline/headline.php:201, widgets/icon/icon.php:36, widgets/taxonomy/taxonomy.php:56
896
  msgid "Color"
897
  msgstr ""
898
 
1028
  msgid "SiteOrigin Premium"
1029
  msgstr ""
1030
 
1031
+ #: widgets/contact/contact.php:732
1032
  msgid "Your Name"
1033
  msgstr ""
1034
 
1035
+ #: widgets/contact/contact.php:735
1036
  msgid "Please enter your name"
1037
  msgstr ""
1038
 
1039
+ #: widgets/contact/contact.php:740
1040
  msgid "Your Email"
1041
  msgstr ""
1042
 
1043
+ #: widgets/contact/contact.php:743
1044
  msgid "Please enter a valid email address"
1045
  msgstr ""
1046
 
1047
+ #: widgets/contact/contact.php:751
1048
  msgid "Please enter a subject"
1049
  msgstr ""
1050
 
1051
+ #: widgets/contact/contact.php:756
1052
  msgid "Message"
1053
  msgstr ""
1054
 
1055
+ #: widgets/contact/contact.php:759
1056
  msgid "Please write something"
1057
  msgstr ""
1058
 
1059
+ #: widgets/contact/contact.php:1059
1060
  msgid "Invalid email address."
1061
  msgstr ""
1062
 
1063
+ #: widgets/contact/contact.php:1138
1064
  msgid "Error sending email, please try again later."
1065
  msgstr ""
1066
 
1067
+ #: widgets/contact/contact.php:1164
1068
  msgid "A valid email is required"
1069
  msgstr ""
1070
 
1071
+ #: widgets/contact/contact.php:1166
1072
  msgid "The email address is invalid"
1073
  msgstr ""
1074
 
1075
+ #: widgets/contact/contact.php:1170
1076
  msgid "Missing subject"
1077
  msgstr ""
1078
 
1079
+ #: widgets/contact/contact.php:1204
1080
  msgid "Error validating your Captcha response."
1081
  msgstr ""
1082
 
1083
+ #: widgets/contact/contact.php:1236
1084
  msgid "Unfortunately our system identified your message as spam."
1085
  msgstr ""
1086
 
1087
+ #: widgets/contact/contact.php:1244
1088
  msgctxt "The name of who sent this email"
1089
  msgid "From"
1090
  msgstr ""
1173
  msgid "Icon container color"
1174
  msgstr ""
1175
 
1176
+ #: widgets/features/features.php:64
1177
  msgid "Icon container position"
1178
  msgstr ""
1179
 
1180
+ #: widgets/features/features.php:83, widgets/social-media-buttons/social-media-buttons.php:78
1181
  msgid "Icon title"
1182
  msgstr ""
1183
 
1184
+ #: widgets/features/features.php:95
1185
  msgid "Icon image"
1186
  msgstr ""
1187
 
1188
+ #: widgets/features/features.php:96
1189
  msgid "Use your own icon image."
1190
  msgstr ""
1191
 
1192
+ #: widgets/features/features.php:101
1193
  msgid "Icon image size"
1194
  msgstr ""
1195
 
1196
+ #: widgets/features/features.php:108, widgets/image/image.php:68
1197
  msgid "Title text"
1198
  msgstr ""
1199
 
1200
+ #: widgets/features/features.php:118
1201
  msgid "More link text"
1202
  msgstr ""
1203
 
1204
+ #: widgets/features/features.php:123
1205
  msgid "More link URL"
1206
  msgstr ""
1207
 
1208
+ #: widgets/features/features.php:130
1209
  msgid "Font Design"
1210
  msgstr ""
1211
 
1212
+ #: widgets/features/features.php:177
1213
  msgid "More Link"
1214
  msgstr ""
1215
 
1216
+ #: widgets/features/features.php:200
1217
  msgid "Icon container shape"
1218
  msgstr ""
1219
 
1220
+ #: widgets/features/features.php:207
1221
  msgid "Icon container size"
1222
  msgstr ""
1223
 
1224
+ #: widgets/features/features.php:213, widgets/social-media-buttons/social-media-buttons.php:117
1225
  msgid "Icon size"
1226
  msgstr ""
1227
 
1228
+ #: widgets/features/features.php:219
1229
  msgid "Use icon size for custom icon"
1230
  msgstr ""
1231
 
1232
+ #: widgets/features/features.php:225
1233
  msgid "Features per row"
1234
  msgstr ""
1235
 
1236
+ #: widgets/features/features.php:231
1237
  msgid "Responsive layout"
1238
  msgstr ""
1239
 
1240
+ #: widgets/features/features.php:237
1241
  msgid "Link feature title to more URL"
1242
  msgstr ""
1243
 
1244
+ #: widgets/features/features.php:243
1245
  msgid "Link icon to more URL"
1246
  msgstr ""
1247
 
1248
+ #: widgets/features/features.php:249
1249
  msgid "Open more URL in a new window"
1250
  msgstr ""
1251
 
1252
+ #: widgets/features/features.php:304, widgets/social-media-buttons/social-media-buttons.php:33, base/inc/widgets/base-slider.class.php:153
1253
  msgid "Responsive Breakpoint"
1254
  msgstr ""
1255
 
1256
+ #: widgets/features/features.php:306
1257
  msgid "This setting controls when the features widget will collapse for mobile devices. The default value is 520px"
1258
  msgstr ""
1259
 
1761
  msgid "Dynamically adjust your heading font size based on screen size."
1762
  msgstr ""
1763
 
1764
+ #: widgets/headline/headline.php:261
1765
  msgid "FitText Compressor Strength"
1766
  msgstr ""
1767
 
1873
  msgid "Enter the h1 font size. h2 - h6 will be proportionally sized based on this value."
1874
  msgstr ""
1875
 
1876
+ #: widgets/hero/hero.php:235
1877
+ msgid "FitText compressor strength"
1878
+ msgstr ""
1879
+
1880
  #: widgets/hero/hero.php:246, widgets/layout-slider/layout-slider.php:175
1881
  msgid "Heading shadow intensity"
1882
  msgstr ""
1898
  msgstr ""
1899
 
1900
  #: widgets/hero/hero.php:283
1901
+ msgid "Link hover color"
1902
  msgstr ""
1903
 
1904
  #: widgets/icon/icon.php:4
2277
  msgid "Mobile Align"
2278
  msgstr ""
2279
 
2280
+ #: widgets/social-media-buttons/social-media-buttons.php:315
2281
  msgid "Add custom social networks with %sSiteOrigin Premium%s"
2282
  msgstr ""
2283
 
2987
  msgstr ""
2988
 
2989
  #: widgets/social-media-buttons/data/networks.php:47
2990
+ msgid "Skype"
2991
  msgstr ""
2992
 
2993
  #: widgets/social-media-buttons/data/networks.php:53
2994
+ msgid "LinkedIn"
2995
  msgstr ""
2996
 
2997
  #: widgets/social-media-buttons/data/networks.php:59
2998
+ msgid "Pinterest"
2999
  msgstr ""
3000
 
3001
  #: widgets/social-media-buttons/data/networks.php:65
3002
+ msgid "Tumblr"
3003
  msgstr ""
3004
 
3005
  #: widgets/social-media-buttons/data/networks.php:71
3006
+ msgid "Instagram"
3007
  msgstr ""
3008
 
3009
  #: widgets/social-media-buttons/data/networks.php:77
3010
+ msgid "VK"
3011
  msgstr ""
3012
 
3013
  #: widgets/social-media-buttons/data/networks.php:83
3014
+ msgid "Flickr"
3015
+ msgstr ""
3016
+
3017
+ #: widgets/social-media-buttons/data/networks.php:89
3018
  msgid "Vine"
3019
  msgstr ""
3020
 
3021
+ #: widgets/social-media-buttons/data/networks.php:98
3022
  msgid "500px"
3023
  msgstr ""
3024
 
3025
+ #: widgets/social-media-buttons/data/networks.php:104
3026
  msgid "AngelList"
3027
  msgstr ""
3028
 
3029
+ #: widgets/social-media-buttons/data/networks.php:110
3030
  msgid "Bandcamp"
3031
  msgstr ""
3032
 
3033
+ #: widgets/social-media-buttons/data/networks.php:116
3034
  msgid "Behance"
3035
  msgstr ""
3036
 
3037
+ #: widgets/social-media-buttons/data/networks.php:122
3038
  msgid "Bitbucket"
3039
  msgstr ""
3040
 
3041
+ #: widgets/social-media-buttons/data/networks.php:128
3042
  msgid "Blogger"
3043
  msgstr ""
3044
 
3045
+ #: widgets/social-media-buttons/data/networks.php:134
3046
  msgid "Codepen"
3047
  msgstr ""
3048
 
3049
+ #: widgets/social-media-buttons/data/networks.php:140
3050
  msgid "Delicious"
3051
  msgstr ""
3052
 
3053
+ #: widgets/social-media-buttons/data/networks.php:146
3054
  msgid "deviantArt"
3055
  msgstr ""
3056
 
3057
+ #: widgets/social-media-buttons/data/networks.php:152
3058
  msgid "Dribbble"
3059
  msgstr ""
3060
 
3061
+ #: widgets/social-media-buttons/data/networks.php:158
3062
  msgid "Dropbox"
3063
  msgstr ""
3064
 
3065
+ #: widgets/social-media-buttons/data/networks.php:164
3066
  msgid "Foursquare"
3067
  msgstr ""
3068
 
3069
+ #: widgets/social-media-buttons/data/networks.php:170
3070
  msgid "Github"
3071
  msgstr ""
3072
 
3073
+ #: widgets/social-media-buttons/data/networks.php:176
3074
  msgid "Gratipay"
3075
  msgstr ""
3076
 
3077
+ #: widgets/social-media-buttons/data/networks.php:182
3078
  msgid "Goodreads"
3079
  msgstr ""
3080
 
3081
+ #: widgets/social-media-buttons/data/networks.php:188
3082
  msgid "Hacker News"
3083
  msgstr ""
3084
 
3085
+ #: widgets/social-media-buttons/data/networks.php:194
3086
  msgid "JSFiddle"
3087
  msgstr ""
3088
 
3089
+ #: widgets/social-media-buttons/data/networks.php:200
3090
  msgid "Last.fm"
3091
  msgstr ""
3092
 
3093
+ #: widgets/social-media-buttons/data/networks.php:206
3094
  msgid "Reddit"
3095
  msgstr ""
3096
 
3097
+ #: widgets/social-media-buttons/data/networks.php:212
3098
  msgid "Slack"
3099
  msgstr ""
3100
 
3101
+ #: widgets/social-media-buttons/data/networks.php:218
3102
  msgid "Slideshare"
3103
  msgstr ""
3104
 
3105
+ #: widgets/social-media-buttons/data/networks.php:224
3106
  msgid "Soundcloud"
3107
  msgstr ""
3108
 
3109
+ #: widgets/social-media-buttons/data/networks.php:230
3110
  msgid "Spotify"
3111
  msgstr ""
3112
 
3113
+ #: widgets/social-media-buttons/data/networks.php:236
3114
  msgid "Stack Exchange"
3115
  msgstr ""
3116
 
3117
+ #: widgets/social-media-buttons/data/networks.php:242
3118
  msgid "Stack Overflow"
3119
  msgstr ""
3120
 
3121
+ #: widgets/social-media-buttons/data/networks.php:248
3122
  msgid "Steam"
3123
  msgstr ""
3124
 
3125
+ #: widgets/social-media-buttons/data/networks.php:254
3126
  msgid "Strava"
3127
  msgstr ""
3128
 
3129
+ #: widgets/social-media-buttons/data/networks.php:260
3130
  msgid "StumbleUpon"
3131
  msgstr ""
3132
 
3133
+ #: widgets/social-media-buttons/data/networks.php:266
3134
  msgid "Telegram"
3135
  msgstr ""
3136
 
3137
+ #: widgets/social-media-buttons/data/networks.php:272
3138
  msgid "Trello"
3139
  msgstr ""
3140
 
3141
+ #: widgets/social-media-buttons/data/networks.php:278
3142
  msgid "TripAdvisor"
3143
  msgstr ""
3144
 
3145
+ #: widgets/social-media-buttons/data/networks.php:284
3146
  msgid "Twitch"
3147
  msgstr ""
3148
 
3149
+ #: widgets/social-media-buttons/data/networks.php:290
3150
  msgid "Vimeo"
3151
  msgstr ""
3152
 
3153
+ #: widgets/social-media-buttons/data/networks.php:296
3154
  msgid "WhatsApp"
3155
  msgstr ""
3156
 
3157
+ #: widgets/social-media-buttons/data/networks.php:302
3158
  msgid "WordPress"
3159
  msgstr ""
3160
 
3161
+ #: widgets/social-media-buttons/data/networks.php:308
3162
  msgid "Xing"
3163
  msgstr ""
3164
 
3165
+ #: widgets/social-media-buttons/data/networks.php:314
3166
  msgid "Yahoo"
3167
  msgstr ""
3168
 
3169
+ #: widgets/social-media-buttons/data/networks.php:320
3170
  msgid "Yelp"
3171
  msgstr ""
3172
 
3173
+ #: widgets/social-media-buttons/data/networks.php:326
3174
  msgid "YouTube"
3175
  msgstr ""
3176
 
readme.txt CHANGED
@@ -1,9 +1,9 @@
1
  === SiteOrigin Widgets Bundle ===
2
  Tags: bundle, widget, button, slider, image, carousel, price table, google maps, tinymce, social links
3
  Requires at least: 4.2
4
- Tested up to: 5.2.2
5
- Stable tag: 1.15.8
6
- Build time: 2019-08-19T15:01:23+02:00
7
  License: GPLv3 or later
8
  Contributors: gpriday, braam-genis
9
  Donate link: https://siteorigin.com/downloads/premium/
@@ -30,7 +30,7 @@ The collection is growing, but here’s what we have so far.
30
  * Features Widget that lets you display a set of site or service features.
31
  * Video Widget to get your videos out there.
32
  * Headline Widget to get you noticed.
33
- * Social Links Widget to show you're active.
34
  * Accordion Widget to compress your content.
35
  * Contact Form Widget to let people know you care.
36
  * Editor Widget let's you richly edit text anywhere.
@@ -40,7 +40,7 @@ The collection is growing, but here’s what we have so far.
40
  * Layout Slider Widget lets you build layouts on slides using SiteOrigin Page Builder.
41
  * Masonry Widget to add images in a masonry layout.
42
  * Tabs Widget that'll let you group content into tabbed sections.
43
- * Taxonomy Widget to display a post's taxonomies.
44
  * Testimonials Widget to show people what your users/customers think of you.
45
 
46
  Once you enable a widget, you'll be able to use it anywhere standard widgets are used. You can manage your widgets by going to Plugins > SiteOrigin Widgets in your WordPress admin.
@@ -65,6 +65,16 @@ The SiteOrigin Widgets Bundle is the perfect platform to build widgets for your
65
 
66
  == Changelog ==
67
 
 
 
 
 
 
 
 
 
 
 
68
  = 1.15.8 - 20 August 2019 =
69
  * Run FitText setup on window resize events.
70
  * TinyMCE field: Copy any missing content CSS urls from main editor.
1
  === SiteOrigin Widgets Bundle ===
2
  Tags: bundle, widget, button, slider, image, carousel, price table, google maps, tinymce, social links
3
  Requires at least: 4.2
4
+ Tested up to: 5.3
5
+ Stable tag: 1.15.9
6
+ Build time: 2019-11-11T11:07:46+02:00
7
  License: GPLv3 or later
8
  Contributors: gpriday, braam-genis
9
  Donate link: https://siteorigin.com/downloads/premium/
30
  * Features Widget that lets you display a set of site or service features.
31
  * Video Widget to get your videos out there.
32
  * Headline Widget to get you noticed.
33
+ * Social Media Buttons which link to all your social media profiles.
34
  * Accordion Widget to compress your content.
35
  * Contact Form Widget to let people know you care.
36
  * Editor Widget let's you richly edit text anywhere.
40
  * Layout Slider Widget lets you build layouts on slides using SiteOrigin Page Builder.
41
  * Masonry Widget to add images in a masonry layout.
42
  * Tabs Widget that'll let you group content into tabbed sections.
43
+ * Taxonomy Widget to display the selected taxonomy for the current post.
44
  * Testimonials Widget to show people what your users/customers think of you.
45
 
46
  Once you enable a widget, you'll be able to use it anywhere standard widgets are used. You can manage your widgets by going to Plugins > SiteOrigin Widgets in your WordPress admin.
65
 
66
  == Changelog ==
67
 
68
+ = 1.15.9 - 11 November 2019 =
69
+ * Contact Form: Improved default email address handling.
70
+ * Contact Form: Improved subject field labeling.
71
+ * Post Carousel: Loop the carousel when reaching the end.
72
+ * Social Media Buttons: Fixed issue with responsive breakpoint unit of measurement.
73
+ * Google Maps: Ensured settings modal window opens when directed to insert API key.
74
+ * Google Maps: Fixed map center field when used in the Customizer.
75
+ * Fixed compatibility with WordPress 5.3.
76
+ * Minor code style and widget label improvements.
77
+
78
  = 1.15.8 - 20 August 2019 =
79
  * Run FitText setup on window resize events.
80
  * TinyMCE field: Copy any missing content CSS urls from main editor.
so-widgets-bundle.php CHANGED
@@ -2,7 +2,7 @@
2
  /*
3
  Plugin Name: SiteOrigin Widgets Bundle
4
  Description: A collection of all widgets, neatly bundled into a single plugin. It's also a framework to code your own widgets on top of.
5
- Version: 1.15.8
6
  Text Domain: so-widgets-bundle
7
  Domain Path: /lang
8
  Author: SiteOrigin
@@ -12,7 +12,7 @@ License: GPL3
12
  License URI: https://www.gnu.org/licenses/gpl-3.0.txt
13
  */
14
 
15
- define('SOW_BUNDLE_VERSION', '1.15.8');
16
  define('SOW_BUNDLE_BASE_FILE', __FILE__);
17
 
18
  // Allow JS suffix to be pre-set
2
  /*
3
  Plugin Name: SiteOrigin Widgets Bundle
4
  Description: A collection of all widgets, neatly bundled into a single plugin. It's also a framework to code your own widgets on top of.
5
+ Version: 1.15.9
6
  Text Domain: so-widgets-bundle
7
  Domain Path: /lang
8
  Author: SiteOrigin
12
  License URI: https://www.gnu.org/licenses/gpl-3.0.txt
13
  */
14
 
15
+ define('SOW_BUNDLE_VERSION', '1.15.9');
16
  define('SOW_BUNDLE_BASE_FILE', __FILE__);
17
 
18
  // Allow JS suffix to be pre-set
widgets/contact/contact.php CHANGED
@@ -74,7 +74,7 @@ class SiteOrigin_Widgets_ContactForm_Widget extends SiteOrigin_Widget {
74
  'default_subject' => array(
75
  'type' => 'text',
76
  'label' => __( 'Default subject', 'so-widgets-bundle' ),
77
- 'description' => __( "Subject to use when there isn't one available.", 'so-widgets-bundle' ),
78
  ),
79
  'subject_prefix' => array(
80
  'type' => 'text',
@@ -717,13 +717,14 @@ class SiteOrigin_Widgets_ContactForm_Widget extends SiteOrigin_Widget {
717
 
718
  function modify_instance( $instance ) {
719
  // Use this to set up an initial version of the
720
- if ( empty( $instance['settings']['to'] ) ) {
721
  $current_user = wp_get_current_user();
722
  $instance['settings']['to'] = $current_user->user_email;
723
  }
724
  if ( empty( $instance['settings']['from'] ) ) {
725
- $instance['settings']['from'] = get_option( 'admin_email' );
726
  }
 
727
  if ( empty( $instance['fields'] ) ) {
728
  $instance['fields'] = array(
729
  array(
@@ -1253,14 +1254,18 @@ class SiteOrigin_Widgets_ContactForm_Widget extends SiteOrigin_Widget {
1253
  }
1254
  $body = wpautop( trim( $body ) );
1255
 
1256
- if ( $instance['settings']['to'] == 'ibrossiter@gmail.com' || $instance['settings']['to'] == 'test@example.com' || $instance['settings']['to'] == 'support@siteorigin.com' || empty( $instance['settings']['to'] ) ) {
1257
  // Replace default and empty email address.
1258
  // Also replaces the email address that comes from the prebuilt layout directory and SiteOrigin Support Email
1259
  $instance['settings']['to'] = get_option( 'admin_email' );
1260
  }
1261
 
1262
- if ( $instance['settings']['from'] == 'test@example.com' || empty( $instance['settings']['from'] ) ) {
1263
- $instance['settings']['from'] = get_option( 'admin_email' );
 
 
 
 
1264
  }
1265
 
1266
  $headers = array(
@@ -1313,6 +1318,22 @@ class SiteOrigin_Widgets_ContactForm_Widget extends SiteOrigin_Widget {
1313
  static function sanitize_header( $value ) {
1314
  return preg_replace( '=((<CR>|<LF>|0x0A/%0A|0x0D/%0D|\\n|\\r)\S).*=i', null, $value );
1315
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1316
 
1317
  }
1318
 
74
  'default_subject' => array(
75
  'type' => 'text',
76
  'label' => __( 'Default subject', 'so-widgets-bundle' ),
77
+ 'description' => __( "Subject to use when there isn't one supplied by the user. If you make use of this option it won't be possible to set the Subject field as required because the default subject will be used as a fallback.", 'so-widgets-bundle' ),
78
  ),
79
  'subject_prefix' => array(
80
  'type' => 'text',
717
 
718
  function modify_instance( $instance ) {
719
  // Use this to set up an initial version of the
720
+ if ( empty( $instance['settings']['to'] ) || $this->is_dev_email( $instance['settings']['to'] ) ) {
721
  $current_user = wp_get_current_user();
722
  $instance['settings']['to'] = $current_user->user_email;
723
  }
724
  if ( empty( $instance['settings']['from'] ) ) {
725
+ $instance['settings']['from'] = $this->default_from_address();
726
  }
727
+
728
  if ( empty( $instance['fields'] ) ) {
729
  $instance['fields'] = array(
730
  array(
1254
  }
1255
  $body = wpautop( trim( $body ) );
1256
 
1257
+ if ( $this->is_dev_email($instance['settings']['to']) || empty( $instance['settings']['to'] ) ) {
1258
  // Replace default and empty email address.
1259
  // Also replaces the email address that comes from the prebuilt layout directory and SiteOrigin Support Email
1260
  $instance['settings']['to'] = get_option( 'admin_email' );
1261
  }
1262
 
1263
+ if (
1264
+ $this->is_dev_email($instance['settings']['from']) ||
1265
+ empty( $instance['settings']['from'] ) ||
1266
+ $instance['settings']['from'] == $instance['settings']['to']
1267
+ ) {
1268
+ $instance['settings']['from'] = $this->default_from_address();
1269
  }
1270
 
1271
  $headers = array(
1318
  static function sanitize_header( $value ) {
1319
  return preg_replace( '=((<CR>|<LF>|0x0A/%0A|0x0D/%0D|\\n|\\r)\S).*=i', null, $value );
1320
  }
1321
+
1322
+ private function is_dev_email($email) {
1323
+ return $email == 'ibrossiter@gmail.com' ||
1324
+ $email == 'test@example.com' ||
1325
+ $email == 'support@siteorigin.com';
1326
+ }
1327
+
1328
+ private function default_from_address(){
1329
+ // Get the site domain and get rid of www.
1330
+ $sitename = strtolower( $_SERVER['SERVER_NAME'] );
1331
+ if ( substr( $sitename, 0, 4 ) == 'www.' ) {
1332
+ $sitename = substr( $sitename, 4 );
1333
+ }
1334
+
1335
+ return apply_filters( 'siteorigin_widgets_contact_default_email', 'wordpress@' . $sitename );
1336
+ }
1337
 
1338
  }
1339
 
widgets/features/features.php CHANGED
@@ -57,14 +57,16 @@ class SiteOrigin_Widget_Features_Widget extends SiteOrigin_Widget {
57
  'default' => '#404040',
58
  ),
59
 
 
 
60
  'container_position' => array(
61
  'type' => 'select',
62
  'label' => __( 'Icon container position', 'so-widgets-bundle' ),
63
  'options' => array(
64
  'top' => __( 'Top', 'so-widgets-bundle' ),
65
- 'right' => __( 'Right', 'so-widgets-bundle' ),
66
  'bottom' => __( 'Bottom', 'so-widgets-bundle' ),
67
- 'left' => __( 'Left', 'so-widgets-bundle' ),
68
  ),
69
  'default' => 'top',
70
  ),
57
  'default' => '#404040',
58
  ),
59
 
60
+ // Left and right array keys are swapped due to a mistake that couldn't be corrected without disturbing existing users.
61
+
62
  'container_position' => array(
63
  'type' => 'select',
64
  'label' => __( 'Icon container position', 'so-widgets-bundle' ),
65
  'options' => array(
66
  'top' => __( 'Top', 'so-widgets-bundle' ),
67
+ 'left' => __( 'Right', 'so-widgets-bundle' ),
68
  'bottom' => __( 'Bottom', 'so-widgets-bundle' ),
69
+ 'right' => __( 'Left', 'so-widgets-bundle' ),
70
  ),
71
  'default' => 'top',
72
  ),
widgets/google-map/fields/css/location-field.css CHANGED
@@ -1 +1 @@
1
- .pac-container{z-index:100010}
1
+ .pac-container{z-index:1000010}
widgets/google-map/fields/js/location-field.js CHANGED
@@ -185,9 +185,6 @@ window.addEventListener('DOMContentLoaded', function () {
185
  sowbForms._geocodeQueue = sowbForms._geocodeQueue || [];
186
 
187
  var $locationField = $( this );
188
- if ( $locationField.is( ':not(:visible)' ) ) {
189
- return;
190
- }
191
 
192
  if ( sowbForms.mapsInitializing ) {
193
  return;
185
  sowbForms._geocodeQueue = sowbForms._geocodeQueue || [];
186
 
187
  var $locationField = $( this );
 
 
 
188
 
189
  if ( sowbForms.mapsInitializing ) {
190
  return;
widgets/google-map/fields/js/location-field.min.js CHANGED
@@ -1 +1 @@
1
- function sowbAdminGoogleMapInit(){sowbForms.mapsInitializing=!1,sowbForms.mapsInitialized=!0,sowbForms.setupLocationFields()}window.sowbForms=window.sowbForms||{},sowbForms.LocationField=function(){return{init:function(e){if(void 0!==google.maps.places){function o(){var e=JSON.parse(n.value),o="";e.hasOwnProperty("address")&&(o=e.address),e.hasOwnProperty("name")&&0!==o.indexOf(e.name)&&(o=e.name+", "+o),i.removeEventListener("change",r),i.value=o,i.dispatchEvent(new Event("change",{bubbles:!0,cancelable:!0})),i.addEventListener("change",r)}var i=e.querySelector(".siteorigin-widget-location-input"),n=e.querySelector(".siteorigin-widget-input"),t=new google.maps.places.Autocomplete(i),s=function(o){return new Promise(function(i,t){var n={name:o.name};if(n.address=o.hasOwnProperty("formatted_address")?o.formatted_address:"",o.hasOwnProperty("geometry"))n.location=o.geometry.location.toString(),i(n);else{var e={address:o.hasOwnProperty("formatted_address")?o.formatted_address:o.name};(new google.maps.Geocoder).geocode(e,function(e,o){o===google.maps.GeocoderStatus.OK?(n.location=e[0].geometry.location.toString(),i(n)):t(o)})}})};n.addEventListener("change",o);function a(e){n.value=JSON.stringify(e),n.removeEventListener("change",o),n.dispatchEvent(new Event("change",{bubbles:!0,cancelable:!0})),n.addEventListener("change",o)}t.addListener("place_changed",function(){var o=t.getPlace();s(o).then(function(e){a(e)}).catch(function(e){console.warn('SiteOrigin Google Maps Widget: Geocoding failed for "'+o.name+'" with status: '+e)})});var r=function(){a({name:i.value})};if(i.addEventListener("change",r),n.value){var l={};try{var d=JSON.parse(n.value);d.hasOwnProperty("location")||d.hasOwnProperty("address")&&(l.name=d.address)}catch(e){l.name=n.value}if(l.hasOwnProperty("name")&&"null"!==l.name){sowbForms.mapsMigrationLogged||(console.info("SiteOrigin Google Maps Widget: Starting automatic migration of location. Please wait a moment..."),sowbForms.mapsMigrationLogged=!0);var c=100;sowbForms._geocodeQueue.push({place:l,field:n}),1===sowbForms._geocodeQueue.length&&setTimeout(function(){!function i(e,t){s(e).then(function(e){if(t.value=JSON.stringify(e),n.dispatchEvent(new Event("change",{bubbles:!0,cancelable:!0})),sowbForms._geocodeQueue.shift(),0<sowbForms._geocodeQueue.length){var o=sowbForms._geocodeQueue[0];setTimeout(function(){i(o.place,o.field)},c)}else console.info("SiteOrigin Google Maps Widget: Location fields updated. Please save the post to complete the migration.")}).catch(function(e){if(e===google.maps.GeocoderStatus.OVER_QUERY_LIMIT)if(sowbForms.hasOwnProperty("overQueryLimitCount")?sowbForms.overQueryLimitCount++:sowbForms.overQueryLimitCount=1,sowbForms.overQueryLimitCount<3){var o=sowbForms._geocodeQueue[0];c*=10,setTimeout(function(){i(o.place,o.field)},c)}else console.warn("SiteOrigin Google Maps Widget: Automatic migration of old address failed with status: "+e),console.info("SiteOrigin Google Maps Widget: Please save this post and open the form to try again.")})}(l,n)},c)}else o()}}else console.error("SiteOrigin Google Maps Widget: Failed to load the places library.")}}},sowbForms.setupLocationFields=function(){google&&google.maps&&google.maps.places&&document.querySelectorAll(".siteorigin-widget-field-type-location").forEach(function(e){0===e.offsetWidth||0===e.offsetHeight||"true"===e.getAttribute("data-initialized")||((new sowbForms.LocationField).init(e),e.setAttribute("data-initialized","true"))})},window.addEventListener("DOMContentLoaded",function(){var n=n||jQuery;n&&n(document).on("sowsetupformfield",".siteorigin-widget-field-type-location",function(){sowbForms._geocodeQueue=sowbForms._geocodeQueue||[];var i=n(this);if(!i.is(":not(:visible)")&&!sowbForms.mapsInitializing)if(sowbForms.mapsInitialized)sowbForms.setupLocationFields();else{sowbForms.mapsInitializing=!0;var e=i.find(".location-field-data").data("apiKey");if(e||(sowbForms.displayNotice(n(this).closest(".siteorigin-widget-form"),soLocationField.missingApiKey,"",[{label:soLocationField.globalSettingsButtonLabel,url:soLocationField.globalSettingsButtonUrl}],i),console.warn("SiteOrigin Google Maps Widget: Could not find API key. Google Maps API key is required."),e=""),window.console&&window.console.error){var t=window.console.error;sowbForms.checkMapsApiInvalidKeyError=function(e){var o;if("string"==typeof e&&(null===(o=e.match(/^Google Maps.*API (error|warning): (.*)/))&&(o=e.match(/^This API project is not authorized to use this API/)),o&&(3===o.length?o=o[2]:1===o.length&&(o="ApiNotActivatedMapError"))),o)switch(o){case"InvalidKeyMapError":sowbForms.displayNotice(n(this).closest(".siteorigin-widget-form"),soLocationField.invalidApiKey,"",[{label:soLocationField.globalSettingsButtonLabel,url:soLocationField.globalSettingsButtonUrl}],i);break;case"ApiNotActivatedMapError":sowbForms.displayNotice(n(this).closest(".siteorigin-widget-form"),soLocationField.apiNotEnabled,"",[],i)}t.apply(window.console,arguments)}.bind(this),window.console.error=sowbForms.checkMapsApiInvalidKeyError}var o="https://maps.googleapis.com/maps/api/js?key="+e+"&libraries=places&callback=sowbAdminGoogleMapInit";n("body").append('<script async type="text/javascript" src="'+o+'">')}})});
1
+ function sowbAdminGoogleMapInit(){sowbForms.mapsInitializing=!1,sowbForms.mapsInitialized=!0,sowbForms.setupLocationFields()}window.sowbForms=window.sowbForms||{},sowbForms.LocationField=function(){return{init:function(e){if(void 0!==google.maps.places){function o(){var e=JSON.parse(n.value),o="";e.hasOwnProperty("address")&&(o=e.address),e.hasOwnProperty("name")&&0!==o.indexOf(e.name)&&(o=e.name+", "+o),i.removeEventListener("change",r),i.value=o,i.dispatchEvent(new Event("change",{bubbles:!0,cancelable:!0})),i.addEventListener("change",r)}var i=e.querySelector(".siteorigin-widget-location-input"),n=e.querySelector(".siteorigin-widget-input"),t=new google.maps.places.Autocomplete(i),s=function(o){return new Promise(function(i,t){var n={name:o.name};if(n.address=o.hasOwnProperty("formatted_address")?o.formatted_address:"",o.hasOwnProperty("geometry"))n.location=o.geometry.location.toString(),i(n);else{var e={address:o.hasOwnProperty("formatted_address")?o.formatted_address:o.name};(new google.maps.Geocoder).geocode(e,function(e,o){o===google.maps.GeocoderStatus.OK?(n.location=e[0].geometry.location.toString(),i(n)):t(o)})}})};n.addEventListener("change",o);function a(e){n.value=JSON.stringify(e),n.removeEventListener("change",o),n.dispatchEvent(new Event("change",{bubbles:!0,cancelable:!0})),n.addEventListener("change",o)}t.addListener("place_changed",function(){var o=t.getPlace();s(o).then(function(e){a(e)}).catch(function(e){console.warn('SiteOrigin Google Maps Widget: Geocoding failed for "'+o.name+'" with status: '+e)})});var r=function(){a({name:i.value})};if(i.addEventListener("change",r),n.value){var l={};try{var d=JSON.parse(n.value);d.hasOwnProperty("location")||d.hasOwnProperty("address")&&(l.name=d.address)}catch(e){l.name=n.value}if(l.hasOwnProperty("name")&&"null"!==l.name){sowbForms.mapsMigrationLogged||(console.info("SiteOrigin Google Maps Widget: Starting automatic migration of location. Please wait a moment..."),sowbForms.mapsMigrationLogged=!0);var c=100;sowbForms._geocodeQueue.push({place:l,field:n}),1===sowbForms._geocodeQueue.length&&setTimeout(function(){!function i(e,t){s(e).then(function(e){if(t.value=JSON.stringify(e),n.dispatchEvent(new Event("change",{bubbles:!0,cancelable:!0})),sowbForms._geocodeQueue.shift(),0<sowbForms._geocodeQueue.length){var o=sowbForms._geocodeQueue[0];setTimeout(function(){i(o.place,o.field)},c)}else console.info("SiteOrigin Google Maps Widget: Location fields updated. Please save the post to complete the migration.")}).catch(function(e){if(e===google.maps.GeocoderStatus.OVER_QUERY_LIMIT)if(sowbForms.hasOwnProperty("overQueryLimitCount")?sowbForms.overQueryLimitCount++:sowbForms.overQueryLimitCount=1,sowbForms.overQueryLimitCount<3){var o=sowbForms._geocodeQueue[0];c*=10,setTimeout(function(){i(o.place,o.field)},c)}else console.warn("SiteOrigin Google Maps Widget: Automatic migration of old address failed with status: "+e),console.info("SiteOrigin Google Maps Widget: Please save this post and open the form to try again.")})}(l,n)},c)}else o()}}else console.error("SiteOrigin Google Maps Widget: Failed to load the places library.")}}},sowbForms.setupLocationFields=function(){google&&google.maps&&google.maps.places&&document.querySelectorAll(".siteorigin-widget-field-type-location").forEach(function(e){0===e.offsetWidth||0===e.offsetHeight||"true"===e.getAttribute("data-initialized")||((new sowbForms.LocationField).init(e),e.setAttribute("data-initialized","true"))})},window.addEventListener("DOMContentLoaded",function(){var n=n||jQuery;n&&n(document).on("sowsetupformfield",".siteorigin-widget-field-type-location",function(){sowbForms._geocodeQueue=sowbForms._geocodeQueue||[];var i=n(this);if(!sowbForms.mapsInitializing)if(sowbForms.mapsInitialized)sowbForms.setupLocationFields();else{sowbForms.mapsInitializing=!0;var e=i.find(".location-field-data").data("apiKey");if(e||(sowbForms.displayNotice(n(this).closest(".siteorigin-widget-form"),soLocationField.missingApiKey,"",[{label:soLocationField.globalSettingsButtonLabel,url:soLocationField.globalSettingsButtonUrl}],i),console.warn("SiteOrigin Google Maps Widget: Could not find API key. Google Maps API key is required."),e=""),window.console&&window.console.error){var t=window.console.error;sowbForms.checkMapsApiInvalidKeyError=function(e){var o;if("string"==typeof e&&(null===(o=e.match(/^Google Maps.*API (error|warning): (.*)/))&&(o=e.match(/^This API project is not authorized to use this API/)),o&&(3===o.length?o=o[2]:1===o.length&&(o="ApiNotActivatedMapError"))),o)switch(o){case"InvalidKeyMapError":sowbForms.displayNotice(n(this).closest(".siteorigin-widget-form"),soLocationField.invalidApiKey,"",[{label:soLocationField.globalSettingsButtonLabel,url:soLocationField.globalSettingsButtonUrl}],i);break;case"ApiNotActivatedMapError":sowbForms.displayNotice(n(this).closest(".siteorigin-widget-form"),soLocationField.apiNotEnabled,"",[],i)}t.apply(window.console,arguments)}.bind(this),window.console.error=sowbForms.checkMapsApiInvalidKeyError}var o="https://maps.googleapis.com/maps/api/js?key="+e+"&libraries=places&callback=sowbAdminGoogleMapInit";n("body").append('<script async type="text/javascript" src="'+o+'">')}})});
widgets/google-map/fields/location.class.php CHANGED
@@ -63,7 +63,7 @@ class SiteOrigin_Widget_Field_Location extends SiteOrigin_Widget_Field_Base {
63
  '</a>'
64
  ),
65
  'globalSettingsButtonLabel' => __( 'Go to Google Maps Widget settings', 'so-widgets-bundle' ),
66
- 'globalSettingsButtonUrl' => admin_url( 'plugins.php?page=so-widgets-plugins' ),
67
  )
68
  );
69
  }
63
  '</a>'
64
  ),
65
  'globalSettingsButtonLabel' => __( 'Go to Google Maps Widget settings', 'so-widgets-bundle' ),
66
+ 'globalSettingsButtonUrl' => admin_url( 'plugins.php?page=so-widgets-plugins#settings-google-map' ),
67
  )
68
  );
69
  }
widgets/hero/hero.php CHANGED
@@ -232,7 +232,7 @@ class SiteOrigin_Widget_Hero_Widget extends SiteOrigin_Widget_Base_Slider {
232
 
233
  'fittext_compressor' => array(
234
  'type' => 'number',
235
- 'label' => __( 'FitText Compressor Strength', 'so-widgets-bundle' ),
236
  'description' => __( 'The higher the value, the more your headings will be scaled down. Values above 1 are allowed.', 'so-widgets-bundle' ),
237
  'default' => 0.85,
238
  'state_handler' => array(
@@ -280,7 +280,7 @@ class SiteOrigin_Widget_Hero_Widget extends SiteOrigin_Widget_Base_Slider {
280
 
281
  'link_color_hover' => array(
282
  'type' => 'color',
283
- 'label' => __( 'Link Hover Color', 'so-widgets-bundle' )
284
  ),
285
 
286
  )
232
 
233
  'fittext_compressor' => array(
234
  'type' => 'number',
235
+ 'label' => __( 'FitText compressor strength', 'so-widgets-bundle' ),
236
  'description' => __( 'The higher the value, the more your headings will be scaled down. Values above 1 are allowed.', 'so-widgets-bundle' ),
237
  'default' => 0.85,
238
  'state_handler' => array(
280
 
281
  'link_color_hover' => array(
282
  'type' => 'color',
283
+ 'label' => __( 'Link hover color', 'so-widgets-bundle' )
284
  ),
285
 
286
  )
widgets/post-carousel/js/carousel.js CHANGED
@@ -27,13 +27,12 @@ jQuery( function ( $ ) {
27
 
28
  var updatePosition = function () {
29
  if (position < 0) {
30
- position = 0;
31
- return;
32
  }
33
  if (position === numItems) {
34
- position--;
35
- return;
36
  }
 
37
  var numVisibleItems = Math.ceil( $$.outerWidth() / itemWidth );
38
  // Offset position by numVisibleItems to trigger the next fetch before the view is empty.
39
  if ( position + numVisibleItems >= $$.find( '.sow-carousel-item' ).length - 1 ) {
@@ -50,7 +49,7 @@ jQuery( function ( $ ) {
50
  query: $$.data( 'query' ),
51
  action: 'sow_carousel_load',
52
  paged: page,
53
- instance_hash: instanceHash,
54
  },
55
  function ( data, status ) {
56
  var $items = $( data.html );
@@ -60,7 +59,7 @@ jQuery( function ( $ ) {
60
  complete = numItems === totalPosts;
61
  fetching = false;
62
  }
63
- )
64
  }
65
  }
66
  $itemsContainer.css( 'transition-duration', "0.45s" );
@@ -132,7 +131,9 @@ jQuery( function ( $ ) {
132
  clearInterval( posInterval );
133
  }
134
  else if ( phase === "move" ) {
135
- if ( direction === negativeDirection ) distance *= -1;
 
 
136
  setNewPosition( startPosition + distance );
137
  var newTime = new Date().getTime();
138
  var timeDelta = (newTime - prevTime) / 1000;
@@ -142,7 +143,9 @@ jQuery( function ( $ ) {
142
  }
143
  else if ( phase === "end" ) {
144
  validSwipe = true;
145
- if ( direction === negativeDirection ) distance *= -1;
 
 
146
  if ( Math.abs( velocity ) > 400 ) {
147
  velocity *= 0.1;
148
  var startTime = new Date().getTime();
27
 
28
  var updatePosition = function () {
29
  if (position < 0) {
30
+ position = numItems ? numItems - 1 : 0;
 
31
  }
32
  if (position === numItems) {
33
+ position = 0;
 
34
  }
35
+
36
  var numVisibleItems = Math.ceil( $$.outerWidth() / itemWidth );
37
  // Offset position by numVisibleItems to trigger the next fetch before the view is empty.
38
  if ( position + numVisibleItems >= $$.find( '.sow-carousel-item' ).length - 1 ) {
49
  query: $$.data( 'query' ),
50
  action: 'sow_carousel_load',
51
  paged: page,
52
+ instance_hash: instanceHash
53
  },
54
  function ( data, status ) {
55
  var $items = $( data.html );
59
  complete = numItems === totalPosts;
60
  fetching = false;
61
  }
62
+ );
63
  }
64
  }
65
  $itemsContainer.css( 'transition-duration', "0.45s" );
131
  clearInterval( posInterval );
132
  }
133
  else if ( phase === "move" ) {
134
+ if ( direction === negativeDirection ) {
135
+ distance *= -1;
136
+ }
137
  setNewPosition( startPosition + distance );
138
  var newTime = new Date().getTime();
139
  var timeDelta = (newTime - prevTime) / 1000;
143
  }
144
  else if ( phase === "end" ) {
145
  validSwipe = true;
146
+ if ( direction === negativeDirection ) {
147
+ distance *= -1;
148
+ }
149
  if ( Math.abs( velocity ) > 400 ) {
150
  velocity *= 0.1;
151
  var startTime = new Date().getTime();
widgets/post-carousel/js/carousel.min.js CHANGED
@@ -1 +1 @@
1
- var sowb=window.sowb||{};jQuery(function(_){sowb.setupCarousel=function(){_(".sow-carousel-wrapper").each(function(){function u(){if(w<0)w=0;else if(w!==l){var e=Math.ceil(t.outerWidth()/d);if(w+e>=t.find(".sow-carousel-item").length-1&&!r&&!f){r=!0,i++,n.append('<li class="sow-carousel-item sow-carousel-loading"></li>');var s=a.find('input[name="instance_hash"]').val();_.get(t.data("ajax-url"),{query:t.data("query"),action:"sow_carousel_load",paged:i,instance_hash:s},function(e,s){_(e.html).appendTo(n).hide().fadeIn(),t.find(".sow-carousel-loading").remove(),l=t.find(".sow-carousel-item").length,f=l===c,r=!1})}n.css("transition-duration","0.45s"),n.css(h,-d*w+"px")}else w--}var t=_(this),e=t.closest(".sow-carousel-container"),a=t.closest(".sow-carousel-container").parent(),n=t.find(".sow-carousel-items"),s=t.find(".sow-carousel-item"),o=s.eq(0),w=0,i=1,r=!1,l=s.length,c=t.data("found-posts"),f=l===c,d=o.width()+parseInt(o.css("margin-right")),p=e.hasClass("js-rtl"),h=p?"margin-right":"margin-left";if(a.on("click","a.sow-carousel-previous",function(e){e.preventDefault(),w-=p?-1:1,u()}),a.on("click","a.sow-carousel-next",function(e){e.preventDefault(),w+=p?-1:1,u()}),"function"==typeof t.swipe){function g(e){return e<50&&-d*l<e&&(n.css("transition-duration","0s"),n.css(h,e+"px"),!0)}function v(){var e=parseInt(n.css(h));w=Math.abs(Math.round(e/d)),u()}var m,b=!1,D=0,I=0,T=0,x=0,M=p?"right":"left";t.on("click",".sow-carousel-item a",function(e){b&&(e.preventDefault(),b=!1)}),t.swipe({excludedElements:"",triggerOnTouchEnd:!0,threshold:75,swipeStatus:function(e,s,a,n,t,o,i){if("up"===a||"down"===a)return!1;if("start"===s)I=-d*w,x=(new Date).getTime(),clearInterval(m);else if("move"===s){a===M&&(n*=-1),g(I+n);var r=(new Date).getTime();T=(n-D)/((r-x)/1e3),x=r,D=n}else if("end"===s)if(b=!0,a===M&&(n*=-1),400<Math.abs(T)){T*=.1;var l=(new Date).getTime(),c=0;m=setInterval(function(){var e=((new Date).getTime()-l)/1e3,s=I+n+(c+=T*e),t=Math.abs(T)-30<0;a===M?T+=30:T-=30,!t&&g(s)||(clearInterval(m),v())},20)}else v();else"cancel"===s&&u()}})}})},sowb.setupCarousel(),_(sowb).on("setup_widgets",sowb.setupCarousel)}),window.sowb=sowb;
1
+ var sowb=window.sowb||{};jQuery(function(_){sowb.setupCarousel=function(){_(".sow-carousel-wrapper").each(function(){function u(){w<0&&(w=c?c-1:0),w===c&&(w=0);var e=Math.ceil(t.outerWidth()/d);if(w+e>=t.find(".sow-carousel-item").length-1&&!r&&!f){r=!0,i++,n.append('<li class="sow-carousel-item sow-carousel-loading"></li>');var s=a.find('input[name="instance_hash"]').val();_.get(t.data("ajax-url"),{query:t.data("query"),action:"sow_carousel_load",paged:i,instance_hash:s},function(e,s){_(e.html).appendTo(n).hide().fadeIn(),t.find(".sow-carousel-loading").remove(),c=t.find(".sow-carousel-item").length,f=c===l,r=!1})}n.css("transition-duration","0.45s"),n.css(h,-d*w+"px")}var t=_(this),e=t.closest(".sow-carousel-container"),a=t.closest(".sow-carousel-container").parent(),n=t.find(".sow-carousel-items"),s=t.find(".sow-carousel-item"),o=s.eq(0),w=0,i=1,r=!1,c=s.length,l=t.data("found-posts"),f=c===l,d=o.width()+parseInt(o.css("margin-right")),p=e.hasClass("js-rtl"),h=p?"margin-right":"margin-left";if(a.on("click","a.sow-carousel-previous",function(e){e.preventDefault(),w-=p?-1:1,u()}),a.on("click","a.sow-carousel-next",function(e){e.preventDefault(),w+=p?-1:1,u()}),"function"==typeof t.swipe){function g(e){return e<50&&-d*c<e&&(n.css("transition-duration","0s"),n.css(h,e+"px"),!0)}function v(){var e=parseInt(n.css(h));w=Math.abs(Math.round(e/d)),u()}var m,b=!1,D=0,I=0,T=0,x=0,M=p?"right":"left";t.on("click",".sow-carousel-item a",function(e){b&&(e.preventDefault(),b=!1)}),t.swipe({excludedElements:"",triggerOnTouchEnd:!0,threshold:75,swipeStatus:function(e,s,a,n,t,o,i){if("up"===a||"down"===a)return!1;if("start"===s)I=-d*w,x=(new Date).getTime(),clearInterval(m);else if("move"===s){a===M&&(n*=-1),g(I+n);var r=(new Date).getTime();T=(n-D)/((r-x)/1e3),x=r,D=n}else if("end"===s)if(b=!0,a===M&&(n*=-1),400<Math.abs(T)){T*=.1;var c=(new Date).getTime(),l=0;m=setInterval(function(){var e=((new Date).getTime()-c)/1e3,s=I+n+(l+=T*e),t=Math.abs(T)-30<0;a===M?T+=30:T-=30,!t&&g(s)||(clearInterval(m),v())},20)}else v();else"cancel"===s&&u()}})}})},sowb.setupCarousel(),_(sowb).on("setup_widgets",sowb.setupCarousel)}),window.sowb=sowb;
widgets/social-media-buttons/data/networks.php CHANGED
@@ -43,6 +43,12 @@ return array(
43
  'icon_color' => '#FFFFFF',
44
  'button_color' => '#FFFC00'
45
  ),
 
 
 
 
 
 
46
  'linkedin' => array(
47
  'label' => __( 'LinkedIn', 'so-widgets-bundle' ),
48
  'base_url' => 'https://www.linkedin.com/',
43
  'icon_color' => '#FFFFFF',
44
  'button_color' => '#FFFC00'
45
  ),
46
+ 'skype' => array(
47
+ 'label' => __( 'Skype', 'so-widgets-bundle' ),
48
+ 'base_url' => 'https://skype.com/',
49
+ 'icon_color' => '#0078d7',
50
+ 'button_color' => '#FFFFFF'
51
+ ),
52
  'linkedin' => array(
53
  'label' => __( 'LinkedIn', 'so-widgets-bundle' ),
54
  'base_url' => 'https://www.linkedin.com/',
widgets/social-media-buttons/social-media-buttons.php CHANGED
@@ -31,7 +31,7 @@ class SiteOrigin_Widget_SocialMediaButtons_Widget extends SiteOrigin_Widget {
31
  'responsive_breakpoint' => array(
32
  'type' => 'measurement',
33
  'label' => __( 'Responsive Breakpoint', 'so-widgets-bundle' ),
34
- 'default' => 780,
35
  'description' => __( 'This setting controls when the Mobile Align setting will be used. The default value is 780px', 'so-widgets-bundle' ),
36
  )
37
  );
@@ -242,15 +242,16 @@ class SiteOrigin_Widget_SocialMediaButtons_Widget extends SiteOrigin_Widget {
242
  break;
243
  }
244
  $margin = $top . ' ' . $right . ' ' . $bottom . ' ' . $left;
245
-
246
- $global_settings = $this->get_global_settings();
 
247
  return array(
248
  'icon_size' => $design['icon_size'] . 'em',
249
  'rounding' => $design['rounding'] . 'em',
250
  'padding' => $design['padding'] . 'em',
251
  'align' => $design['align'],
252
  'mobile_align' => ! empty( $design['mobile_align'] ) ? $design['mobile_align'] : '',
253
- 'responsive_breakpoint' => ! empty( $global_settings['responsive_breakpoint'] ) ? $global_settings['responsive_breakpoint'] : '',
254
  'margin' => $margin
255
  );
256
  }
31
  'responsive_breakpoint' => array(
32
  'type' => 'measurement',
33
  'label' => __( 'Responsive Breakpoint', 'so-widgets-bundle' ),
34
+ 'default' => '780px',
35
  'description' => __( 'This setting controls when the Mobile Align setting will be used. The default value is 780px', 'so-widgets-bundle' ),
36
  )
37
  );
242
  break;
243
  }
244
  $margin = $top . ' ' . $right . ' ' . $bottom . ' ' . $left;
245
+
246
+ // Get responsive breakpoint and make sure it's properly formatted
247
+ $breakpoint = $this->get_global_settings( 'responsive_breakpoint' );
248
  return array(
249
  'icon_size' => $design['icon_size'] . 'em',
250
  'rounding' => $design['rounding'] . 'em',
251
  'padding' => $design['padding'] . 'em',
252
  'align' => $design['align'],
253
  'mobile_align' => ! empty( $design['mobile_align'] ) ? $design['mobile_align'] : '',
254
+ 'responsive_breakpoint' => ! empty( $breakpoint ) ? $breakpoint : '',
255
  'margin' => $margin
256
  );
257
  }