Page Builder: Live Composer – drag and drop website builder (visual front end site editor) - Version 1.4.5

Version Description

  • June 14 2019 =
  • Code clean-up and improvements.
Download this release

Release Info

Developer LiveComposer
Plugin Icon 128x128 Page Builder: Live Composer – drag and drop website builder (visual front end site editor)
Version 1.4.5
Comparing to
See all releases

Code changes from version 1.4.4 to 1.4.5

ds-live-composer.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin URI: https://www.livecomposerplugin.com
5
  * Description: Front-end page builder for WordPress with drag and drop editing. Build PRO responsive websites and landing pages. Visually customize any page element.
6
  * Author: Live Composer Team
7
- * Version: 1.4.4
8
  * Author URI: https://livecomposerplugin.com
9
  * License: GPL3
10
  * License URI: https://www.gnu.org/licenses/gpl-2.0.html
@@ -41,7 +41,7 @@ if ( ! defined( 'DS_LIVE_COMPOSER_VER' ) && version_compare( PHP_VERSION, '5.3.0
41
  * Constants
42
  */
43
 
44
- define( 'DS_LIVE_COMPOSER_VER', '1.4.4' );
45
 
46
  define( 'DS_LIVE_COMPOSER_SHORTNAME', __( 'Live Composer', 'live-composer-page-builder' ) );
47
  define( 'DS_LIVE_COMPOSER_BASENAME', plugin_basename( __FILE__ ) );
4
  * Plugin URI: https://www.livecomposerplugin.com
5
  * Description: Front-end page builder for WordPress with drag and drop editing. Build PRO responsive websites and landing pages. Visually customize any page element.
6
  * Author: Live Composer Team
7
+ * Version: 1.4.5
8
  * Author URI: https://livecomposerplugin.com
9
  * License: GPL3
10
  * License URI: https://www.gnu.org/licenses/gpl-2.0.html
41
  * Constants
42
  */
43
 
44
+ define( 'DS_LIVE_COMPOSER_VER', '1.4.5' );
45
 
46
  define( 'DS_LIVE_COMPOSER_SHORTNAME', __( 'Live Composer', 'live-composer-page-builder' ) );
47
  define( 'DS_LIVE_COMPOSER_BASENAME', plugin_basename( __FILE__ ) );
includes/css-generation.php CHANGED
@@ -57,16 +57,12 @@ function dslc_dynamic_css_hook() {
57
  *
58
  * @since 1.0
59
  */
60
- function dslc_custom_css( $dslc_code = '' ) {
61
 
62
  // Allow theme developers to output CSS for non-standard custom post types.
63
  $dslc_custom_css_ignore_check = false;
64
  $dslc_custom_css_ignore_check = apply_filters( 'dslc_generate_custom_css', $dslc_custom_css_ignore_check );
65
 
66
- if ( $dslc_code ) {
67
- $dslc_custom_css_ignore_check = true;
68
- }
69
-
70
  if ( ! is_singular() &&
71
  ! is_archive() &&
72
  ! is_author() &&
@@ -78,7 +74,6 @@ function dslc_custom_css( $dslc_code = '' ) {
78
  return;
79
  }
80
 
81
- global $dslc_active;
82
  global $dslc_css_style;
83
  global $content_width;
84
  global $dslc_post_types;
@@ -89,11 +84,8 @@ function dslc_custom_css( $dslc_code = '' ) {
89
  $lc_width = dslc_get_option( 'lc_max_width', 'dslc_plugin_options' );
90
 
91
  if ( empty( $lc_width ) ) {
92
-
93
  $lc_width = $content_width . 'px';
94
-
95
  } else {
96
-
97
  if ( false === strpos( $lc_width, 'px' ) && false === strpos( $lc_width, '%' ) ) {
98
  $lc_width = $lc_width . 'px';
99
  }
@@ -105,103 +97,95 @@ function dslc_custom_css( $dslc_code = '' ) {
105
  $template_id = false;
106
  $code_to_render = array();
107
 
108
- if ( ! $dslc_code ) {
109
-
110
- global $post;
111
-
112
- // If single, load template?
113
- if ( is_singular( $dslc_post_types ) ) {
114
- $template_id = dslc_st_get_template_id( get_the_ID() );
115
- }
116
-
117
- // If archive, load template?
118
- if ( is_archive() && $post && ! is_author() && ! is_search() ) {
119
- $post_type = get_post_type();
120
-
121
- $template_id = dslc_get_archive_template_by_pt( $post_type );
122
- }
123
-
124
- if ( is_author() && $post ) {
125
- $template_id = dslc_get_archive_template_by_pt( 'author' );
126
- }
127
 
128
- if ( is_search() && $post ) {
129
- $template_id = dslc_get_archive_template_by_pt( 'search_results' );
130
- }
131
-
132
- if ( is_404() ||
133
- ( is_archive() && ! $post ) ||
134
- ( is_author() && ! $post ) ) {
135
- $template_id = dslc_get_archive_template_by_pt( '404_page' );
136
- }
137
 
138
- if ( is_search() && ! $post ) {
139
- $template_id = dslc_get_archive_template_by_pt( 'page_not_found' );
140
- }
141
 
142
- // Header/Footer.
143
- if ( $template_id ) {
144
 
145
- $header_footer = dslc_hf_get_ID( $template_id );
 
 
146
 
147
- } elseif ( is_singular( $dslc_post_types ) ) {
 
 
148
 
149
- $template_id = dslc_st_get_template_id( get_the_ID() );
150
- $header_footer = dslc_hf_get_ID( $template_id );
 
 
 
151
 
152
- } else {
 
 
153
 
154
- $header_footer = dslc_hf_get_ID( get_the_ID() );
155
- }
 
 
 
 
 
 
 
156
 
157
- // ============================================================
158
- // Extract code to render CSS for.
159
- $header_id = false;
160
- $footer_id = false;
161
 
162
- // Header.
163
- if ( $header_footer['header'] ) {
164
- $header_code = get_post_meta( $header_footer['header'], 'dslc_code', true );
165
 
166
- if ( $header_code ) {
167
- $code_to_render[ $header_footer['header'] ] = $header_code;
168
- $header_id = $header_footer['header'];
169
- }
170
  }
 
171
 
172
- // Footer.
173
- if ( $header_footer['footer'] ) {
174
- $footer_code = get_post_meta( $header_footer['footer'], 'dslc_code', true );
175
 
176
- if ( $footer_code ) {
177
- $code_to_render[ $header_footer['footer'] ] = $footer_code;
178
- $footer_id = $header_footer['footer'];
179
- }
180
  }
 
181
 
182
- // Template content.
183
- if ( $template_id ) {
184
- $template_code = get_post_meta( $template_id, 'dslc_code', true );
185
 
186
- if ( $template_code ) {
187
- $code_to_render[ $template_id ] = $template_code;
188
- }
189
  }
 
190
 
191
- // Post/Page content.
192
- $post_id = get_the_ID();
193
- $code = get_post_meta( $post_id, 'dslc_code', true );
194
-
195
- if ( $code ) {
196
- $code_to_render[ $post_id ] = $code;
197
- }
198
- } else { // End of ! $dslc_code check.
199
 
200
- $code = $dslc_code;
201
- } // End if().
 
202
 
203
  $fonts_to_output = array();
204
 
 
 
 
205
  echo '<style type="text/css">';
206
 
207
  $output_css = false;
@@ -260,7 +244,9 @@ function dslc_custom_css( $dslc_code = '' ) {
260
  } // End foreach().
261
 
262
  // Wrapper width.
263
- echo '.dslc-modules-section-wrapper, .dslca-add-modules-section { width : ' . $lc_width . '; } ';
 
 
264
 
265
  // Add horizontal padding to the secitons (set in the plugins settings).
266
  $section_padding_hor = dslc_get_option( 'lc_section_paddings', 'dslc_plugin_options' );
@@ -278,6 +264,10 @@ function dslc_custom_css( $dslc_code = '' ) {
278
 
279
  echo '</style>';
280
 
 
 
 
 
281
  // Output Google Fonts request link.
282
  dslc_render_gfonts( $fonts_to_output );
283
  }
57
  *
58
  * @since 1.0
59
  */
60
+ function dslc_custom_css() {
61
 
62
  // Allow theme developers to output CSS for non-standard custom post types.
63
  $dslc_custom_css_ignore_check = false;
64
  $dslc_custom_css_ignore_check = apply_filters( 'dslc_generate_custom_css', $dslc_custom_css_ignore_check );
65
 
 
 
 
 
66
  if ( ! is_singular() &&
67
  ! is_archive() &&
68
  ! is_author() &&
74
  return;
75
  }
76
 
 
77
  global $dslc_css_style;
78
  global $content_width;
79
  global $dslc_post_types;
84
  $lc_width = dslc_get_option( 'lc_max_width', 'dslc_plugin_options' );
85
 
86
  if ( empty( $lc_width ) ) {
 
87
  $lc_width = $content_width . 'px';
 
88
  } else {
 
89
  if ( false === strpos( $lc_width, 'px' ) && false === strpos( $lc_width, '%' ) ) {
90
  $lc_width = $lc_width . 'px';
91
  }
97
  $template_id = false;
98
  $code_to_render = array();
99
 
100
+ global $post;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
101
 
102
+ // If single, load template?
103
+ if ( is_singular( $dslc_post_types ) ) {
104
+ $template_id = dslc_st_get_template_id( get_the_ID() );
105
+ }
 
 
 
 
 
106
 
107
+ // If archive, load template?
108
+ if ( is_archive() && $post && ! is_author() && ! is_search() ) {
109
+ $post_type = get_post_type();
110
 
111
+ $template_id = dslc_get_archive_template_by_pt( $post_type );
112
+ }
113
 
114
+ if ( is_author() && $post ) {
115
+ $template_id = dslc_get_archive_template_by_pt( 'author' );
116
+ }
117
 
118
+ if ( is_search() && $post ) {
119
+ $template_id = dslc_get_archive_template_by_pt( 'search_results' );
120
+ }
121
 
122
+ if ( is_404() ||
123
+ ( is_archive() && ! $post ) ||
124
+ ( is_author() && ! $post ) ) {
125
+ $template_id = dslc_get_archive_template_by_pt( '404_page' );
126
+ }
127
 
128
+ if ( is_search() && ! $post ) {
129
+ $template_id = dslc_get_archive_template_by_pt( 'page_not_found' );
130
+ }
131
 
132
+ // Header/Footer.
133
+ if ( $template_id ) {
134
+ $header_footer = dslc_hf_get_ID( $template_id );
135
+ } elseif ( is_singular( $dslc_post_types ) ) {
136
+ $template_id = dslc_st_get_template_id( get_the_ID() );
137
+ $header_footer = dslc_hf_get_ID( $template_id );
138
+ } else {
139
+ $header_footer = dslc_hf_get_ID( get_the_ID() );
140
+ }
141
 
142
+ // ============================================================
143
+ // Extract code to render CSS for.
144
+ $header_id = false;
145
+ $footer_id = false;
146
 
147
+ // Header.
148
+ if ( $header_footer['header'] ) {
149
+ $header_code = get_post_meta( $header_footer['header'], 'dslc_code', true );
150
 
151
+ if ( $header_code ) {
152
+ $code_to_render[ $header_footer['header'] ] = $header_code;
153
+ $header_id = $header_footer['header'];
 
154
  }
155
+ }
156
 
157
+ // Footer.
158
+ if ( $header_footer['footer'] ) {
159
+ $footer_code = get_post_meta( $header_footer['footer'], 'dslc_code', true );
160
 
161
+ if ( $footer_code ) {
162
+ $code_to_render[ $header_footer['footer'] ] = $footer_code;
163
+ $footer_id = $header_footer['footer'];
 
164
  }
165
+ }
166
 
167
+ // Template content.
168
+ if ( $template_id ) {
169
+ $template_code = get_post_meta( $template_id, 'dslc_code', true );
170
 
171
+ if ( $template_code ) {
172
+ $code_to_render[ $template_id ] = $template_code;
 
173
  }
174
+ }
175
 
176
+ // Post/Page content.
177
+ $post_id = get_the_ID();
178
+ $code = get_post_meta( $post_id, 'dslc_code', true );
 
 
 
 
 
179
 
180
+ if ( $code ) {
181
+ $code_to_render[ $post_id ] = $code;
182
+ }
183
 
184
  $fonts_to_output = array();
185
 
186
+ if ( 'wp_footer' == current_filter() ) {
187
+ echo '<div>'; // Required to pass HTML validation.
188
+ }
189
  echo '<style type="text/css">';
190
 
191
  $output_css = false;
244
  } // End foreach().
245
 
246
  // Wrapper width.
247
+ if ( 'px' !== $lc_width ) {
248
+ echo '.dslc-modules-section-wrapper, .dslca-add-modules-section { width : ' . $lc_width . '; } ';
249
+ }
250
 
251
  // Add horizontal padding to the secitons (set in the plugins settings).
252
  $section_padding_hor = dslc_get_option( 'lc_section_paddings', 'dslc_plugin_options' );
264
 
265
  echo '</style>';
266
 
267
+ if ( 'wp_footer' == current_filter() ) {
268
+ echo '</div>'; // Required to pass HTML validation.
269
+ }
270
+
271
  // Output Google Fonts request link.
272
  dslc_render_gfonts( $fonts_to_output );
273
  }
includes/display-functions.php CHANGED
@@ -806,8 +806,7 @@ function dslc_postid_is_404_template( $post_id ) {
806
  *
807
  * @param bool $update_ids Require module unique id regeneration (on row import).
808
  */
809
- function dslc_render_content( $page_code, $update_ids = false ) {
810
-
811
  // Transform JSON or old base64 encoded code into serialized array.
812
  $page_code_array = dslc_json_decode( $page_code );
813
 
@@ -846,7 +845,7 @@ function dslc_render_content( $page_code, $update_ids = false ) {
846
  $row_atts['give_new_id'] = 'true';
847
  }
848
 
849
- $page_html .= dslc_modules_section_front( $row_atts, $element['content'], 2 );
850
 
851
  } elseif ( 'module_area' === $element['element_type'] ) {
852
 
@@ -858,7 +857,7 @@ function dslc_render_content( $page_code, $update_ids = false ) {
858
  $modulearea_atts['give_new_id'] = 'true';
859
  }
860
 
861
- $page_html .= dslc_modules_area_front( $modulearea_atts, $element['content'], 2 );
862
 
863
  } elseif ( 'module' === $element['element_type'] ) {
864
 
@@ -870,8 +869,7 @@ function dslc_render_content( $page_code, $update_ids = false ) {
870
  $module_atts['give_new_id'] = 'true';
871
  }
872
 
873
- $page_html .= dslc_module_front( $module_atts, $element );
874
-
875
  } // End if().
876
  } // End foreach().
877
 
@@ -1002,7 +1000,7 @@ function dslc_json_decode( $raw_code, $ignore_migration = false ) {
1002
  *
1003
  * @since 1.0
1004
  */
1005
- function dslc_module_front( $atts, $settings_raw = null ) {
1006
 
1007
  global $dslc_active;
1008
 
@@ -1144,7 +1142,7 @@ function dslc_module_front( $atts, $settings_raw = null ) {
1144
  * @return string Rendered code (Not always! Needs refactoring).
1145
  * @since 1.0
1146
  */
1147
- function dslc_modules_section_front( $atts, $content = null, $version = 1 ) {
1148
 
1149
  global $dslc_active;
1150
  $section_style = dslc_row_get_style( $atts );
@@ -1168,7 +1166,7 @@ function dslc_modules_section_front( $atts, $content = null, $version = 1 ) {
1168
  $atts['show_on'] = 'desktop tablet phone';
1169
  }
1170
 
1171
- // Unique section ID
1172
  if ( ! isset( $atts['section_instance_id'] ) ) {
1173
  $atts['section_instance_id'] = dslc_get_new_module_id();
1174
  }
@@ -1271,8 +1269,8 @@ function dslc_modules_section_front( $atts, $content = null, $version = 1 ) {
1271
  $a_prepend = '';
1272
  $a_append = '';
1273
 
1274
- if ( $dslc_active ) {
1275
- $a_container_class .= 'dslc-modules-section-empty ';
1276
  $a_prepend = '<div class="dslc-modules-section-inner dslc-clearfix">';
1277
  $a_append = '</div>';
1278
  }
@@ -1386,7 +1384,7 @@ function dslc_modules_section_front( $atts, $content = null, $version = 1 ) {
1386
 
1387
  . '</div>' . $sticky_style;
1388
 
1389
- if ( $dslc_active && is_user_logged_in() && current_user_can( DS_LIVE_COMPOSER_CAPABILITY ) ) {
1390
 
1391
  $atts = dslc_encode_shortcodes_in_array( $atts );
1392
 
@@ -1413,16 +1411,6 @@ function dslc_modules_section_front( $atts, $content = null, $version = 1 ) {
1413
  $output .= dslc_decode_shortcodes( apply_filters( 'dslc_section_after', $dslc_section_after, $atts ) );
1414
  }
1415
 
1416
- /*
1417
- if ( $dslc_active ) {
1418
- // Return the output.
1419
- return $output;
1420
- } else {
1421
- // Return the output.
1422
- return do_shortcode( $output );
1423
- }
1424
- */
1425
-
1426
  return $output; // To make caching work we do shortcodes in dslc_filter_content only.
1427
 
1428
  } add_shortcode( 'dslc_modules_section', 'dslc_modules_section_front' );
@@ -1436,11 +1424,12 @@ function dslc_modules_section_front( $atts, $content = null, $version = 1 ) {
1436
  * @return string Rendered code (Not always! Needs refactoring).
1437
  * @since 1.0
1438
  */
1439
- function dslc_modules_area_front( $atts, $content = null, $version = 1 ) {
1440
 
1441
  global $dslc_active;
1442
 
1443
  $pos_class = '';
 
1444
 
1445
  // Set default module area size.
1446
  if ( ! isset( $atts['size'] ) ) {
@@ -1457,9 +1446,14 @@ function dslc_modules_area_front( $atts, $content = null, $version = 1 ) {
1457
  $pos_class = 'dslc-first-col';
1458
  }
1459
 
1460
- $output = '<div class="dslc-modules-area dslc-col dslc-' . $atts['size'] . '-col ' . $pos_class . '" data-size="' . $atts['size'] . '">';
1461
 
1462
- if ( $dslc_active && is_user_logged_in() && current_user_can( DS_LIVE_COMPOSER_CAPABILITY ) ) {
 
 
 
 
 
 
1463
 
1464
  // Management.
1465
  $output .= '<div class="dslca-modules-area-manage">
@@ -1613,12 +1607,11 @@ function dslc_render_gfonts( $fonts_array ) {
1613
  }
1614
 
1615
  $gfonts_output .= '<link href="//fonts.googleapis.com/css?family=';
1616
-
1617
  foreach ( $fonts_array as $key => $font ) {
1618
  if ( 0 < $key ) {
1619
  $gfonts_output .= '|';
1620
  }
1621
-
1622
  $gfonts_output .= $font;
1623
  }
1624
 
806
  *
807
  * @param bool $update_ids Require module unique id regeneration (on row import).
808
  */
809
+ function dslc_render_content( $page_code, $update_ids = false, $is_header_footer = false ) {
 
810
  // Transform JSON or old base64 encoded code into serialized array.
811
  $page_code_array = dslc_json_decode( $page_code );
812
 
845
  $row_atts['give_new_id'] = 'true';
846
  }
847
 
848
+ $page_html .= dslc_modules_section_front( $row_atts, $element['content'], 2, $is_header_footer );
849
 
850
  } elseif ( 'module_area' === $element['element_type'] ) {
851
 
857
  $modulearea_atts['give_new_id'] = 'true';
858
  }
859
 
860
+ $page_html .= dslc_modules_area_front( $modulearea_atts, $element['content'], 2, $is_header_footer );
861
 
862
  } elseif ( 'module' === $element['element_type'] ) {
863
 
869
  $module_atts['give_new_id'] = 'true';
870
  }
871
 
872
+ $page_html .= dslc_module_front( $module_atts, $element, $is_header_footer );
 
873
  } // End if().
874
  } // End foreach().
875
 
1000
  *
1001
  * @since 1.0
1002
  */
1003
+ function dslc_module_front( $atts, $settings_raw = null, $is_header_footer = false ) {
1004
 
1005
  global $dslc_active;
1006
 
1142
  * @return string Rendered code (Not always! Needs refactoring).
1143
  * @since 1.0
1144
  */
1145
+ function dslc_modules_section_front( $atts, $content = null, $version = 1, $is_header_footer = false ) {
1146
 
1147
  global $dslc_active;
1148
  $section_style = dslc_row_get_style( $atts );
1166
  $atts['show_on'] = 'desktop tablet phone';
1167
  }
1168
 
1169
+ // Unique section ID.
1170
  if ( ! isset( $atts['section_instance_id'] ) ) {
1171
  $atts['section_instance_id'] = dslc_get_new_module_id();
1172
  }
1269
  $a_prepend = '';
1270
  $a_append = '';
1271
 
1272
+ if ( $dslc_active && ! $is_header_footer ) {
1273
+ $a_container_class .= 'dslc-modules-section-empty dslc-modules-section-dnd';
1274
  $a_prepend = '<div class="dslc-modules-section-inner dslc-clearfix">';
1275
  $a_append = '</div>';
1276
  }
1384
 
1385
  . '</div>' . $sticky_style;
1386
 
1387
+ if ( $dslc_active && ! $is_header_footer && is_user_logged_in() && current_user_can( DS_LIVE_COMPOSER_CAPABILITY ) ) {
1388
 
1389
  $atts = dslc_encode_shortcodes_in_array( $atts );
1390
 
1411
  $output .= dslc_decode_shortcodes( apply_filters( 'dslc_section_after', $dslc_section_after, $atts ) );
1412
  }
1413
 
 
 
 
 
 
 
 
 
 
 
1414
  return $output; // To make caching work we do shortcodes in dslc_filter_content only.
1415
 
1416
  } add_shortcode( 'dslc_modules_section', 'dslc_modules_section_front' );
1424
  * @return string Rendered code (Not always! Needs refactoring).
1425
  * @since 1.0
1426
  */
1427
+ function dslc_modules_area_front( $atts, $content = null, $version = 1, $is_header_footer = false ) {
1428
 
1429
  global $dslc_active;
1430
 
1431
  $pos_class = '';
1432
+ $admin_class = '';
1433
 
1434
  // Set default module area size.
1435
  if ( ! isset( $atts['size'] ) ) {
1446
  $pos_class = 'dslc-first-col';
1447
  }
1448
 
 
1449
 
1450
+ if ( $dslc_active && ! $is_header_footer ) {
1451
+ $admin_class = ' dslc-modules-area-dnd';
1452
+ }
1453
+
1454
+ $output = '<div class="dslc-modules-area dslc-col dslc-' . $atts['size'] . '-col ' . $pos_class . $admin_class . '" data-size="' . $atts['size'] . '">';
1455
+
1456
+ if ( $dslc_active && ! $is_header_footer && is_user_logged_in() && current_user_can( DS_LIVE_COMPOSER_CAPABILITY ) ) {
1457
 
1458
  // Management.
1459
  $output .= '<div class="dslca-modules-area-manage">
1607
  }
1608
 
1609
  $gfonts_output .= '<link href="//fonts.googleapis.com/css?family=';
1610
+ $fonts_array = array_unique( $fonts_array );
1611
  foreach ( $fonts_array as $key => $font ) {
1612
  if ( 0 < $key ) {
1613
  $gfonts_output .= '|';
1614
  }
 
1615
  $gfonts_output .= $font;
1616
  }
1617
 
includes/header-footer.php CHANGED
@@ -655,7 +655,7 @@ function dslc_hf_get_headerfooter( $post_id = false, $hf_type = 'header' ) {
655
  if ( $hf_id ) {
656
 
657
  // Render content. Support both old and new version of the page code.
658
- $rendered_code = dslc_render_content( get_post_meta( $hf_id, 'dslc_code', true ) );
659
 
660
  // if ( ! empty( $rendered_code ) && ! dslc_is_editor_active() ) {
661
  if ( ! empty( $rendered_code ) ) {
655
  if ( $hf_id ) {
656
 
657
  // Render content. Support both old and new version of the page code.
658
+ $rendered_code = dslc_render_content( get_post_meta( $hf_id, 'dslc_code', true ), $update_ids = false, $is_header_footer = true );
659
 
660
  // if ( ! empty( $rendered_code ) && ! dslc_is_editor_active() ) {
661
  if ( ! empty( $rendered_code ) ) {
includes/row-system/inc/options-output.php CHANGED
@@ -297,17 +297,14 @@ function dslc_row_get_style( $atts = false ) {
297
  // The CSS rules.
298
  $rules = false;
299
  if ( isset( $row_option['affect_on_change_rule'] ) ) {
300
-
301
  $rules = explode( ',', $row_option['affect_on_change_rule'] );
302
  }
303
 
304
  // The CSS value.
305
  $value = false;
306
  if ( $atts && isset( $atts[ $row_option['id'] ] ) ) {
307
-
308
  $value = $atts[ $row_option['id'] ];
309
  } elseif ( isset( $row_option['std'] ) ) {
310
-
311
  $value = $row_option['std'];
312
  }
313
 
@@ -315,56 +312,43 @@ function dslc_row_get_style( $atts = false ) {
315
 
316
  // The CSS value extension.
317
  if ( isset( $row_option['ext'] ) ) {
318
-
319
  $value = $value . $row_option['ext'];
320
  }
321
 
322
  // Border.
323
  if ( 'border' === $row_option['id'] ) {
324
-
325
  $checkbox_arr = explode( ' ', trim( $value ) );
326
 
327
  if ( ! in_array( 'top', $checkbox_arr, true ) ) {
328
-
329
  $style .= 'border-top-style: hidden; ';
330
  }
331
 
332
  if ( ! in_array( 'right', $checkbox_arr, true ) ) {
333
-
334
  $style .= 'border-right-style: hidden; ';
335
  }
336
 
337
  if ( ! in_array( 'bottom', $checkbox_arr, true ) ) {
338
-
339
  $style .= 'border-bottom-style: hidden; ';
340
  }
341
 
342
  if ( ! in_array( 'left', $checkbox_arr, true ) ) {
343
-
344
  $style .= 'border-left-style: hidden; ';
345
  }
346
  }
347
 
348
  if ( $value && $rules ) {
349
-
350
  foreach ( $rules as $rule ) {
351
-
352
  if ( 'background-image' === $rule ) {
353
-
354
  if ( 'bg_image_thumb' === $row_option['id'] ) {
355
-
356
  if ( 'enabled' === $value ) {
357
-
358
  $value = 'url(' . apply_filters( 'dslc_row_bg_featured_image', wp_get_attachment_url( get_post_thumbnail_id( get_the_ID() ) ) ) . ')';
359
  }
360
  } else {
361
-
362
  $value = 'url(' . wp_get_attachment_url( $value ) . ')';
363
  }
364
  }
365
 
366
  if ( ! isset( $row_option['std'] ) || $orig_value !== $row_option['std'] ) {
367
-
368
  $style .= $rule . ':' . $value . ';';
369
  }
370
  }
@@ -450,10 +434,11 @@ function dslc_row_get_initial_style() {
450
  if ( 'background-image' === $rule ) {
451
 
452
  if ( 'bg_image_thumb' === $row_option['id'] ) {
453
-
454
  if ( 'enabled' === $value ) {
455
 
456
  $value = 'url(' . wp_get_attachment_url( get_post_thumbnail_id( get_the_ID() ) ) . ')';
 
 
457
  }
458
  } else {
459
 
297
  // The CSS rules.
298
  $rules = false;
299
  if ( isset( $row_option['affect_on_change_rule'] ) ) {
 
300
  $rules = explode( ',', $row_option['affect_on_change_rule'] );
301
  }
302
 
303
  // The CSS value.
304
  $value = false;
305
  if ( $atts && isset( $atts[ $row_option['id'] ] ) ) {
 
306
  $value = $atts[ $row_option['id'] ];
307
  } elseif ( isset( $row_option['std'] ) ) {
 
308
  $value = $row_option['std'];
309
  }
310
 
312
 
313
  // The CSS value extension.
314
  if ( isset( $row_option['ext'] ) ) {
 
315
  $value = $value . $row_option['ext'];
316
  }
317
 
318
  // Border.
319
  if ( 'border' === $row_option['id'] ) {
 
320
  $checkbox_arr = explode( ' ', trim( $value ) );
321
 
322
  if ( ! in_array( 'top', $checkbox_arr, true ) ) {
 
323
  $style .= 'border-top-style: hidden; ';
324
  }
325
 
326
  if ( ! in_array( 'right', $checkbox_arr, true ) ) {
 
327
  $style .= 'border-right-style: hidden; ';
328
  }
329
 
330
  if ( ! in_array( 'bottom', $checkbox_arr, true ) ) {
 
331
  $style .= 'border-bottom-style: hidden; ';
332
  }
333
 
334
  if ( ! in_array( 'left', $checkbox_arr, true ) ) {
 
335
  $style .= 'border-left-style: hidden; ';
336
  }
337
  }
338
 
339
  if ( $value && $rules ) {
 
340
  foreach ( $rules as $rule ) {
 
341
  if ( 'background-image' === $rule ) {
 
342
  if ( 'bg_image_thumb' === $row_option['id'] ) {
 
343
  if ( 'enabled' === $value ) {
 
344
  $value = 'url(' . apply_filters( 'dslc_row_bg_featured_image', wp_get_attachment_url( get_post_thumbnail_id( get_the_ID() ) ) ) . ')';
345
  }
346
  } else {
 
347
  $value = 'url(' . wp_get_attachment_url( $value ) . ')';
348
  }
349
  }
350
 
351
  if ( ! isset( $row_option['std'] ) || $orig_value !== $row_option['std'] ) {
 
352
  $style .= $rule . ':' . $value . ';';
353
  }
354
  }
434
  if ( 'background-image' === $rule ) {
435
 
436
  if ( 'bg_image_thumb' === $row_option['id'] ) {
 
437
  if ( 'enabled' === $value ) {
438
 
439
  $value = 'url(' . wp_get_attachment_url( get_post_thumbnail_id( get_the_ID() ) ) . ')';
440
+ } elseif ( 'disabled' === $value ) {
441
+ $value = 'none';
442
  }
443
  } else {
444
 
includes/row-system/inc/options.php CHANGED
@@ -86,44 +86,6 @@ function dslc_row_register_options() {
86
  ),
87
  );
88
 
89
- $dslc_var_row_options['sticky_group_open'] = array(
90
- 'label' => __( 'Sticky Row', 'live-composer-page-builder' ),
91
- 'id' => 'sticky_row_open',
92
- 'type' => 'group',
93
- 'action' => 'open',
94
- );
95
-
96
- $dslc_var_row_options['sticky_row'] = array(
97
- 'id' => 'sticky_row',
98
- 'std' => '',
99
- 'label' => __( 'Sticky', 'live-composer-page-builder' ),
100
- 'type' => 'checkbox',
101
- 'choices' => array(
102
- array(
103
- 'label' => 'Enabled',
104
- 'value' => 'enabled',
105
- ),
106
- ),
107
- );
108
-
109
- $dslc_var_row_options['sticky_row_padding_vertical'] = array(
110
- 'id' => 'sticky_row_padding_vertical',
111
- 'std' => '20',
112
- 'label' => __( 'Padding Vertical', 'live-composer-page-builder' ),
113
- 'type' => 'slider',
114
- 'affect_on_change_rule' => 'padding-bottom,padding-top',
115
- 'affect_on_change_el' => '.dslc-sticky-section-fixed',
116
- 'ext' => 'px',
117
- 'max' => 500,
118
- );
119
-
120
- $dslc_var_row_options['sticky_group_close'] = array(
121
- 'label' => __( 'Sticky Row', 'live-composer-page-builder' ),
122
- 'id' => 'sticky_row_close',
123
- 'type' => 'group',
124
- 'action' => 'close',
125
- );
126
-
127
  $dslc_var_row_options['bg_group_open'] = array(
128
  'label' => __( 'Background', 'live-composer-page-builder' ),
129
  'id' => 'bg_group_open',
@@ -317,6 +279,48 @@ function dslc_row_register_options() {
317
  'action' => 'close',
318
  );
319
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
320
  $dslc_var_row_options['border_group_open'] = array(
321
  'label' => __( 'Border', 'live-composer-page-builder' ),
322
  'id' => 'bg_group_open',
86
  ),
87
  );
88
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
89
  $dslc_var_row_options['bg_group_open'] = array(
90
  'label' => __( 'Background', 'live-composer-page-builder' ),
91
  'id' => 'bg_group_open',
279
  'action' => 'close',
280
  );
281
 
282
+ /* -------------------------------------------------------- */
283
+
284
+ $dslc_var_row_options['sticky_group_open'] = array(
285
+ 'label' => __( 'Sticky Row', 'live-composer-page-builder' ),
286
+ 'id' => 'sticky_row_open',
287
+ 'type' => 'group',
288
+ 'action' => 'open',
289
+ );
290
+
291
+ $dslc_var_row_options['sticky_row'] = array(
292
+ 'id' => 'sticky_row',
293
+ 'std' => '',
294
+ 'label' => __( 'Sticky', 'live-composer-page-builder' ),
295
+ 'type' => 'checkbox',
296
+ 'choices' => array(
297
+ array(
298
+ 'label' => 'Enabled',
299
+ 'value' => 'enabled',
300
+ ),
301
+ ),
302
+ );
303
+
304
+ $dslc_var_row_options['sticky_row_padding_vertical'] = array(
305
+ 'id' => 'sticky_row_padding_vertical',
306
+ 'std' => '20',
307
+ 'label' => __( 'Padding Vertical', 'live-composer-page-builder' ),
308
+ 'type' => 'slider',
309
+ 'affect_on_change_rule' => 'padding-bottom,padding-top',
310
+ 'affect_on_change_el' => '.dslc-sticky-section-fixed',
311
+ 'ext' => 'px',
312
+ 'max' => 500,
313
+ );
314
+
315
+ $dslc_var_row_options['sticky_group_close'] = array(
316
+ 'label' => __( 'Sticky Row', 'live-composer-page-builder' ),
317
+ 'id' => 'sticky_row_close',
318
+ 'type' => 'group',
319
+ 'action' => 'close',
320
+ );
321
+
322
+ /* -------------------------------------------------------- */
323
+
324
  $dslc_var_row_options['border_group_open'] = array(
325
  'label' => __( 'Border', 'live-composer-page-builder' ),
326
  'id' => 'bg_group_open',
includes/scripts.php CHANGED
@@ -234,7 +234,12 @@ final class DSLC_Scripts {
234
 
235
  // wp_enqueue_script( 'imagesloaded' ); // Need this for Masonry.
236
  // wp_enqueue_script( 'jquery-masonry' );
237
- wp_enqueue_script( 'dslc-builder-plugins-js', DS_LIVE_COMPOSER_URL . 'js/builder/builder.plugins.js', array( 'jquery', 'wp-color-picker' ), DS_LIVE_COMPOSER_VER );
 
 
 
 
 
238
 
239
  self::load_scripts( 'builder', 'dslc-builder-main-js' );
240
 
@@ -332,29 +337,24 @@ final class DSLC_Scripts {
332
  * @param array $exclude_dirs exclude dirs from search.
333
  */
334
  public static function load_scripts( $dir = '*', $scriptdeps = '', $exclude_dirs = array() ) {
335
-
336
  /** Load builder files dynamically */
337
  $directories = glob( DS_LIVE_COMPOSER_ABS . '/js/' . $dir, GLOB_ONLYDIR );
338
 
339
  foreach ( $directories as $dir ) {
340
-
341
  $files = glob( $dir . '/*.js' );
342
-
343
  foreach ( $files as $file ) {
344
-
345
  $filename = basename( $file );
346
-
347
  $filepath = explode( '/', $file );
348
  array_pop( $filepath );
349
  $filedir = array_pop( $filepath );
350
 
351
  if ( in_array( $filedir, $exclude_dirs, true ) ) {
352
-
353
  continue;
354
  }
355
 
356
  $filehandle = 'dslc-' . str_replace( '.', '-', $filename );
357
- wp_enqueue_script( $filehandle, DS_LIVE_COMPOSER_URL . 'js/' . $filedir . '/' . $filename, $scriptdeps, DS_LIVE_COMPOSER_VER, true );
 
358
  }
359
  }
360
  }
234
 
235
  // wp_enqueue_script( 'imagesloaded' ); // Need this for Masonry.
236
  // wp_enqueue_script( 'jquery-masonry' );
237
+ wp_enqueue_script(
238
+ 'dslc-builder-plugins-js',
239
+ DS_LIVE_COMPOSER_URL . 'js/builder/builder.plugins.js',
240
+ array( 'jquery', 'wp-color-picker' ),
241
+ filemtime( DS_LIVE_COMPOSER_ABS . '/js/builder/builder.plugins.js' ) // Version: filemtime — Gets file modification time.
242
+ );
243
 
244
  self::load_scripts( 'builder', 'dslc-builder-main-js' );
245
 
337
  * @param array $exclude_dirs exclude dirs from search.
338
  */
339
  public static function load_scripts( $dir = '*', $scriptdeps = '', $exclude_dirs = array() ) {
 
340
  /** Load builder files dynamically */
341
  $directories = glob( DS_LIVE_COMPOSER_ABS . '/js/' . $dir, GLOB_ONLYDIR );
342
 
343
  foreach ( $directories as $dir ) {
 
344
  $files = glob( $dir . '/*.js' );
 
345
  foreach ( $files as $file ) {
 
346
  $filename = basename( $file );
 
347
  $filepath = explode( '/', $file );
348
  array_pop( $filepath );
349
  $filedir = array_pop( $filepath );
350
 
351
  if ( in_array( $filedir, $exclude_dirs, true ) ) {
 
352
  continue;
353
  }
354
 
355
  $filehandle = 'dslc-' . str_replace( '.', '-', $filename );
356
+ $fileversion = filemtime( DS_LIVE_COMPOSER_ABS . '/js/' . $filedir . '/' . $filename ); // Version: filemtime — Gets file modification time.
357
+ wp_enqueue_script( $filehandle, DS_LIVE_COMPOSER_URL . 'js/' . $filedir . '/' . $filename, $scriptdeps, $fileversion, true );
358
  }
359
  }
360
  }
js/builder.all.min.js CHANGED
@@ -1 +1 @@
1
- "use strict";function dslc_ui_animations(){if(dslcDebug)console.log("dslc_ui_animations");jQuery(document).on("mouseenter",".dslca-modules-area-manage",function(){jQuery(this).closest(".dslc-modules-area").addClass("dslca-options-hovered")}).on("mouseleave",".dslca-modules-area-manage",function(){jQuery(this).closest(".dslc-modules-area").removeClass("dslca-options-hovered")});jQuery(document).on("mouseenter",".dslca-drag-not-in-progress .dslc-module-front",function(e){if(!jQuery("body").hasClass("dslca-composer-hidden")){if(jQuery(this).height()<190)jQuery(".dslca-module-manage",this).addClass("dslca-horizontal");else jQuery(".dslca-module-manage",this).removeClass("dslca-horizontal")}}).on("mouseleave",".dslca-drag-not-in-progress .dslc-module-front",function(e){if(!jQuery("body").hasClass("dslca-composer-hidden")){}});jQuery(document).on("mouseenter",".dslca-drag-not-in-progress .dslc-modules-area",function(e){var o=jQuery(this);if(!jQuery("body").hasClass("dslca-composer-hidden")){if(jQuery(this).height()<130)jQuery(".dslca-modules-area-manage",this).addClass("dslca-horizontal");else jQuery(".dslca-modules-area-manage",this).removeClass("dslca-horizontal")}}).on("mouseleave",".dslca-drag-not-in-progress .dslc-modules-area",function(e){var o=jQuery(this);if(!jQuery("body").hasClass("dslca-composer-hidden")){}})}jQuery(document).ready(function(){dslc_ui_animations()});"use strict";function dslc_save_composer(){if(dslcDebug)console.log("dslc_save_composer");dslc_generate_code();dslca_gen_content_for_search();var e=jQuery("#dslca-code").val(),o=jQuery("#dslca-content-for-search").val(),s=jQuery(".dslca-container").data("post-id");jQuery("body").addClass("dslca-saving-in-progress");jQuery(".dslca-save-composer .dslca-icon").removeClass("dslc-icon-ok").addClass("dslc-icon-spin dslc-icon-spinner");jQuery.ajax({method:"POST",type:"POST",url:DSLCAjax.ajaxurl,data:{action:"dslc-ajax-save-composer",dslc:"active",dslc_post_id:s,dslc_code:e,dslc_content_for_search:o},timeout:3e4}).done(function(e){if(e.status=="success"){jQuery(".dslca-save-composer").fadeOut(250);jQuery(".dslca-save-draft-composer").fadeOut(250);jQuery("body").append('<iframe class="lbmn-cache-iframe" id="lbmn-cache-iframe-'+s+'" src="'+DSLCSiteData.siteurl+"/?p="+s+'" ></iframe>');jQuery(".lbmn-cache-iframe").each(function(e,o){jQuery(o).load(function(){jQuery(o).remove()})})}else{alert("Something went wrong, please try to save again. Are you sure to make any changes? Error Code: "+e.status)}}).fail(function(e){if(e.statusText=="timeout"){alert("The request timed out after 30 seconds. Server do not respond in time. Please try again.")}else{alert("Something went wrong. Please try again. Error Code: "+e.statusText)}}).always(function(e){jQuery(".dslca-save-composer .dslca-icon").removeClass("dslc-icon-spin dslc-icon-spinner").addClass("dslc-icon-ok");jQuery("body").removeClass("dslca-saving-in-progress")})}function dslc_save_draft_composer(){if(dslcDebug)console.log("dslc_save_draft_composer");var e=jQuery("#dslca-code").val(),o=jQuery(".dslca-container").data("post-id");jQuery("body").addClass("dslca-saving-in-progress");jQuery(".dslca-save-draft-composer .dslca-icon").removeClass("dslc-icon-ok").addClass("dslc-icon-spin dslc-icon-spinner");jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-save-draft-composer",dslc:"active",dslc_post_id:o,dslc_code:e},function(e){jQuery(".dslca-save-draft-composer .dslca-icon").removeClass("dslc-icon-spin dslc-icon-spinner").addClass("dslc-icon-save");if(e.status=="success"){jQuery(".dslca-save-draft-composer").fadeOut(250)}else{alert("Something went wrong, please try to save again.")}jQuery("body").removeClass("dslca-saving-in-progress")})}function dslc_generate_code(){if(dslcDebug)console.log("dslc_generate_code");var e="",o,s="",d="",l=12,i=12,t=0,a=0,r,c,n,u,m,p="",f;jQuery("#dslc-main .dslc-modules-area",LiveComposer.Builder.PreviewAreaDocument).each(function(){if(jQuery(".dslc-module-front",this).length){jQuery(this).removeClass("dslc-modules-area-empty").addClass("dslc-modules-area-not-empty");jQuery(".dslca-no-content",this).hide()}else{jQuery(this).removeClass("dslc-modules-area-not-empty").addClass("dslc-modules-area-empty");jQuery(".dslca-no-content:not(:visible)",this).show().css({"-webkit-animation-name":"dslcBounceIn","-moz-animation-name":"dslcBounceIn","animation-name":"dslcBounceIn","animation-duration":"0.6s","-webkit-animation-duration":"0.6s",padding:0}).animate({padding:"35px 0"},300)}});jQuery("#dslc-main .dslc-modules-section",LiveComposer.Builder.PreviewAreaDocument).each(function(){m=jQuery(this);f=dslc_generate_section_code(m);m.find(".dslca-section-code").val(f);d=d+f+","});d=d.slice(0,-1);d="["+d+"]";jQuery("#dslca-code").val(d);jQuery("#dslca-export-code").val(d)}function dslc_generate_section_code(e){if(dslcDebug)console.log("dslc_generate_section_code");var i="",t,o="",s="",a=12,d=12,r=0,c=0,n,u,m,p,l,f="",v="",h;l=e;if(jQuery(".dslc-modules-area",l).length){l.removeClass("dslc-modules-section-empty").addClass("dslc-modules-section-not-empty")}else{l.removeClass("dslc-modules-section-not-empty").addClass("dslc-modules-section-empty")}jQuery(".dslc-modules-area.dslc-last-col, .dslc-modules-area.dslc-first-col",this).removeClass("dslc-last-col dslc-first-col");jQuery(".dslc-module-front.dslc-last-col, .dslc-module-front.dslc-first-col",this).removeClass("dslc-last-col dslc-first-col");c=0;v=l.find(".dslca-section-code").val();h=JSON.parse(v);f="";jQuery(".dslca-modules-section-settings input",l).each(function(){var e=jQuery(this);var o=e.data("id");var s=e.val();f=f+o+'="'+s+'" ';h[o]=s});if(undefined!==h["give_new_id"]){delete h["give_new_id"]}h["content"]=[];jQuery(".dslc-modules-area",l).each(function(){r=0;u=jQuery(this);n=parseInt(u.data("size"));m="no";p="no";c+=n;jQuery(this).removeClass("dslc-first-col");jQuery(this).removeClass("dslc-last-col");if(c==d){jQuery(this).addClass("dslc-last-col").next(".dslc-modules-area").addClass("dslc-first-col");c=0;m="yes"}else if(c>d){jQuery(this).removeClass("dslc-last-col").addClass("dslc-first-col");c=n;p="yes"}if(c==n){p="yes";jQuery(this).removeClass("dslc-last-col").addClass("dslc-first-col")}var l='{"element_type":"module_area","last":"'+m+'","first":"'+p+'","size":"'+n+'"}';l=JSON.parse(l);if(undefined!==l["give_new_id"]){delete l["give_new_id"]}l.content=[];jQuery(".dslc-module-front",u).each(function(){var o=jQuery(this);t=parseInt(o[0].getAttribute("data-dslc-module-size"));var e="no";var s="no";jQuery(this).removeClass("dslc-first-col");jQuery(this).removeClass("dslc-last-col");r+=t;if(r==a){jQuery(this).addClass("dslc-last-col");jQuery(this).next(".dslc-module-front").addClass("dslc-first-col");r=0;e="yes";s="yes"}else if(r>a){jQuery(this).removeClass("dslc-last-col").addClass("dslc-first-col");r=t;s="yes"}if(r==t){s="yes";jQuery(this).removeClass("dslc-last-col").addClass("dslc-first-col")}try{i=o[0].querySelector(".dslca-module-code").value}catch(e){console.info("No DSLC code found in module: "+o[0].getAttribute("id"))}if(""!==i){var d=JSON.parse(i);d.last=e;jQuery.each(d,function(e,o){if(false===o||""===o){delete d[e]}if("content"===e){d[e]=o.replace(/\\'/g,"'")}if("give_new_id"===e){delete d[e]}});o[0].querySelector(".dslca-module-code").value=JSON.stringify(d);l["content"].push(d)}i=""});h["content"].push(l)});var _=JSON.stringify(h);return _}jQuery(document).ready(function(o){o(document).on("click",".dslca-save-composer-hook",function(e){e.preventDefault();if(!o("body").hasClass("dslca-module-saving-in-progress")&&!o("body").hasClass("dslca-saving-in-progress")){dslc_save_composer()}});o(document).on("click",".dslca-save-draft-composer-hook",function(e){e.preventDefault();if(!o("body").hasClass("dslca-module-saving-in-progress")&&!o("body").hasClass("dslca-saving-in-progress")){dslc_save_draft_composer()}})});function dslca_gen_content_for_search(){if(dslcDebug)console.log("dslca_gen_content_for_search");var e=document.getElementById("dslca-content-for-search");if(null===e){return}var o=e.value;var l="";var s=LiveComposer.Builder.PreviewAreaWindow.document.querySelectorAll("#dslc-main .dslc-module-front [data-exportable-content]");if(undefined!==s){Array.prototype.forEach.call(s,function(e,o){var s;if(e.getAttribute("data-exportable-content")!==""){var d=e.getAttribute("data-exportable-content");s="<"+d+">"+e.innerHTML+"</"+d+">"}else{s=e.innerHTML}if(s!==null){l+=s.replace(/\s+/g," ").trim()+"\n"}})}e.value=l;if(o!==l){dslc_show_publish_button()}}var massagesTicker=jQuery("#editor-messages").newsTicker({row_height:40,max_rows:2,speed:900,direction:"up",duration:12e3,autostart:1,pauseOnHover:1,start:function(){jQuery("#editor-messages").css("opacity","1")}});jQuery(document).ready(function(s){s(document).on("click",".dslc-editor-messages-hide",function(e){var o=s(".dslc-editor-messages-hide").data("can-hide");if(o=="1"){jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-hidden-panel"});s(".dslc-editor-messages-section-122017").css("display","none");s(".dslca-container").removeClass("active-message-panel")}else{s("#editor-messages").html('<div class="dslc-notice"><a href="https://livecomposerplugin.com/hide-messages/?utm_source=editing-screen&utm_medium=editor-messages&utm_campaign=hide-messages" target="_blank">Only users who support our plugin development can hide this panel. <b>Click to learn more.</b></a></div>')}});if(s("div.dslc-editor-messages-section-122017").length){s(".dslc-editor-messages-section-122017").css("display","block");s(".dslca-container").addClass("active-message-panel")}});"use strict";var dslcRegularFontsArray=DSLCFonts.regular;var dslcGoogleFontsArray=DSLCFonts.google;var dslcAllFontsArray=dslcRegularFontsArray.concat(dslcGoogleFontsArray);var dslcIconsCurrentSet=DSLCIcons.fontawesome;var dslcDebug=false;var LiveComposer={Builder:{Elements:{},UI:{},Actions:{},Flags:{},PreviewFrame:{},Helpers:{}},Production:{},Utils:{}};(function(){LiveComposer.Builder.Flags={windowScroller:false,panelOpened:false,generate_code_after_row_changed:true};LiveComposer.Builder.Actions={postponed_actions_queue:{},add_postponed_action:function(e){if(e===undefined){return}if(isNaN(this.postponed_actions_queue[e])){this.postponed_actions_queue[e]=0}this.postponed_actions_queue[e]+=1},release_postponed_actions:function(){var s=this;jQuery.each(this.postponed_actions_queue,function(e,o){if(1<o){s.postponed_actions_queue[e]-=1}else if(1==o){window[e]();s.postponed_actions_queue[e]-=1}})}};LiveComposer.Builder.Helpers.insertModule=function(e,o){var s=jQuery(e),o=jQuery(o);var d=[];s.find("script").each(function(){d.push(this.innerHTML);this.parentNode.removeChild(this)});o.after(s).remove();d.forEach(function(e){var o=LiveComposer.Builder.PreviewAreaDocument[0].createElement("script");o.innerHTML=e;o.type="text/javascript";LiveComposer.Builder.PreviewAreaDocument[0].getElementById(s[0].id).appendChild(o)});d=null;o=null;return s}})();"use strict";LiveComposer.Builder.UI.CModalWindow=function(o){if(typeof o!="object"||this.instancesExists===true)return false;var s=this;var d='<div class="dslca-prompt-modal dslca-prompt-modal-active">'+'<div class="dslca-prompt-modal-content"><div class="dslca-prompt-modal-msg">'+'<span class="dslca-prompt-modal-title">'+o.title+"</span>"+'<span class="dslca-prompt-modal-descr">'+o.content+"</span></div>";var e="";if(o.confirm||o.cancel){e='<div class="dslca-prompt-modal-actions">'+'<a href="#" class="dslca-prompt-modal-confirm-hook"><span class="dslc-icon dslc-icon-ok">'+"</span>"+(o.confirm_title?o.confirm_title:"Confirm")+'</a><span class="dslca-prompt-modal-cancel-hook"><span class="dslc-icon dslc-icon-remove">'+"</span>"+(o.cancel_title?o.cancel_title:"Cancel")+"</span></div>"}else{e='<div class="dslca-prompt-modal-actions">'+'<a href="#" class="dslca-prompt-modal-confirm-hook"><span class="dslc-icon dslc-icon-ok">'+"</span>"+(o.ok_title?o.ok_title:"OK")+"</a></div>"}d+=e+"</div>";d=jQuery(d);if(typeof o.confirm!="function")o.confirm=function(){};if(typeof o.cancel!="function")o.cancel=function(){};d.find(".dslca-prompt-modal-confirm-hook").click(function(e){e.stopPropagation();d.find(".dslca-prompt-modal-content").animate({top:"55%"},400);d.animate({opacity:0},400,function(){o.confirm();s.instancesExists=false;jQuery(this).remove()});return false});d.find(".dslca-prompt-modal-cancel-hook").click(function(e){e.stopPropagation();d.find(".dslca-prompt-modal-content").animate({top:"55%"},400);d.animate({opacity:0},400,function(){jQuery(this).remove();s.instancesExists=false;o.cancel()});return false});d.hide();jQuery("body").append(d);d.css({opacity:0}).show().animate({opacity:1},400);d.find(".dslca-prompt-modal-content").css({top:"55%"}).animate({top:"50%"},400);this.instancesExists=true};"use strict";function dslc_show_modal(e,o){if(typeof dslcDebug!=="undefined"&&dslcDebug)console.log("dslc_show_modal");if(jQuery(".dslca-modal:visible").length){dslc_hide_modal("",jQuery(".dslca-modal:visible"))}var o=jQuery(o);var s=jQuery(".dslca-container").height();o.outerHide({clbk:function(){dslc_hide_modal("",jQuery(".dslca-modal:visible"))}});var d=jQuery(e).position(),l=o.outerWidth()/2-e.outerWidth()/2,i=d.left-l;o.css({left:i});jQuery(".dslca-prompt-modal-custom").insertAfter(o);if(jQuery(".dslca-prompt-modal-custom").length>0){jQuery(".dslca-prompt-modal-custom").fadeIn()}o.addClass("dslca-modal-open").show()}function dslc_hide_modal(e,o){if(typeof dslcDebug!=="undefined"&&dslcDebug)console.log("dslc_hide_modal");console.log("dslc_hide_modal");var o=jQuery(o);o.outerHide("destroy");o.hide();if(jQuery(".dslca-prompt-modal-custom").length>0){jQuery(".dslca-prompt-modal-custom").fadeOut()}o.removeClass("dslca-modal-open")}jQuery(document).ready(function(e){e(document).on("click",".dslca-open-modal-hook",function(e){e.preventDefault();var o=jQuery(this).data("modal");dslc_show_modal(jQuery(this),o)});jQuery(document).on("click",".dslca-close-modal-hook",function(e){e.preventDefault();if(!jQuery(this).hasClass("dslca-action-disabled")){var o=jQuery(this).data("modal");dslc_hide_modal(jQuery(this),o)}})});function dslc_js_confirm(e,o,s){if(typeof dslcDebug!=="undefined"&&dslcDebug)console.log("dslc_js_confirm");jQuery(".dslca-prompt-modal").addClass("dslca-prompt-modal-active");jQuery(".dslca-prompt-modal").data("id",e);jQuery(".dslca-prompt-modal").data("target",s);jQuery(".dslca-prompt-modal-msg").html(o);jQuery(".dslca-prompt-modal").css({opacity:0}).show().animate({opacity:1},400);jQuery(".dslca-prompt-modal-content").css({top:"55%"}).animate({top:"50%"},400)}function dslc_js_confirm_close(){if(typeof dslcDebug!=="undefined"&&dslcDebug)console.log("dslc_js_confirm_close");jQuery(".dslca-prompt-modal").removeClass("dslca-prompt-modal-active");jQuery(".dslca-prompt-modal").animate({opacity:0},400,function(){jQuery(this).hide();jQuery(".dslca-prompt-modal-cancel-hook").show();jQuery(".dslca-prompt-modal-confirm-hook").html('<span class="dslc-icon dslc-icon-ok"></span>'+DSLCString.str_confirm)});jQuery(".dslca-prompt-modal-content").animate({top:"55%"},400)}function dslc_modal_keypress_events(e){if(e.which==13){if(jQuery(".dslca-prompt-modal-active").length){jQuery(".dslca-prompt-modal-confirm-hook").trigger("click")}}else if(e.which==27){if(jQuery(".dslca-prompt-modal-active").length){jQuery(".dslca-prompt-modal-cancel-hook").trigger("click")}}}jQuery(document).ready(function(a){a(document).on("click",".dslca-prompt-modal-cancel-hook",function(e){e.preventDefault();var o=jQuery(".dslca-prompt-modal").data("id");var s=jQuery(".dslca-prompt-modal").data("target");if(o=="edit_in_progress"){dslc_module_options_cancel_changes(function(){s.trigger("click")})}else if(o=="delete_module"){}dslc_js_confirm_close();jQuery(".dslca-prompt-modal").data("id","")});a(document).on("click",".dslca-prompt-modal-confirm-hook",function(e){e.preventDefault();var o=jQuery(".dslca-prompt-modal").data("id");var s=jQuery(".dslca-prompt-modal").data("target");var d=true;if(o=="edit_in_progress"){dslc_module_options_confirm_changes(function(){s.trigger("click")})}else if(o=="disable_lc"){window.location=s}else if("delete_module"===o){var l=s.closest(".dslc-module-front");dslc_delete_module(l)}else if("delete_modules_area"===o){var i=s.closest(".dslc-modules-area");var t=i.closest(".dslc-modules-section-inner");dslc_modules_area_delete(i)}else if(o=="delete_modules_section"){dslc_row_delete(s.closest(".dslc-modules-section"))}else if(o=="export_modules_section"){}else if(o=="import_modules_section"){dslc_row_import(a(".dslca-prompt-modal textarea").val());a(".dslca-prompt-modal-confirm-hook span").css({opacity:0});a(".dslca-prompt-modal-confirm-hook .dslca-loading").show();d=false}if(d)dslc_js_confirm_close();jQuery(".dslca-prompt-modal").data("id","")})});jQuery.fn.outerHide=function(o){var s=jQuery;o=o?o:{};var d=this;if("destroy"==o){s(document).unbind("click.outer_hide");return false}s(document).bind("click.outer_hide",function(e){if(s(e.target).closest(d).length==0&&e.target!=d&&s.inArray(s(e.target)[0],s(o.clickObj))==-1&&s(d).css("display")!="none"){if(o.clbk){o.clbk()}else{s(d).hide()}}})};"use strict";jQuery(document).on("editorFrameLoaded",function(){var i=jQuery;var s=function(){if(LiveComposer.Builder.Flags.panelOpened){LiveComposer.Builder.UI.shakePanelConfirmButton();return false}return true};LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-copy-module-hook",function(e){e.preventDefault();if(!s())return false;if(!i(this).hasClass("dslca-action-disabled")){dslc_module_copy(i(this).closest(".dslc-module-front"))}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-delete-module-hook",function(e){e.preventDefault();if(!s())return false;var o=this;if(!i(this).hasClass("dslca-action-disabled")){LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_del_module_title,content:DSLCString.str_del_module_descr,confirm:function(){var e=jQuery(o).closest(".dslc-module-front");dslc_delete_module(e)}})}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-module-edit-hook, .dslc-module-front > div:not(.dslca-module-manage)",function(e){if(dslcDebug)console.log("dslca-module-edit-hook");e.preventDefault();var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).length;var s=jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).length;if(i("body").hasClass("dslca-composer-hidden")||o>0||s>0){if(jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument)[0]!=jQuery(this).closest(".dslc-module-front")[0]){LiveComposer.Builder.UI.shakePanelConfirmButton()}return false}var d=i(this).closest(".dslc-module-front"),l=d.data("dslc-module-id");i(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");d.addClass("dslca-module-being-edited");dslc_module_options_show(l);jQuery("body",LiveComposer.Builder.PreviewAreaDocument).addClass("module-editing-in-progress")});LiveComposer.Builder.PreviewAreaDocument.on({mouseenter:function(){jQuery(".dslca-modules-section-manage",LiveComposer.Builder.PreviewAreaDocument).css("z-index","99998")},mouseleave:function(){jQuery(".dslca-modules-section-manage",LiveComposer.Builder.PreviewAreaDocument).css("z-index","999999")}},".dslca-change-width-module-hook, .dslc-module-front .dslca-module-manage");LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-change-width-module-options span",function(){if(!jQuery(this).hasClass("dslca-action-disabled")){var e=jQuery(this).closest(".dslc-module-front");var o=e.data("dslc-module-size");var s=jQuery(this).data("size");if(Number(o)!==Number(s)){dslc_module_width_set(e,s)}}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-module-get-defaults-hook",function(){var e=jQuery(this).closest(".dslc-module-front");var o=dslc_dm_get_defaults(e);var s='<span class="dslca-prompt-modal-title">Module Defaults</span>'+'<span class="dslca-prompt-modal-descr">The code bellow is used to alter the defaults.</span>'+"<textarea></textarea><br><br>";i(".dslca-prompt-modal-cancel-hook").hide();i(".dslca-prompt-modal-confirm-hook").html('<span class="dslc-icon dslc-icon-ok"></span>OK');dslc_js_confirm("dev_mode_get_default",s,e)});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-refresh-module-hook",function(e){jQuery(this).css({"-webkit-animation-name":"dslcRotate","-moz-animation-name":"dslcRotate","animation-name":"dslcRotate","animation-duration":"0.6s","-webkit-animation-duration":"0.6s","animation-iteration-count":"infinite","-webkit-animation-iteration-count":"infinite"});jQuery(this).closest(".dslc-module-front").addClass("dslca-module-being-edited");dslc_module_output_altered(function(){jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited")})});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-wysiwyg-actions-edit-hook",function(){var e=jQuery(this).parent().siblings(".dslca-editable-content");var o=e.closest(".dslc-module-front");if(o.hasClass("dslc-module-handle-like-accordion")){LiveComposer.Builder.PreviewAreaWindow.dslc_accordion_generate_code(o.find(".dslc-accordion"));var s=o.find('.dslca-module-option-front[data-id="accordion_content"]').val();var d=s.split("(dslc_sep)");var l=e.closest(".dslc-accordion-item").index();var i=d[l].trim().replace(/<lctextarea/g,"<textarea").replace(/<\/lctextarea/g,"</textarea")}else if(o.hasClass("dslc-module-handle-like-tabs")){LiveComposer.Builder.PreviewAreaWindow.dslc_tabs_generate_code(o.find(".dslc-tabs"));var s=o.find('.dslca-module-option-front[data-id="tabs_content"]').val();var d=s.split("(dslc_sep)");var l=e.closest(".dslc-tabs-tab-content").index();var i=d[l].trim().replace(/<lctextarea/g,"<textarea").replace(/<\/lctextarea/g,"</textarea")}else{var i=o.find('.dslca-module-option-front[data-id="'+e.data("id")+'"]').val().replace(/<lctextarea/g,"<textarea").replace(/<\/lctextarea/g,"</textarea")}if(i.includes("%")){i=i.replace(/%\(\(%/g,"[");i=i.replace(/%\)\)%/g,"]");i=i.replace(/%\(%/g,"[");i=i.replace(/%\)%/g,"]");i=i.replace(/%\{%/g,"[");i=i.replace(/%\}%/g,"]")}if(typeof tinymce!="undefined"){var t=tinymce.get("dslcawpeditor");if(jQuery("#wp-dslcawpeditor-wrap").hasClass("tmce-active")){t.setContent(i,{format:"html"})}else{jQuery("textarea#dslcawpeditor").val(i)}if(!o.hasClass("dslca-module-being-edited")){o.find(".dslca-module-edit-hook").trigger("click")}jQuery(".dslca-wp-editor").show();e.addClass("dslca-wysiwyg-active");jQuery("#dslcawpeditor_ifr, #dslcawpeditor").css({height:jQuery(".dslca-wp-editor").height()-300})}else{console.info("Live Composer: TinyMCE is undefined.")}});LiveComposer.Builder.PreviewAreaDocument.on("blur",".dslca-editable-content",function(){if(!jQuery("body").hasClass("dslca-composer-hidden")&&jQuery(this).data("type")=="simple"){dslc_editable_content_gen_code(jQuery(this))}}).on("paste",".dslca-editable-content:not(.inline-editor)",function(){if(!jQuery("body").hasClass("dslca-composer-hidden")&&jQuery(this).data("type")=="simple"){var e=jQuery(this);setTimeout(function(){if(e.data("type")=="simple"){e.html(e.text())}dslc_editable_content_gen_code(e)},100)}}).on("focus",".dslca-editable-content",function(){if(jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).length>0&&!jQuery(this).closest(".dslc-module-front").hasClass("dslca-module-being-edited")){jQuery(this).trigger("blur")}}).on("keyup",".dslca-editable-content",function(){if(jQuery(this).data("type")=="simple"){jQuery(this).closest(".dslc-module-front").addClass("dslca-module-change-made")}})});function dslc_module_delete(e){if(dslcDebug)console.log("dslc_delete_module");e.addClass("dslca-module-being-deleted");if(e.hasClass("dslca-module-being-edited")){dslc_show_section(".dslca-modules")}setTimeout(function(){e.remove();dslc_generate_code();dslc_show_publish_button()},1e3);e.css({"-webkit-animation-name":"dslcBounceOut2","-moz-animation-name":"dslcBounceOut2","animation-name":"dslcBounceOut2","animation-duration":"0.6s","-webkit-animation-duration":"0.6s"}).animate({opacity:0},500,function(){e.css({marginBottom:0}).animate({height:0},400,"easeOutQuart")})}function dslc_module_copy(e){if(dslcDebug)console.log("dslc_copy_module");jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");var o=e[0].cloneNode(true);jQuery(o).appendTo(e.closest(".dslc-modules-area")).css({"-webkit-animation-name":"none","-moz-animation-name":"none","animation-name":"none","animation-duration":"0","-webkit-animation-duration":"0",opacity:0}).addClass("dslca-module-being-edited");dslc_module_new_id(o);dslc_generate_code();jQuery(o).css({opacity:0}).removeClass("dslca-module-being-edited").animate({opacity:1},300);dslc_show_publish_button()}function dslc_module_new_id(e){var o=LiveComposer.Utils.get_unique_id();var s=e.getAttribute("id");e.setAttribute("data-module-id",o);e.setAttribute("id","dslc-module-"+o);var d=e.getElementsByTagName("style")[0];var l=d.textContent;d.setAttribute("id","#css-for-dslc-module-"+o);l=l.split(s).join("dslc-module-"+o);d.textContent=l;LiveComposer.Utils.update_module_property_raw(e,"module_instance_id",o)}function dslc_module_width_set(e,o){if(dslcDebug)console.log("dslc_module_width_set");var s="dslc-"+o+"-col";e.removeClass("dslc-1-col dslc-2-col dslc-3-col dslc-4-col dslc-5-col dslc-6-col dslc-7-col dslc-8-col dslc-9-col dslc-10-col dslc-11-col dslc-12-col").addClass(s).data("dslc-module-size",o);e[0].setAttribute("data-dslc-module-size",o);LiveComposer.Utils.update_module_property_raw(e[0],"dslc_m_size",o);LiveComposer.Builder.PreviewAreaWindow.dslc_masonry();dslc_generate_code();dslc_show_publish_button()}function dslc_module_options_show(e){if(dslcDebug)console.log("dslc_module_options_show");var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument),s=jQuery(".dslca-module-options-front textarea",o),l=jQuery(".dslca-header").data("default-section"),i=jQuery(jQuery("#pseudo-panel").html());jQuery("#wpwrap").append(i);var d={};d["action"]="dslc-ajax-display-module-options";d["dslc"]="active";d["dslc_module_id"]=e;d["dslc_post_id"]=jQuery(".dslca-container").data("data-post-id");d.dslc_url_vars=LiveComposer.Utils.get_page_params();s.each(function(){var e=jQuery(this),o=e.data("id"),s=e.val();if(s.includes("%")){s=s.replace(/%\(\(%/g,"[");s=s.replace(/%\)\)%/g,"]");s=s.replace(/%\(%/g,"[");s=s.replace(/%\)%/g,"]");s=s.replace(/%\{%/g,"[");s=s.replace(/%\}%/g,"]")}d[o]=s});jQuery(".dslca-wp-editor-actions").hide();jQuery(".dslca-wp-editor-notification").show();dslc_hide_publish_button();var t=jQuery(".dslca-module-options-front",o).children().clone();LiveComposer.Builder.moduleBackup=t;LiveComposer.Builder.Flags.panelOpened=true;i.show();i.addClass("show");jQuery.post(DSLCAjax.ajaxurl,d,function(e){i.remove();dslc_show_section(".dslca-module-edit");if(!jQuery("body").hasClass("rtl")){jQuery(".dslca-module-edit-options-inner").html(e.output)}else{jQuery(".dslca-module-edit-options-inner").html(e.output)}jQuery(".dslca-module-edit-options-tabs").html(e.output_tabs);var o=[];jQuery(".dslca-module-edit-options-inner .dslca-module-edit-option").each(function(){var e=jQuery(this).data("section");if(o.indexOf(e)==-1){o.push(e)}});var s=o.length;for(var d=0;d<s;d++){jQuery('.dslca-header .dslca-options-filter-hook[data-section="'+o[d]+'"]').show()}if(jQuery('.dslca-module-edit-option[data-section="'+l+'"]').length){jQuery('.dslca-header .dslca-options-filter-hook[data-section="'+l+'"]').show();jQuery('.dslca-header .dslca-options-filter-hook[data-section="'+l+'"]').trigger("click")}else{jQuery(".dslca-header .dslca-options-filter-hook:first").hide();jQuery(".dslca-header .dslca-options-filter-hook:first").next(".dslca-options-filter-hook").trigger("click")}jQuery(".dslca-module-edit-actions").show();jQuery(".dslca-wp-editor-notification").hide();jQuery(".dslca-wp-editor-actions").show();jQuery(".dslca-header .dslca-go-to-section-hook").hide();jQuery(".dslca-row-edit-actions").hide();LiveComposer.Builder.UI.loadOptionsDeps()})}function dslc_module_output_default(e,o){if(dslcDebug)console.log("dslc_module_output_default");jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-add-module",dslc:"active",dslc_module_id:e,dslc_post_id:jQuery(".dslca-container").data("post-id"),dslc_url_vars:LiveComposer.Utils.get_page_params(),dslc_new_module:true},function(e){o(e)})}function dslc_module_output_altered(d){if(dslcDebug)console.log("dslc_module_output_altered");d=typeof d!=="undefined"?d:false;var l=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument),e=l.data("dslc-module-id"),o=jQuery(".dslca-module-options-front textarea",l),s=l.data("module-id");var i={};i["action"]="dslc-ajax-add-module";i["dslc"]="active";i["dslc_module_id"]=e;i["dslc_module_instance_id"]=s;i["dslc_post_id"]=jQuery(".dslca-container").data("post-id");if(l.hasClass("dslca-preload-preset"))i["dslc_preload_preset"]="enabled";else i["dslc_preload_preset"]="disabled";l.removeClass("dslca-preload-preset");o.each(function(){var e=jQuery(this);var o=e.data("id");var s=e.val();i[o]=s});i.dslc_url_vars=LiveComposer.Utils.get_page_params();jQuery.post(DSLCAjax.ajaxurl,i,function(e){var o=LiveComposer.Builder.Helpers.insertModule(e.output,l);o.addClass("dslca-module-being-edited");e=null;o=null;LiveComposer.Builder.PreviewAreaWindow.dslc_carousel();LiveComposer.Builder.PreviewAreaWindow.dslc_masonry();LiveComposer.Builder.PreviewAreaWindow.dslc_tabs();LiveComposer.Builder.PreviewAreaWindow.dslc_init_accordion();var s=new Event("dslc_module_output_altered");LiveComposer.Builder.PreviewAreaWindow.dispatchEvent(s);if(d){d(e)}})}function dslc_module_output_reload(o,s){if(dslcDebug)console.log("dslc_module_output_reload");s=typeof s!=="undefined"?s:false;var e=o.data("dslc-module-id"),d=jQuery(".dslca-module-options-front textarea",o),l=o.data("module-id");var i={};i["action"]="dslc-ajax-add-module";i["dslc"]="active";i["dslc_module_id"]=e;i["dslc_module_instance_id"]=l;i["dslc_post_id"]=jQuery(".dslca-container").data("post-id");i["dslc_preload_preset"]="enabled";o.removeClass("dslca-preload-preset");d.each(function(){var e=jQuery(this);var o=e.data("id");var s=e.val();i[o]=s});o.append('<div class="dslca-module-reloading"><span class="dslca-icon dslc-icon-spin dslc-icon-refresh"></span></div>');jQuery.post(DSLCAjax.ajaxurl,i,function(e){o.after(e.output).next().addClass("dslca-module-being-edited");o.remove();dslc_generate_code();dslc_show_publish_button();LiveComposer.Builder.PreviewAreaWindow.dslc_carousel();LiveComposer.Builder.PreviewAreaWindow.dslc_masonry();LiveComposer.Builder.PreviewAreaWindow.dslc_tabs();LiveComposer.Builder.PreviewAreaWindow.dslc_init_accordion();if(s){s(e)}jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited")})}function dslc_delete_module(e){dslc_module_delete(e)}function dslc_copy_module(e){dslc_module_copy(e)}function dslc_display_module_options(e){dslc_module_options_show(e)}function dslc_get_module_output(e,o){dslc_module_output_default(e,o)}function dslc_preview_change(e){dslc_module_output_altered(e)}function dslc_reload_module(e,o){dslc_module_output_reload(e,o)}"use strict";LiveComposer.Builder.Elements.CModuleArea=function(o){var s=this;this.section=jQuery(o).closest(".dslc-modules-section");this.elem=o;this.observer=new mqMutationObserver(o,function(){var e=s.elem.classList;if(o.querySelectorAll(".dslc-module-front").length==0){e.add("dslc-modules-area-empty");e.remove("dslc-modules-area-not-empty")}else{e.remove("dslc-modules-area-empty");e.add("dslc-modules-area-not-empty")}},{childList:true});this.sortable=Sortable.create(o,{group:"modules",animation:350,handle:".dslca-move-module-hook",draggable:".dslc-module-front",ghostClass:"dslca-module-ghost",chosenClass:"dslca-module-dragging",scroll:true,scrollSensitivity:150,scrollSpeed:15,setData:function(e,o){e.setData(LiveComposer.Utils.msieversion()!==false?"Text":"text/html",o.innerHTML)},onStart:function(e){e.oldIndex;jQuery("body").removeClass("dslca-drag-not-in-progress").addClass("dslca-drag-in-progress");jQuery("body",LiveComposer.Builder.PreviewAreaWindow.document).removeClass("dslca-drag-not-in-progress").addClass("dslca-drag-in-progress")},onEnd:function(e){e.oldIndex;e.newIndex;e.preventDefault();dslc_generate_code();LiveComposer.Builder.UI.stopScroller();jQuery("body").removeClass("dslca-drag-in-progress").addClass("dslca-drag-not-in-progress");jQuery("body",LiveComposer.Builder.PreviewAreaWindow.document).removeClass("dslca-drag-in-progress").addClass("dslca-drag-not-in-progress")},onAdd:function(e){var o=e.item;e.from;if(jQuery(o).data("id")=="DSLC_M_A"){dslc_modules_area_add(jQuery(s.section).find(".dslc-modules-section-wrapper .dslc-modules-section-inner"));o.remove()}},onUpdate:function(e){var o=e.item;dslc_show_publish_button()},onSort:function(e){},onRemove:function(e){},onFilter:function(e){var o=e.item},onMove:function(e){e.dragged;e.draggedRect;e.related;e.relatedRect;if(jQuery(".dslc-modules-area-empty").find(".dslc-module-front").length>0){jQuery(this).removeClass("dslc-modules-area-empty").addClass("dslc-modules-area-not-empty");jQuery(".dslca-no-content:not(:visible)",this).show().css({"-webkit-animation-name":"dslcBounceIn","-moz-animation-name":"dslcBounceIn","animation-name":"dslcBounceIn","animation-duration":"0.6s","-webkit-animation-duration":"0.6s",padding:0}).animate({padding:"35px 0"},300,function(){})}}});jQuery(o).attr("data-jsinit","initialized");jQuery(document).on("LC.sortableOff",function(){s.sortable&&s.sortable.option&&s.sortable.option("disabled",true)});jQuery(document).on("LC.sortableOn",function(){s.sortable&&s.sortable.option&&s.sortable.option("disabled",false)})};"use strict";jQuery(document).on("editorFrameLoaded",function(){function e(){var e=jQuery(".dslc-modules-area",LiveComposer.Builder.PreviewAreaDocument);jQuery(e).each(function(e,o){new LiveComposer.Builder.Elements.CModuleArea(o)})}var l=function(){if(LiveComposer.Builder.Flags.panelOpened){LiveComposer.Builder.UI.shakePanelConfirmButton();return false}return true};if(!jQuery("#dslc-main .dslc-modules-section",LiveComposer.Builder.PreviewAreaDocument).length&&!jQuery("#dslca-tut-page",LiveComposer.Builder.PreviewAreaDocument).length){dslc_row_add(e())}else{e()}LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-copy-modules-area-hook",function(e){e.preventDefault();if(!l())return false;if(!jQuery(this).hasClass("dslca-action-disabled")){var o=jQuery(this).closest(".dslc-modules-area");dslc_copy_modules_area(o)}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-delete-modules-area-hook",function(e){e.preventDefault();if(!l())return false;if(!jQuery(this).hasClass("dslca-action-disabled")){var o=jQuery(this).closest(".dslc-modules-area").hasClass("dslc-modules-area-empty");if(!o){var s=jQuery(this);LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_del_area_title,content:DSLCString.str_del_area_descr,confirm:function(){var e=s.closest(".dslc-modules-area");dslc_modules_area_delete(e)}})}else{var d=jQuery(this).closest(".dslc-modules-area");dslc_delete_modules_area(d)}}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-change-width-modules-area-options span",function(){if(!l())return false;if(!jQuery(this).hasClass("dslca-action-disabled")){var e=jQuery(this).closest(".dslc-modules-area");var o=e.data("size");var s=jQuery(this).data("size");if(Number(o)!==Number(s)){dslc_modules_area_width_set(e,s)}}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-add-modules-area-hook",function(e){e.preventDefault();if(!l())return false;dslc_modules_area_add(jQuery(this).closest(".dslc-modules-section").find(".dslc-modules-section-inner"))})});function dslc_modules_area_add(e){if(dslcDebug)console.log("dslc_add_modules_area");var o='<div class="dslc-modules-area dslc-col dslc-12-col dslc-modules-area-empty " data-size="12">'+'<div class="dslca-modules-area-manage"> <div class="dslca-modules-area-manage-inner">'+'<span class="dslca-manage-action dslca-copy-modules-area-hook" title="Duplicate" ><span class="dslca-icon dslc-icon-copy">'+'</span></span> <span class="dslca-manage-action dslca-move-modules-area-hook" title="Drag to move" >'+'<span class="dslca-icon dslc-icon-move"></span></span>'+'<span class="dslca-manage-action dslca-change-width-modules-area-hook" title="Change width" >'+'<span class="dslca-icon dslc-icon-columns"></span> <div class="dslca-change-width-modules-area-options">'+'<span>Container Width</span><span data-size="1">1/12</span><span data-size="2">2/12</span>'+'<span data-size="3">3/12</span><span data-size="4">4/12</span> <span data-size="5">5/12</span><span data-size="6">6/12</span>'+'<span data-size="7">7/12</span><span data-size="8">8/12</span> <span data-size="9">9/12</span><span data-size="10">10/12</span>'+'<span data-size="11">11/12</span><span data-size="12">12/12</span> </div> </span>'+'<span class="dslca-manage-action dslca-delete-modules-area-hook" title="Delete" ><span class="dslca-icon dslc-icon-remove"></span></span> </div> </div>'+"</div>";jQuery(o).appendTo(e).css({height:0}).animate({height:99},300,function(){jQuery(this).css({height:"auto"})}).addClass("dslca-init-animation");var s=jQuery(".dslc-modules-area-empty",LiveComposer.Builder.PreviewAreaDocument);jQuery(s).each(function(e,o){new LiveComposer.Builder.Elements.CModuleArea(o)});dslc_drag_and_drop();dslc_generate_code();dslc_show_publish_button()}function dslc_modules_area_delete(o){if(dslcDebug)console.log("dslc_delete_modules_area");var s=o.closest(".dslc-modules-section").find(".dslc-modules-section-inner"),d=false;o.addClass("dslca-modules-area-being-deleted");if(s.find(".dslc-modules-area").length<2){d=true}if(o.find(".dslca-module-being-edited").length){jQuery(".dslca-header .dslca-options-filter-hook",LiveComposer.Builder.PreviewAreaDocument).hide();jQuery(".dslca-module-edit-actions",LiveComposer.Builder.PreviewAreaDocument).hide();jQuery(".dslca-header .dslca-go-to-section-hook",LiveComposer.Builder.PreviewAreaDocument).show();dslc_show_section(".dslca-modules")}setTimeout(function(){if(d){var e=o.closest(".dslc-modules-section-inner");if(2<=o.closest("#dslc-main").find(".dslc-modules-section").length){dslc_row_delete(o.closest(".dslc-modules-section"))}else{o.remove();dslc_modules_area_add(s)}}o.remove();dslc_generate_code();dslc_show_publish_button()},900);o.css({"-webkit-animation-name":"dslcBounceOut","-moz-animation-name":"dslcBounceOut","animation-name":"dslcBounceOut","animation-duration":"0.6s","-webkit-animation-duration":"0.6s",overflow:"hidden"}).animate({opacity:0},600).animate({height:0,marginBottom:0},300,function(){o.remove();dslc_generate_code();dslc_show_publish_button()})}function dslc_modules_area_copy(e){if(dslcDebug)console.log("dslc_copy_modules_area");var o,s=e.closest(".dslc-modules-section").find(".dslc-modules-section-inner");var d=e.clone().appendTo(s);new LiveComposer.Builder.Elements.CModuleArea(d[0]);d.find(".dslca-modules-area-manage").trigger("mouseleave");d.data("size",e.data("size")).find(".dslc-module-front").css({"-webkit-animation-name":"none","-moz-animation-name":"none","animation-name":"none","animation-duration":"0","-webkit-animation-duration":"0",opacity:0}).each(function(){var e=jQuery(this);dslc_module_new_id(e[0]);jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");dslc_generate_code();e.animate({opacity:1},300)});dslc_drag_and_drop();dslc_show_publish_button();dslc_generate_code()}function dslc_modules_area_width_set(e,o){if(dslcDebug)console.log("dslc_modules_area_width_set");var s="dslc-"+o+"-col";e.removeClass("dslc-1-col dslc-2-col dslc-3-col dslc-4-col dslc-5-col dslc-6-col dslc-7-col dslc-8-col dslc-9-col dslc-10-col dslc-11-col dslc-12-col").addClass(s).data("size",o);LiveComposer.Builder.PreviewAreaWindow.dslc_masonry();if(LiveComposer.Builder.Flags.panelOpened){return false}dslc_generate_code();dslc_show_publish_button()}LiveComposer.Builder.moduleareas_init=function(){jQuery("#dslc-main .dslc-modules-area",LiveComposer.Builder.PreviewAreaDocument).each(function(){if(jQuery(this).data("jsinit")!=="initialized"){new LiveComposer.Builder.Elements.CModuleArea(this)}})};function dslc_add_modules_area(e){dslc_modules_area_add(e)}function dslc_delete_modules_area(e){dslc_modules_area_delete(e)}function dslc_copy_modules_area(e){dslc_modules_area_copy(e)}"use strict";function dslc_update_preset(){if(dslcDebug)console.log("dslc_update_preset");var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument),e=o.find('.dslca-module-option-front[data-id="css_load_preset"]').val(),s=o.find(".dslca-module-code").val(),d=o.data("dslc-module-id");if("none"!==e&&""!==e){jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-save-preset",dslc_preset_name:e,dslc_preset_code:s,dslc_module_id:d},function(e){if(e.preset_setting=="enabled"){jQuery(".dslc-module-front:not(#"+o.attr("id")+')[data-dslc-module-id="'+o.data("dslc-module-id")+'"][data-dslc-preset="'+o.data("dslc-preset")+'"]',LiveComposer.Builder.PreviewAreaDocument).each(function(){dslc_module_output_reload(jQuery(this))})}})}}jQuery(document).ready(function(d){d(document).on("keypress",'.dslca-module-edit-field[name="css_save_preset"]',function(e){if(e.which==13){var o=d(this).val(),s=o.toLowerCase().replace(/\s/g,"-");d("body").addClass("dslca-new-preset-added");d('.dslca-module-edit-field[name="css_load_preset"]').append('<option value="'+s+'">'+s+"</option>").val(s).trigger("change");d(this).val("");jQuery(".dslc-delete-preset").removeClass("dslc-delete-preset-hide")}});d(document).on("change",'.dslca-module-edit-field[name="css_load_preset"]',function(e){d(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).addClass("dslca-preload-preset")});d(document).on("click",".dslc-delete-preset",function(e){var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument),s=o.find('.dslca-module-option-front[data-id="css_load_preset"]').val(),d=o.data("dslc-module-id");if("none"!==s&&""!==s){jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-delete-preset",dslc_preset_name:s,dslc_module_id:d},function(e){dslc_module_options_show(d)})}})});"use strict";LiveComposer.Builder.Elements.CRow=function(e){var o=this;this.elem=e;var s=jQuery(e).find(".dslc-modules-section-wrapper .dslc-modules-section-inner").eq(0)[0];jQuery(e).droppable({drop:function(e,o){var s=jQuery(this).find(".dslc-modules-section-inner");var d=o.draggable.data("id");if(d=="DSLC_M_A"){dslc_modules_area_add(s)}}});this.sortable=jQuery(s).sortable({connectWith:".dslc-modules-section-inner",items:".dslc-modules-area",handle:'.dslca-move-modules-area-hook:not(".dslca-action-disabled")',placeholder:"dslca-modules-area-placeholder",cursorAt:{top:0,left:0},tolerance:"intersect",scroll:true,scrollSensitivity:100,scrollSpeed:15,sort:function(){jQuery(this).removeClass("ui-state-default")},over:function(e,o){var s=o.placeholder.closest(".dslc-modules-section");jQuery(s).removeClass("dslc-modules-section-empty").addClass("dslc-modules-section-not-empty");s.siblings(".dslc-modules-section").each(function(){if(jQuery(".dslc-modules-area:not(.ui-sortable-helper)",jQuery(this)).length){jQuery(this).removeClass("dslc-modules-section-empty").addClass("dslc-modules-section-not-empty")}else{jQuery(this).removeClass("dslc-modules-section-not-empty").addClass("dslc-modules-section-empty")}})},remove:function(){jQuery(o.elem).find(".dslc-modules-area").length==0&&dslc_modules_area_add(jQuery(s))},update:function(e,o){dslc_generate_code();dslc_show_publish_button()},start:function(e,o){o.placeholder.html('<span class="dslca-placeholder-help-text"><span class="dslca-placeholder-help-text-inner">'+DSLCString.str_area_helper_text+"</span></span>");if(!jQuery(o.item).hasClass("dslc-12-col")){o.placeholder.width(o.item.width()-10)}else{o.placeholder.width(o.item.width()).css({margin:0})}jQuery("body").removeClass("dslca-drag-not-in-progress").addClass("dslca-drag-in-progress dslca-modules-area-drag-in-progress");jQuery(".dslc-modules-section-inner").sortable("refreshPositions")},stop:function(e,o){LiveComposer.Builder.UI.stopScroller();jQuery("body").removeClass("dslca-drag-in-progress dslca-modules-area-drag-in-progress").addClass("dslca-drag-not-in-progress");jQuery(".dslca-anim-opacity-drop").removeClass("dslca-anim-opacity-drop")},change:function(e,o){}});jQuery(e).attr("data-jsinit","initialized");jQuery(document).on("LC.sortableOff",function(){if(undefined!==o.sortable.sortable("instance")){o.sortable.sortable("option","disabled",true)}});jQuery(document).on("LC.sortableOn",function(){if(undefined!==o.sortable.sortable("instance")){o.sortable.sortable("option","disabled",false)}})};"use strict";jQuery(document).on("editorFrameLoaded",function(){var d=jQuery;var l=function(){if(LiveComposer.Builder.Flags.panelOpened){LiveComposer.Builder.UI.shakePanelConfirmButton();return false}return true};jQuery(".dslc-modules-section",LiveComposer.Builder.PreviewAreaDocument).each(function(){new LiveComposer.Builder.Elements.CRow(this)});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-delete-modules-section-hook",function(e){if(!l())return false;e.preventDefault();var o=this;if(!d(this).hasClass("dslca-action-disabled")){LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_del_row_title,content:DSLCString.str_del_row_descr,confirm:function(){dslc_row_delete(d(o).closest(".dslc-modules-section"))}})}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-import-modules-section-hook",function(e){e.preventDefault();if(!l())return false;if(!jQuery(this).hasClass("dslca-action-disabled")){LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_import_row_title,content:DSLCString.str_import_row_descr+"<br><br><textarea></textarea>",confirm:function(){dslc_row_import(jQuery(".dslca-prompt-modal textarea").val());jQuery(".dslca-prompt-modal-confirm-hook span").css({opacity:0});jQuery(".dslca-prompt-modal-confirm-hook .dslca-loading").show()},confirm_title:DSLCString.str_import})}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-export-modules-section-hook",function(e){e.preventDefault();if(!l())return false;if(!d(this).hasClass("dslca-action-disabled")){d(".dslca-prompt-modal-cancel-hook").hide();d(".dslca-prompt-modal-confirm-hook").html('<span class="dslc-icon dslc-icon-ok"></span>'+DSLCString.str_ok);LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_export_row_title,content:DSLCString.str_export_row_descr+"<br><br><textarea>"+"["+dslc_generate_section_code(d(this).closest(".dslc-modules-section"))+"]"+"</textarea></span>"})}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-copy-modules-section-hook",function(){if(!l())return false;if(!jQuery(this).hasClass("dslca-action-disabled")){dslc_row_copy(jQuery(this).closest(".dslc-modules-section"))}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-add-modules-section-hook",function(e){e.preventDefault();if(!l())return false;var o=d(this);if(!d(this).hasClass("dslca-action-disabled")){o.find(".dslca-icon").removeClass("dslc-icon-align-justify").addClass("dslc-icon-spinner dslc-icon-spin");dslc_row_add(function(){o.find(".dslca-icon").removeClass("dslc-icon-spinner dslc-icon-spin").addClass("dslc-icon-align-justify")})}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-edit-modules-section-hook",function(){if(!l())return false;var e=this;var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).length;var s=jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).length;if(d("body").hasClass("dslca-composer-hidden")||o>0||s>0)return false;if(!d(this).hasClass("dslca-action-disabled")){dslc_row_edit(d(this).closest(".dslc-modules-section"))}jQuery("body",LiveComposer.Builder.PreviewAreaDocument).addClass("section-editing-in-progress")})});function dslc_row_add(o){if(dslcDebug)console.log("dslc_row_add");o=typeof o!=="undefined"?o:false;var s=jQuery.Deferred();var d=sessionStorage;var l=jQuery();var e=d.getItem("cache-dslc-ajax-add-modules-section");if(null!==e){var i,t;i=DSLCMainOptions.section_padding_vertical;t=jQuery(e).find('input[data-id="padding"]').val();if(i!==t){d.removeItem("cache-dslc-ajax-add-modules-section");e=null}}if(null===e){jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-add-modules-section",dslc:"active"},function(e){d.setItem("cache-dslc-ajax-add-modules-section",e.output);l=dslc_row_after_add(e.output);if(o){o()}return s})}else{l=dslc_row_after_add(e);if(o){o()}return s}}function dslc_row_after_add(e){var o=jQuery(e);o.appendTo(LiveComposer.Builder.PreviewAreaDocument.find("#dslc-main"));dslc_drag_and_drop();dslc_generate_code();dslc_show_publish_button();new LiveComposer.Builder.Elements.CRow(o);new LiveComposer.Builder.Elements.CModuleArea(o.find(".dslc-modules-area").eq(0)[0]);o.find(".dslc-modules-area").addClass("dslc-modules-area-empty dslc-last-col");return o}function dslc_row_delete(e){if(dslcDebug)console.log("dslc_row_delete");if(e.find(".dslca-module-being-edited")){jQuery(".dslca-header .dslca-options-filter-hook").hide();jQuery(".dslca-module-edit-actions").hide();jQuery(".dslca-header .dslca-go-to-section-hook").show();dslc_show_section(".dslca-modules")}e.trigger("mouseleave").remove();dslc_generate_code();dslc_show_publish_button()}function dslc_row_edit(e){if(dslcDebug)console.log("dslc_row_edit");var o,s;jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-modules-section-being-edited").removeClass("dslca-modules-section-change-made");e.addClass("dslca-modules-section-being-edited");jQuery(".dslca-header .dslca-go-to-section-hook").hide();jQuery('.dslca-row-options-filter-hook[data-section="styling"], .dslca-row-options-filter-hook[data-section="responsive"]').show();jQuery('.dslca-row-options-filter-hook[data-section="styling"]').trigger("click");jQuery(".dslca-header .dslca-options-filter-hook").hide();jQuery(".dslca-module-edit-actions").hide();jQuery(".dslca-row-edit-actions").show();jQuery(".dslca-modules-section-edit-field").each(function(){if("type"===jQuery(this).data("id")){if(""===jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="type"]',LiveComposer.Builder.PreviewAreaDocument).val()||"wrapped"===jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="type"]',LiveComposer.Builder.PreviewAreaDocument).val()){jQuery('select[data-id="type"]').val("wrapper").change()}}if(jQuery(this).data("id")=="border-top"){if(jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="border"]',LiveComposer.Builder.PreviewAreaDocument).val().indexOf("top")>=0){jQuery(this).prop("checked",true);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check-empty").addClass("dslc-icon-check")}else{jQuery(this).prop("checked",false);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check").addClass("dslc-icon-check-empty")}}else if(jQuery(this).data("id")=="border-right"){if(jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="border"]',LiveComposer.Builder.PreviewAreaDocument).val().indexOf("right")>=0){jQuery(this).prop("checked",true);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check-empty").addClass("dslc-icon-check")}else{jQuery(this).prop("checked",false);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check").addClass("dslc-icon-check-empty")}}else if(jQuery(this).data("id")=="border-bottom"){if(jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="border"]',LiveComposer.Builder.PreviewAreaDocument).val().indexOf("bottom")>=0){jQuery(this).prop("checked",true);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check-empty").addClass("dslc-icon-check")}else{jQuery(this).prop("checked",false);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check").addClass("dslc-icon-check-empty")}}else if(jQuery(this).data("id")=="border-left"){if(jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="border"]',LiveComposer.Builder.PreviewAreaDocument).val().indexOf("left")>=0){jQuery(this).prop("checked",true);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check-empty").addClass("dslc-icon-check")}else{jQuery(this).prop("checked",false);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check").addClass("dslc-icon-check-empty")}}else if(jQuery(this).hasClass("dslca-modules-section-edit-field-checkbox")){if(jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="'+jQuery(this).data("id")+'"]',LiveComposer.Builder.PreviewAreaDocument).val().indexOf(jQuery(this).data("val"))>=0){jQuery(this).prop("checked",true);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check-empty").addClass("dslc-icon-check")}else{jQuery(this).prop("checked",false);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check").addClass("dslc-icon-check-empty")}}else{jQuery(this).val(jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="'+jQuery(this).data("id")+'"]',LiveComposer.Builder.PreviewAreaDocument).val().trim().replace("%(%","[").replace("%)%","]"));if(jQuery(this).hasClass("dslca-modules-section-edit-field-colorpicker")){var e=jQuery(this);jQuery(this).closest(".dslca-modules-section-edit-option").find(".sp-preview-inner").removeClass("sp-clear-display").css({"background-color":e.val()});jQuery(this).css({"background-color":e.val()})}}});jQuery(".dslca-modules-section-edit-field-upload").each(function(){var e=jQuery(this).closest(".dslca-modules-section-edit-option");if(jQuery(this).val()&&jQuery(this).val()!=="disabled"){jQuery(".dslca-modules-section-edit-field-image-add-hook",e).hide();jQuery(".dslca-modules-section-edit-field-image-remove-hook",e).show()}else{jQuery(".dslca-modules-section-edit-field-image-remove-hook",e).hide();jQuery(".dslca-modules-section-edit-field-image-add-hook",e).show()}});dslc_show_section(".dslca-modules-section-edit");LiveComposer.Builder.Flags.panelOpened=true;dslc_hide_publish_button()}function dslc_row_edit_cancel(e){if(dslcDebug)console.log("dslc_row_cancel_changes");e=typeof e!=="undefined"?e:false;LiveComposer.Builder.Flags.generate_code_after_row_changed=false;jQuery(".dslca-modules-section-being-edited .dslca-modules-section-settings input",LiveComposer.Builder.PreviewAreaDocument).each(function(){jQuery(this).val(jQuery(this).data("def"));jQuery('.dslca-modules-section-edit-field[data-id="'+jQuery(this).data("id")+'"]').val(jQuery(this).data("def")).trigger("change")});LiveComposer.Builder.Flags.generate_code_after_row_changed=true;dslc_generate_code();dslc_show_publish_button();dslc_show_section(".dslca-modules");jQuery(".dslca-row-edit-actions").hide();jQuery(".dslca-row-options-filter-hook").hide();jQuery(".dslca-header .dslca-go-to-section-hook").show();dslc_show_publish_button;jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-modules-section-being-edited dslca-modules-section-change-made");if(e){e()}LiveComposer.Builder.Flags.panelOpened=false;jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("section-editing-in-progress")}function dslc_row_edit_confirm(e){if(dslcDebug)console.log("dslc_confirm_row_changes");e=typeof e!=="undefined"?e:false;jQuery(".dslca-modules-section-being-edited .dslca-modules-section-settings input",LiveComposer.Builder.PreviewAreaDocument).each(function(){jQuery(this).data("def",jQuery(this).val())});dslc_show_section(".dslca-modules");jQuery(".dslca-row-edit-actions").hide();jQuery(".dslca-row-options-filter-hook").hide();jQuery(".dslca-header .dslca-go-to-section-hook").show();jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-modules-section-being-edited dslca-modules-section-change-made");dslc_generate_code();dslc_show_publish_button();if(e){e()}LiveComposer.Builder.Flags.panelOpened=false;jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("section-editing-in-progress")}function dslc_row_copy(o){if(dslcDebug)console.log("dslc_row_copy");var e,s,d;s=o.clone().appendTo(jQuery("#dslc-main",LiveComposer.Builder.PreviewAreaDocument));s[0].removeAttribute("data-jsinit");s.find(".dslc-modules-area").each(function(){var e=jQuery(this).index();jQuery(this).data("size",o.find(".dslc-modules-area:eq( "+e+" )").data("size"));this.removeAttribute("data-jsinit")});new LiveComposer.Builder.Elements.CRow(s);s.find(".dslc-module-front").css({"-webkit-animation-name":"none","-moz-animation-name":"none","animation-name":"none","animation-duration":"0","-webkit-animation-duration":"0",opacity:0}).each(function(){var e=jQuery(this);dslc_module_new_id(e[0]);LiveComposer.Builder.rows_init();LiveComposer.Builder.moduleareas_init();dslc_generate_code();dslc_drag_and_drop();jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");e.animate({opacity:1},300);dslc_show_publish_button()});dslc_section_new_id(s[0])}function dslc_section_new_id(e){if(dslcDebug)console.log("dslc_section_new_id");var o=LiveComposer.Utils.get_unique_id();e.setAttribute("data-section-id",o);LiveComposer.Utils.update_section_property_raw(e,"section_instance_id",o)}function dslc_row_import(e){if(dslcDebug)console.log("dslc_row_import");jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-import-modules-section",dslc:"active",dslc_modules_section_code:e},function(e){dslc_js_confirm_close();jQuery("#dslc-main",LiveComposer.Builder.PreviewAreaDocument).append(e.output);LiveComposer.Builder.PreviewAreaWindow.dslc_bg_video();LiveComposer.Builder.PreviewAreaWindow.dslc_carousel();LiveComposer.Builder.PreviewAreaWindow.dslc_masonry();LiveComposer.Builder.rows_init();LiveComposer.Builder.moduleareas_init();dslc_drag_and_drop();dslc_generate_code();dslc_show_publish_button()})}function dslc_add_modules_section(){dslc_row_add()}function dslc_delete_modules_section(e){dslc_row_delete(e)}function dslc_edit_modules_section(e){dslc_row_edit(e)}function dslc_copy_modules_section(e){dslc_row_copy(e)}function dslc_import_modules_section(e){dslc_row_import(e)}jQuery(document).ready(function(e){e(document).on("click",".dslca-row-edit-save",function(){dslc_row_edit_confirm();e(".dslca-currently-editing").removeAttr("style");e(".dslca-row-options-filter-hook.dslca-active").removeClass("dslca-active");LiveComposer.Builder.PreviewAreaWindow.dslc_responsive_classes(true)});e(document).on("click",".dslca-row-edit-cancel",function(){dslc_row_edit_cancel();e(".dslca-currently-editing").removeAttr("style");e(".dslca-row-options-filter-hook.dslca-active").removeClass("dslca-active");LiveComposer.Builder.PreviewAreaWindow.dslc_responsive_classes(true)})});LiveComposer.Builder.rows_init=function(){jQuery("#dslc-main .dslc-modules-section",LiveComposer.Builder.PreviewAreaDocument).each(function(){if(jQuery(this).data("jsinit")!=="initialized"){new LiveComposer.Builder.Elements.CRow(this)}})};jQuery(document).ready(function(e){var o=function(e){var l=.75;var o=500;var i=100;var t=jQuery(".dslca-section-scroller",e);var a=jQuery(".dslca-section-scroller-inner",e)[0];t.on("wheel",function(e){s(e.originalEvent.deltaY||e.originalEvent.deltaX);return false});function s(e){if(e<0){e=-i}else{e=i}e=e*l;var o=t.find(".dslca-section-scroller-content").width();var s=t.width();if(o<=s)return false;var d=o-s+10;e=parseInt(a.style.left||0)-e;e=e>=0?0:e;e=e<=-d?-d:e;a.style.left=e+"px"}jQuery(".dslca-section-scroller-prev",e).click(function(e){e.preventDefault();s(-o)});jQuery(".dslca-section-scroller-next",e).click(function(e){e.preventDefault();s(o)});jQuery(window).load(function(){jQuery(window).resize(function(){s(0)})})};o(jQuery(".dslca-section.dslca-modules"));o(jQuery(".dslca-section.dslca-templates-load"))});jQuery(document).ready(function(e){LiveComposer.Builder.UI.initPreviewAreaScroller=function(){var o=5;var s=6;LiveComposer.Builder.Flags.windowScroller=false;jQuery(LiveComposer.Builder.PreviewAreaDocument).on("dragleave",".lc-scroll-top-area, .lc-scroll-bottom-area",function(e){LiveComposer.Builder.UI.stopScroller()});jQuery(LiveComposer.Builder.PreviewAreaDocument).on("dragenter dragover",".lc-scroll-bottom-area",function(e){if(LiveComposer.Builder.Flags.windowScroller!==false)return false;LiveComposer.Utils.publish("LC.sortableOff",{});LiveComposer.Builder.Flags.windowScroller=setInterval(function(){LiveComposer.Builder.PreviewAreaWindow.scrollBy(0,o)},s)});jQuery(LiveComposer.Builder.PreviewAreaDocument).on("dragenter",".lc-scroll-top-area",function(e){if(LiveComposer.Builder.Flags.windowScroller!==false)return false;LiveComposer.Utils.publish("LC.sortableOff",{});LiveComposer.Builder.Flags.windowScroller=setInterval(function(){LiveComposer.Builder.PreviewAreaWindow.scrollBy(0,-o)},s)});jQuery(LiveComposer.Builder.PreviewAreaDocument).on("dragend mouseup","body",function(e){LiveComposer.Builder.Flags.windowScroller&&LiveComposer.Builder.UI.stopScroller()})};LiveComposer.Builder.UI.stopScroller=function(){LiveComposer.Utils.publish("LC.sortableOn",{});clearInterval(LiveComposer.Builder.Flags.windowScroller);LiveComposer.Builder.Flags.windowScroller=false};jQuery("#scroller-stopper").on("dragover",function(){LiveComposer.Builder.UI.stopScroller()})});"use strict";LiveComposer.Builder.Elements.CSectionsContainer=function(e){var o=this;this.sortable=jQuery(e).sortable({items:".dslc-modules-section",handle:'.dslca-move-modules-section-hook:not(".dslca-action-disabled")',placeholder:"dslca-modules-section-placeholder",tolerance:"intersect",cursorAt:{bottom:10},axis:"y",scroll:true,scrollSensitivity:140,scrollSpeed:5,sort:function(){jQuery(this).removeClass("ui-state-default")},update:function(e,o){dslc_show_publish_button()},start:function(e,o){jQuery("body").removeClass("dslca-drag-not-in-progress").addClass("dslca-drag-in-progress");jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-drag-not-in-progress").addClass("dslca-drag-in-progress");o.placeholder.html('<span class="dslca-placeholder-help-text"><span class="dslca-placeholder-help-text-inner">'+DSLCString.str_row_helper_text+"</span></span>");jQuery(".dslc-content").sortable("refreshPositions")},stop:function(e,o){dslc_generate_code();LiveComposer.Builder.UI.stopScroller();jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-drag-in-progress").addClass("dslca-drag-not-in-progress");jQuery("body").removeClass("dslca-drag-in-progress").addClass("dslca-drag-not-in-progress");jQuery(".dslca-anim-opacity-drop").removeClass("dslca-anim-opacity-drop")}});jQuery(document).on("LC.sortableOff",function(){if(undefined!==o.sortable.sortable("instance")){o.sortable.sortable("option","disabled",true)}});jQuery(document).on("LC.sortableOn",function(){if(undefined!==o.sortable.sortable("instance")){o.sortable.sortable("option","disabled",false)}})};"use strict";jQuery(document).ready(function(d){dslc_module_options_tooltip();dslc_module_options_font();dslc_module_options_icon();dslc_module_options_icon_returnid();dslc_module_options_text_align();dslc_module_options_checkbox();dslc_module_options_box_shadow();dslc_module_options_text_shadow();var e="";e+=".dslca-module-edit-field-colorpicker";e+=", .dslca-modules-section-edit-field-colorpicker";e+=", .dslca-module-edit-option-box-shadow-color";e+=", .dslca-module-edit-option-text-shadow-color";jQuery(document).on("click",e,function(){dslc_module_options_color(this);var l=jQuery(this).closest(".dslca-color-option");var e=jQuery(".dslca-module-edit-options-inner");var i=l.find(".wp-picker-holder");var t=l.offset();var o=t.left+15;var s=window.innerWidth;var d=260;if(s<o+d){o=s-d}i.css("left",o+"px");jQuery(e).on("scroll",function(e){t=l.offset();var o=t.left+15;var s=window.innerWidth;var d=260;if(s<o+d){o=s-d}i.css("left",o+"px")})});jQuery(".dslca-container").on("mouseenter",".dslca-module-edit-option-slider",function(){if(!jQuery(this).hasClass("dslca-module-edit-option-select")){dslc_module_options_numeric(this)}});jQuery(".dslca-container").on("mouseenter",".dslca-modules-section-edit-option-slider",function(){dslc_module_options_numeric(this)});jQuery(".dslca-module-edit-form").submit(function(e){e.preventDefault();dslc_module_output_altered()});d(document).on("click",".dslca-module-edit-options-tab-hook",function(e){e.preventDefault();dslc_module_options_tab_filter(d(this))});d(document).on("click",".dslca-options-filter-hook",function(e){e.preventDefault();var o=jQuery(".dslca-options-filter-hook.dslca-active").data("section");var s=jQuery(this).data("section");d(".dslca-options-filter-hook.dslca-active").removeClass("dslca-active");d(this).addClass("dslca-active");dslc_module_options_section_filter(s);if(o=="responsive"){jQuery(".dslca-container-loader").show();LiveComposer.Builder.PreviewAreaWindow.dslc_responsive_classes();dslc_module_output_altered(function(){jQuery(".dslca-container-loader").hide()});jQuery("#page-builder-preview-area").resizable("destroy").attr("style","")}if(s=="responsive"){jQuery("#page-builder-preview-area").resizable()}});jQuery(document).on("click",".dslca-module-edit-save",function(e){e.preventDefault();dslc_module_options_confirm_changes(function(){LiveComposer.Builder.UI.unloadOptionsDeps();LiveComposer.Builder.Flags.panelOpened=false;jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("module-editing-in-progress")});jQuery(".dslca-options-filter-hook.dslca-active").removeClass("dslca-active");dslc_disable_responsive_view()});jQuery(document).on("click",".dslca-module-edit-cancel",function(e){e.preventDefault();dslc_module_options_cancel_changes(function(){LiveComposer.Builder.UI.unloadOptionsDeps();LiveComposer.Builder.Flags.panelOpened=false;jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("module-editing-in-progress")});jQuery(".dslca-options-filter-hook.dslca-active").removeClass("dslca-active");dslc_disable_responsive_view()})});(function(){var t=jQuery;var e=LiveComposer.Builder;LiveComposer.Builder.Helpers.colorpickers=[];LiveComposer.Builder.UI.clearUtils=function(){if(dslcDebug)console.log("LiveComposer.Builder.UI.clearUtils");LiveComposer.Builder.UI.clearColorPickers();if(undefined!==LiveComposer.Builder.moduleBackup){LiveComposer.Builder.moduleBackup.remove()}jQuery(".temp-styles-for-module",LiveComposer.Builder.PreviewAreaDocument).remove();jQuery(".mce-tinymce",LiveComposer.Builder.PreviewAreaDocument).hide()};LiveComposer.Builder.UI.clearColorPickers=function(){if(Array.isArray(e.Helpers.colorpickers)){e.Helpers.colorpickers.forEach(function(e){if(!jQuery(e).hasClass("dslca-modules-section-edit-field")){jQuery(e).remove()}});e.Helpers.colorpickers=[]}jQuery("body").off("click.wpcolorpicker")};LiveComposer.Builder.Helpers.depsHandlers=[];LiveComposer.Builder.UI.loadOptionsDeps=function(){var e=this;t(".dslca-module-edit-option").each(function(){var e=this;var o=true;try{var s=JSON.parse(LiveComposer.Utils.b64_to_utf8(t(this).data("dep")))}catch(e){o=false}if(o){var d=function(){var i=this;var e={};if((i.type=="radio"||i.type=="checkbox")&&s[i.value]==undefined){return false}if(i.type=="checkbox"&&s[i.value]!=undefined){e[i.value]=s[i.value]}else{e=s}Object.keys(e).forEach(function(l){e[l].split(",").forEach(function(e){var o=t(".dslca-module-edit-option-"+e.trim()).closest(".dslca-module-edit-option");var s=true;if(i.type=="radio"||i.type=="checkbox"){s=t(i).is(":checked")}var d=jQuery(".dslca-module-edit-options-tab-hook.dslca-active").data("id");if(i.value==l&&s){if(o.not(".dependent")){o.addClass("dependent")}if(o.hasClass("dep-hide")){o.removeClass("dep-hide");o.addClass("dep-show")}else{o.addClass("dep-show")}if(d==o.data("tab")){o.show()}}else{if(o.not(".dependent")){o.addClass("dependent")}if(o.hasClass("dep-show")){o.removeClass("dep-show");o.addClass("dep-hide")}else{o.addClass("dep-hide")}o.hide()}})})};t(document).on("change dslc-init-deps",'.dslca-module-edit-option *[data-id="'+t(this).data("id")+'"]',d);LiveComposer.Builder.Helpers.depsHandlers.push(d)}});t(".dslca-module-edit-option input, .dslca-module-edit-option select").trigger("dslc-init-deps")};LiveComposer.Builder.UI.unloadOptionsDeps=function(){LiveComposer.Builder.Helpers.depsHandlers.forEach(function(e){t(document).unbind("change",e);t(document).unbind("dslc-init-deps",e)});LiveComposer.Builder.Helpers.depsHandlers=[]};LiveComposer.Builder.Helpers.processInlineStyleTag=function(e){if(typeof e!="object")return false;var o="",s="";if(e.context.closest(".dslca-module-edit-option").data("tab")=="tablet_responsive"){o="@media only screen and (max-width: 1024px) and (min-width: 768px) {";s="}"}else if(e.context.closest(".dslca-module-edit-option").data("tab")=="phone_responsive"){o="@media only screen and (max-width: 767px) {";s="}"}e.styleContent=o+e.styleContent+s;var d=o+e.rule+e.elems;d=d.replace(/ /gi,"");if(LiveComposer.Builder.PreviewAreaDocument[0].getElementById(d)==null){var l=document.createElement("style");l.innerHTML=e.styleContent;l.id=d;l.className="temp-styles-for-module";LiveComposer.Builder.PreviewAreaDocument[0].body.appendChild(l)}else{LiveComposer.Builder.PreviewAreaDocument[0].getElementById(d).innerHTML=e.styleContent}};LiveComposer.Builder.UI.shakePanelConfirmButton=function(){jQuery(".dslca-module-edit-save").addClass("lc-shake-effect active");setTimeout(function(){jQuery(".dslca-module-edit-save").removeClass("lc-shake-effect active")},1e3)}})();function dslc_module_options_section_filter(e){if(dslcDebug)console.log("dslc_module_options_section_filter");jQuery(".dslca-module-edit-option").hide();jQuery('.dslca-module-edit-option[data-section="'+e+'"]').show();dslc_module_options_tab_filter()}function dslc_module_options_tab_filter(e){if(dslcDebug)console.log("dslc_module_options_tab_filter");var o=jQuery(".dslca-options-filter-hook.dslca-active").data("section");e=typeof e!=="undefined"?e:jQuery('.dslca-module-edit-options-tab-hook[data-section="'+o+'"]:first');var s=e.data("id");jQuery(".dslca-module-edit-options-tab-hook").removeClass("dslca-active");e.addClass("dslca-active");jQuery(".dslca-module-edit-options-tabs").show();jQuery(".dslca-module-edit-options-tab-hook").hide();jQuery('.dslca-module-edit-options-tab-hook[data-section="'+o+'"]').show();if(s){jQuery(".dslca-module-edit-option").hide();jQuery('.dslca-module-edit-option[data-tab="'+s+'"]').show();dslc_module_options_hideshow_tabs();if(jQuery(".dslca-module-edit-options-tab-hook:visible").length<2){jQuery(".dslca-module-edit-options-tabs").hide()}else{jQuery(".dslca-module-edit-options-tabs").show()}dslc_disable_responsive_view();if(s==DSLCString.str_res_tablet.toLowerCase()+"_responsive"){jQuery("body").removeClass("dslc-res-big dslc-res-smaller-monitor dslc-res-phone dslc-res-tablet");jQuery("body").addClass("dslc-res-tablet");jQuery("html").addClass("dslc-responsive-preview")}if(s==DSLCString.str_res_phone.toLowerCase()+"_responsive"){jQuery("body").removeClass("dslc-res-big dslc-res-smaller-monitor dslc-res-phone dslc-res-tablet");jQuery("body").addClass("dslc-res-phone");jQuery("html").addClass("dslc-responsive-preview")}if(s==DSLCString.str_res_tablet.toLowerCase()+"_responsive"||s==DSLCString.str_res_phone.toLowerCase()+"_responsive"){jQuery(".dslca-container-loader").show();dslc_module_output_altered(function(){jQuery(".dslca-container-loader").hide()})}}if(jQuery("body").hasClass("rtl")){var d=0;var l=0;var i=0;jQuery(".dslca-module-edit-options-wrapper > .dslca-module-edit-option:visible").each(function(e){if(!jQuery(this).hasClass("dslca-module-edit-option-hidden")&&!jQuery(this).hasClass("dslca-module-control-group")){d+=parseInt(jQuery(this).outerWidth(),10)}});jQuery(".dslca-module-edit-options-wrapper > .dslca-module-control-group:visible").each(function(e){l+=parseInt(jQuery(this).outerWidth(),10)});i=parseInt(d)+parseInt(l)+10;jQuery(".dslca-module-edit-options-wrapper").css({width:i+"px"})}}function dslc_module_options_hideshow_tabs(){if(dslcDebug)console.log("dslc_module_options_hideshow_tabs");var e=jQuery(".dslca-options-filter-hook.dslca-active").data("section");if(e=="styling"){var o=jQuery(".dslca-module-edit"),s=true,d=true,l=true,i=true,t=true,a=true,r=true,c=true,n=true,u=true,m=true,p=true,f=true,v=true,h=true,_=true,y=true,g=true,j=true,Q=true,b=true,C=true,w=true,k=true,L=true,B=true,D=true;if(!jQuery('.dslca-module-edit-field[value="main_heading"]').is(":checked"))s=false;if(!jQuery('.dslca-module-edit-field[value="filters"]').is(":checked"))d=false;if(!jQuery('.dslca-module-edit-field[value="arrows"]').is(":checked"))l=false;if(!jQuery('.dslca-module-edit-field[value="circles"]').is(":checked"))i=false;if(jQuery('.dslca-module-edit-field[data-id="type"]').val()!="carousel"){l=false;i=false}if(jQuery('.dslca-module-edit-field[data-id="pagination_type"]').val()=="disabled"){t=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="thumbnail"]').is(":checked")){a=false}if(jQuery('.dslca-module-edit-field[data-id*="elements"][value="content"]').length&&!jQuery('.dslca-module-edit-field[data-id*="elements"][value="title"]').is(":checked")){r=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="excerpt"]').is(":checked")){c=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="meta"]').is(":checked")){n=false}if(jQuery('.dslca-module-edit-field[data-id*="elements"][value="button"]').length&&!jQuery('.dslca-module-edit-field[data-id*="elements"][value="button"]').is(":checked")){u=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="categories"]').is(":checked")){m=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="separator"]').is(":checked")){f=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="count"]').is(":checked")){p=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="tags"]').is(":checked")){v=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="social"]').is(":checked")){h=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="position"]').is(":checked")){_=false}if(jQuery('.dslca-module-edit-field[data-id*="elements"][value="icon"]').length&&!jQuery('.dslca-module-edit-field[data-id*="elements"][value="icon"]').is(":checked")){y=false}if(jQuery('.dslca-module-edit-field[data-id*="elements"][value="content"]').length&&!jQuery('.dslca-module-edit-field[data-id*="elements"][value="content"]').is(":checked")){g=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="price"]').is(":checked")){j=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="price_2"]').is(":checked")){Q=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="addtocart"]').is(":checked")){b=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="details"]').is(":checked")){C=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="quote"]').is(":checked")){w=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="author_name"]').is(":checked")){k=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="author_position"]').is(":checked")){L=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="image"]').is(":checked")){B=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="logo"]').is(":checked")){D=false}if(s)jQuery('.dslca-module-edit-options-tab-hook[data-id="heading_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="heading_styling"]').hide();if(d)jQuery('.dslca-module-edit-options-tab-hook[data-id="filters_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="filters_styling"]').hide();if(l)jQuery('.dslca-module-edit-options-tab-hook[data-id="carousel_arrows_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="carousel_arrows_styling"]').hide();if(i)jQuery('.dslca-module-edit-options-tab-hook[data-id="carousel_circles_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="carousel_circles_styling"]').hide();if(t)jQuery('.dslca-module-edit-options-tab-hook[data-id="pagination_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="pagination_styling"]').hide();if(a)jQuery('.dslca-module-edit-options-tab-hook[data-id="thumbnail_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="thumbnail_styling"]').hide();if(r)jQuery('.dslca-module-edit-options-tab-hook[data-id="title_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="title_styling"]').hide();if(c)jQuery('.dslca-module-edit-options-tab-hook[data-id="excerpt_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="excerpt_styling"]').hide();if(n)jQuery('.dslca-module-edit-options-tab-hook[data-id="meta_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="meta_styling"]').hide();if(u)jQuery('.dslca-module-edit-options-tab-hook[data-id="button_styling"], .dslca-module-edit-options-tab-hook[data-id="primary_button_styling"],'+' .dslca-module-edit-options-tab-hook[data-id="secondary_button_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="button_styling"], .dslca-module-edit-options-tab-hook[data-id="primary_button_styling"],'+' .dslca-module-edit-options-tab-hook[data-id="secondary_button_styling"]').hide();if(m)jQuery('.dslca-module-edit-options-tab-hook[data-id="categories_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="categories_styling"]').hide();if(f)jQuery('.dslca-module-edit-options-tab-hook[data-id="separator_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="separator_styling"]').hide();if(p)jQuery('.dslca-module-edit-options-tab-hook[data-id="count_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="count_styling"]').hide();if(v)jQuery('.dslca-module-edit-options-tab-hook[data-id="tags_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="tags_styling"]').hide();if(_)jQuery('.dslca-module-edit-options-tab-hook[data-id="position_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="position_styling"]').hide();if(h)jQuery('.dslca-module-edit-options-tab-hook[data-id="social_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="social_styling"]').hide();if(y)jQuery('.dslca-module-edit-options-tab-hook[data-id="icon_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="icon_styling"]').hide();if(g)jQuery('.dslca-module-edit-options-tab-hook[data-id="content_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="content_styling"]').hide();if(j)jQuery('.dslca-module-edit-options-tab-hook[data-id="price_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="price_styling"]').hide();if(Q)jQuery('.dslca-module-edit-options-tab-hook[data-id="price_secondary_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="price_secondary_styling"]').hide();if(b||C)jQuery('.dslca-module-edit-options-tab-hook[data-id="other_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="other_styling"]').hide();if(w)jQuery('.dslca-module-edit-options-tab-hook[data-id="quote_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="quote_styling"]').hide();if(k)jQuery('.dslca-module-edit-options-tab-hook[data-id="author_name_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="author_name_styling"]').hide();if(L)jQuery('.dslca-module-edit-options-tab-hook[data-id="author_position_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="author_position_styling"]').hide();if(B)jQuery('.dslca-module-edit-options-tab-hook[data-id="image_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="image_styling"]').hide();if(D)jQuery('.dslca-module-edit-options-tab-hook[data-id="logo_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="logo_styling"]').hide()}if(jQuery('.dslca-options-filter-hook[data-section="styling"]').hasClass("dslca-active")){var x=jQuery('.dslca-module-edit-option[data-id="css_custom"]'),A=x.find("select").val();if(A=="enabled"){jQuery('.dslca-module-edit-option[data-section="styling"]').css({visibility:"visible"});jQuery(".dslca-module-edit-option[data-tab]").css("visibility","visible");jQuery(".dslca-module-edit-options-tabs").show()}else{jQuery('.dslca-module-edit-option[data-section="styling"]').css({visibility:"hidden"});jQuery(".dslca-module-control-group.dslca-module-edit-option").css("visibility","hidden");jQuery(".dslca-module-edit-options-tabs").hide();x.css({visibility:"visible"})}}else{jQuery(".dslca-module-edit-options-tabs").show()}if(jQuery('select.dslca-module-edit-field[data-id="css_res_t"]').val()=="disabled"){jQuery('.dslca-module-edit-option[data-id*="css_res_t"]').css("visibility","hidden");jQuery('.dslca-module-edit-option[data-tab="tablet_responsive"]').css("visibility","hidden")}else{jQuery('.dslca-module-edit-option[data-id*="css_res_t"]').css("visibility","visible");jQuery('.dslca-module-edit-option[data-tab="tablet_responsive"]').css("visibility","visible")}if(jQuery('select.dslca-module-edit-field[data-id="css_res_p"]').val()=="disabled"){jQuery('.dslca-module-edit-option[data-id*="css_res_p"]').css("visibility","hidden");jQuery('.dslca-module-edit-option[data-tab="phone_responsive"]').css("visibility","hidden")}else{jQuery('.dslca-module-edit-option[data-id*="css_res_p"]').css("visibility","visible");jQuery('.dslca-module-edit-option[data-tab="phone_responsive"]').css("visibility","visible")}jQuery('.dslca-module-edit-option[data-id="css_res_p"], .dslca-module-edit-option[data-id="css_res_t"]').css("visibility","visible");if(jQuery(".dslca-options-filter-hook").hasClass("dslca-active")){var P=jQuery(".dslca-options-filter-hook.dslca-active").data("section");if(jQuery('.dslca-module-edit-option[data-section="'+P+'"]').hasClass("dep-show")){jQuery(".dslca-module-edit-option.dep-show").show()}if(jQuery('.dslca-module-edit-option[data-section="'+P+'"]').hasClass("dep-hide")){jQuery(".dslca-module-edit-option.dep-hide").hide()}}if(jQuery(".dslca-module-edit-options-tab-hook").hasClass("dslca-active")){var S=jQuery(".dslca-module-edit-options-tab-hook.dslca-active").data("id");if(jQuery('.dslca-module-edit-option[data-tab="'+S+'"]').hasClass("dependent")){jQuery(".dslca-module-edit-option.dependent").hide();jQuery('.dslca-module-edit-option[data-tab="'+S+'"].dep-show').show();jQuery('.dslca-module-edit-option[data-tab="'+S+'"].dep-hide').hide()}else{jQuery(".dslca-module-edit-option.dependent").hide()}}}function dslc_module_options_confirm_changes(e){if(dslcDebug)console.log("dslc_module_options_confirm_changes");e=typeof e!=="undefined"?e:false;if(jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).hasClass("dslc-module-DSLC_Sliders")){jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited")}else{jQuery("body").addClass("dslca-module-saving-in-progress");dslc_module_output_altered(function(){dslc_update_preset();dslc_generate_code();jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");jQuery("body").removeClass("dslca-module-saving-in-progress");jQuery(".dslca-module-edit-options-inner").html("");jQuery(".dslca-module-edit-options-tabs").html("");LiveComposer.Builder.UI.clearUtils();if(e){e()}})}dslc_show_section(".dslca-modules");jQuery(".dslca-header .dslca-options-filter-hook").hide();jQuery(".dslca-module-edit-actions").hide();jQuery(".dslca-header .dslca-go-to-section-hook").show();dslc_show_publish_button()}function dslc_module_options_cancel_changes(e){if(dslcDebug)console.log("dslc_module_options_cancel_changes");e=typeof e!=="undefined"?e:false;var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);jQuery(".dslca-module-options-front",o).html("").append(LiveComposer.Builder.moduleBackup);dslc_module_output_altered(function(){dslc_generate_code();jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");jQuery(".dslca-module-edit-options-inner").html("");jQuery(".dslca-module-edit-options-tabs").html("");LiveComposer.Builder.UI.clearUtils();if(e){e()}});dslc_show_section(".dslca-modules");jQuery(".dslca-header .dslca-options-filter-hook").hide();jQuery(".dslca-module-edit-actions").hide();jQuery(".dslca-header .dslca-go-to-section-hook").show();dslc_show_publish_button();LiveComposer.Builder.UI.clearUtils()}function dslc_module_options_tooltip(){jQuery(document).on("click",".dslca-module-edit-field-ttip-close",function(){jQuery(".dslca-module-edit-field-ttip, .dslca-module-edit-field-icon-ttip").hide()});jQuery(document).on("click",".dslca-module-edit-field-ttip-hook",function(){var e=jQuery(".dslca-module-edit-field-ttip"),o=e.find(".dslca-module-edit-field-ttip-inner"),s=jQuery(this),d,l;l=s.parent();if(l.parent().hasClass("dslca-modules-section-edit-option")){d=s.closest(".dslca-modules-section-edit-option").find(".dslca-module-edit-field-ttip-content").html()}else{d=s.closest(".dslca-module-edit-option").find(".dslca-module-edit-field-ttip-content").html()}if(e.is(":visible")){jQuery(".dslca-module-edit-field-ttip").hide()}else{o.html(d);var i=s.offset();var t=e.outerHeight();var a=e.outerWidth();var r=i.left-a/2+6;var c="50%";if(r<0){c=a/2+r+"px";r=0}jQuery(".dslca-module-edit-field-ttip").show().css({top:i.top-t-20,left:r});jQuery("head").append(jQuery("<style>.dslca-module-edit-field-ttip:after, .dslca-module-edit-field-ttip:before { left: "+c+" }</style>"))}});jQuery(document).on("click",".dslca-module-edit-field-icon-ttip-hook",function(){var e=jQuery(".dslca-module-edit-field-icon-ttip");var o=jQuery(this);if(e.is(":visible")){jQuery(".dslca-module-edit-field-icon-ttip").hide()}else{var s=o.offset();var d=e.outerHeight();var l=e.outerWidth();var i=s.left-l/2+6;var t="50%";if(i<0){t=l/2+i+"px";i=0}jQuery(".dslca-module-edit-field-icon-ttip").show().css({top:s.top-d-20,left:i});jQuery("head").append(jQuery("<style>.dslca-module-edit-field-icon-ttip:after, .dslca-module-edit-field-icon-ttip:before { left: "+t+" }</style>"))}})}function dslc_module_options_font(){jQuery(document).on("click",".dslca-module-edit-field-font-next",function(e){e.preventDefault();if(!jQuery(this).hasClass("dslca-font-loading")&&!jQuery(this).siblings(".dslca-font-loading").length){var o=jQuery(this).closest(".dslca-module-edit-option-font");var s=jQuery(".dslca-module-edit-field-font",o);var d=dslcAllFontsArray.indexOf(s.val());var l=d+1;jQuery(".dslca-module-edit-field-font-suggest",o).text("");s.val(dslcAllFontsArray[l]).trigger("change");jQuery(this).addClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-chevron-right").addClass("dslc-icon-refresh dslc-icon-spin")}});jQuery(document).on("click",".dslca-module-edit-field-font-prev",function(e){e.preventDefault();if(!jQuery(this).hasClass("dslca-font-loading")&&!jQuery(this).siblings(".dslca-font-loading").length){var o=jQuery(this).closest(".dslca-module-edit-option-font");var s=jQuery(".dslca-module-edit-field-font",o);var d=dslcAllFontsArray.indexOf(s.val());var l=d-1;jQuery(".dslca-module-edit-field-font-suggest",o).text("");if(l<0){l=dslcAllFontsArray.length-1}s.val(dslcAllFontsArray[l]).trigger("change");jQuery(this).addClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-chevron-left").addClass("dslc-icon-refresh dslc-icon-spin")}});jQuery(document).on("keyup",".dslca-module-edit-field-font",function(e){var o,s,d,l=false,i;o=jQuery(this);s=o.closest(".dslca-module-edit-option");if(e.which==38){jQuery(".dslca-module-edit-field-font-prev",s).click()}if(e.which==40){jQuery(".dslca-module-edit-field-font-next",s).click()}if(e.which!=13&&e.which!=38&&e.which!=40){d=o.val();var t=[];var a=new RegExp("^"+d,"i");var r=dslcAllFontsArray.length;var c=0;do{if(a.test(dslcAllFontsArray[c])){if(!l){var l=dslcAllFontsArray[c]}}c++}while(c<r);if(!l){i=d;jQuery(".dslca-module-edit-field-font-suggest",s).hide()}else{i=l;jQuery(".dslca-module-edit-field-font-suggest",s).show()}jQuery(".dslca-module-edit-field-font-suggest",s).text(i);if(i.length){o.val(i.substring(0,o.val().length))}}});jQuery(document).on("keypress",".dslca-module-edit-field-font",function(e){if(e.which==13){e.preventDefault();var o,s,d,l,i;o=jQuery(this);s=o.closest(".dslca-module-edit-option");jQuery(this).val(jQuery(".dslca-module-edit-field-font-suggest",s).text()).trigger("change");jQuery(".dslca-module-edit-field-font-suggest",s).text("")}})}function dslc_list_icon(e,o){var s=jQuery(e).closest(".dslca-module-edit-option-icon");var d=jQuery(".dslca-module-edit-field-icon",s);var l=dslcIconsCurrentSet.indexOf(d.val());if(o=="previous"){var i=l-1}else{var i=l+1}jQuery(".dslca-module-edit-field-icon-suggest",s).text("");if(i<0){i=dslcIconsCurrentSet.length-1}d.val(dslcIconsCurrentSet[i]).trigger("change")}function dslc_module_options_icon(){jQuery(document).on("keyup",".dslca-module-edit-field-icon",function(e){var o,s,d,l,i;o=jQuery(this);s=o.closest(".dslca-module-edit-option");if(e.which==38){dslc_list_icon(o,"previous")}if(e.which==40){dslc_list_icon(o,"next")}if(e.which!=13&&e.which!=38&&e.which!=40){d=o.val().toLowerCase();o.val(d);l=jQuery.grep(dslcIconsCurrentSet,function(e,o){return e.indexOf(d)==0});i=l[0];jQuery(".dslca-module-edit-field-icon-suggest",s).text(i)}});jQuery(document).on("keypress",".dslca-module-edit-field-icon",function(e){if(e.which==13){e.preventDefault();var o,s,d,l,i;o=jQuery(this);s=o.closest(".dslca-module-edit-option");jQuery(this).val(jQuery(".dslca-module-edit-field-icon-suggest",s).text()).trigger("change");jQuery(".dslca-module-edit-field-icon-suggest",s).text("")}})}function dslc_module_options_icon_returnid(){jQuery(document).on("click",'.dslca-open-modal-hook[data-modal^=".dslc-list-icons"]',function(e){jQuery(this).closest(".dslca-module-edit-option-icon").find("input").addClass("icon-modal-active")});jQuery(document).on("click",".dslca-modal-icons .icon-item",function(e){var o=jQuery(this).find(".icon-item_name").text();jQuery("input.icon-modal-active").val(o).change();dslc_hide_modal("",jQuery(".dslca-modal:visible"));jQuery("input.icon-modal-active").removeClass("icon-modal-active")})}function dslc_module_options_text_align(){jQuery(document).on("click",".dslca-module-edit-option-text-align-hook",function(){var e=jQuery(this),o=jQuery(this).closest(".dslca-module-edit-option-text-align-wrapper").find(".dslca-module-edit-option-text-align-hook"),s=e.data("val"),d=jQuery(this).closest(".dslca-module-edit-option-text-align-wrapper").siblings("input.dslca-module-edit-field");o.removeClass("dslca-active");e.addClass("dslca-active");d.val(s).trigger("change")})}function dslc_module_options_checkbox(){jQuery(document).on("click",".dslca-module-edit-option-checkbox-hook, .dslca-modules-section-edit-option-checkbox-hook",function(){var e=jQuery(this);var o=e.siblings('input[type="checkbox"]');if(o.prop("checked")){o.prop("checked",false);e.find(".dslca-icon").removeClass("dslc-icon-check").addClass("dslc-icon-check-empty")}else{o.prop("checked",true);e.find(".dslca-icon").removeClass("dslc-icon-check-empty").addClass("dslc-icon-check")}o.change()})}function dslc_module_options_box_shadow(){if(dslcDebug)console.log("dslc_module_options_box_shadow");jQuery(document).on("change",".dslca-module-edit-option-box-shadow-hor, "+".dslca-module-edit-option-box-shadow-ver, .dslca-module-edit-option-box-shadow-blur, .dslca-module-edit-option-box-shadow-spread,"+" .dslca-module-edit-option-box-shadow-color, .dslca-module-edit-option-box-shadow-inset",function(){var e=jQuery(this).closest(".dslca-module-edit-option"),o=e.find(".dslca-module-edit-field"),s=e.find(".dslca-module-edit-option-box-shadow-hor").val(),d=e.find(".dslca-module-edit-option-box-shadow-ver").val(),l=e.find(".dslca-module-edit-option-box-shadow-blur").val(),i=e.find(".dslca-module-edit-option-box-shadow-spread").val(),t=e.find(".dslca-module-edit-option-box-shadow-color").val(),a=e.find(".dslca-module-edit-option-box-shadow-inset").is(":checked");if(a){a=" inset"}else{a=""}var r=s+"px "+d+"px "+l+"px "+i+"px "+t+a;o.val(r).trigger("change")})}function dslc_module_options_text_shadow(){if(dslcDebug)console.log("dslc_module_options_text_shadow");jQuery(document).on("change",".dslca-module-edit-option-text-shadow-hor, .dslca-module-edit-option-text-shadow-ver,"+".dslca-module-edit-option-text-shadow-blur, .dslca-module-edit-option-text-shadow-color",function(){var e=jQuery(this).closest(".dslca-module-edit-option"),o=e.find(".dslca-module-edit-field"),s=e.find(".dslca-module-edit-option-text-shadow-hor").val(),d=e.find(".dslca-module-edit-option-text-shadow-ver").val(),l=e.find(".dslca-module-edit-option-text-shadow-blur").val(),i=e.find(".dslca-module-edit-option-text-shadow-color").val();var t=s+"px "+d+"px "+l+"px "+i;o.val(t).trigger("change")})}function dslc_module_options_color(e){if(dslcDebug)console.log("dslc_module_options_color");var l,i,t,a,r,c,n;var u=[],o,s;var m="dslcColors-"+document.domain;if(undefined!==localStorage[m]){o=JSON.parse(localStorage[m]);u=o}if(1>u.length){u.push("#78b")}if(2>u.length){u.push("#ab0")}if(3>u.length){u.push("#de3")}u.push("#fff");u.push("#000");u.push("rgba(0,0,0,0)");var d=e;jQuery(d).each(function(){var e=jQuery(this).closest(".dslca-color-option");var d=jQuery(this);n=jQuery(this).val();d.wpColorPicker({mode:"hsl",palettes:u,change:function(e,o){l=d;var s=d.wpColorPicker("color");if(s==null){a=""}else{a=s}l.val(a).trigger("change");l.css("background",a);i=l.data("affect-on-change-el");t=l.data("affect-on-change-rule");if(null!=i){jQuery(i,".dslca-module-being-edited").css(t,a)}r=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);c=l.data("id");jQuery('.dslca-module-option-front[data-id="'+c+'"]',r).val(a);r.addClass("dslca-module-change-made")}});var o=e.find(".wp-picker-holder .iris-picker");o.append('<button type="button" class="dslca-colorpicker-apply">Apply</button>');var s=e.find(".dslca-colorpicker-apply");d.wpColorPicker("open");jQuery(s).on("click",function(){if("#fff"!==a&&"#ffffff"!==a&&"#000"!==a&&"#000000"!==a&&"rgba(0,0,0,0)"!==a){if(undefined===localStorage[m]){var e=[a];localStorage[m]=JSON.stringify(e)}else{var e=JSON.parse(localStorage[m]);if(e.indexOf(a)==-1){e.unshift(a);if(3<e.length){e.pop()}}localStorage[m]=JSON.stringify(e)}}d.wpColorPicker("close")});LiveComposer.Builder.Helpers.colorpickers.push(jQuery(this))})}function dslc_module_options_numeric(e){if(dslcDebug)console.log("dslc_module_options_numeric");var o=e;jQuery(o).each(function(){var s=jQuery(this);if(0===jQuery(".dslca-module-edit-field-slider",s).length){s.append('<div class="dslca-module-edit-field-slider"></div>')}var l=true;if(s.hasClass("dslca-modules-section-edit-option")){l=false}else{l=true}if(l){var d=s.find(".dslca-module-edit-field")}else{var d=s.find(".dslca-modules-section-edit-field")}if(s.hasClass("dslca-modules-section-edit-option")){var d=s.find(".dslca-modules-section-edit-field")}else{var d=s.find(".dslca-module-edit-field")}var i="",t=s.find(".dslca-module-edit-field-slider"),e=parseFloat(d.val()),a=parseFloat(d.data("max")),r=parseFloat(d.data("min")),o=parseFloat(d.data("increment")),c=a,n=r;var u=false;if(undefined!==d.data("onlypositive")&&1===d.data("onlypositive")){u=true}if(e>=a){a=e*2}if(!u&&e<=r){r=e*2}t.slider({min:r,max:a,step:o,value:d.val(),slide:function(e,o){d.val(o.value+i);d.trigger("change")},change:function(e,o){if(o.value>=a||o.value<=r){t.slider("destroy");dslc_module_options_numeric(s)}}});t.show();jQuery(s).on("mouseleave",function(){if(undefined!==t.slider("instance")){jQuery(t).slider("destroy")}t.remove()});if(d[0].classList.contains("slider-initiated"))return;d[0].classList.add("slider-initiated");d.on("keyup",function(e){if(undefined===e){return false}if(e.shiftKey){if(e.keyCode==38){this.value=(parseInt(this.value)||0)+9;d.trigger("change")}if(e.keyCode==40){this.value=parseInt(this.value)+0-9;d.trigger("change")}}if(e.keyCode==8||e.keyCode==45){d.trigger("change")}if(e.keyCode>=48&&e.keyCode<=57||e.keyCode>=96&&e.keyCode<=105){d.trigger("change")}var o=e.which?e.which:e.keyCode;if((o>=48&&o<=57||o>=96&&o<=105)&&e.keyCode!=8&&e.keyCode!=39&&e.keyCode!=37&&e.keyCode!=46){return false}});d.on("change",function(e){if(u&&this.value<0){this.value=0}var o;if(l){o=jQuery(e.target.closest(".dslca-module-edit-option-slider"))}else{o=jQuery(e.target.closest(".dslca-modules-section-edit-option-slider"))}var s=o.find(".dslca-module-edit-field-slider");if(undefined!==s.slider("instance")){s.slider("value",this.value)}if(l){var d=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);d.addClass("dslca-module-change-made")}});return false})}function dslc_disable_responsive_view(){jQuery("html").removeClass("dslc-responsive-preview");jQuery("body").removeClass("dslc-res-big dslc-res-smaller-monitor dslc-res-phone dslc-res-tablet")}function dslc_filter_module_options(e){dslc_module_options_section_filter(e)}function dslc_show_module_options_tab(e){dslc_module_options_tab_filter(e)}function dslc_confirm_changes(e){dslc_module_options_confirm_changes(e)}function dslc_cancel_changes(e){dslc_module_options_cancel_changes(e)}function dslc_init_colorpicker(){dslc_module_options_color()}function dslc_init_options_slider(){dslc_module_options_numeric()}function dslc_module_edit_options_hideshow_tabs(){dslc_module_options_hideshow_tabs()}"use strict";function dslc_template_load(e){if(dslcDebug)console.log("dslc_load_template");var o,s;jQuery("#wpcontent").prepend('<div class="lc-template-loader"></div>');var d='<div class="lc-loader lds-css"><div class="lds-spinner"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div>';jQuery(".lc-template-loader").prepend(d);jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-load-template",dslc:"active",dslc_template_id:e},function(e){jQuery("#dslc-main",LiveComposer.Builder.PreviewAreaDocument).html(e.output);jQuery(".lc-template-loader").remove();LiveComposer.Builder.PreviewAreaWindow.dslc_carousel();LiveComposer.Builder.rows_init();LiveComposer.Builder.moduleareas_init();dslc_drag_and_drop();dslc_show_publish_button();dslc_generate_code()})}function dslc_template_import(){if(dslcDebug)console.log("dslc_import_template");var e,o;jQuery(".dslca-modal-templates-import .dslca-modal-title").css({opacity:0});jQuery(".dslca-modal-templates-import .dslca-loading").show();jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-import-template",dslc:"active",dslc_template_code:jQuery("#dslca-import-code").val()},function(e){jQuery("#dslc-main",LiveComposer.Builder.PreviewAreaDocument).html(e.output);jQuery(".dslca-modal-templates-import .dslca-loading").hide();jQuery(".dslca-modal-templates-import .dslca-modal-title").css({opacity:1});dslc_hide_modal("",".dslca-modal-templates-import");LiveComposer.Builder.PreviewAreaWindow.dslc_bg_video();dslc_drag_and_drop();dslc_show_publish_button();dslc_generate_code()})}function dslc_template_save(){if(dslcDebug)console.log("dslc_save_template");jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-save-template",dslc:"active",dslc_template_code:jQuery("#dslca-code").val(),dslc_template_title:jQuery("#dslca-save-template-title").val()},function(e){dslc_hide_modal("",".dslca-modal-templates-save")})}function dslc_template_delete(o){if(dslcDebug)console.log("dslc_delete_template");jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-delete-template",dslc:"active",dslc_template_id:o},function(e){jQuery('.dslca-template[data-id="'+o+'"]').fadeOut(200,function(){jQuery(this).remove()})})}function dslc_load_template(e){dslc_template_load(e)}function dslc_import_template(){dslc_template_import()}function dslc_save_template(){dslc_template_save()}function dslc_delete_template(e){dslc_template_delete(e)}jQuery(document).ready(function(o){jQuery(document).on("click",".dslca-template",function(e){e.preventDefault();dslc_template_load(jQuery(this).data("id"))});o(".dslca-template-import-form").submit(function(e){e.preventDefault();dslc_template_import()});o(".dslca-template-save-form").submit(function(e){e.preventDefault();dslc_template_save()});o(document).on("click",".dslca-delete-template-hook",function(e){e.stopPropagation();dslc_template_delete(o(this).data("id"))})});"use strict";window.onerror=function(e,o,s,d){dslca_generate_error_report(e,o,s,d)};jQuery(document).on("click",".dslca-show-js-error-hook",function(e){e.preventDefault();var o=document.getElementById("dslca-js-errors-report");if(!jQuery("body").hasClass("dslca-saving-in-progress")){LiveComposer.Builder.UI.CModalWindow({title:'<a href="https://livecomposerplugin.com/support/" target="_blank"><span class="dslca-icon dslc-icon-comment"></span> &nbsp; Get Support Info</a>',content:'<span class="dslca-error-report">'+o.value+"</span>"})}});jQuery(document).ready(function(e){jQuery("#page-builder-frame")[0].contentWindow.onerror=function(e,o,s,d){dslca_generate_error_report(e,o,s,d)};dslca_update_report_log();jQuery("body").addClass("dslca-enabled dslca-drag-not-in-progress");jQuery(".dslca-invisible-overlay").hide();jQuery(".dslca-section").eq(0).show()});window.previewAreaTinyMCELoaded=function(){var e=this;LiveComposer.Builder.PreviewAreaWindow=this;LiveComposer.Builder.PreviewAreaDocument=jQuery(this.document);jQuery("#wpadminbar",LiveComposer.Builder.PreviewAreaDocument).remove();dslc_fix_contenteditable();var o=LiveComposer.Builder.PreviewAreaDocument.find("#dslc-main").eq(0)[0];new LiveComposer.Builder.Elements.CSectionsContainer(o);jQuery(document).trigger("editorFrameLoaded");dslc_drag_and_drop();dslc_generate_code();dslc_keypress_events();LiveComposer.Builder.UI.initPreviewAreaScroller()};jQuery(document).on("click",".dslca-currently-editing",function(){var e=false,o=false,s;if(jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).length){e=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);s="#5890e5"}else if(jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).length){e=jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument);s="#eabba9"}if(e){o=e.offset().top-100;if(o<0){o=0}var d=[];jQuery("html, body",LiveComposer.Builder.PreviewAreaDocument).animate({scrollTop:o},300,function(){e.removeAttr("style")})}});jQuery(window).keypress(function(e){if((e.metaKey||e.ctrlKey)&&e.keyCode==83){dslc_ajax_save_composer();e.preventDefault();return false}});jQuery(document).on("click",".dslca-hide-composer-hook",function(e){e.preventDefault();dslc_hide_composer()});jQuery(document).on("click",".dslca-show-composer-hook",function(e){e.preventDefault();dslc_show_composer()});jQuery(document).on("click",".dslca-go-to-modules-hook",function(e){e.preventDefault();dslc_show_section(".dslca-modules")});jQuery(document).on("click",".dslca-go-to-section-hook",function(e){e.preventDefault();if(jQuery(this).hasClass("dslca-active")){return}var o=jQuery(this).data("section");dslc_show_section(o);if(jQuery(this).hasClass("dslca-go-to-section-modules")||jQuery(this).hasClass("dslca-go-to-section-templates")){jQuery(this).addClass("dslca-active").siblings(".dslca-go-to-section-hook").removeClass("dslca-active")}});jQuery(document).on("click",".dslca-close-composer-hook",function(e){e.preventDefault();var o=jQuery(this).attr("href");if(!jQuery("body").hasClass("dslca-saving-in-progress")&&jQuery(".dslca-save-composer").is(":visible")){LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_exit_title,content:DSLCString.str_exit_descr,confirm:function(){window.location=o}})}else{window.location=o}});jQuery(document).on("click",".dslca-submit",function(){jQuery(this).closest("form").submit()});jQuery(document).on("click",".dslca-section-title",function(e){e.stopPropagation();if(jQuery(".dslca-section-title-filter",this).length){dslc_generate_filters();jQuery(".dslca-section-title-filter-options").slideToggle(300)}});jQuery(document).on("click",".dslca-section-title-filter-options a",function(e){e.preventDefault();e.stopPropagation();var o=jQuery(this).data("origin");var s=jQuery(this).closest(".dslca-section");if(s.hasClass("dslca-templates-load")){jQuery(".dslca-section-title-filter-curr",s).text(jQuery(this).text())}else{jQuery(".dslca-section-title-filter-curr",s).text(jQuery(this).text())}jQuery(".dslca-section-scroller-inner").css({left:0});dslc_filter_origin(o,s);jQuery(".dslca-section-title-filter-options").slideToggle(300)});function dslc_hide_composer(){if(dslcDebug)console.log("dslc_hide_composer");jQuery(".dslca-hide-composer-hook").hide();jQuery(".dslca-show-composer-hook").show();jQuery("body").addClass("dslca-composer-hidden");jQuery("body",LiveComposer.Builder.PreviewAreaDocument).addClass("dslca-composer-hidden");jQuery(".dslca-container").css({bottom:jQuery(".dslca-container").outerHeight()*-1});jQuery(".dslca-header").hide()}function dslc_show_composer(){if(dslcDebug)console.log("dslc_show_composer");jQuery(".dslca-show-composer-hook").hide();jQuery(".dslca-hide-composer-hook").show();jQuery("body").removeClass("dslca-composer-hidden");jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-composer-hidden");jQuery(".dslca-container").css({bottom:0});jQuery(".dslca-header").show()}function dslc_show_publish_button(){if(dslcDebug)console.log("dslc_show_publish_button");jQuery(".dslca-save-composer").show().addClass("dslca-init-animation");jQuery(".dslca-save-draft-composer").show().addClass("dslca-init-animation")}function dslc_hide_publish_button(){if(dslcDebug)console.log("dslc_hide_publish_button");jQuery(".dslca-save-composer").hide();jQuery(".dslca-save-draft-composer").hide()}function dslc_show_section(e){if(dslcDebug)console.log("dslc_show_section");var o=jQuery(e).data("title"),s=jQuery(e).data("bg");jQuery(".dslca-container").css({bottom:-500});jQuery(".dslca-section").hide();jQuery(e).show();if(e==".dslca-module-edit"){jQuery(".dslca-currently-editing").show().find("strong").text(jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).attr("title")+" element")}else if(e==".dslca-modules-section-edit"){jQuery(".dslca-currently-editing").show().css("background-color","#e5855f").find("strong").text("Row")}else{jQuery(".dslca-currently-editing").hide().find("strong").text("")}dslc_module_options_tab_filter();jQuery(".dslca-container").css({bottom:0});jQuery(e).find("input.dslca-module-edit-field-colorpicker").each(function(e){jQuery(this).css("background",jQuery(this).val())})}function dslc_generate_filters(){if(dslcDebug)console.log("dslc_generate_filters");var e,o=[],s='<a html="#" data-origin="">Show All</a>',d=jQuery(".dslca-section:visible .dslca-origin");d.each(function(){e=jQuery(this);if(jQuery.inArray(e.data("origin"),o)==-1){o.push(e.data("origin"));s+='<a href="#" data-origin="'+e.data("origin")+'">'+e.data("origin")+"</a>"}});jQuery(".dslca-section:visible .dslca-section-title-filter-options").html(s).css("background",jQuery(".dslca-section:visible").data("bg"))}function dslc_filter_origin(e,o){if(dslcDebug)console.log("dslc_filter_origin");jQuery(".dslca-origin",o).attr("data-display-module","false");jQuery('.dslca-origin[data-origin="'+e+'"]',o).attr("data-display-module","true");if(e==""){jQuery(".dslca-origin",o).attr("data-display-module","true");jQuery(".dslca-origin.dslca-exclude",o).attr("data-display-module","false")}}function dslc_drag_and_drop(){if(dslcDebug)console.log("dslc_drag_and_drop");var e,s,d,l;var o=jQuery(".dslca-modules .dslca-section-scroller-content");if(o.length==0){o=[document.createElement("div")]}var i=Sortable.create(o[0],{sort:false,group:{name:"modules",pull:"clone",put:false},animation:150,handle:".dslca-module",draggable:".dslca-module",chosenClass:"dslca-module-dragging",scroll:true,scrollSensitivity:150,scrollSpeed:15,setData:function(e,o){e.setData(LiveComposer.Utils.msieversion()!==false?"Text":"text/html",o.innerHTML)},onStart:function(e){e.oldIndex;jQuery("body").removeClass("dslca-new-module-drag-not-in-progress").addClass("dslca-new-module-drag-in-progress");jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-new-module-drag-not-in-progress").addClass("dslca-new-module-drag-in-progress");jQuery("#dslc-header").addClass("dslca-header-low-z-index")},onEnd:function(e){e.oldIndex;e.newIndex;var o=e.item;e.preventDefault();if(jQuery(o).closest(".dslca-section-scroller-content").length>0)return false;jQuery(".dslca-options-hovered",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-options-hovered");s=jQuery(o.parentNode);d=o.dataset.id;dslc_generate_code();if(d=="DSLC_M_A"||jQuery("body").hasClass("dslca-module-drop-in-progress")||s.closest("#dslc-header").length||s.closest("#dslc-footer").length){}else{jQuery("body").addClass("dslca-module-drop-in-progress");dslc_module_output_default(d,function(e){l=e.output;var o=LiveComposer.Builder.Helpers.insertModule(l,jQuery(".dslca-module",s));setTimeout(function(){LiveComposer.Builder.PreviewAreaWindow.dslc_masonry();jQuery("body").removeClass("dslca-module-drop-in-progress")},700);jQuery(".dslca-modules-area-manage",s).css({visibility:"visible"});LiveComposer.Builder.PreviewAreaWindow.dslc_carousel();LiveComposer.Builder.PreviewAreaWindow.dslc_tabs();LiveComposer.Builder.PreviewAreaWindow.dslc_init_accordion();dslc_generate_code();dslc_show_publish_button()});jQuery(o).find(".dslca-icon").attr("class","").attr("class","dslca-icon dslc-icon-refresh dslc-icon-spin");jQuery(".dslca-modules-area-manage",s).css({visibility:"hidden"})}LiveComposer.Builder.UI.stopScroller();jQuery("body").removeClass("dslca-new-module-drag-in-progress").addClass("dslca-new-module-drag-not-in-progress");jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-new-module-drag-in-progress").addClass("dslca-new-module-drag-not-in-progress");jQuery("#dslc-header").removeClass("dslca-header-low-z-index")},onAdd:function(e){var o=e.item;e.from},onUpdate:function(e){var o=e.item;dslc_show_publish_button()},onSort:function(e){e.preventDefault()},onRemove:function(e){},onFilter:function(e){var o=e.item},onMove:function(e){e.dragged;e.draggedRect;e.related;e.relatedRect;jQuery(e.to).addClass("dslca-options-hovered")}})}function dslc_option_changed(){dslc_show_publish_button()}function dslc_module_dragdrop_init(){dslc_drag_and_drop()}function dslc_fix_contenteditable(){LiveComposer.Builder.PreviewAreaDocument.on("dragstart",".dslca-module, .dslc-module-front, .dslc-modules-area, .dslc-modules-section",function(e){jQuery("[contenteditable]",LiveComposer.Builder.PreviewAreaDocument).attr("contenteditable",false)});LiveComposer.Builder.PreviewAreaDocument.on("dragend mousedown",".dslca-module, .dslc-module-front, .dslc-modules-area, .dslc-modules-section",function(e){jQuery("[contenteditable]",LiveComposer.Builder.PreviewAreaDocument).attr("contenteditable",true)})}function dslc_toogle_control(e){if(e===undefined)e=false;if(!e)return;var o=jQuery(".dslca-module-edit-option-"+e);var s=o.find(".dslca-module-edit-field");var d=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);var l=d[0].id;var i="";if("tablet_responsive"===o.data("tab")){i="body.dslc-res-tablet "}else if("phone_responsive"===o.data("tab")){i="body.dslc-res-phone "}var t=s.data("affect-on-change-el");if(t===undefined)return;var a=t.split(",");t="";for(var r=0;r<a.length;r++){if(r>0){t+=", "}t+=i+"#"+l+" "+a[r]}var c=s.data("affect-on-change-rule").replace(/ /g,"");var n=c.split(",");var u;var m=s.data("ext");o.toggleClass("dslca-option-off");if(o.hasClass("dslca-option-off")){u=dslc_get_control_value(e);s.data("val-bckp",u);for(var r=0;r<n.length;r++){jQuery(t,LiveComposer.Builder.PreviewAreaDocument).css(n[r],"");disable_css_rule(t,n[r],l)}s.val("").trigger("change")}else{s.val(s.data("val-bckp")).trigger("change");u=dslc_get_control_value(e);u=dslc_combine_value_and_extension(u,m||"");for(var r=0;r<n.length;r++){var p=t+"{"+n[r]+": "+u+"}";LiveComposer.Builder.Helpers.processInlineStyleTag({context:o,rule:n[r],elems:t.replace(new RegExp("#"+l,"gi"),"").trim(),styleContent:p})}}}jQuery(document).ready(function(d){jQuery(document).on("click",".dslca-module-edit-option .dslc-control-toggle",function(e){e.preventDefault();var o=jQuery(e.target).closest(".dslca-module-edit-option").find(".dslca-module-edit-field").data("id");dslc_toogle_control(o)});jQuery(document).on("mousedown",".dslca-module-edit-option",function(e){var o=d(".dslc-control-toggle");if(!o.is(e.target)&&o.has(e.target).length===0){if(jQuery(e.target).closest(".dslca-module-edit-option").hasClass("dslca-option-off")){var s=d(e.target).closest(".dslca-module-edit-option").find(".dslca-module-edit-field").data("id");dslc_toogle_control(s)}}})});function disable_css_rule(e,o,s){var d;var l="css-for-"+s;var i=document.getElementById("page-builder-frame").contentWindow.document.getElementById(l);e=e.replace(/\s\s+/g," ");if(i){i=i.sheet;if(i["rules"]){d="rules"}else if(i["cssRules"]){d="cssRules"}else{}for(var t=0;t<i[d].length;t++){if(i[d][t].selectorText==e){if(i[d][t].style[o]){i[d][t].style[o]="";break}}}}}function dslc_combine_value_and_extension(e,o){if(""===e||null===e){return e}if(e.indexOf(o)==-1){e=e+o}return e}function dslc_get_control_value(e){var o=jQuery(".dslca-module-edit-option-"+e);var s="text";var d=o.find(".dslca-module-edit-field");var l;l=d.val();return l}function dslc_keypress_events(){jQuery([document,LiveComposer.Builder.PreviewAreaWindow.document]).unbind("keydown").bind("keydown",function(e){dslc_modal_keypress_events(e);dslc_disable_backspace_navigation(e);dslc_notice_on_refresh(e);dslc_save_page(e)})}function dslc_disable_backspace_navigation(e){var o=false;if(e.keyCode===8){var s=e.srcElement||e.target;if(s.tagName.toUpperCase()==="INPUT"&&(s.type.toUpperCase()==="TEXT"||s.type.toUpperCase()==="PASSWORD"||s.type.toUpperCase()==="NUMBER"||s.type.toUpperCase()==="FILE")||s.tagName.toUpperCase()==="TEXTAREA"||jQuery(s).hasClass("dslca-editable-content")||jQuery(s).hasClass("dslc-tabs-nav-hook-title")||jQuery(s).hasClass("dslc-accordion-title")){o=s.readOnly||s.disabled}else{o=true}}if(o){e.preventDefault()}}function dslc_notice_on_refresh(e){if(e.which==116||e.which===82&&e.metaKey){if(jQuery(".dslca-save-composer-hook").offsetParent!==null||jQuery(".dslca-module-edit-save").offsetParent!==null){e.preventDefault();LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_refresh_title,content:DSLCString.str_refresh_descr,confirm:function(){window.location.reload()}})}}}function dslc_save_page(e){if(e.which==83&&(e.metaKey||e.ctrlKey)){if(jQuery(".dslca-save-composer-hook").css("display")=="block"){dslc_save_composer();e.preventDefault();return false}}}function dslca_generate_error_report(e,o,s,d){var l="JavaScript error detected in a third-party plugin";if(o.match("wp-content/plugins/live-composer-page-builder/js")!=null){l="Live Composer returned JS error"}var i="";i+='<br /><strong style="color:#E55F5F;">'+l+"</strong><br />";i+=e+'<br /> File "'+o+'", line '+s+", char "+d+"<br />";if("undefined"!==typeof Storage){localStorage.setItem("js_errors_report",i)}}function dslca_update_report_log(){var e=document.getElementById("dslca-js-errors-report");var o=localStorage.getItem("js_errors_report");if(null!==o){e.value=o;localStorage.removeItem("js_errors_report");document.querySelector(".dslca-show-js-error-hook").setAttribute("style","visibility:visible")}}jQuery(document).on("editorFrameLoaded",function(){var a=jQuery;var e=a("div[data-hf]",LiveComposer.Builder.PreviewAreaDocument);var r="";e.each(function(e,o){var s=a(o).data("editing-link");var d=a(o).data("editing-type");var l=a(o).data("editing-label");var i=a(o).data("editing-sublabel");r+='<div class="dslc-hf-block-overlay"><a target="_blank" href="'+s+'" class="dslc-hf-block-overlay-button dslca-link">'+l+"</a>";if(i!==undefined){r+=' <span class="dslc-hf-block-overlay-text">'+i+"</span>"}r+="</div>";var t=document.createElement("div");t.innerHTML=r;o.append(t)})});"use strict";LiveComposer.Utils={addslashes:function(e){e=e.replace(/\\/g,"\\\\");e=e.replace(/\'/g,"\\'");e=e.replace(/\"/g,'\\"');e=e.replace(/\0/g,"\\0");return e},basename:function(e){return e.split(/[\\/]/).pop()},msieversion:function(){var e=window.navigator.userAgent;var o=e.indexOf("MSIE ");if(o>0||!!navigator.userAgent.match(/Trident.*rv\:11\./)){return parseInt(e.substring(o+5,e.indexOf(".",o)))}else{return false}},checkParams:function(e){if(!Array.isArray(e)){throw"Param is not array"}var o={integer:function(e){return isNaN(parseInt(e))},float:function(e){return isNaN(parseFloat(e))},string:function(e){return e!=null&&e!=undefined&&typeof e=="string"},array:function(e){return Array.isArray(e)},object:function(e){return typeof e=="object"}};e.map(function(e){if(!o[e[1]](e[0])){throw"Param "+e[0]+" is not "+e[1]}})},utf8_to_b64:function(e){return window.btoa(unescape(encodeURIComponent(e)))},b64_to_utf8:function(e){return decodeURIComponent(escape(window.atob(e)))},get_page_params:function(){return decodeURIComponent(window.location.search.slice(1)).split("&").reduce(function e(o,s){s=s.split("=");o[s[0]]=s[1];return o},{})},get_unique_id:function(){return Math.random().toString(32).slice(2)},update_module_property_raw:function(e,o,s){var d=e.getElementsByClassName("dslca-module-code")[0];var l=e.querySelector('.dslca-module-option-front[data-id="'+o+'"]');var i=d.value;i=JSON.parse(i);i[o]=s;i=JSON.stringify(i);d.value=i;d.innerHTML=i;l.value=s;l.innerHTML=s},update_section_property_raw:function(e,o,s){var d=e.getElementsByClassName("dslca-section-code")[0];var l=e.querySelector('.dslca-modules-section-settings input[data-id="'+o+'"]');var i=d.value;i=JSON.parse(i);i[o]=s;i=JSON.stringify(i);d.value=i;d.innerHTML=i;l.setAttribute("value",s);l.setAttribute("data-def",s)},publish:function(e,o){o=o?o:{};this.checkParams([[e,"string"],[o,"object"]]);jQuery(document).trigger({type:e,message:{details:o}});LiveComposer.Builder.PreviewAreaWindow.dslca_publish_event(e,o)}};"use strict";function dslc_dm_get_defaults(e){if(dslcDebug)console.log("dslc_dm_get_defaults");var o=e.find(".dslca-module-code").val();jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-dm-module-defaults",dslc:"active",dslc_modules_options:o},function(e){jQuery(".dslca-prompt-modal textarea").val(e.output)})}function dslc_editable_content_gen_code(e){if(dslcDebug)console.log("dslc_editable_content_gen_code");if(undefined===e){return false}var o,s,d;o=e.closest(".dslc-module-front");s=e.html().trim().replace(/<textarea/g,"<lctextarea").replace(/<\/textarea/g,"</lctextarea");d=e.data("id");jQuery('.dslca-module-option-front[data-id="'+d+'"]',o).val(s)}function dslc_filter_textarea(e){if(dslcDebug)console.log("dslc_filter_textarea");if(undefined===e){return false}var o;o=e.trim().replace(/<textarea/g,"<lctextarea").replace(/<\/textarea/g,"</lctextarea");return o}window.onbeforeunload=function(){return};jQuery(document).ready(function(g){jQuery(document).on("change",".dslca-modules-section-edit-field",function(){var e,o,s,d,l,i,t,a,r,c,n;e=g(this);o=e.data("id");l=e.val();i=l;t=l+e.data("ext");a=e.data("css-rule");s=g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument);c=s;r=g('.dslca-modules-section-settings input[data-id="'+o+'"]',s);s.addClass("dslca-modules-section-change-made");if(e.hasClass("dslca-modules-section-edit-field-upload")){if(l&&l.length){l=g('.dslca-modules-section-settings input[data-id="dslca-img-url"]',s).val()}}if(a=="background-image"){l='url("'+l+'")';LiveComposer.Builder.PreviewAreaWindow.dslc_bg_video()}if(o=="bg_image_attachment"){s.removeClass("dslc-init-parallax")}if(o=="border-top"||o=="border-right"||o=="border-bottom"||o=="border-left"){var u=g('.dslca-modules-section-settings input[data-id="border_style"]').val();r=g('.dslca-modules-section-settings input[data-id="border"]',s);i="";var m=e.closest(".dslca-modules-section-edit-option-checkbox-wrapper");m.find(".dslca-modules-section-edit-field-checkbox").each(function(){if(g(this).is(":checked")){if(g(this).data("id")=="border-top"){i+="top "}else if(g(this).data("id")=="border-right"){i+="right "}else if(g(this).data("id")=="border-bottom"){i+="bottom "}else if(g(this).data("id")=="border-left"){i+="left "}}});if(e.is(":checked")){if(e.data("id")=="border-top"){s.css({"border-top-style":u})}else if(e.data("id")=="border-right"){s.css({"border-right-style":u})}else if(e.data("id")=="border-bottom"){s.css({"border-bottom-style":u})}else if(e.data("id")=="border-left"){s.css({"border-left-style":u})}}else{if(e.data("id")=="border-top"){s.css({"border-top-style":"hidden"})}else if(e.data("id")=="border-right"){s.css({"border-right-style":"hidden"})}else if(e.data("id")=="border-bottom"){s.css({"border-bottom-style":"hidden"})}else if(e.data("id")=="border-left"){s.css({"border-left-style":"hidden"})}}}else if(e.hasClass("dslca-modules-section-edit-field-checkbox")){var p=g(this).closest(".dslca-modules-section-edit-option-checkbox-wrapper").find(".dslca-modules-section-edit-field-checkbox");var f="";p.each(function(){if(g(this).prop("checked")){f+=g(this).data("val")+" "}});var i=f;if(e.data("id")=="show_on"){if(f.indexOf("desktop")!==-1){g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslc-hide-on-desktop")}else{g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).addClass("dslc-hide-on-desktop")}if(f.indexOf("tablet")!==-1){g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslc-hide-on-tablet")}else{g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).addClass("dslc-hide-on-tablet")}if(f.indexOf("phone")!==-1){g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslc-hide-on-phone")}else{g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).addClass("dslc-hide-on-phone")}}}else if(o=="bg_image_attachment"&&l=="parallax"||o=="type"){if(o=="bg_image_attachment"){s.addClass("dslc-init-parallax");LiveComposer.Builder.PreviewAreaWindow.dslc_parallax()}else if(o=="type"){if(l=="full"){s.addClass("dslc-full")}else{s.removeClass("dslc-full")}LiveComposer.Builder.PreviewAreaWindow.dslc_masonry()}}else if(o=="columns_spacing"){if(l=="nospacing"){s.addClass("dslc-no-columns-spacing")}else{s.removeClass("dslc-no-columns-spacing")}}else if(o=="custom_class"){}else if(o=="custom_id"){}else if(o=="bg_video"){jQuery(".dslc-bg-video video",s).remove();if(l&&l.length){var v=l;v=v.replace(".webm","");v=v.replace(".mp4","");jQuery(".dslc-bg-video-inner",s).html('<video><source type="video/mp4" src="'+v+'.mp4" /><source type="video/webm" src="'+v+'.webm" /></video>');LiveComposer.Builder.PreviewAreaWindow.dslc_bg_video()}}else if(o=="bg_image_thumb"){if(i=="enabled"){if(jQuery("#dslca-post-data-thumb").length){var h="url('"+jQuery("#dslca-post-data-thumb").val()+"')";c.css(a,h)}}else if(i=="disabled"){c.css(a,"none")}}else{if(e.data("css-element")){c=jQuery(e.data("css-element"),s)}a=a.replace(/ /g,"").split(",");var _;if(null!=e.data("ext")){_=t}else{_=l}for(var y=0;y<a.length;y++){c.css(a[y],_)}}r.val(i);if(!LiveComposer.Builder.Flags.generate_code_after_row_changed)return false});jQuery(document).on("blur",".dslc-editable-area",function(e){var o=g(this).closest(".dslc-module-front");var s=g(this).data("dslc-option-id");var d=g(this).html();jQuery('.dslca-module-options-front textarea[data-id="'+s+'"]',o).val(d);dslc_module_output_altered()});jQuery(document).on("change",".dslca-module-edit-field",function(){if(dslcDebug)console.log("on change event for .dslca-module-edit-field");var e="",o="",l=jQuery(this),s=l.data("id"),d=l.closest(".dslca-module-edit-option"),i=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument),t=i.data("dslc-module-id"),a=jQuery(".dslca-module-options-front textarea",i);i.addClass("dslca-module-change-made");if(d.hasClass("dslca-module-edit-option-select")||d.hasClass("dslca-module-edit-option-checkbox")){dslc_module_options_hideshow_tabs()}if(jQuery(this).closest(".dslca-module-edit-option").data("refresh-on-change")=="active"){if(d.find(".dslca-module-edit-option-checkbox-wrapper").length){var r=jQuery('input[type="checkbox"]',d);r.each(function(){if(g(this).prop("checked")){e=e+jQuery(this).val()+" "}})}else if(l.hasClass("dslca-module-edit-option-radio")){var e=jQuery(".dslca-module-edit-field:checked",l).val()}else{var e=l.val();if(s=="orientation"&&e=="horizontal"){var c=jQuery(".dslca-module-edit-option-thumb_width .dslca-module-edit-field");c.val("40").trigger("change")}else if(s=="orientation"&&e=="vertical"){var c=jQuery(".dslca-module-edit-option-thumb_width .dslca-module-edit-field");c.val("100").trigger("change")}}e=dslc_filter_textarea(e);jQuery('.dslca-module-options-front textarea[data-id="'+s+'"]',i).val(e);jQuery(".dslca-container-loader").show();dslc_module_output_altered(function(){jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).addClass("dslca-module-change-made");if(s=="css_load_preset"&&!jQuery("body").hasClass("dslca-new-preset-added")){dslc_module_options_show(t);jQuery(".dslca-container-loader").hide()}else{jQuery(".dslca-container-loader").hide()}jQuery("body").removeClass("dslca-new-preset-added");LiveComposer.Utils.publish("LC.moduleChange",{moduleId:t,optionID:s,optionVal:l.val()})})}else{if(l.hasClass("dslca-module-edit-field-font")){var n=l.val();n=n+":400,100,200,300,500,600,700,800,900";var u=l.data("affect-on-change-el");var m=l.data("affect-on-change-rule");var p=l.val();var f=p;var v=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);if(l.val().length&&dslcGoogleFontsArray.indexOf(l.val())!==-1){document.getElementById("page-builder-frame").contentWindow.WebFont.load({google:{families:[n]},active:function(e,o){if(jQuery(".dslca-font-loading").closest(".dslca-module-edit-field-font-next").length){jQuery(".dslca-font-loading").removeClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-spin").addClass("dslc-icon-chevron-right")}else{jQuery(".dslca-font-loading").removeClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-spin").addClass("dslc-icon-chevron-left")}var s=u.split(",");var d="#"+v[0].id+" "+s.join(", #"+v[0].id+" ")+" {"+m+": "+p+"}";LiveComposer.Builder.Helpers.processInlineStyleTag({context:l,rule:m,elems:u,styleContent:d})},inactive:function(e,o){if(jQuery(".dslca-font-loading").closest(".dslca-module-edit-field-font-next").length){jQuery(".dslca-font-loading").removeClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-spin").addClass("dslc-icon-chevron-right")}else{jQuery(".dslca-font-loading").removeClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-spin").addClass("dslc-icon-chevron-left")}}})}else{setTimeout(function(){if(jQuery(".dslca-font-loading.dslca-module-edit-field-font-next").length){jQuery(".dslca-font-loading").removeClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-spin").addClass("dslc-icon-chevron-right")}else{jQuery(".dslca-font-loading").removeClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-spin").addClass("dslc-icon-chevron-left")}var e=u.split(",");var o="#"+v[0].id+" "+e.join(", #"+v[0].id+" ")+" {"+m+": "+p+"}";LiveComposer.Builder.Helpers.processInlineStyleTag({context:l,rule:m,elems:u,styleContent:o})},100)}}else if(l.hasClass("dslca-module-edit-field-checkbox")){var r=jQuery('input[type="checkbox"]',d);r.each(function(){if(jQuery(this).prop("checked")){e=e+"solid ";o=o+g(this).val()+" "}else{e=e+"none "}})}if(!l.hasClass("dslca-module-edit-field-font")&&l.data("affect-on-change-el")!=null&&l.data("affect-on-change-rule")!=null){var h=l.data("ext")||"";var u=l.data("affect-on-change-el");var m=l.data("affect-on-change-rule");var p=l.val();var f=p;if(l.hasClass("dslca-module-edit-field-checkbox")){p=e;f=o}if(l.hasClass("dslca-module-edit-field-image")){p='url("'+p+'")'}if(null!==p&&p.length<1&&(m=="background-color"||m=="background")){p="transparent"}m.split(",").forEach(function(e){e=e.replace(/\s+/g,"");var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);var s=u.split(",");var d="#"+o[0].id+" "+s.join(", #"+o[0].id+" ")+" {"+e+": "+p+h+"}";LiveComposer.Builder.Helpers.processInlineStyleTag({context:l,rule:e,elems:u,styleContent:d})})}var _="";if(s.indexOf("css_")!==-1){_=f}else{_=l.val()}jQuery('.dslca-module-option-front[data-id="'+s+'"]',i).val(_);LiveComposer.Utils.publish("LC.moduleChange",{moduleId:i[0].id,optionID:s,optionVal:f||l.val()})}})});jQuery(document).ready(function(e){var i;jQuery(document).on("click",".dslca-module-edit-field-image-add-hook, .dslca-modules-section-edit-field-image-add-hook",function(){var s=jQuery(this);if(s.hasClass("dslca-module-edit-field-image-add-hook")){var d=s.siblings(".dslca-module-edit-field-image");var l=s.siblings(".dslca-module-edit-field-image-remove-hook")}else{var d=s.siblings(".dslca-modules-section-edit-field-upload");var l=s.siblings(".dslca-modules-section-edit-field-image-remove-hook")}var e=false;i=wp.media.frames.file_frame=wp.media({title:"Choose Image",button:{text:"Confirm"},multiple:e});i.on("select",function(){var e=i.state().get("selection").first().toJSON();d.val(e.id);var o=s.parent().attr("data-id");if(e.alt!=""&&o=="image"){jQuery('.dslca-module-edit-option-image_alt input[data-id="image_alt"]').val(e.alt)}if(e.title!=""&&o=="image"){jQuery('.dslca-module-edit-option-image_title input[data-id="image_title"]').val(e.title)}jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).find('.dslca-modules-section-settings input[data-id="dslca-img-url"]').val(e.url);d.trigger("change");s.hide();l.show()});i.open()});jQuery(document).on("click",".dslca-module-edit-field-image-remove-hook, .dslca-modules-section-edit-field-image-remove-hook",function(){var e=jQuery(this);if(e.hasClass("dslca-module-edit-field-image-remove-hook")){var o=e.siblings(".dslca-module-edit-field-image");var s=e.siblings(".dslca-module-edit-field-image-add-hook")}else{var o=e.siblings(".dslca-modules-section-edit-field-upload");var s=e.siblings(".dslca-modules-section-edit-field-image-add-hook")}o.val("").trigger("change");var d=e.parent().attr("data-id");if(d=="image"){jQuery(".dslca-module-edit-option-image_alt input").attr("value","").trigger("change");jQuery(".dslca-module-edit-option-image_alt input").attr("data-val-bckp","").trigger("change");jQuery(".dslca-module-edit-option-image_title input").attr("value","").trigger("change");jQuery(".dslca-module-edit-option-image_title input").attr("data-val-bckp","").trigger("change")}e.hide();s.show()});jQuery(document).on("click",".dslca-wp-editor-save-hook",function(){var e=jQuery(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument).closest(".dslc-module-front");if(typeof tinymce!="undefined"){if(jQuery("#wp-dslcawpeditor-wrap").hasClass("tmce-active")){var o=tinymce.get("dslcawpeditor");var s=o.getContent()}else{var s=jQuery("#dslcawpeditor").val()}jQuery(".dslca-wp-editor").hide();jQuery(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument).html(s);if(e.hasClass("dslc-module-handle-like-accordion")){jQuery(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument).siblings(".dslca-accordion-plain-content").val(s);var d=e.find(".dslc-accordion");LiveComposer.Builder.PreviewAreaWindow.dslc_accordion_generate_code(d)}else if(e.hasClass("dslc-module-handle-like-tabs")){jQuery(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument).siblings(".dslca-tab-plain-content").val(s);var l=e.find(".dslc-tabs");LiveComposer.Builder.PreviewAreaWindow.dslc_tabs_generate_code(l)}dslc_editable_content_gen_code(jQuery(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument));jQuery(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-wysiwyg-active")}else{console.info("Live Composer: TinyMCE is undefined.")}});jQuery(document).on("click",".dslca-wp-editor-cancel-hook",function(){e(".dslca-wp-editor").hide();e(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-wysiwyg-active")})});
1
+ "use strict";function dslc_ui_animations(){if(dslcDebug)console.log("dslc_ui_animations");jQuery(document).on("mouseenter",".dslca-modules-area-manage",function(){jQuery(this).closest(".dslc-modules-area").addClass("dslca-options-hovered")}).on("mouseleave",".dslca-modules-area-manage",function(){jQuery(this).closest(".dslc-modules-area").removeClass("dslca-options-hovered")});jQuery(document).on("mouseenter",".dslca-drag-not-in-progress .dslc-module-front",function(e){if(!jQuery("body").hasClass("dslca-composer-hidden")){if(jQuery(this).height()<190)jQuery(".dslca-module-manage",this).addClass("dslca-horizontal");else jQuery(".dslca-module-manage",this).removeClass("dslca-horizontal")}}).on("mouseleave",".dslca-drag-not-in-progress .dslc-module-front",function(e){if(!jQuery("body").hasClass("dslca-composer-hidden")){}});jQuery(document).on("mouseenter",".dslca-drag-not-in-progress .dslc-modules-area",function(e){var o=jQuery(this);if(!jQuery("body").hasClass("dslca-composer-hidden")){if(jQuery(this).height()<130)jQuery(".dslca-modules-area-manage",this).addClass("dslca-horizontal");else jQuery(".dslca-modules-area-manage",this).removeClass("dslca-horizontal")}}).on("mouseleave",".dslca-drag-not-in-progress .dslc-modules-area",function(e){var o=jQuery(this);if(!jQuery("body").hasClass("dslca-composer-hidden")){}})}jQuery(document).ready(function(){dslc_ui_animations()});"use strict";function dslc_save_composer(){if(dslcDebug)console.log("dslc_save_composer");dslc_generate_code();dslca_gen_content_for_search();var e=jQuery("#dslca-code").val(),o=jQuery("#dslca-content-for-search").val(),s=jQuery(".dslca-container").data("post-id");jQuery("body").addClass("dslca-saving-in-progress");jQuery(".dslca-save-composer .dslca-icon").removeClass("dslc-icon-ok").addClass("dslc-icon-spin dslc-icon-spinner");jQuery.ajax({method:"POST",type:"POST",url:DSLCAjax.ajaxurl,data:{action:"dslc-ajax-save-composer",dslc:"active",dslc_post_id:s,dslc_code:e,dslc_content_for_search:o},timeout:3e4}).done(function(e){if(e.status=="success"){jQuery(".dslca-save-composer").fadeOut(250);jQuery(".dslca-save-draft-composer").fadeOut(250);jQuery("body").append('<iframe class="lbmn-cache-iframe" id="lbmn-cache-iframe-'+s+'" src="'+DSLCSiteData.siteurl+"/?p="+s+'" ></iframe>');jQuery(".lbmn-cache-iframe").each(function(e,o){jQuery(o).load(function(){jQuery(o).remove()})})}else{alert("Something went wrong, please try to save again. Are you sure to make any changes? Error Code: "+e.status)}}).fail(function(e){if(e.statusText=="timeout"){alert("The request timed out after 30 seconds. Server do not respond in time. Please try again.")}else{alert("Something went wrong. Please try again. Error Code: "+e.statusText)}}).always(function(e){jQuery(".dslca-save-composer .dslca-icon").removeClass("dslc-icon-spin dslc-icon-spinner").addClass("dslc-icon-ok");jQuery("body").removeClass("dslca-saving-in-progress")})}function dslc_save_draft_composer(){if(dslcDebug)console.log("dslc_save_draft_composer");var e=jQuery("#dslca-code").val(),o=jQuery(".dslca-container").data("post-id");jQuery("body").addClass("dslca-saving-in-progress");jQuery(".dslca-save-draft-composer .dslca-icon").removeClass("dslc-icon-ok").addClass("dslc-icon-spin dslc-icon-spinner");jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-save-draft-composer",dslc:"active",dslc_post_id:o,dslc_code:e},function(e){jQuery(".dslca-save-draft-composer .dslca-icon").removeClass("dslc-icon-spin dslc-icon-spinner").addClass("dslc-icon-save");if(e.status=="success"){jQuery(".dslca-save-draft-composer").fadeOut(250)}else{alert("Something went wrong, please try to save again.")}jQuery("body").removeClass("dslca-saving-in-progress")})}function dslc_generate_code(){if(dslcDebug)console.log("dslc_generate_code");var e="",o,s="",d="",l=12,i=12,t=0,a=0,r,c,n,u,m,p="",f;jQuery("#dslc-main .dslc-modules-area",LiveComposer.Builder.PreviewAreaDocument).each(function(){if(jQuery(".dslc-module-front",this).length){jQuery(this).removeClass("dslc-modules-area-empty").addClass("dslc-modules-area-not-empty");jQuery(".dslca-no-content",this).hide()}else{jQuery(this).removeClass("dslc-modules-area-not-empty").addClass("dslc-modules-area-empty");jQuery(".dslca-no-content:not(:visible)",this).show().css({"-webkit-animation-name":"dslcBounceIn","-moz-animation-name":"dslcBounceIn","animation-name":"dslcBounceIn","animation-duration":"0.6s","-webkit-animation-duration":"0.6s",padding:0}).animate({padding:"35px 0"},300)}});jQuery("#dslc-main .dslc-modules-section",LiveComposer.Builder.PreviewAreaDocument).each(function(){m=jQuery(this);f=dslc_generate_section_code(m);m.find(".dslca-section-code").val(f);d=d+f+","});d=d.slice(0,-1);d="["+d+"]";jQuery("#dslca-code").val(d);jQuery("#dslca-export-code").val(d)}function dslc_generate_section_code(e){if(dslcDebug)console.log("dslc_generate_section_code");console.log(e);var i="",t,o="",s="",a=12,d=12,r=0,c=0,n,u,m,p,l,f="",v="",h;l=e;if(jQuery(".dslc-modules-area",l).length){l.removeClass("dslc-modules-section-empty").addClass("dslc-modules-section-not-empty")}else{l.removeClass("dslc-modules-section-not-empty").addClass("dslc-modules-section-empty")}jQuery(".dslc-modules-area.dslc-last-col, .dslc-modules-area.dslc-first-col",this).removeClass("dslc-last-col dslc-first-col");jQuery(".dslc-module-front.dslc-last-col, .dslc-module-front.dslc-first-col",this).removeClass("dslc-last-col dslc-first-col");c=0;v=l.find(".dslca-section-code").val();console.log("modulesSectionJsonString:");console.log(v);if(undefined!==v){}h=JSON.parse(v);f="";jQuery(".dslca-modules-section-settings input",l).each(function(){var e=jQuery(this);var o=e.data("id");var s=e.val();f=f+o+'="'+s+'" ';h[o]=s});if(undefined!==h["give_new_id"]){delete h["give_new_id"]}h["content"]=[];jQuery(".dslc-modules-area",l).each(function(){r=0;u=jQuery(this);n=parseInt(u.data("size"));m="no";p="no";c+=n;jQuery(this).removeClass("dslc-first-col");jQuery(this).removeClass("dslc-last-col");if(c==d){jQuery(this).addClass("dslc-last-col").next(".dslc-modules-area").addClass("dslc-first-col");c=0;m="yes"}else if(c>d){jQuery(this).removeClass("dslc-last-col").addClass("dslc-first-col");c=n;p="yes"}if(c==n){p="yes";jQuery(this).removeClass("dslc-last-col").addClass("dslc-first-col")}var l='{"element_type":"module_area","last":"'+m+'","first":"'+p+'","size":"'+n+'"}';l=JSON.parse(l);if(undefined!==l["give_new_id"]){delete l["give_new_id"]}l.content=[];jQuery(".dslc-module-front",u).each(function(){var o=jQuery(this);t=parseInt(o[0].getAttribute("data-dslc-module-size"));var e="no";var s="no";jQuery(this).removeClass("dslc-first-col");jQuery(this).removeClass("dslc-last-col");r+=t;if(r==a){jQuery(this).addClass("dslc-last-col");jQuery(this).next(".dslc-module-front").addClass("dslc-first-col");r=0;e="yes";s="yes"}else if(r>a){jQuery(this).removeClass("dslc-last-col").addClass("dslc-first-col");r=t;s="yes"}if(r==t){s="yes";jQuery(this).removeClass("dslc-last-col").addClass("dslc-first-col")}try{i=o[0].querySelector(".dslca-module-code").value}catch(e){console.info("No DSLC code found in module: "+o[0].getAttribute("id"))}if(""!==i){var d=JSON.parse(i);d.last=e;jQuery.each(d,function(e,o){if(false===o||""===o){delete d[e]}if("content"===e){d[e]=o.replace(/\\'/g,"'")}if("give_new_id"===e){delete d[e]}});o[0].querySelector(".dslca-module-code").value=JSON.stringify(d);l["content"].push(d)}i=""});h["content"].push(l)});var _=JSON.stringify(h);return _}jQuery(document).ready(function(o){o(document).on("click",".dslca-save-composer-hook",function(e){e.preventDefault();if(!o("body").hasClass("dslca-module-saving-in-progress")&&!o("body").hasClass("dslca-saving-in-progress")){dslc_save_composer()}});o(document).on("click",".dslca-save-draft-composer-hook",function(e){e.preventDefault();if(!o("body").hasClass("dslca-module-saving-in-progress")&&!o("body").hasClass("dslca-saving-in-progress")){dslc_save_draft_composer()}})});function dslca_gen_content_for_search(){if(dslcDebug)console.log("dslca_gen_content_for_search");var e=document.getElementById("dslca-content-for-search");if(null===e){return}var o=e.value;var l="";var s=LiveComposer.Builder.PreviewAreaWindow.document.querySelectorAll("#dslc-main .dslc-module-front [data-exportable-content]");if(undefined!==s){Array.prototype.forEach.call(s,function(e,o){var s;if(e.getAttribute("data-exportable-content")!==""){var d=e.getAttribute("data-exportable-content");s="<"+d+">"+e.innerHTML+"</"+d+">"}else{s=e.innerHTML}if(s!==null){l+=s.replace(/\s+/g," ").trim()+"\n"}})}e.value=l;if(o!==l){dslc_show_publish_button()}}var massagesTicker=jQuery("#editor-messages").newsTicker({row_height:40,max_rows:2,speed:900,direction:"up",duration:12e3,autostart:1,pauseOnHover:1,start:function(){jQuery("#editor-messages").css("opacity","1")}});jQuery(document).ready(function(s){s(document).on("click",".dslc-editor-messages-hide",function(e){var o=s(".dslc-editor-messages-hide").data("can-hide");if(o=="1"){jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-hidden-panel"});s(".dslc-editor-messages-section-122017").css("display","none");s(".dslca-container").removeClass("active-message-panel")}else{s("#editor-messages").html('<div class="dslc-notice"><a href="https://livecomposerplugin.com/hide-messages/?utm_source=editing-screen&utm_medium=editor-messages&utm_campaign=hide-messages" target="_blank">Only users who support our plugin development can hide this panel. <b>Click to learn more.</b></a></div>')}});if(s("div.dslc-editor-messages-section-122017").length){s(".dslc-editor-messages-section-122017").css("display","block");s(".dslca-container").addClass("active-message-panel")}});"use strict";var dslcRegularFontsArray=DSLCFonts.regular;var dslcGoogleFontsArray=DSLCFonts.google;var dslcAllFontsArray=dslcRegularFontsArray.concat(dslcGoogleFontsArray);var dslcIconsCurrentSet=DSLCIcons.fontawesome;var dslcDebug=false;var LiveComposer={Builder:{Elements:{},UI:{},Actions:{},Flags:{},PreviewFrame:{},Helpers:{}},Production:{},Utils:{}};(function(){LiveComposer.Builder.Flags={windowScroller:false,panelOpened:false,generate_code_after_row_changed:true};LiveComposer.Builder.Actions={postponed_actions_queue:{},add_postponed_action:function(e){if(e===undefined){return}if(isNaN(this.postponed_actions_queue[e])){this.postponed_actions_queue[e]=0}this.postponed_actions_queue[e]+=1},release_postponed_actions:function(){var s=this;jQuery.each(this.postponed_actions_queue,function(e,o){if(1<o){s.postponed_actions_queue[e]-=1}else if(1==o){window[e]();s.postponed_actions_queue[e]-=1}})}};LiveComposer.Builder.Helpers.insertModule=function(e,o){var s=jQuery(e),o=jQuery(o);var d=[];s.find("script").each(function(){d.push(this.innerHTML);this.parentNode.removeChild(this)});o.after(s).remove();d.forEach(function(e){var o=LiveComposer.Builder.PreviewAreaDocument[0].createElement("script");o.innerHTML=e;o.type="text/javascript";LiveComposer.Builder.PreviewAreaDocument[0].getElementById(s[0].id).appendChild(o)});d=null;o=null;return s}})();"use strict";LiveComposer.Builder.UI.CModalWindow=function(o){if(typeof o!="object"||this.instancesExists===true)return false;var s=this;var d='<div class="dslca-prompt-modal dslca-prompt-modal-active">'+'<div class="dslca-prompt-modal-content"><div class="dslca-prompt-modal-msg">'+'<span class="dslca-prompt-modal-title">'+o.title+"</span>"+'<span class="dslca-prompt-modal-descr">'+o.content+"</span></div>";var e="";if(o.confirm||o.cancel){e='<div class="dslca-prompt-modal-actions">'+'<a href="#" class="dslca-prompt-modal-confirm-hook"><span class="dslc-icon dslc-icon-ok">'+"</span>"+(o.confirm_title?o.confirm_title:"Confirm")+'</a><span class="dslca-prompt-modal-cancel-hook"><span class="dslc-icon dslc-icon-remove">'+"</span>"+(o.cancel_title?o.cancel_title:"Cancel")+"</span></div>"}else{e='<div class="dslca-prompt-modal-actions">'+'<a href="#" class="dslca-prompt-modal-confirm-hook"><span class="dslc-icon dslc-icon-ok">'+"</span>"+(o.ok_title?o.ok_title:"OK")+"</a></div>"}d+=e+"</div>";d=jQuery(d);if(typeof o.confirm!="function")o.confirm=function(){};if(typeof o.cancel!="function")o.cancel=function(){};d.find(".dslca-prompt-modal-confirm-hook").click(function(e){e.stopPropagation();d.find(".dslca-prompt-modal-content").animate({top:"55%"},400);d.animate({opacity:0},400,function(){o.confirm();s.instancesExists=false;jQuery(this).remove()});return false});d.find(".dslca-prompt-modal-cancel-hook").click(function(e){e.stopPropagation();d.find(".dslca-prompt-modal-content").animate({top:"55%"},400);d.animate({opacity:0},400,function(){jQuery(this).remove();s.instancesExists=false;o.cancel()});return false});d.hide();jQuery("body").append(d);d.css({opacity:0}).show().animate({opacity:1},400);d.find(".dslca-prompt-modal-content").css({top:"55%"}).animate({top:"50%"},400);this.instancesExists=true};"use strict";function dslc_show_modal(e,o){if(typeof dslcDebug!=="undefined"&&dslcDebug)console.log("dslc_show_modal");if(jQuery(".dslca-modal:visible").length){dslc_hide_modal("",jQuery(".dslca-modal:visible"))}var o=jQuery(o);var s=jQuery(".dslca-container").height();o.outerHide({clbk:function(){dslc_hide_modal("",jQuery(".dslca-modal:visible"))}});var d=jQuery(e).position(),l=o.outerWidth()/2-e.outerWidth()/2,i=d.left-l;o.css({left:i});jQuery(".dslca-prompt-modal-custom").insertAfter(o);if(jQuery(".dslca-prompt-modal-custom").length>0){jQuery(".dslca-prompt-modal-custom").fadeIn()}o.addClass("dslca-modal-open").show()}function dslc_hide_modal(e,o){if(typeof dslcDebug!=="undefined"&&dslcDebug)console.log("dslc_hide_modal");var o=jQuery(o);o.outerHide("destroy");o.hide();if(jQuery(".dslca-prompt-modal-custom").length>0){jQuery(".dslca-prompt-modal-custom").fadeOut()}o.removeClass("dslca-modal-open")}jQuery(document).ready(function(e){e(document).on("click",".dslca-open-modal-hook",function(e){e.preventDefault();var o=jQuery(this).data("modal");dslc_show_modal(jQuery(this),o)});jQuery(document).on("click",".dslca-close-modal-hook",function(e){e.preventDefault();if(!jQuery(this).hasClass("dslca-action-disabled")){var o=jQuery(this).data("modal");dslc_hide_modal(jQuery(this),o)}})});function dslc_js_confirm(e,o,s){if(typeof dslcDebug!=="undefined"&&dslcDebug)console.log("dslc_js_confirm");jQuery(".dslca-prompt-modal").addClass("dslca-prompt-modal-active");jQuery(".dslca-prompt-modal").data("id",e);jQuery(".dslca-prompt-modal").data("target",s);jQuery(".dslca-prompt-modal-msg").html(o);jQuery(".dslca-prompt-modal").css({opacity:0}).show().animate({opacity:1},400);jQuery(".dslca-prompt-modal-content").css({top:"55%"}).animate({top:"50%"},400)}function dslc_js_confirm_close(){if(typeof dslcDebug!=="undefined"&&dslcDebug)console.log("dslc_js_confirm_close");jQuery(".dslca-prompt-modal").removeClass("dslca-prompt-modal-active");jQuery(".dslca-prompt-modal").animate({opacity:0},400,function(){jQuery(this).hide();jQuery(".dslca-prompt-modal-cancel-hook").show();jQuery(".dslca-prompt-modal-confirm-hook").html('<span class="dslc-icon dslc-icon-ok"></span>'+DSLCString.str_confirm)});jQuery(".dslca-prompt-modal-content").animate({top:"55%"},400)}function dslc_modal_keypress_events(e){if(e.which==13){if(jQuery(".dslca-prompt-modal-active").length){jQuery(".dslca-prompt-modal-confirm-hook").trigger("click")}}else if(e.which==27){if(jQuery(".dslca-prompt-modal-active").length){jQuery(".dslca-prompt-modal-cancel-hook").trigger("click")}}}jQuery(document).ready(function(a){a(document).on("click",".dslca-prompt-modal-cancel-hook",function(e){e.preventDefault();var o=jQuery(".dslca-prompt-modal").data("id");var s=jQuery(".dslca-prompt-modal").data("target");if(o=="edit_in_progress"){dslc_module_options_cancel_changes(function(){s.trigger("click")})}else if(o=="delete_module"){}dslc_js_confirm_close();jQuery(".dslca-prompt-modal").data("id","")});a(document).on("click",".dslca-prompt-modal-confirm-hook",function(e){e.preventDefault();var o=jQuery(".dslca-prompt-modal").data("id");var s=jQuery(".dslca-prompt-modal").data("target");var d=true;if(o=="edit_in_progress"){dslc_module_options_confirm_changes(function(){s.trigger("click")})}else if(o=="disable_lc"){window.location=s}else if("delete_module"===o){var l=s.closest(".dslc-module-front");dslc_delete_module(l)}else if("delete_modules_area"===o){var i=s.closest(".dslc-modules-area");var t=i.closest(".dslc-modules-section-inner");dslc_modules_area_delete(i)}else if(o=="delete_modules_section"){dslc_row_delete(s.closest(".dslc-modules-section"))}else if(o=="export_modules_section"){}else if(o=="import_modules_section"){dslc_row_import(a(".dslca-prompt-modal textarea").val());a(".dslca-prompt-modal-confirm-hook span").css({opacity:0});a(".dslca-prompt-modal-confirm-hook .dslca-loading").show();d=false}if(d)dslc_js_confirm_close();jQuery(".dslca-prompt-modal").data("id","")})});jQuery.fn.outerHide=function(o){var s=jQuery;o=o?o:{};var d=this;if("destroy"==o){s(document).unbind("click.outer_hide");return false}s(document).bind("click.outer_hide",function(e){if(s(e.target).closest(d).length==0&&e.target!=d&&s.inArray(s(e.target)[0],s(o.clickObj))==-1&&s(d).css("display")!="none"){if(o.clbk){o.clbk()}else{s(d).hide()}}})};"use strict";jQuery(document).on("editorFrameLoaded",function(){var i=jQuery;var s=function(){if(LiveComposer.Builder.Flags.panelOpened){LiveComposer.Builder.UI.shakePanelConfirmButton();return false}return true};LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-copy-module-hook",function(e){e.preventDefault();if(!s())return false;if(!i(this).hasClass("dslca-action-disabled")){dslc_module_copy(i(this).closest(".dslc-module-front"))}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-delete-module-hook",function(e){e.preventDefault();if(!s())return false;var o=this;if(!i(this).hasClass("dslca-action-disabled")){LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_del_module_title,content:DSLCString.str_del_module_descr,confirm:function(){var e=jQuery(o).closest(".dslc-module-front");dslc_delete_module(e)}})}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-module-edit-hook, .dslc-module-front > div:not(.dslca-module-manage)",function(e){if(dslcDebug)console.log("dslca-module-edit-hook");e.preventDefault();var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).length;var s=jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).length;if(i("body").hasClass("dslca-composer-hidden")||o>0||s>0){if(jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument)[0]!=jQuery(this).closest(".dslc-module-front")[0]){LiveComposer.Builder.UI.shakePanelConfirmButton()}return false}var d=i(this).closest(".dslc-module-front"),l=d.data("dslc-module-id");i(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");d.addClass("dslca-module-being-edited");dslc_module_options_show(l);jQuery("body",LiveComposer.Builder.PreviewAreaDocument).addClass("module-editing-in-progress")});LiveComposer.Builder.PreviewAreaDocument.on({mouseenter:function(){jQuery(".dslca-modules-section-manage",LiveComposer.Builder.PreviewAreaDocument).css("z-index","99998")},mouseleave:function(){jQuery(".dslca-modules-section-manage",LiveComposer.Builder.PreviewAreaDocument).css("z-index","999999")}},".dslca-change-width-module-hook, .dslc-module-front .dslca-module-manage");LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-change-width-module-options span",function(){if(!jQuery(this).hasClass("dslca-action-disabled")){var e=jQuery(this).closest(".dslc-module-front");var o=e.data("dslc-module-size");var s=jQuery(this).data("size");if(Number(o)!==Number(s)){dslc_module_width_set(e,s)}}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-module-get-defaults-hook",function(){var e=jQuery(this).closest(".dslc-module-front");var o=dslc_dm_get_defaults(e);var s='<span class="dslca-prompt-modal-title">Module Defaults</span>'+'<span class="dslca-prompt-modal-descr">The code bellow is used to alter the defaults.</span>'+"<textarea></textarea><br><br>";i(".dslca-prompt-modal-cancel-hook").hide();i(".dslca-prompt-modal-confirm-hook").html('<span class="dslc-icon dslc-icon-ok"></span>OK');dslc_js_confirm("dev_mode_get_default",s,e)});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-refresh-module-hook",function(e){jQuery(this).css({"-webkit-animation-name":"dslcRotate","-moz-animation-name":"dslcRotate","animation-name":"dslcRotate","animation-duration":"0.6s","-webkit-animation-duration":"0.6s","animation-iteration-count":"infinite","-webkit-animation-iteration-count":"infinite"});jQuery(this).closest(".dslc-module-front").addClass("dslca-module-being-edited");dslc_module_output_altered(function(){jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited")})});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-wysiwyg-actions-edit-hook",function(){var e=jQuery(this).parent().siblings(".dslca-editable-content");var o=e.closest(".dslc-module-front");if(o.hasClass("dslc-module-handle-like-accordion")){LiveComposer.Builder.PreviewAreaWindow.dslc_accordion_generate_code(o.find(".dslc-accordion"));var s=o.find('.dslca-module-option-front[data-id="accordion_content"]').val();var d=s.split("(dslc_sep)");var l=e.closest(".dslc-accordion-item").index();var i=d[l].trim().replace(/<lctextarea/g,"<textarea").replace(/<\/lctextarea/g,"</textarea")}else if(o.hasClass("dslc-module-handle-like-tabs")){LiveComposer.Builder.PreviewAreaWindow.dslc_tabs_generate_code(o.find(".dslc-tabs"));var s=o.find('.dslca-module-option-front[data-id="tabs_content"]').val();var d=s.split("(dslc_sep)");var l=e.closest(".dslc-tabs-tab-content").index();var i=d[l].trim().replace(/<lctextarea/g,"<textarea").replace(/<\/lctextarea/g,"</textarea")}else{var i=o.find('.dslca-module-option-front[data-id="'+e.data("id")+'"]').val().replace(/<lctextarea/g,"<textarea").replace(/<\/lctextarea/g,"</textarea")}if(i.includes("%")){i=i.replace(/%\(\(%/g,"[");i=i.replace(/%\)\)%/g,"]");i=i.replace(/%\(%/g,"[");i=i.replace(/%\)%/g,"]");i=i.replace(/%\{%/g,"[");i=i.replace(/%\}%/g,"]")}if(typeof tinymce!="undefined"){var t=tinymce.get("dslcawpeditor");if(jQuery("#wp-dslcawpeditor-wrap").hasClass("tmce-active")){t.setContent(i,{format:"html"})}else{jQuery("textarea#dslcawpeditor").val(i)}if(!o.hasClass("dslca-module-being-edited")){o.find(".dslca-module-edit-hook").trigger("click")}jQuery(".dslca-wp-editor").show();e.addClass("dslca-wysiwyg-active");jQuery("#dslcawpeditor_ifr, #dslcawpeditor").css({height:jQuery(".dslca-wp-editor").height()-300})}else{console.info("Live Composer: TinyMCE is undefined.")}});LiveComposer.Builder.PreviewAreaDocument.on("blur",".dslca-editable-content",function(){if(!jQuery("body").hasClass("dslca-composer-hidden")&&jQuery(this).data("type")=="simple"){dslc_editable_content_gen_code(jQuery(this))}}).on("paste",".dslca-editable-content:not(.inline-editor)",function(){if(!jQuery("body").hasClass("dslca-composer-hidden")&&jQuery(this).data("type")=="simple"){var e=jQuery(this);setTimeout(function(){if(e.data("type")=="simple"){e.html(e.text())}dslc_editable_content_gen_code(e)},100)}}).on("focus",".dslca-editable-content",function(){if(jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).length>0&&!jQuery(this).closest(".dslc-module-front").hasClass("dslca-module-being-edited")){jQuery(this).trigger("blur")}}).on("keyup",".dslca-editable-content",function(){if(jQuery(this).data("type")=="simple"){jQuery(this).closest(".dslc-module-front").addClass("dslca-module-change-made")}})});function dslc_module_delete(e){if(dslcDebug)console.log("dslc_delete_module");e.addClass("dslca-module-being-deleted");if(e.hasClass("dslca-module-being-edited")){dslc_show_section(".dslca-modules")}setTimeout(function(){e.remove();dslc_generate_code();dslc_show_publish_button()},1e3);e.css({"-webkit-animation-name":"dslcBounceOut2","-moz-animation-name":"dslcBounceOut2","animation-name":"dslcBounceOut2","animation-duration":"0.6s","-webkit-animation-duration":"0.6s"}).animate({opacity:0},500,function(){e.css({marginBottom:0}).animate({height:0},400,"easeOutQuart")})}function dslc_module_copy(e){if(dslcDebug)console.log("dslc_copy_module");jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");var o=e[0].cloneNode(true);jQuery(o).appendTo(e.closest(".dslc-modules-area")).css({"-webkit-animation-name":"none","-moz-animation-name":"none","animation-name":"none","animation-duration":"0","-webkit-animation-duration":"0",opacity:0}).addClass("dslca-module-being-edited");dslc_module_new_id(o);dslc_generate_code();jQuery(o).css({opacity:0}).removeClass("dslca-module-being-edited").animate({opacity:1},300);dslc_show_publish_button()}function dslc_module_new_id(e){var o=LiveComposer.Utils.get_unique_id();var s=e.getAttribute("id");e.setAttribute("data-module-id",o);e.setAttribute("id","dslc-module-"+o);var d=e.getElementsByTagName("style")[0];var l=d.textContent;d.setAttribute("id","#css-for-dslc-module-"+o);l=l.split(s).join("dslc-module-"+o);d.textContent=l;LiveComposer.Utils.update_module_property_raw(e,"module_instance_id",o)}function dslc_module_width_set(e,o){if(dslcDebug)console.log("dslc_module_width_set");var s="dslc-"+o+"-col";e.removeClass("dslc-1-col dslc-2-col dslc-3-col dslc-4-col dslc-5-col dslc-6-col dslc-7-col dslc-8-col dslc-9-col dslc-10-col dslc-11-col dslc-12-col").addClass(s).data("dslc-module-size",o);e[0].setAttribute("data-dslc-module-size",o);LiveComposer.Utils.update_module_property_raw(e[0],"dslc_m_size",o);LiveComposer.Builder.PreviewAreaWindow.dslc_masonry();dslc_generate_code();dslc_show_publish_button()}function dslc_module_options_show(e){if(dslcDebug)console.log("dslc_module_options_show");var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument),s=jQuery(".dslca-module-options-front textarea",o),l=jQuery(".dslca-header").data("default-section"),i=jQuery(jQuery("#pseudo-panel").html());jQuery("#wpwrap").append(i);var d={};d["action"]="dslc-ajax-display-module-options";d["dslc"]="active";d["dslc_module_id"]=e;d["dslc_post_id"]=jQuery(".dslca-container").data("data-post-id");d.dslc_url_vars=LiveComposer.Utils.get_page_params();s.each(function(){var e=jQuery(this),o=e.data("id"),s=e.val();if(s.includes("%")){s=s.replace(/%\(\(%/g,"[");s=s.replace(/%\)\)%/g,"]");s=s.replace(/%\(%/g,"[");s=s.replace(/%\)%/g,"]");s=s.replace(/%\{%/g,"[");s=s.replace(/%\}%/g,"]")}d[o]=s});jQuery(".dslca-wp-editor-actions").hide();jQuery(".dslca-wp-editor-notification").show();dslc_hide_publish_button();var t=jQuery(".dslca-module-options-front",o).children().clone();LiveComposer.Builder.moduleBackup=t;LiveComposer.Builder.Flags.panelOpened=true;i.show();i.addClass("show");jQuery.post(DSLCAjax.ajaxurl,d,function(e){i.remove();dslc_show_section(".dslca-module-edit");if(!jQuery("body").hasClass("rtl")){jQuery(".dslca-module-edit-options-inner").html(e.output)}else{jQuery(".dslca-module-edit-options-inner").html(e.output)}jQuery(".dslca-module-edit-options-tabs").html(e.output_tabs);var o=[];jQuery(".dslca-module-edit-options-inner .dslca-module-edit-option").each(function(){var e=jQuery(this).data("section");if(o.indexOf(e)==-1){o.push(e)}});var s=o.length;for(var d=0;d<s;d++){jQuery('.dslca-header .dslca-options-filter-hook[data-section="'+o[d]+'"]').show()}if(jQuery('.dslca-module-edit-option[data-section="'+l+'"]').length){jQuery('.dslca-header .dslca-options-filter-hook[data-section="'+l+'"]').show();jQuery('.dslca-header .dslca-options-filter-hook[data-section="'+l+'"]').trigger("click")}else{jQuery(".dslca-header .dslca-options-filter-hook:first").hide();jQuery(".dslca-header .dslca-options-filter-hook:first").next(".dslca-options-filter-hook").trigger("click")}jQuery(".dslca-module-edit-actions").show();jQuery(".dslca-wp-editor-notification").hide();jQuery(".dslca-wp-editor-actions").show();jQuery(".dslca-header .dslca-go-to-section-hook").hide();jQuery(".dslca-row-edit-actions").hide();LiveComposer.Builder.UI.loadOptionsDeps()})}function dslc_module_output_default(e,o){if(dslcDebug)console.log("dslc_module_output_default");jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-add-module",dslc:"active",dslc_module_id:e,dslc_post_id:jQuery(".dslca-container").data("post-id"),dslc_url_vars:LiveComposer.Utils.get_page_params(),dslc_new_module:true},function(e){o(e)})}function dslc_module_output_altered(d){if(dslcDebug)console.log("dslc_module_output_altered");d=typeof d!=="undefined"?d:false;var l=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument),e=l.data("dslc-module-id"),o=jQuery(".dslca-module-options-front textarea",l),s=l.data("module-id");var i={};i["action"]="dslc-ajax-add-module";i["dslc"]="active";i["dslc_module_id"]=e;i["dslc_module_instance_id"]=s;i["dslc_post_id"]=jQuery(".dslca-container").data("post-id");if(l.hasClass("dslca-preload-preset"))i["dslc_preload_preset"]="enabled";else i["dslc_preload_preset"]="disabled";l.removeClass("dslca-preload-preset");o.each(function(){var e=jQuery(this);var o=e.data("id");var s=e.val();i[o]=s});i.dslc_url_vars=LiveComposer.Utils.get_page_params();jQuery.post(DSLCAjax.ajaxurl,i,function(e){var o=LiveComposer.Builder.Helpers.insertModule(e.output,l);o.addClass("dslca-module-being-edited");e=null;o=null;LiveComposer.Builder.PreviewAreaWindow.dslc_carousel();LiveComposer.Builder.PreviewAreaWindow.dslc_masonry();LiveComposer.Builder.PreviewAreaWindow.dslc_tabs();LiveComposer.Builder.PreviewAreaWindow.dslc_init_accordion();var s=new Event("dslc_module_output_altered");LiveComposer.Builder.PreviewAreaWindow.dispatchEvent(s);if(d){d(e)}})}function dslc_module_output_reload(o,s){if(dslcDebug)console.log("dslc_module_output_reload");s=typeof s!=="undefined"?s:false;var e=o.data("dslc-module-id"),d=jQuery(".dslca-module-options-front textarea",o),l=o.data("module-id");var i={};i["action"]="dslc-ajax-add-module";i["dslc"]="active";i["dslc_module_id"]=e;i["dslc_module_instance_id"]=l;i["dslc_post_id"]=jQuery(".dslca-container").data("post-id");i["dslc_preload_preset"]="enabled";o.removeClass("dslca-preload-preset");d.each(function(){var e=jQuery(this);var o=e.data("id");var s=e.val();i[o]=s});o.append('<div class="dslca-module-reloading"><span class="dslca-icon dslc-icon-spin dslc-icon-refresh"></span></div>');jQuery.post(DSLCAjax.ajaxurl,i,function(e){o.after(e.output).next().addClass("dslca-module-being-edited");o.remove();dslc_generate_code();dslc_show_publish_button();LiveComposer.Builder.PreviewAreaWindow.dslc_carousel();LiveComposer.Builder.PreviewAreaWindow.dslc_masonry();LiveComposer.Builder.PreviewAreaWindow.dslc_tabs();LiveComposer.Builder.PreviewAreaWindow.dslc_init_accordion();if(s){s(e)}jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited")})}function dslc_delete_module(e){dslc_module_delete(e)}function dslc_copy_module(e){dslc_module_copy(e)}function dslc_display_module_options(e){dslc_module_options_show(e)}function dslc_get_module_output(e,o){dslc_module_output_default(e,o)}function dslc_preview_change(e){dslc_module_output_altered(e)}function dslc_reload_module(e,o){dslc_module_output_reload(e,o)}"use strict";LiveComposer.Builder.Elements.CModuleArea=function(o){var s=this;this.section=jQuery(o).closest(".dslc-modules-section");this.elem=o;this.observer=new mqMutationObserver(o,function(){var e=s.elem.classList;if(o.querySelectorAll(".dslc-module-front").length==0){e.add("dslc-modules-area-empty");e.remove("dslc-modules-area-not-empty")}else{e.remove("dslc-modules-area-empty");e.add("dslc-modules-area-not-empty")}},{childList:true});this.sortable=Sortable.create(o,{group:"modules",animation:350,handle:".dslca-move-module-hook",draggable:".dslc-module-front",ghostClass:"dslca-module-ghost",chosenClass:"dslca-module-dragging",scroll:true,scrollSensitivity:150,scrollSpeed:15,setData:function(e,o){e.setData(LiveComposer.Utils.msieversion()!==false?"Text":"text/html",o.innerHTML)},onStart:function(e){e.oldIndex;jQuery("body").removeClass("dslca-drag-not-in-progress").addClass("dslca-drag-in-progress");jQuery("body",LiveComposer.Builder.PreviewAreaWindow.document).removeClass("dslca-drag-not-in-progress").addClass("dslca-drag-in-progress")},onEnd:function(e){e.oldIndex;e.newIndex;e.preventDefault();dslc_generate_code();LiveComposer.Builder.UI.stopScroller();jQuery("body").removeClass("dslca-drag-in-progress").addClass("dslca-drag-not-in-progress");jQuery("body",LiveComposer.Builder.PreviewAreaWindow.document).removeClass("dslca-drag-in-progress").addClass("dslca-drag-not-in-progress")},onAdd:function(e){var o=e.item;e.from;if(jQuery(o).data("id")=="DSLC_M_A"){dslc_modules_area_add(jQuery(s.section).find(".dslc-modules-section-wrapper .dslc-modules-section-inner"));o.remove()}},onUpdate:function(e){var o=e.item;dslc_show_publish_button()},onSort:function(e){},onRemove:function(e){},onFilter:function(e){var o=e.item},onMove:function(e){e.dragged;e.draggedRect;e.related;e.relatedRect;if(jQuery(".dslc-modules-area-empty").find(".dslc-module-front").length>0){jQuery(this).removeClass("dslc-modules-area-empty").addClass("dslc-modules-area-not-empty");jQuery(".dslca-no-content:not(:visible)",this).show().css({"-webkit-animation-name":"dslcBounceIn","-moz-animation-name":"dslcBounceIn","animation-name":"dslcBounceIn","animation-duration":"0.6s","-webkit-animation-duration":"0.6s",padding:0}).animate({padding:"35px 0"},300,function(){})}}});jQuery(o).attr("data-jsinit","initialized");jQuery(document).on("LC.sortableOff",function(){s.sortable&&s.sortable.option&&s.sortable.option("disabled",true)});jQuery(document).on("LC.sortableOn",function(){s.sortable&&s.sortable.option&&s.sortable.option("disabled",false)})};"use strict";jQuery(document).on("editorFrameLoaded",function(){function e(){var e=jQuery(".dslc-modules-area",LiveComposer.Builder.PreviewAreaDocument);jQuery(e).each(function(e,o){new LiveComposer.Builder.Elements.CModuleArea(o)})}var l=function(){if(LiveComposer.Builder.Flags.panelOpened){LiveComposer.Builder.UI.shakePanelConfirmButton();return false}return true};if(!jQuery("#dslc-main .dslc-modules-section",LiveComposer.Builder.PreviewAreaDocument).length&&!jQuery("#dslca-tut-page",LiveComposer.Builder.PreviewAreaDocument).length){dslc_row_add(e())}else{e()}LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-copy-modules-area-hook",function(e){e.preventDefault();if(!l())return false;if(!jQuery(this).hasClass("dslca-action-disabled")){var o=jQuery(this).closest(".dslc-modules-area");dslc_copy_modules_area(o)}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-delete-modules-area-hook",function(e){e.preventDefault();if(!l())return false;if(!jQuery(this).hasClass("dslca-action-disabled")){var o=jQuery(this).closest(".dslc-modules-area").hasClass("dslc-modules-area-empty");if(!o){var s=jQuery(this);LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_del_area_title,content:DSLCString.str_del_area_descr,confirm:function(){var e=s.closest(".dslc-modules-area");dslc_modules_area_delete(e)}})}else{var d=jQuery(this).closest(".dslc-modules-area");dslc_delete_modules_area(d)}}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-change-width-modules-area-options span",function(){if(!l())return false;if(!jQuery(this).hasClass("dslca-action-disabled")){var e=jQuery(this).closest(".dslc-modules-area");var o=e.data("size");var s=jQuery(this).data("size");if(Number(o)!==Number(s)){dslc_modules_area_width_set(e,s)}}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-add-modules-area-hook",function(e){e.preventDefault();if(!l())return false;dslc_modules_area_add(jQuery(this).closest(".dslc-modules-section").find(".dslc-modules-section-inner"))})});function dslc_modules_area_add(e){if(dslcDebug)console.log("dslc_add_modules_area");var o='<div class="dslc-modules-area dslc-modules-area-dnd dslc-col dslc-12-col dslc-modules-area-empty " data-size="12">'+'<div class="dslca-modules-area-manage"> <div class="dslca-modules-area-manage-inner">'+'<span class="dslca-manage-action dslca-copy-modules-area-hook" title="Duplicate" ><span class="dslca-icon dslc-icon-copy">'+'</span></span> <span class="dslca-manage-action dslca-move-modules-area-hook" title="Drag to move" >'+'<span class="dslca-icon dslc-icon-move"></span></span>'+'<span class="dslca-manage-action dslca-change-width-modules-area-hook" title="Change width" >'+'<span class="dslca-icon dslc-icon-columns"></span> <div class="dslca-change-width-modules-area-options">'+'<span>Container Width</span><span data-size="1">1/12</span><span data-size="2">2/12</span>'+'<span data-size="3">3/12</span><span data-size="4">4/12</span> <span data-size="5">5/12</span><span data-size="6">6/12</span>'+'<span data-size="7">7/12</span><span data-size="8">8/12</span> <span data-size="9">9/12</span><span data-size="10">10/12</span>'+'<span data-size="11">11/12</span><span data-size="12">12/12</span> </div> </span>'+'<span class="dslca-manage-action dslca-delete-modules-area-hook" title="Delete" ><span class="dslca-icon dslc-icon-remove"></span></span> </div> </div>'+"</div>";jQuery(o).appendTo(e).css({height:0}).animate({height:99},300,function(){jQuery(this).css({height:"auto"})}).addClass("dslca-init-animation");var s=jQuery(".dslc-modules-area-empty",LiveComposer.Builder.PreviewAreaDocument);jQuery(s).each(function(e,o){new LiveComposer.Builder.Elements.CModuleArea(o)});dslc_drag_and_drop();dslc_generate_code();dslc_show_publish_button()}function dslc_modules_area_delete(o){if(dslcDebug)console.log("dslc_delete_modules_area");var s=o.closest(".dslc-modules-section").find(".dslc-modules-section-inner"),d=false;o.addClass("dslca-modules-area-being-deleted");if(s.find(".dslc-modules-area").length<2){d=true}if(o.find(".dslca-module-being-edited").length){jQuery(".dslca-header .dslca-options-filter-hook",LiveComposer.Builder.PreviewAreaDocument).hide();jQuery(".dslca-module-edit-actions",LiveComposer.Builder.PreviewAreaDocument).hide();jQuery(".dslca-header .dslca-go-to-section-hook",LiveComposer.Builder.PreviewAreaDocument).show();dslc_show_section(".dslca-modules")}setTimeout(function(){if(d){var e=o.closest(".dslc-modules-section-inner");if(2<=o.closest("#dslc-main").find(".dslc-modules-section").length){dslc_row_delete(o.closest(".dslc-modules-section"))}else{o.remove();dslc_modules_area_add(s)}}o.remove();dslc_generate_code();dslc_show_publish_button()},900);o.css({"-webkit-animation-name":"dslcBounceOut","-moz-animation-name":"dslcBounceOut","animation-name":"dslcBounceOut","animation-duration":"0.6s","-webkit-animation-duration":"0.6s",overflow:"hidden"}).animate({opacity:0},600).animate({height:0,marginBottom:0},300,function(){o.remove();dslc_generate_code();dslc_show_publish_button()})}function dslc_modules_area_copy(e){if(dslcDebug)console.log("dslc_copy_modules_area");var o,s=e.closest(".dslc-modules-section").find(".dslc-modules-section-inner");var d=e.clone().appendTo(s);new LiveComposer.Builder.Elements.CModuleArea(d[0]);d.find(".dslca-modules-area-manage").trigger("mouseleave");d.data("size",e.data("size")).find(".dslc-module-front").css({"-webkit-animation-name":"none","-moz-animation-name":"none","animation-name":"none","animation-duration":"0","-webkit-animation-duration":"0",opacity:0}).each(function(){var e=jQuery(this);dslc_module_new_id(e[0]);jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");dslc_generate_code();e.animate({opacity:1},300)});dslc_drag_and_drop();dslc_show_publish_button();dslc_generate_code()}function dslc_modules_area_width_set(e,o){if(dslcDebug)console.log("dslc_modules_area_width_set");var s="dslc-"+o+"-col";e.removeClass("dslc-1-col dslc-2-col dslc-3-col dslc-4-col dslc-5-col dslc-6-col dslc-7-col dslc-8-col dslc-9-col dslc-10-col dslc-11-col dslc-12-col").addClass(s).data("size",o);LiveComposer.Builder.PreviewAreaWindow.dslc_masonry();if(LiveComposer.Builder.Flags.panelOpened){return false}dslc_generate_code();dslc_show_publish_button()}LiveComposer.Builder.moduleareas_init=function(){jQuery("#dslc-main .dslc-modules-area",LiveComposer.Builder.PreviewAreaDocument).each(function(){if(jQuery(this).data("jsinit")!=="initialized"){new LiveComposer.Builder.Elements.CModuleArea(this)}})};function dslc_add_modules_area(e){dslc_modules_area_add(e)}function dslc_delete_modules_area(e){dslc_modules_area_delete(e)}function dslc_copy_modules_area(e){dslc_modules_area_copy(e)}"use strict";function dslc_update_preset(){if(dslcDebug)console.log("dslc_update_preset");var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument),e=o.find('.dslca-module-option-front[data-id="css_load_preset"]').val(),s=o.find(".dslca-module-code").val(),d=o.data("dslc-module-id");if("none"!==e&&""!==e){jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-save-preset",dslc_preset_name:e,dslc_preset_code:s,dslc_module_id:d},function(e){if(e.preset_setting=="enabled"){jQuery(".dslc-module-front:not(#"+o.attr("id")+')[data-dslc-module-id="'+o.data("dslc-module-id")+'"][data-dslc-preset="'+o.data("dslc-preset")+'"]',LiveComposer.Builder.PreviewAreaDocument).each(function(){dslc_module_output_reload(jQuery(this))})}})}}jQuery(document).ready(function(d){d(document).on("keypress",'.dslca-module-edit-field[name="css_save_preset"]',function(e){if(e.which==13){var o=d(this).val(),s=o.toLowerCase().replace(/\s/g,"-");d("body").addClass("dslca-new-preset-added");d('.dslca-module-edit-field[name="css_load_preset"]').append('<option value="'+s+'">'+s+"</option>").val(s).trigger("change");d(this).val("");jQuery(".dslc-delete-preset").removeClass("dslc-delete-preset-hide")}});d(document).on("change",'.dslca-module-edit-field[name="css_load_preset"]',function(e){d(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).addClass("dslca-preload-preset")});d(document).on("click",".dslc-delete-preset",function(e){var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument),s=o.find('.dslca-module-option-front[data-id="css_load_preset"]').val(),d=o.data("dslc-module-id");if("none"!==s&&""!==s){jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-delete-preset",dslc_preset_name:s,dslc_module_id:d},function(e){dslc_module_options_show(d)})}})});"use strict";LiveComposer.Builder.Elements.CRow=function(e){var o=this;this.elem=e;var s=jQuery(e).find(".dslc-modules-section-wrapper .dslc-modules-section-inner").eq(0)[0];jQuery(e).droppable({drop:function(e,o){var s=jQuery(this).find(".dslc-modules-section-inner");var d=o.draggable.data("id");if(d=="DSLC_M_A"){dslc_modules_area_add(s)}}});this.sortable=jQuery(s).sortable({connectWith:".dslc-modules-section-inner",items:".dslc-modules-area-dnd",handle:'.dslca-move-modules-area-hook:not(".dslca-action-disabled")',placeholder:"dslca-modules-area-placeholder",cursorAt:{top:0,left:0},tolerance:"intersect",scroll:true,scrollSensitivity:100,scrollSpeed:15,sort:function(){jQuery(this).removeClass("ui-state-default")},over:function(e,o){var s=o.placeholder.closest(".dslc-modules-section");jQuery(s).removeClass("dslc-modules-section-empty").addClass("dslc-modules-section-not-empty");s.siblings(".dslc-modules-section").each(function(){if(jQuery(".dslc-modules-area:not(.ui-sortable-helper)",jQuery(this)).length){jQuery(this).removeClass("dslc-modules-section-empty").addClass("dslc-modules-section-not-empty")}else{jQuery(this).removeClass("dslc-modules-section-not-empty").addClass("dslc-modules-section-empty")}})},remove:function(){jQuery(o.elem).find(".dslc-modules-area").length==0&&dslc_modules_area_add(jQuery(s))},update:function(e,o){dslc_generate_code();dslc_show_publish_button()},start:function(e,o){o.placeholder.html('<span class="dslca-placeholder-help-text"><span class="dslca-placeholder-help-text-inner">'+DSLCString.str_area_helper_text+"</span></span>");if(!jQuery(o.item).hasClass("dslc-12-col")){o.placeholder.width(o.item.width()-10)}else{o.placeholder.width(o.item.width()).css({margin:0})}jQuery("body").removeClass("dslca-drag-not-in-progress").addClass("dslca-drag-in-progress dslca-modules-area-drag-in-progress");jQuery(".dslc-modules-section-inner").sortable("refreshPositions")},stop:function(e,o){LiveComposer.Builder.UI.stopScroller();jQuery("body").removeClass("dslca-drag-in-progress dslca-modules-area-drag-in-progress").addClass("dslca-drag-not-in-progress");jQuery(".dslca-anim-opacity-drop").removeClass("dslca-anim-opacity-drop")},change:function(e,o){}});jQuery(e).attr("data-jsinit","initialized");jQuery(document).on("LC.sortableOff",function(){if(undefined!==o.sortable.sortable("instance")){o.sortable.sortable("option","disabled",true)}});jQuery(document).on("LC.sortableOn",function(){if(undefined!==o.sortable.sortable("instance")){o.sortable.sortable("option","disabled",false)}})};"use strict";jQuery(document).on("editorFrameLoaded",function(){var d=jQuery;var l=function(){if(LiveComposer.Builder.Flags.panelOpened){LiveComposer.Builder.UI.shakePanelConfirmButton();return false}return true};jQuery(".dslc-modules-section",LiveComposer.Builder.PreviewAreaDocument).each(function(){new LiveComposer.Builder.Elements.CRow(this)});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-delete-modules-section-hook",function(e){if(!l())return false;e.preventDefault();var o=this;if(!d(this).hasClass("dslca-action-disabled")){LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_del_row_title,content:DSLCString.str_del_row_descr,confirm:function(){dslc_row_delete(d(o).closest(".dslc-modules-section"))}})}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-import-modules-section-hook",function(e){e.preventDefault();if(!l())return false;if(!jQuery(this).hasClass("dslca-action-disabled")){LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_import_row_title,content:DSLCString.str_import_row_descr+"<br><br><textarea></textarea>",confirm:function(){dslc_row_import(jQuery(".dslca-prompt-modal textarea").val());jQuery(".dslca-prompt-modal-confirm-hook span").css({opacity:0});jQuery(".dslca-prompt-modal-confirm-hook .dslca-loading").show()},confirm_title:DSLCString.str_import})}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-export-modules-section-hook",function(e){e.preventDefault();if(!l())return false;if(!d(this).hasClass("dslca-action-disabled")){d(".dslca-prompt-modal-cancel-hook").hide();d(".dslca-prompt-modal-confirm-hook").html('<span class="dslc-icon dslc-icon-ok"></span>'+DSLCString.str_ok);LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_export_row_title,content:DSLCString.str_export_row_descr+"<br><br><textarea>"+"["+dslc_generate_section_code(d(this).closest(".dslc-modules-section"))+"]"+"</textarea></span>"})}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-copy-modules-section-hook",function(){if(!l())return false;if(!jQuery(this).hasClass("dslca-action-disabled")){dslc_row_copy(jQuery(this).closest(".dslc-modules-section"))}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-add-modules-section-hook",function(e){e.preventDefault();if(!l())return false;var o=d(this);if(!d(this).hasClass("dslca-action-disabled")){o.find(".dslca-icon").removeClass("dslc-icon-align-justify").addClass("dslc-icon-spinner dslc-icon-spin");dslc_row_add(function(){o.find(".dslca-icon").removeClass("dslc-icon-spinner dslc-icon-spin").addClass("dslc-icon-align-justify")})}});LiveComposer.Builder.PreviewAreaDocument.on("click",".dslca-edit-modules-section-hook",function(){if(!l())return false;var e=this;var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).length;var s=jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).length;if(d("body").hasClass("dslca-composer-hidden")||o>0||s>0)return false;if(!d(this).hasClass("dslca-action-disabled")){dslc_row_edit(d(this).closest(".dslc-modules-section"))}jQuery("body",LiveComposer.Builder.PreviewAreaDocument).addClass("section-editing-in-progress")})});function dslc_row_add(o){if(dslcDebug)console.log("dslc_row_add");o=typeof o!=="undefined"?o:false;var s=jQuery.Deferred();var d=sessionStorage;var l=jQuery();var e=d.getItem("cache-dslc-ajax-add-modules-section");if(null!==e){var i,t;i=DSLCMainOptions.section_padding_vertical;t=jQuery(e).find('input[data-id="padding"]').val();if(i!==t){d.removeItem("cache-dslc-ajax-add-modules-section");e=null}}if(null===e){jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-add-modules-section",dslc:"active"},function(e){d.setItem("cache-dslc-ajax-add-modules-section",e.output);l=dslc_row_after_add(e.output);if(o){o()}return s})}else{l=dslc_row_after_add(e);if(o){o()}return s}}function dslc_row_after_add(e){var o=jQuery(e);o.appendTo(LiveComposer.Builder.PreviewAreaDocument.find("#dslc-main"));dslc_drag_and_drop();dslc_generate_code();dslc_show_publish_button();new LiveComposer.Builder.Elements.CRow(o);new LiveComposer.Builder.Elements.CModuleArea(o.find(".dslc-modules-area").eq(0)[0]);o.find(".dslc-modules-area").addClass("dslc-modules-area-empty dslc-last-col");return o}function dslc_row_delete(e){if(dslcDebug)console.log("dslc_row_delete");if(e.find(".dslca-module-being-edited")){jQuery(".dslca-header .dslca-options-filter-hook").hide();jQuery(".dslca-module-edit-actions").hide();jQuery(".dslca-header .dslca-go-to-section-hook").show();dslc_show_section(".dslca-modules")}e.trigger("mouseleave").remove();dslc_generate_code();dslc_show_publish_button()}function dslc_row_edit(e){if(dslcDebug)console.log("dslc_row_edit");var o,s;jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-modules-section-being-edited").removeClass("dslca-modules-section-change-made");e.addClass("dslca-modules-section-being-edited");jQuery(".dslca-header .dslca-go-to-section-hook").hide();jQuery('.dslca-row-options-filter-hook[data-section="styling"], .dslca-row-options-filter-hook[data-section="responsive"]').show();jQuery('.dslca-row-options-filter-hook[data-section="styling"]').trigger("click");jQuery(".dslca-header .dslca-options-filter-hook").hide();jQuery(".dslca-module-edit-actions").hide();jQuery(".dslca-row-edit-actions").show();jQuery(".dslca-modules-section-edit-field").each(function(){if("type"===jQuery(this).data("id")){if(""===jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="type"]',LiveComposer.Builder.PreviewAreaDocument).val()||"wrapped"===jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="type"]',LiveComposer.Builder.PreviewAreaDocument).val()){jQuery('select[data-id="type"]').val("wrapper").change()}}if(jQuery(this).data("id")=="border-top"){if(jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="border"]',LiveComposer.Builder.PreviewAreaDocument).val().indexOf("top")>=0){jQuery(this).prop("checked",true);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check-empty").addClass("dslc-icon-check")}else{jQuery(this).prop("checked",false);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check").addClass("dslc-icon-check-empty")}}else if(jQuery(this).data("id")=="border-right"){if(jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="border"]',LiveComposer.Builder.PreviewAreaDocument).val().indexOf("right")>=0){jQuery(this).prop("checked",true);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check-empty").addClass("dslc-icon-check")}else{jQuery(this).prop("checked",false);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check").addClass("dslc-icon-check-empty")}}else if(jQuery(this).data("id")=="border-bottom"){if(jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="border"]',LiveComposer.Builder.PreviewAreaDocument).val().indexOf("bottom")>=0){jQuery(this).prop("checked",true);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check-empty").addClass("dslc-icon-check")}else{jQuery(this).prop("checked",false);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check").addClass("dslc-icon-check-empty")}}else if(jQuery(this).data("id")=="border-left"){if(jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="border"]',LiveComposer.Builder.PreviewAreaDocument).val().indexOf("left")>=0){jQuery(this).prop("checked",true);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check-empty").addClass("dslc-icon-check")}else{jQuery(this).prop("checked",false);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check").addClass("dslc-icon-check-empty")}}else if(jQuery(this).hasClass("dslca-modules-section-edit-field-checkbox")){if(jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="'+jQuery(this).data("id")+'"]',LiveComposer.Builder.PreviewAreaDocument).val().indexOf(jQuery(this).data("val"))>=0){jQuery(this).prop("checked",true);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check-empty").addClass("dslc-icon-check")}else{jQuery(this).prop("checked",false);jQuery(this).siblings(".dslca-modules-section-edit-option-checkbox-hook").find(".dslca-icon").removeClass("dslc-icon-check").addClass("dslc-icon-check-empty")}}else{jQuery(this).val(jQuery('.dslca-modules-section-being-edited .dslca-modules-section-settings input[data-id="'+jQuery(this).data("id")+'"]',LiveComposer.Builder.PreviewAreaDocument).val().trim().replace("%(%","[").replace("%)%","]"));if(jQuery(this).hasClass("dslca-modules-section-edit-field-colorpicker")){var e=jQuery(this);jQuery(this).closest(".dslca-modules-section-edit-option").find(".sp-preview-inner").removeClass("sp-clear-display").css({"background-color":e.val()});jQuery(this).css({"background-color":e.val()})}}});jQuery(".dslca-modules-section-edit-field-upload").each(function(){var e=jQuery(this).closest(".dslca-modules-section-edit-option");if(jQuery(this).val()&&jQuery(this).val()!=="disabled"){jQuery(".dslca-modules-section-edit-field-image-add-hook",e).hide();jQuery(".dslca-modules-section-edit-field-image-remove-hook",e).show()}else{jQuery(".dslca-modules-section-edit-field-image-remove-hook",e).hide();jQuery(".dslca-modules-section-edit-field-image-add-hook",e).show()}});dslc_show_section(".dslca-modules-section-edit");LiveComposer.Builder.Flags.panelOpened=true;dslc_hide_publish_button()}function dslc_row_edit_cancel(e){if(dslcDebug)console.log("dslc_row_cancel_changes");e=typeof e!=="undefined"?e:false;LiveComposer.Builder.Flags.generate_code_after_row_changed=false;jQuery(".dslca-modules-section-being-edited .dslca-modules-section-settings input",LiveComposer.Builder.PreviewAreaDocument).each(function(){jQuery(this).val(jQuery(this).data("def"));jQuery('.dslca-modules-section-edit-field[data-id="'+jQuery(this).data("id")+'"]').val(jQuery(this).data("def")).trigger("change")});LiveComposer.Builder.Flags.generate_code_after_row_changed=true;dslc_generate_code();dslc_show_publish_button();dslc_show_section(".dslca-modules");jQuery(".dslca-row-edit-actions").hide();jQuery(".dslca-row-options-filter-hook").hide();jQuery(".dslca-header .dslca-go-to-section-hook").show();dslc_show_publish_button;jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-modules-section-being-edited dslca-modules-section-change-made");if(e){e()}LiveComposer.Builder.Flags.panelOpened=false;jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("section-editing-in-progress")}function dslc_row_edit_confirm(e){if(dslcDebug)console.log("dslc_confirm_row_changes");e=typeof e!=="undefined"?e:false;jQuery(".dslca-modules-section-being-edited .dslca-modules-section-settings input",LiveComposer.Builder.PreviewAreaDocument).each(function(){jQuery(this).data("def",jQuery(this).val())});dslc_show_section(".dslca-modules");jQuery(".dslca-row-edit-actions").hide();jQuery(".dslca-row-options-filter-hook").hide();jQuery(".dslca-header .dslca-go-to-section-hook").show();jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-modules-section-being-edited dslca-modules-section-change-made");dslc_generate_code();dslc_show_publish_button();if(e){e()}LiveComposer.Builder.Flags.panelOpened=false;jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("section-editing-in-progress")}function dslc_row_copy(o){if(dslcDebug)console.log("dslc_row_copy");var e,s,d;s=o.clone().appendTo(jQuery("#dslc-main",LiveComposer.Builder.PreviewAreaDocument));s[0].removeAttribute("data-jsinit");s.find(".dslc-modules-area").each(function(){var e=jQuery(this).index();jQuery(this).data("size",o.find(".dslc-modules-area:eq( "+e+" )").data("size"));this.removeAttribute("data-jsinit")});new LiveComposer.Builder.Elements.CRow(s);s.find(".dslc-module-front").css({"-webkit-animation-name":"none","-moz-animation-name":"none","animation-name":"none","animation-duration":"0","-webkit-animation-duration":"0",opacity:0}).each(function(){var e=jQuery(this);dslc_module_new_id(e[0]);LiveComposer.Builder.rows_init();LiveComposer.Builder.moduleareas_init();dslc_generate_code();dslc_drag_and_drop();jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");e.animate({opacity:1},300);dslc_show_publish_button()});dslc_section_new_id(s[0])}function dslc_section_new_id(e){if(dslcDebug)console.log("dslc_section_new_id");var o=LiveComposer.Utils.get_unique_id();e.setAttribute("data-section-id",o);LiveComposer.Utils.update_section_property_raw(e,"section_instance_id",o)}function dslc_row_import(e){if(dslcDebug)console.log("dslc_row_import");jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-import-modules-section",dslc:"active",dslc_modules_section_code:e},function(e){dslc_js_confirm_close();jQuery("#dslc-main",LiveComposer.Builder.PreviewAreaDocument).append(e.output);LiveComposer.Builder.PreviewAreaWindow.dslc_bg_video();LiveComposer.Builder.PreviewAreaWindow.dslc_carousel();LiveComposer.Builder.PreviewAreaWindow.dslc_masonry();LiveComposer.Builder.rows_init();LiveComposer.Builder.moduleareas_init();dslc_drag_and_drop();dslc_generate_code();dslc_show_publish_button()})}function dslc_add_modules_section(){dslc_row_add()}function dslc_delete_modules_section(e){dslc_row_delete(e)}function dslc_edit_modules_section(e){dslc_row_edit(e)}function dslc_copy_modules_section(e){dslc_row_copy(e)}function dslc_import_modules_section(e){dslc_row_import(e)}jQuery(document).ready(function(e){e(document).on("click",".dslca-row-edit-save",function(){dslc_row_edit_confirm();e(".dslca-currently-editing").removeAttr("style");e(".dslca-row-options-filter-hook.dslca-active").removeClass("dslca-active");LiveComposer.Builder.PreviewAreaWindow.dslc_responsive_classes(true)});e(document).on("click",".dslca-row-edit-cancel",function(){dslc_row_edit_cancel();e(".dslca-currently-editing").removeAttr("style");e(".dslca-row-options-filter-hook.dslca-active").removeClass("dslca-active");LiveComposer.Builder.PreviewAreaWindow.dslc_responsive_classes(true)})});LiveComposer.Builder.rows_init=function(){jQuery("#dslc-main .dslc-modules-section",LiveComposer.Builder.PreviewAreaDocument).each(function(){if(jQuery(this).data("jsinit")!=="initialized"){new LiveComposer.Builder.Elements.CRow(this)}})};jQuery(document).ready(function(e){var o=function(e){var l=.75;var o=500;var i=100;var t=jQuery(".dslca-section-scroller",e);var a=jQuery(".dslca-section-scroller-inner",e)[0];t.on("wheel",function(e){s(e.originalEvent.deltaY||e.originalEvent.deltaX);return false});function s(e){if(e<0){e=-i}else{e=i}e=e*l;var o=t.find(".dslca-section-scroller-content").width();var s=t.width();if(o<=s)return false;var d=o-s+10;e=parseInt(a.style.left||0)-e;e=e>=0?0:e;e=e<=-d?-d:e;a.style.left=e+"px"}jQuery(".dslca-section-scroller-prev",e).click(function(e){e.preventDefault();s(-o)});jQuery(".dslca-section-scroller-next",e).click(function(e){e.preventDefault();s(o)});jQuery(window).load(function(){jQuery(window).resize(function(){s(0)})})};o(jQuery(".dslca-section.dslca-modules"));o(jQuery(".dslca-section.dslca-templates-load"))});jQuery(document).ready(function(e){LiveComposer.Builder.UI.initPreviewAreaScroller=function(){var o=5;var s=6;LiveComposer.Builder.Flags.windowScroller=false;jQuery(LiveComposer.Builder.PreviewAreaDocument).on("dragleave",".lc-scroll-top-area, .lc-scroll-bottom-area",function(e){LiveComposer.Builder.UI.stopScroller()});jQuery(LiveComposer.Builder.PreviewAreaDocument).on("dragenter dragover",".lc-scroll-bottom-area",function(e){if(LiveComposer.Builder.Flags.windowScroller!==false)return false;LiveComposer.Utils.publish("LC.sortableOff",{});LiveComposer.Builder.Flags.windowScroller=setInterval(function(){LiveComposer.Builder.PreviewAreaWindow.scrollBy(0,o)},s)});jQuery(LiveComposer.Builder.PreviewAreaDocument).on("dragenter",".lc-scroll-top-area",function(e){if(LiveComposer.Builder.Flags.windowScroller!==false)return false;LiveComposer.Utils.publish("LC.sortableOff",{});LiveComposer.Builder.Flags.windowScroller=setInterval(function(){LiveComposer.Builder.PreviewAreaWindow.scrollBy(0,-o)},s)});jQuery(LiveComposer.Builder.PreviewAreaDocument).on("dragend mouseup","body",function(e){LiveComposer.Builder.Flags.windowScroller&&LiveComposer.Builder.UI.stopScroller()})};LiveComposer.Builder.UI.stopScroller=function(){LiveComposer.Utils.publish("LC.sortableOn",{});clearInterval(LiveComposer.Builder.Flags.windowScroller);LiveComposer.Builder.Flags.windowScroller=false};jQuery("#scroller-stopper").on("dragover",function(){LiveComposer.Builder.UI.stopScroller()})});"use strict";LiveComposer.Builder.Elements.CSectionsContainer=function(e){var o=this;this.sortable=jQuery(e).sortable({items:".dslc-modules-section-dnd",handle:'.dslca-move-modules-section-hook:not(".dslca-action-disabled")',placeholder:"dslca-modules-section-placeholder",tolerance:"intersect",cursorAt:{bottom:10},axis:"y",scroll:true,scrollSensitivity:140,scrollSpeed:5,sort:function(){jQuery(this).removeClass("ui-state-default")},update:function(e,o){dslc_show_publish_button()},start:function(e,o){jQuery("body").removeClass("dslca-drag-not-in-progress").addClass("dslca-drag-in-progress");jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-drag-not-in-progress").addClass("dslca-drag-in-progress");o.placeholder.html('<span class="dslca-placeholder-help-text"><span class="dslca-placeholder-help-text-inner">'+DSLCString.str_row_helper_text+"</span></span>");jQuery(".dslc-content").sortable("refreshPositions")},stop:function(e,o){dslc_generate_code();LiveComposer.Builder.UI.stopScroller();jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-drag-in-progress").addClass("dslca-drag-not-in-progress");jQuery("body").removeClass("dslca-drag-in-progress").addClass("dslca-drag-not-in-progress");jQuery(".dslca-anim-opacity-drop").removeClass("dslca-anim-opacity-drop")}});jQuery(document).on("LC.sortableOff",function(){if(undefined!==o.sortable.sortable("instance")){o.sortable.sortable("option","disabled",true)}});jQuery(document).on("LC.sortableOn",function(){if(undefined!==o.sortable.sortable("instance")){o.sortable.sortable("option","disabled",false)}})};"use strict";jQuery(document).ready(function(d){dslc_module_options_tooltip();dslc_module_options_font();dslc_module_options_icon();dslc_module_options_icon_returnid();dslc_module_options_text_align();dslc_module_options_checkbox();dslc_module_options_box_shadow();dslc_module_options_text_shadow();var e="";e+=".dslca-module-edit-field-colorpicker";e+=", .dslca-modules-section-edit-field-colorpicker";e+=", .dslca-module-edit-option-box-shadow-color";e+=", .dslca-module-edit-option-text-shadow-color";jQuery(document).on("click",e,function(){dslc_module_options_color(this);var l=jQuery(this).closest(".dslca-color-option");var e=jQuery(".dslca-module-edit-options-inner");var i=l.find(".wp-picker-holder");var t=l.offset();var o=t.left+15;var s=window.innerWidth;var d=260;if(s<o+d){o=s-d}i.css("left",o+"px");jQuery(e).on("scroll",function(e){t=l.offset();var o=t.left+15;var s=window.innerWidth;var d=260;if(s<o+d){o=s-d}i.css("left",o+"px")})});jQuery(".dslca-container").on("mouseenter",".dslca-module-edit-option-slider",function(){if(!jQuery(this).hasClass("dslca-module-edit-option-select")){dslc_module_options_numeric(this)}});jQuery(".dslca-container").on("mouseenter",".dslca-modules-section-edit-option-slider",function(){dslc_module_options_numeric(this)});jQuery(".dslca-module-edit-form").submit(function(e){e.preventDefault();dslc_module_output_altered()});d(document).on("click",".dslca-module-edit-options-tab-hook",function(e){e.preventDefault();dslc_module_options_tab_filter(d(this))});d(document).on("click",".dslca-options-filter-hook",function(e){e.preventDefault();var o=jQuery(".dslca-options-filter-hook.dslca-active").data("section");var s=jQuery(this).data("section");d(".dslca-options-filter-hook.dslca-active").removeClass("dslca-active");d(this).addClass("dslca-active");dslc_module_options_section_filter(s);if(o=="responsive"){jQuery(".dslca-container-loader").show();LiveComposer.Builder.PreviewAreaWindow.dslc_responsive_classes();dslc_module_output_altered(function(){jQuery(".dslca-container-loader").hide()});jQuery("#page-builder-preview-area").resizable("destroy").attr("style","")}if(s=="responsive"){jQuery("#page-builder-preview-area").resizable()}});jQuery(document).on("click",".dslca-module-edit-save",function(e){e.preventDefault();dslc_module_options_confirm_changes(function(){LiveComposer.Builder.UI.unloadOptionsDeps();LiveComposer.Builder.Flags.panelOpened=false;jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("module-editing-in-progress")});jQuery(".dslca-options-filter-hook.dslca-active").removeClass("dslca-active");dslc_disable_responsive_view()});jQuery(document).on("click",".dslca-module-edit-cancel",function(e){e.preventDefault();dslc_module_options_cancel_changes(function(){LiveComposer.Builder.UI.unloadOptionsDeps();LiveComposer.Builder.Flags.panelOpened=false;jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("module-editing-in-progress")});jQuery(".dslca-options-filter-hook.dslca-active").removeClass("dslca-active");dslc_disable_responsive_view()})});(function(){var t=jQuery;var e=LiveComposer.Builder;LiveComposer.Builder.Helpers.colorpickers=[];LiveComposer.Builder.UI.clearUtils=function(){if(dslcDebug)console.log("LiveComposer.Builder.UI.clearUtils");LiveComposer.Builder.UI.clearColorPickers();if(undefined!==LiveComposer.Builder.moduleBackup){LiveComposer.Builder.moduleBackup.remove()}jQuery(".temp-styles-for-module",LiveComposer.Builder.PreviewAreaDocument).remove();jQuery(".mce-tinymce",LiveComposer.Builder.PreviewAreaDocument).hide()};LiveComposer.Builder.UI.clearColorPickers=function(){if(Array.isArray(e.Helpers.colorpickers)){e.Helpers.colorpickers.forEach(function(e){if(!jQuery(e).hasClass("dslca-modules-section-edit-field")){jQuery(e).remove()}});e.Helpers.colorpickers=[]}jQuery("body").off("click.wpcolorpicker")};LiveComposer.Builder.Helpers.depsHandlers=[];LiveComposer.Builder.UI.loadOptionsDeps=function(){var e=this;t(".dslca-module-edit-option").each(function(){var e=this;var o=true;try{var s=JSON.parse(LiveComposer.Utils.b64_to_utf8(t(this).data("dep")))}catch(e){o=false}if(o){var d=function(){var i=this;var e={};if((i.type=="radio"||i.type=="checkbox")&&s[i.value]==undefined){return false}if(i.type=="checkbox"&&s[i.value]!=undefined){e[i.value]=s[i.value]}else{e=s}Object.keys(e).forEach(function(l){e[l].split(",").forEach(function(e){var o=t(".dslca-module-edit-option-"+e.trim()).closest(".dslca-module-edit-option");var s=true;if(i.type=="radio"||i.type=="checkbox"){s=t(i).is(":checked")}var d=jQuery(".dslca-module-edit-options-tab-hook.dslca-active").data("id");if(i.value==l&&s){if(o.not(".dependent")){o.addClass("dependent")}if(o.hasClass("dep-hide")){o.removeClass("dep-hide");o.addClass("dep-show")}else{o.addClass("dep-show")}if(d==o.data("tab")){o.show()}}else{if(o.not(".dependent")){o.addClass("dependent")}if(o.hasClass("dep-show")){o.removeClass("dep-show");o.addClass("dep-hide")}else{o.addClass("dep-hide")}o.hide()}})})};t(document).on("change dslc-init-deps",'.dslca-module-edit-option *[data-id="'+t(this).data("id")+'"]',d);LiveComposer.Builder.Helpers.depsHandlers.push(d)}});t(".dslca-module-edit-option input, .dslca-module-edit-option select").trigger("dslc-init-deps")};LiveComposer.Builder.UI.unloadOptionsDeps=function(){LiveComposer.Builder.Helpers.depsHandlers.forEach(function(e){t(document).unbind("change",e);t(document).unbind("dslc-init-deps",e)});LiveComposer.Builder.Helpers.depsHandlers=[]};LiveComposer.Builder.Helpers.processInlineStyleTag=function(e){if(typeof e!="object")return false;var o="",s="";if(e.context.closest(".dslca-module-edit-option").data("tab")=="tablet_responsive"){o="@media only screen and (max-width: 1024px) and (min-width: 768px) {";s="}"}else if(e.context.closest(".dslca-module-edit-option").data("tab")=="phone_responsive"){o="@media only screen and (max-width: 767px) {";s="}"}e.styleContent=o+e.styleContent+s;var d=o+e.rule+e.elems;d=d.replace(/ /gi,"");if(LiveComposer.Builder.PreviewAreaDocument[0].getElementById(d)==null){var l=document.createElement("style");l.innerHTML=e.styleContent;l.id=d;l.className="temp-styles-for-module";LiveComposer.Builder.PreviewAreaDocument[0].body.appendChild(l)}else{LiveComposer.Builder.PreviewAreaDocument[0].getElementById(d).innerHTML=e.styleContent}};LiveComposer.Builder.UI.shakePanelConfirmButton=function(){jQuery(".dslca-module-edit-save").addClass("lc-shake-effect active");setTimeout(function(){jQuery(".dslca-module-edit-save").removeClass("lc-shake-effect active")},1e3)}})();function dslc_module_options_section_filter(e){if(dslcDebug)console.log("dslc_module_options_section_filter");jQuery(".dslca-module-edit-option").hide();jQuery('.dslca-module-edit-option[data-section="'+e+'"]').show();dslc_module_options_tab_filter()}function dslc_module_options_tab_filter(e){if(dslcDebug)console.log("dslc_module_options_tab_filter");var o=jQuery(".dslca-options-filter-hook.dslca-active").data("section");e=typeof e!=="undefined"?e:jQuery('.dslca-module-edit-options-tab-hook[data-section="'+o+'"]:first');var s=e.data("id");jQuery(".dslca-module-edit-options-tab-hook").removeClass("dslca-active");e.addClass("dslca-active");jQuery(".dslca-module-edit-options-tabs").show();jQuery(".dslca-module-edit-options-tab-hook").hide();jQuery('.dslca-module-edit-options-tab-hook[data-section="'+o+'"]').show();if(s){jQuery(".dslca-module-edit-option").hide();jQuery('.dslca-module-edit-option[data-tab="'+s+'"]').show();dslc_module_options_hideshow_tabs();if(jQuery(".dslca-module-edit-options-tab-hook:visible").length<2){jQuery(".dslca-module-edit-options-tabs").hide()}else{jQuery(".dslca-module-edit-options-tabs").show()}dslc_disable_responsive_view();if(s==DSLCString.str_res_tablet.toLowerCase()+"_responsive"){jQuery("body").removeClass("dslc-res-big dslc-res-smaller-monitor dslc-res-phone dslc-res-tablet");jQuery("body").addClass("dslc-res-tablet");jQuery("html").addClass("dslc-responsive-preview")}if(s==DSLCString.str_res_phone.toLowerCase()+"_responsive"){jQuery("body").removeClass("dslc-res-big dslc-res-smaller-monitor dslc-res-phone dslc-res-tablet");jQuery("body").addClass("dslc-res-phone");jQuery("html").addClass("dslc-responsive-preview")}if(s==DSLCString.str_res_tablet.toLowerCase()+"_responsive"||s==DSLCString.str_res_phone.toLowerCase()+"_responsive"){jQuery(".dslca-container-loader").show();dslc_module_output_altered(function(){jQuery(".dslca-container-loader").hide()})}}if(jQuery("body").hasClass("rtl")){var d=0;var l=0;var i=0;jQuery(".dslca-module-edit-options-wrapper > .dslca-module-edit-option:visible").each(function(e){if(!jQuery(this).hasClass("dslca-module-edit-option-hidden")&&!jQuery(this).hasClass("dslca-module-control-group")){d+=parseInt(jQuery(this).outerWidth(),10)}});jQuery(".dslca-module-edit-options-wrapper > .dslca-module-control-group:visible").each(function(e){l+=parseInt(jQuery(this).outerWidth(),10)});i=parseInt(d)+parseInt(l)+10;jQuery(".dslca-module-edit-options-wrapper").css({width:i+"px"})}}function dslc_module_options_hideshow_tabs(){if(dslcDebug)console.log("dslc_module_options_hideshow_tabs");var e=jQuery(".dslca-options-filter-hook.dslca-active").data("section");if(e=="styling"){var o=jQuery(".dslca-module-edit"),s=true,d=true,l=true,i=true,t=true,a=true,r=true,c=true,n=true,u=true,m=true,p=true,f=true,v=true,h=true,_=true,y=true,g=true,j=true,Q=true,b=true,C=true,w=true,k=true,L=true,B=true,D=true;if(!jQuery('.dslca-module-edit-field[value="main_heading"]').is(":checked"))s=false;if(!jQuery('.dslca-module-edit-field[value="filters"]').is(":checked"))d=false;if(!jQuery('.dslca-module-edit-field[value="arrows"]').is(":checked"))l=false;if(!jQuery('.dslca-module-edit-field[value="circles"]').is(":checked"))i=false;if(jQuery('.dslca-module-edit-field[data-id="type"]').val()!="carousel"){l=false;i=false}if(jQuery('.dslca-module-edit-field[data-id="pagination_type"]').val()=="disabled"){t=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="thumbnail"]').is(":checked")){a=false}if(jQuery('.dslca-module-edit-field[data-id*="elements"][value="content"]').length&&!jQuery('.dslca-module-edit-field[data-id*="elements"][value="title"]').is(":checked")){r=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="excerpt"]').is(":checked")){c=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="meta"]').is(":checked")){n=false}if(jQuery('.dslca-module-edit-field[data-id*="elements"][value="button"]').length&&!jQuery('.dslca-module-edit-field[data-id*="elements"][value="button"]').is(":checked")){u=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="categories"]').is(":checked")){m=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="separator"]').is(":checked")){f=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="count"]').is(":checked")){p=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="tags"]').is(":checked")){v=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="social"]').is(":checked")){h=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="position"]').is(":checked")){_=false}if(jQuery('.dslca-module-edit-field[data-id*="elements"][value="icon"]').length&&!jQuery('.dslca-module-edit-field[data-id*="elements"][value="icon"]').is(":checked")){y=false}if(jQuery('.dslca-module-edit-field[data-id*="elements"][value="content"]').length&&!jQuery('.dslca-module-edit-field[data-id*="elements"][value="content"]').is(":checked")){g=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="price"]').is(":checked")){j=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="price_2"]').is(":checked")){Q=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="addtocart"]').is(":checked")){b=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="details"]').is(":checked")){C=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="quote"]').is(":checked")){w=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="author_name"]').is(":checked")){k=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="author_position"]').is(":checked")){L=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="image"]').is(":checked")){B=false}if(!jQuery('.dslca-module-edit-field[data-id*="elements"][value="logo"]').is(":checked")){D=false}if(s)jQuery('.dslca-module-edit-options-tab-hook[data-id="heading_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="heading_styling"]').hide();if(d)jQuery('.dslca-module-edit-options-tab-hook[data-id="filters_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="filters_styling"]').hide();if(l)jQuery('.dslca-module-edit-options-tab-hook[data-id="carousel_arrows_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="carousel_arrows_styling"]').hide();if(i)jQuery('.dslca-module-edit-options-tab-hook[data-id="carousel_circles_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="carousel_circles_styling"]').hide();if(t)jQuery('.dslca-module-edit-options-tab-hook[data-id="pagination_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="pagination_styling"]').hide();if(a)jQuery('.dslca-module-edit-options-tab-hook[data-id="thumbnail_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="thumbnail_styling"]').hide();if(r)jQuery('.dslca-module-edit-options-tab-hook[data-id="title_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="title_styling"]').hide();if(c)jQuery('.dslca-module-edit-options-tab-hook[data-id="excerpt_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="excerpt_styling"]').hide();if(n)jQuery('.dslca-module-edit-options-tab-hook[data-id="meta_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="meta_styling"]').hide();if(u)jQuery('.dslca-module-edit-options-tab-hook[data-id="button_styling"], .dslca-module-edit-options-tab-hook[data-id="primary_button_styling"],'+' .dslca-module-edit-options-tab-hook[data-id="secondary_button_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="button_styling"], .dslca-module-edit-options-tab-hook[data-id="primary_button_styling"],'+' .dslca-module-edit-options-tab-hook[data-id="secondary_button_styling"]').hide();if(m)jQuery('.dslca-module-edit-options-tab-hook[data-id="categories_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="categories_styling"]').hide();if(f)jQuery('.dslca-module-edit-options-tab-hook[data-id="separator_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="separator_styling"]').hide();if(p)jQuery('.dslca-module-edit-options-tab-hook[data-id="count_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="count_styling"]').hide();if(v)jQuery('.dslca-module-edit-options-tab-hook[data-id="tags_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="tags_styling"]').hide();if(_)jQuery('.dslca-module-edit-options-tab-hook[data-id="position_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="position_styling"]').hide();if(h)jQuery('.dslca-module-edit-options-tab-hook[data-id="social_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="social_styling"]').hide();if(y)jQuery('.dslca-module-edit-options-tab-hook[data-id="icon_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="icon_styling"]').hide();if(g)jQuery('.dslca-module-edit-options-tab-hook[data-id="content_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="content_styling"]').hide();if(j)jQuery('.dslca-module-edit-options-tab-hook[data-id="price_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="price_styling"]').hide();if(Q)jQuery('.dslca-module-edit-options-tab-hook[data-id="price_secondary_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="price_secondary_styling"]').hide();if(b||C)jQuery('.dslca-module-edit-options-tab-hook[data-id="other_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="other_styling"]').hide();if(w)jQuery('.dslca-module-edit-options-tab-hook[data-id="quote_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="quote_styling"]').hide();if(k)jQuery('.dslca-module-edit-options-tab-hook[data-id="author_name_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="author_name_styling"]').hide();if(L)jQuery('.dslca-module-edit-options-tab-hook[data-id="author_position_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="author_position_styling"]').hide();if(B)jQuery('.dslca-module-edit-options-tab-hook[data-id="image_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="image_styling"]').hide();if(D)jQuery('.dslca-module-edit-options-tab-hook[data-id="logo_styling"]').show();else jQuery('.dslca-module-edit-options-tab-hook[data-id="logo_styling"]').hide()}if(jQuery('.dslca-options-filter-hook[data-section="styling"]').hasClass("dslca-active")){var x=jQuery('.dslca-module-edit-option[data-id="css_custom"]'),A=x.find("select").val();if(A=="enabled"){jQuery('.dslca-module-edit-option[data-section="styling"]').css({visibility:"visible"});jQuery(".dslca-module-edit-option[data-tab]").css("visibility","visible");jQuery(".dslca-module-edit-options-tabs").show()}else{jQuery('.dslca-module-edit-option[data-section="styling"]').css({visibility:"hidden"});jQuery(".dslca-module-control-group.dslca-module-edit-option").css("visibility","hidden");jQuery(".dslca-module-edit-options-tabs").hide();x.css({visibility:"visible"})}}else{jQuery(".dslca-module-edit-options-tabs").show()}if(jQuery('select.dslca-module-edit-field[data-id="css_res_t"]').val()=="disabled"){jQuery('.dslca-module-edit-option[data-id*="css_res_t"]').css("visibility","hidden");jQuery('.dslca-module-edit-option[data-tab="tablet_responsive"]').css("visibility","hidden")}else{jQuery('.dslca-module-edit-option[data-id*="css_res_t"]').css("visibility","visible");jQuery('.dslca-module-edit-option[data-tab="tablet_responsive"]').css("visibility","visible")}if(jQuery('select.dslca-module-edit-field[data-id="css_res_p"]').val()=="disabled"){jQuery('.dslca-module-edit-option[data-id*="css_res_p"]').css("visibility","hidden");jQuery('.dslca-module-edit-option[data-tab="phone_responsive"]').css("visibility","hidden")}else{jQuery('.dslca-module-edit-option[data-id*="css_res_p"]').css("visibility","visible");jQuery('.dslca-module-edit-option[data-tab="phone_responsive"]').css("visibility","visible")}jQuery('.dslca-module-edit-option[data-id="css_res_p"], .dslca-module-edit-option[data-id="css_res_t"]').css("visibility","visible");if(jQuery(".dslca-options-filter-hook").hasClass("dslca-active")){var P=jQuery(".dslca-options-filter-hook.dslca-active").data("section");if(jQuery('.dslca-module-edit-option[data-section="'+P+'"]').hasClass("dep-show")){jQuery(".dslca-module-edit-option.dep-show").show()}if(jQuery('.dslca-module-edit-option[data-section="'+P+'"]').hasClass("dep-hide")){jQuery(".dslca-module-edit-option.dep-hide").hide()}}if(jQuery(".dslca-module-edit-options-tab-hook").hasClass("dslca-active")){var S=jQuery(".dslca-module-edit-options-tab-hook.dslca-active").data("id");if(jQuery('.dslca-module-edit-option[data-tab="'+S+'"]').hasClass("dependent")){jQuery(".dslca-module-edit-option.dependent").hide();jQuery('.dslca-module-edit-option[data-tab="'+S+'"].dep-show').show();jQuery('.dslca-module-edit-option[data-tab="'+S+'"].dep-hide').hide()}else{jQuery(".dslca-module-edit-option.dependent").hide()}}}function dslc_module_options_confirm_changes(e){if(dslcDebug)console.log("dslc_module_options_confirm_changes");e=typeof e!=="undefined"?e:false;if(jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).hasClass("dslc-module-DSLC_Sliders")){jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited")}else{jQuery("body").addClass("dslca-module-saving-in-progress");dslc_module_output_altered(function(){dslc_update_preset();dslc_generate_code();jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");jQuery("body").removeClass("dslca-module-saving-in-progress");jQuery(".dslca-module-edit-options-inner").html("");jQuery(".dslca-module-edit-options-tabs").html("");LiveComposer.Builder.UI.clearUtils();if(e){e()}})}dslc_show_section(".dslca-modules");jQuery(".dslca-header .dslca-options-filter-hook").hide();jQuery(".dslca-module-edit-actions").hide();jQuery(".dslca-header .dslca-go-to-section-hook").show();dslc_show_publish_button()}function dslc_module_options_cancel_changes(e){if(dslcDebug)console.log("dslc_module_options_cancel_changes");e=typeof e!=="undefined"?e:false;var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);jQuery(".dslca-module-options-front",o).html("").append(LiveComposer.Builder.moduleBackup);dslc_module_output_altered(function(){dslc_generate_code();jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-module-being-edited");jQuery(".dslca-module-edit-options-inner").html("");jQuery(".dslca-module-edit-options-tabs").html("");LiveComposer.Builder.UI.clearUtils();if(e){e()}});dslc_show_section(".dslca-modules");jQuery(".dslca-header .dslca-options-filter-hook").hide();jQuery(".dslca-module-edit-actions").hide();jQuery(".dslca-header .dslca-go-to-section-hook").show();dslc_show_publish_button();LiveComposer.Builder.UI.clearUtils()}function dslc_module_options_tooltip(){jQuery(document).on("click",".dslca-module-edit-field-ttip-close",function(){jQuery(".dslca-module-edit-field-ttip, .dslca-module-edit-field-icon-ttip").hide()});jQuery(document).on("click",".dslca-module-edit-field-ttip-hook",function(){var e=jQuery(".dslca-module-edit-field-ttip"),o=e.find(".dslca-module-edit-field-ttip-inner"),s=jQuery(this),d,l;l=s.parent();if(l.parent().hasClass("dslca-modules-section-edit-option")){d=s.closest(".dslca-modules-section-edit-option").find(".dslca-module-edit-field-ttip-content").html()}else{d=s.closest(".dslca-module-edit-option").find(".dslca-module-edit-field-ttip-content").html()}if(e.is(":visible")){jQuery(".dslca-module-edit-field-ttip").hide()}else{o.html(d);var i=s.offset();var t=e.outerHeight();var a=e.outerWidth();var r=i.left-a/2+6;var c="50%";if(r<0){c=a/2+r+"px";r=0}jQuery(".dslca-module-edit-field-ttip").show().css({top:i.top-t-20,left:r});jQuery("head").append(jQuery("<style>.dslca-module-edit-field-ttip:after, .dslca-module-edit-field-ttip:before { left: "+c+" }</style>"))}});jQuery(document).on("click",".dslca-module-edit-field-icon-ttip-hook",function(){var e=jQuery(".dslca-module-edit-field-icon-ttip");var o=jQuery(this);if(e.is(":visible")){jQuery(".dslca-module-edit-field-icon-ttip").hide()}else{var s=o.offset();var d=e.outerHeight();var l=e.outerWidth();var i=s.left-l/2+6;var t="50%";if(i<0){t=l/2+i+"px";i=0}jQuery(".dslca-module-edit-field-icon-ttip").show().css({top:s.top-d-20,left:i});jQuery("head").append(jQuery("<style>.dslca-module-edit-field-icon-ttip:after, .dslca-module-edit-field-icon-ttip:before { left: "+t+" }</style>"))}})}function dslc_module_options_font(){jQuery(document).on("click",".dslca-module-edit-field-font-next",function(e){e.preventDefault();if(!jQuery(this).hasClass("dslca-font-loading")&&!jQuery(this).siblings(".dslca-font-loading").length){var o=jQuery(this).closest(".dslca-module-edit-option-font");var s=jQuery(".dslca-module-edit-field-font",o);var d=dslcAllFontsArray.indexOf(s.val());var l=d+1;jQuery(".dslca-module-edit-field-font-suggest",o).text("");s.val(dslcAllFontsArray[l]).trigger("change");jQuery(this).addClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-chevron-right").addClass("dslc-icon-refresh dslc-icon-spin")}});jQuery(document).on("click",".dslca-module-edit-field-font-prev",function(e){e.preventDefault();if(!jQuery(this).hasClass("dslca-font-loading")&&!jQuery(this).siblings(".dslca-font-loading").length){var o=jQuery(this).closest(".dslca-module-edit-option-font");var s=jQuery(".dslca-module-edit-field-font",o);var d=dslcAllFontsArray.indexOf(s.val());var l=d-1;jQuery(".dslca-module-edit-field-font-suggest",o).text("");if(l<0){l=dslcAllFontsArray.length-1}s.val(dslcAllFontsArray[l]).trigger("change");jQuery(this).addClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-chevron-left").addClass("dslc-icon-refresh dslc-icon-spin")}});jQuery(document).on("keyup",".dslca-module-edit-field-font",function(e){var o,s,d,l=false,i;o=jQuery(this);s=o.closest(".dslca-module-edit-option");if(e.which==38){jQuery(".dslca-module-edit-field-font-prev",s).click()}if(e.which==40){jQuery(".dslca-module-edit-field-font-next",s).click()}if(e.which!=13&&e.which!=38&&e.which!=40){d=o.val();var t=[];var a=new RegExp("^"+d,"i");var r=dslcAllFontsArray.length;var c=0;do{if(a.test(dslcAllFontsArray[c])){if(!l){var l=dslcAllFontsArray[c]}}c++}while(c<r);if(!l){i=d;jQuery(".dslca-module-edit-field-font-suggest",s).hide()}else{i=l;jQuery(".dslca-module-edit-field-font-suggest",s).show()}jQuery(".dslca-module-edit-field-font-suggest",s).text(i);if(i.length){o.val(i.substring(0,o.val().length))}}});jQuery(document).on("keypress",".dslca-module-edit-field-font",function(e){if(e.which==13){e.preventDefault();var o,s,d,l,i;o=jQuery(this);s=o.closest(".dslca-module-edit-option");jQuery(this).val(jQuery(".dslca-module-edit-field-font-suggest",s).text()).trigger("change");jQuery(".dslca-module-edit-field-font-suggest",s).text("")}})}function dslc_list_icon(e,o){var s=jQuery(e).closest(".dslca-module-edit-option-icon");var d=jQuery(".dslca-module-edit-field-icon",s);var l=dslcIconsCurrentSet.indexOf(d.val());if(o=="previous"){var i=l-1}else{var i=l+1}jQuery(".dslca-module-edit-field-icon-suggest",s).text("");if(i<0){i=dslcIconsCurrentSet.length-1}d.val(dslcIconsCurrentSet[i]).trigger("change")}function dslc_module_options_icon(){jQuery(document).on("keyup",".dslca-module-edit-field-icon",function(e){var o,s,d,l,i;o=jQuery(this);s=o.closest(".dslca-module-edit-option");if(e.which==38){dslc_list_icon(o,"previous")}if(e.which==40){dslc_list_icon(o,"next")}if(e.which!=13&&e.which!=38&&e.which!=40){d=o.val().toLowerCase();o.val(d);l=jQuery.grep(dslcIconsCurrentSet,function(e,o){return e.indexOf(d)==0});i=l[0];jQuery(".dslca-module-edit-field-icon-suggest",s).text(i)}});jQuery(document).on("keypress",".dslca-module-edit-field-icon",function(e){if(e.which==13){e.preventDefault();var o,s,d,l,i;o=jQuery(this);s=o.closest(".dslca-module-edit-option");jQuery(this).val(jQuery(".dslca-module-edit-field-icon-suggest",s).text()).trigger("change");jQuery(".dslca-module-edit-field-icon-suggest",s).text("")}})}function dslc_module_options_icon_returnid(){jQuery(document).on("click",'.dslca-open-modal-hook[data-modal^=".dslc-list-icons"]',function(e){jQuery(this).closest(".dslca-module-edit-option-icon").find("input").addClass("icon-modal-active")});jQuery(document).on("click",".dslca-modal-icons .icon-item",function(e){var o=jQuery(this).find(".icon-item_name").text();jQuery("input.icon-modal-active").val(o).change();dslc_hide_modal("",jQuery(".dslca-modal:visible"));jQuery("input.icon-modal-active").removeClass("icon-modal-active")})}function dslc_module_options_text_align(){jQuery(document).on("click",".dslca-module-edit-option-text-align-hook",function(){var e=jQuery(this),o=jQuery(this).closest(".dslca-module-edit-option-text-align-wrapper").find(".dslca-module-edit-option-text-align-hook"),s=e.data("val"),d=jQuery(this).closest(".dslca-module-edit-option-text-align-wrapper").siblings("input.dslca-module-edit-field");o.removeClass("dslca-active");e.addClass("dslca-active");d.val(s).trigger("change")})}function dslc_module_options_checkbox(){jQuery(document).on("click",".dslca-module-edit-option-checkbox-hook, .dslca-modules-section-edit-option-checkbox-hook",function(){var e=jQuery(this);var o=e.siblings('input[type="checkbox"]');if(o.prop("checked")){o.prop("checked",false);e.find(".dslca-icon").removeClass("dslc-icon-check").addClass("dslc-icon-check-empty")}else{o.prop("checked",true);e.find(".dslca-icon").removeClass("dslc-icon-check-empty").addClass("dslc-icon-check")}o.change()})}function dslc_module_options_box_shadow(){if(dslcDebug)console.log("dslc_module_options_box_shadow");jQuery(document).on("change",".dslca-module-edit-option-box-shadow-hor, "+".dslca-module-edit-option-box-shadow-ver, .dslca-module-edit-option-box-shadow-blur, .dslca-module-edit-option-box-shadow-spread,"+" .dslca-module-edit-option-box-shadow-color, .dslca-module-edit-option-box-shadow-inset",function(){var e=jQuery(this).closest(".dslca-module-edit-option"),o=e.find(".dslca-module-edit-field"),s=e.find(".dslca-module-edit-option-box-shadow-hor").val(),d=e.find(".dslca-module-edit-option-box-shadow-ver").val(),l=e.find(".dslca-module-edit-option-box-shadow-blur").val(),i=e.find(".dslca-module-edit-option-box-shadow-spread").val(),t=e.find(".dslca-module-edit-option-box-shadow-color").val(),a=e.find(".dslca-module-edit-option-box-shadow-inset").is(":checked");if(a){a=" inset"}else{a=""}var r=s+"px "+d+"px "+l+"px "+i+"px "+t+a;o.val(r).trigger("change")})}function dslc_module_options_text_shadow(){if(dslcDebug)console.log("dslc_module_options_text_shadow");jQuery(document).on("change",".dslca-module-edit-option-text-shadow-hor, .dslca-module-edit-option-text-shadow-ver,"+".dslca-module-edit-option-text-shadow-blur, .dslca-module-edit-option-text-shadow-color",function(){var e=jQuery(this).closest(".dslca-module-edit-option"),o=e.find(".dslca-module-edit-field"),s=e.find(".dslca-module-edit-option-text-shadow-hor").val(),d=e.find(".dslca-module-edit-option-text-shadow-ver").val(),l=e.find(".dslca-module-edit-option-text-shadow-blur").val(),i=e.find(".dslca-module-edit-option-text-shadow-color").val();var t=s+"px "+d+"px "+l+"px "+i;o.val(t).trigger("change")})}function dslc_module_options_color(e){if(dslcDebug)console.log("dslc_module_options_color");var l,i,t,a,r,c,n;var u=[],o,s;var m="dslcColors-"+document.domain;if(undefined!==localStorage[m]){o=JSON.parse(localStorage[m]);u=o}if(1>u.length){u.push("#78b")}if(2>u.length){u.push("#ab0")}if(3>u.length){u.push("#de3")}u.push("#fff");u.push("#000");u.push("rgba(0,0,0,0)");var d=e;jQuery(d).each(function(){var e=jQuery(this).closest(".dslca-color-option");var d=jQuery(this);n=jQuery(this).val();d.wpColorPicker({mode:"hsl",palettes:u,change:function(e,o){l=d;var s=d.wpColorPicker("color");if(s==null){a=""}else{a=s}l.val(a).trigger("change");l.css("background",a);i=l.data("affect-on-change-el");t=l.data("affect-on-change-rule");if(null!=i){jQuery(i,".dslca-module-being-edited").css(t,a)}r=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);c=l.data("id");jQuery('.dslca-module-option-front[data-id="'+c+'"]',r).val(a);r.addClass("dslca-module-change-made")}});var o=e.find(".wp-picker-holder .iris-picker");o.append('<button type="button" class="dslca-colorpicker-apply">Apply</button>');var s=e.find(".dslca-colorpicker-apply");d.wpColorPicker("open");jQuery(s).on("click",function(){if("#fff"!==a&&"#ffffff"!==a&&"#000"!==a&&"#000000"!==a&&"rgba(0,0,0,0)"!==a){if(undefined===localStorage[m]){var e=[a];localStorage[m]=JSON.stringify(e)}else{var e=JSON.parse(localStorage[m]);if(e.indexOf(a)==-1){e.unshift(a);if(3<e.length){e.pop()}}localStorage[m]=JSON.stringify(e)}}d.wpColorPicker("close")});LiveComposer.Builder.Helpers.colorpickers.push(jQuery(this))})}function dslc_module_options_numeric(e){if(dslcDebug)console.log("dslc_module_options_numeric");var o=e;jQuery(o).each(function(){var s=jQuery(this);if(0===jQuery(".dslca-module-edit-field-slider",s).length){s.append('<div class="dslca-module-edit-field-slider"></div>')}var l=true;if(s.hasClass("dslca-modules-section-edit-option")){l=false}else{l=true}if(l){var d=s.find(".dslca-module-edit-field")}else{var d=s.find(".dslca-modules-section-edit-field")}if(s.hasClass("dslca-modules-section-edit-option")){var d=s.find(".dslca-modules-section-edit-field")}else{var d=s.find(".dslca-module-edit-field")}var i="",t=s.find(".dslca-module-edit-field-slider"),e=parseFloat(d.val()),a=parseFloat(d.data("max")),r=parseFloat(d.data("min")),o=parseFloat(d.data("increment")),c=a,n=r;var u=false;if(undefined!==d.data("onlypositive")&&1===d.data("onlypositive")){u=true}if(e>=a){a=e*2}if(!u&&e<=r){r=e*2}t.slider({min:r,max:a,step:o,value:d.val(),slide:function(e,o){d.val(o.value+i);d.trigger("change")},change:function(e,o){if(o.value>=a||o.value<=r){t.slider("destroy");dslc_module_options_numeric(s)}}});t.show();jQuery(s).on("mouseleave",function(){if(undefined!==t.slider("instance")){jQuery(t).slider("destroy")}t.remove()});if(d[0].classList.contains("slider-initiated"))return;d[0].classList.add("slider-initiated");d.on("keyup",function(e){if(undefined===e){return false}if(e.shiftKey){if(e.keyCode==38){this.value=(parseInt(this.value)||0)+9;d.trigger("change")}if(e.keyCode==40){this.value=parseInt(this.value)+0-9;d.trigger("change")}}if(e.keyCode==8||e.keyCode==45){d.trigger("change")}if(e.keyCode>=48&&e.keyCode<=57||e.keyCode>=96&&e.keyCode<=105){d.trigger("change")}var o=e.which?e.which:e.keyCode;if((o>=48&&o<=57||o>=96&&o<=105)&&e.keyCode!=8&&e.keyCode!=39&&e.keyCode!=37&&e.keyCode!=46){return false}});d.on("change",function(e){if(u&&this.value<0){this.value=0}var o;if(l){o=jQuery(e.target.closest(".dslca-module-edit-option-slider"))}else{o=jQuery(e.target.closest(".dslca-modules-section-edit-option-slider"))}var s=o.find(".dslca-module-edit-field-slider");if(undefined!==s.slider("instance")){s.slider("value",this.value)}if(l){var d=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);d.addClass("dslca-module-change-made")}});return false})}function dslc_disable_responsive_view(){jQuery("html").removeClass("dslc-responsive-preview");jQuery("body").removeClass("dslc-res-big dslc-res-smaller-monitor dslc-res-phone dslc-res-tablet")}function dslc_filter_module_options(e){dslc_module_options_section_filter(e)}function dslc_show_module_options_tab(e){dslc_module_options_tab_filter(e)}function dslc_confirm_changes(e){dslc_module_options_confirm_changes(e)}function dslc_cancel_changes(e){dslc_module_options_cancel_changes(e)}function dslc_init_colorpicker(){dslc_module_options_color()}function dslc_init_options_slider(){dslc_module_options_numeric()}function dslc_module_edit_options_hideshow_tabs(){dslc_module_options_hideshow_tabs()}"use strict";function dslc_template_load(e){if(dslcDebug)console.log("dslc_load_template");var o,s;jQuery("#wpcontent").prepend('<div class="lc-template-loader"></div>');var d='<div class="lc-loader lds-css"><div class="lds-spinner"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div>';jQuery(".lc-template-loader").prepend(d);jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-load-template",dslc:"active",dslc_template_id:e},function(e){jQuery("#dslc-main",LiveComposer.Builder.PreviewAreaDocument).html(e.output);jQuery(".lc-template-loader").remove();LiveComposer.Builder.PreviewAreaWindow.dslc_carousel();LiveComposer.Builder.rows_init();LiveComposer.Builder.moduleareas_init();dslc_drag_and_drop();dslc_show_publish_button();dslc_generate_code()})}function dslc_template_import(){if(dslcDebug)console.log("dslc_import_template");var e,o;jQuery(".dslca-modal-templates-import .dslca-modal-title").css({opacity:0});jQuery(".dslca-modal-templates-import .dslca-loading").show();jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-import-template",dslc:"active",dslc_template_code:jQuery("#dslca-import-code").val()},function(e){jQuery("#dslc-main",LiveComposer.Builder.PreviewAreaDocument).html(e.output);jQuery(".dslca-modal-templates-import .dslca-loading").hide();jQuery(".dslca-modal-templates-import .dslca-modal-title").css({opacity:1});dslc_hide_modal("",".dslca-modal-templates-import");LiveComposer.Builder.PreviewAreaWindow.dslc_bg_video();dslc_drag_and_drop();dslc_show_publish_button();dslc_generate_code()})}function dslc_template_save(){if(dslcDebug)console.log("dslc_save_template");jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-save-template",dslc:"active",dslc_template_code:jQuery("#dslca-code").val(),dslc_template_title:jQuery("#dslca-save-template-title").val()},function(e){dslc_hide_modal("",".dslca-modal-templates-save")})}function dslc_template_delete(o){if(dslcDebug)console.log("dslc_delete_template");jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-delete-template",dslc:"active",dslc_template_id:o},function(e){jQuery('.dslca-template[data-id="'+o+'"]').fadeOut(200,function(){jQuery(this).remove()})})}function dslc_load_template(e){dslc_template_load(e)}function dslc_import_template(){dslc_template_import()}function dslc_save_template(){dslc_template_save()}function dslc_delete_template(e){dslc_template_delete(e)}jQuery(document).ready(function(o){jQuery(document).on("click",".dslca-template",function(e){e.preventDefault();dslc_template_load(jQuery(this).data("id"))});o(".dslca-template-import-form").submit(function(e){e.preventDefault();dslc_template_import()});o(".dslca-template-save-form").submit(function(e){e.preventDefault();dslc_template_save()});o(document).on("click",".dslca-delete-template-hook",function(e){e.stopPropagation();dslc_template_delete(o(this).data("id"))})});"use strict";window.onerror=function(e,o,s,d){dslca_generate_error_report(e,o,s,d)};jQuery(document).on("click",".dslca-show-js-error-hook",function(e){e.preventDefault();var o=document.getElementById("dslca-js-errors-report");if(!jQuery("body").hasClass("dslca-saving-in-progress")){LiveComposer.Builder.UI.CModalWindow({title:'<a href="https://livecomposerplugin.com/support/" target="_blank"><span class="dslca-icon dslc-icon-comment"></span> &nbsp; Get Support Info</a>',content:'<span class="dslca-error-report">'+o.value+"</span>"})}});jQuery(document).ready(function(e){jQuery("#page-builder-frame")[0].contentWindow.onerror=function(e,o,s,d){dslca_generate_error_report(e,o,s,d)};dslca_update_report_log();jQuery("body").addClass("dslca-enabled dslca-drag-not-in-progress");jQuery(".dslca-invisible-overlay").hide();jQuery(".dslca-section").eq(0).show()});window.previewAreaTinyMCELoaded=function(){var e=this;LiveComposer.Builder.PreviewAreaWindow=this;LiveComposer.Builder.PreviewAreaDocument=jQuery(this.document);jQuery("#wpadminbar",LiveComposer.Builder.PreviewAreaDocument).remove();dslc_fix_contenteditable();var o=LiveComposer.Builder.PreviewAreaDocument.find("#dslc-main").eq(0)[0];new LiveComposer.Builder.Elements.CSectionsContainer(o);jQuery(document).trigger("editorFrameLoaded");dslc_drag_and_drop();dslc_generate_code();dslc_keypress_events();LiveComposer.Builder.UI.initPreviewAreaScroller()};jQuery(document).on("click",".dslca-currently-editing",function(){var e=false,o=false,s;if(jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).length){e=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);s="#5890e5"}else if(jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).length){e=jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument);s="#eabba9"}if(e){o=e.offset().top-100;if(o<0){o=0}var d=[];jQuery("html, body",LiveComposer.Builder.PreviewAreaDocument).animate({scrollTop:o},300,function(){e.removeAttr("style")})}});jQuery(window).keypress(function(e){if((e.metaKey||e.ctrlKey)&&e.keyCode==83){dslc_ajax_save_composer();e.preventDefault();return false}});jQuery(document).on("click",".dslca-hide-composer-hook",function(e){e.preventDefault();dslc_hide_composer()});jQuery(document).on("click",".dslca-show-composer-hook",function(e){e.preventDefault();dslc_show_composer()});jQuery(document).on("click",".dslca-go-to-modules-hook",function(e){e.preventDefault();dslc_show_section(".dslca-modules")});jQuery(document).on("click",".dslca-go-to-section-hook",function(e){e.preventDefault();if(jQuery(this).hasClass("dslca-active")){return}var o=jQuery(this).data("section");dslc_show_section(o);if(jQuery(this).hasClass("dslca-go-to-section-modules")||jQuery(this).hasClass("dslca-go-to-section-templates")){jQuery(this).addClass("dslca-active").siblings(".dslca-go-to-section-hook").removeClass("dslca-active")}});jQuery(document).on("click",".dslca-close-composer-hook",function(e){e.preventDefault();var o=jQuery(this).attr("href");if(!jQuery("body").hasClass("dslca-saving-in-progress")&&jQuery(".dslca-save-composer").is(":visible")){LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_exit_title,content:DSLCString.str_exit_descr,confirm:function(){window.location=o}})}else{window.location=o}});jQuery(document).on("click",".dslca-submit",function(){jQuery(this).closest("form").submit()});jQuery(document).on("click",".dslca-section-title",function(e){e.stopPropagation();if(jQuery(".dslca-section-title-filter",this).length){dslc_generate_filters();jQuery(".dslca-section-title-filter-options").slideToggle(300)}});jQuery(document).on("click",".dslca-section-title-filter-options a",function(e){e.preventDefault();e.stopPropagation();var o=jQuery(this).data("origin");var s=jQuery(this).closest(".dslca-section");if(s.hasClass("dslca-templates-load")){jQuery(".dslca-section-title-filter-curr",s).text(jQuery(this).text())}else{jQuery(".dslca-section-title-filter-curr",s).text(jQuery(this).text())}jQuery(".dslca-section-scroller-inner").css({left:0});dslc_filter_origin(o,s);jQuery(".dslca-section-title-filter-options").slideToggle(300)});function dslc_hide_composer(){if(dslcDebug)console.log("dslc_hide_composer");jQuery(".dslca-hide-composer-hook").hide();jQuery(".dslca-show-composer-hook").show();jQuery("body").addClass("dslca-composer-hidden");jQuery("body",LiveComposer.Builder.PreviewAreaDocument).addClass("dslca-composer-hidden");jQuery(".dslca-container").css({bottom:jQuery(".dslca-container").outerHeight()*-1});jQuery(".dslca-header").hide()}function dslc_show_composer(){if(dslcDebug)console.log("dslc_show_composer");jQuery(".dslca-show-composer-hook").hide();jQuery(".dslca-hide-composer-hook").show();jQuery("body").removeClass("dslca-composer-hidden");jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-composer-hidden");jQuery(".dslca-container").css({bottom:0});jQuery(".dslca-header").show()}function dslc_show_publish_button(){if(dslcDebug)console.log("dslc_show_publish_button");jQuery(".dslca-save-composer").show().addClass("dslca-init-animation");jQuery(".dslca-save-draft-composer").show().addClass("dslca-init-animation")}function dslc_hide_publish_button(){if(dslcDebug)console.log("dslc_hide_publish_button");jQuery(".dslca-save-composer").hide();jQuery(".dslca-save-draft-composer").hide()}function dslc_show_section(e){if(dslcDebug)console.log("dslc_show_section");var o=jQuery(e).data("title"),s=jQuery(e).data("bg");jQuery(".dslca-container").css({bottom:-500});jQuery(".dslca-section").hide();jQuery(e).show();if(e==".dslca-module-edit"){jQuery(".dslca-currently-editing").show().find("strong").text(jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).attr("title")+" element")}else if(e==".dslca-modules-section-edit"){jQuery(".dslca-currently-editing").show().css("background-color","#e5855f").find("strong").text("Row")}else{jQuery(".dslca-currently-editing").hide().find("strong").text("")}dslc_module_options_tab_filter();jQuery(".dslca-container").css({bottom:0});jQuery(e).find("input.dslca-module-edit-field-colorpicker").each(function(e){jQuery(this).css("background",jQuery(this).val())})}function dslc_generate_filters(){if(dslcDebug)console.log("dslc_generate_filters");var e,o=[],s='<a html="#" data-origin="">Show All</a>',d=jQuery(".dslca-section:visible .dslca-origin");d.each(function(){e=jQuery(this);if(jQuery.inArray(e.data("origin"),o)==-1){o.push(e.data("origin"));s+='<a href="#" data-origin="'+e.data("origin")+'">'+e.data("origin")+"</a>"}});jQuery(".dslca-section:visible .dslca-section-title-filter-options").html(s).css("background",jQuery(".dslca-section:visible").data("bg"))}function dslc_filter_origin(e,o){if(dslcDebug)console.log("dslc_filter_origin");jQuery(".dslca-origin",o).attr("data-display-module","false");jQuery('.dslca-origin[data-origin="'+e+'"]',o).attr("data-display-module","true");if(e==""){jQuery(".dslca-origin",o).attr("data-display-module","true");jQuery(".dslca-origin.dslca-exclude",o).attr("data-display-module","false")}}function dslc_drag_and_drop(){if(dslcDebug)console.log("dslc_drag_and_drop");var e,s,d,l;var o=jQuery(".dslca-modules .dslca-section-scroller-content");if(o.length==0){o=[document.createElement("div")]}var i=Sortable.create(o[0],{sort:false,group:{name:"modules",pull:"clone",put:false},animation:150,handle:".dslca-module",draggable:".dslca-module",chosenClass:"dslca-module-dragging",scroll:true,scrollSensitivity:150,scrollSpeed:15,setData:function(e,o){e.setData(LiveComposer.Utils.msieversion()!==false?"Text":"text/html",o.innerHTML)},onStart:function(e){e.oldIndex;jQuery("body").removeClass("dslca-new-module-drag-not-in-progress").addClass("dslca-new-module-drag-in-progress");jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-new-module-drag-not-in-progress").addClass("dslca-new-module-drag-in-progress");jQuery("#dslc-header").addClass("dslca-header-low-z-index")},onEnd:function(e){e.oldIndex;e.newIndex;var o=e.item;e.preventDefault();if(jQuery(o).closest(".dslca-section-scroller-content").length>0)return false;jQuery(".dslca-options-hovered",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-options-hovered");s=jQuery(o.parentNode);d=o.dataset.id;dslc_generate_code();if(d=="DSLC_M_A"||jQuery("body").hasClass("dslca-module-drop-in-progress")||s.closest("#dslc-header").length||s.closest("#dslc-footer").length){}else{jQuery("body").addClass("dslca-module-drop-in-progress");dslc_module_output_default(d,function(e){l=e.output;var o=LiveComposer.Builder.Helpers.insertModule(l,jQuery(".dslca-module",s));setTimeout(function(){LiveComposer.Builder.PreviewAreaWindow.dslc_masonry();jQuery("body").removeClass("dslca-module-drop-in-progress")},700);jQuery(".dslca-modules-area-manage",s).css({visibility:"visible"});LiveComposer.Builder.PreviewAreaWindow.dslc_carousel();LiveComposer.Builder.PreviewAreaWindow.dslc_tabs();LiveComposer.Builder.PreviewAreaWindow.dslc_init_accordion();dslc_generate_code();dslc_show_publish_button()});jQuery(o).find(".dslca-icon").attr("class","").attr("class","dslca-icon dslc-icon-refresh dslc-icon-spin");jQuery(".dslca-modules-area-manage",s).css({visibility:"hidden"})}LiveComposer.Builder.UI.stopScroller();jQuery("body").removeClass("dslca-new-module-drag-in-progress").addClass("dslca-new-module-drag-not-in-progress");jQuery("body",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-new-module-drag-in-progress").addClass("dslca-new-module-drag-not-in-progress");jQuery("#dslc-header").removeClass("dslca-header-low-z-index")},onAdd:function(e){var o=e.item;e.from},onUpdate:function(e){var o=e.item;dslc_show_publish_button()},onSort:function(e){e.preventDefault()},onRemove:function(e){},onFilter:function(e){var o=e.item},onMove:function(e){e.dragged;e.draggedRect;e.related;e.relatedRect;jQuery(e.to).addClass("dslca-options-hovered")}})}function dslc_option_changed(){dslc_show_publish_button()}function dslc_module_dragdrop_init(){dslc_drag_and_drop()}function dslc_fix_contenteditable(){LiveComposer.Builder.PreviewAreaDocument.on("dragstart",".dslca-module, .dslc-module-front, .dslc-modules-area, .dslc-modules-section",function(e){jQuery("[contenteditable]",LiveComposer.Builder.PreviewAreaDocument).attr("contenteditable",false)});LiveComposer.Builder.PreviewAreaDocument.on("dragend mousedown",".dslca-module, .dslc-module-front, .dslc-modules-area, .dslc-modules-section",function(e){jQuery("[contenteditable]",LiveComposer.Builder.PreviewAreaDocument).attr("contenteditable",true)})}function dslc_toogle_control(e){if(e===undefined)e=false;if(!e)return;var o=jQuery(".dslca-module-edit-option-"+e);var s=o.find(".dslca-module-edit-field");var d=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);var l=d[0].id;var i="";if("tablet_responsive"===o.data("tab")){i="body.dslc-res-tablet "}else if("phone_responsive"===o.data("tab")){i="body.dslc-res-phone "}var t=s.data("affect-on-change-el");if(t===undefined)return;var a=t.split(",");t="";for(var r=0;r<a.length;r++){if(r>0){t+=", "}t+=i+"#"+l+" "+a[r]}var c=s.data("affect-on-change-rule").replace(/ /g,"");var n=c.split(",");var u;var m=s.data("ext");o.toggleClass("dslca-option-off");if(o.hasClass("dslca-option-off")){u=dslc_get_control_value(e);s.data("val-bckp",u);for(var r=0;r<n.length;r++){jQuery(t,LiveComposer.Builder.PreviewAreaDocument).css(n[r],"");disable_css_rule(t,n[r],l)}s.val("").trigger("change")}else{s.val(s.data("val-bckp")).trigger("change");u=dslc_get_control_value(e);u=dslc_combine_value_and_extension(u,m||"");for(var r=0;r<n.length;r++){var p=t+"{"+n[r]+": "+u+"}";LiveComposer.Builder.Helpers.processInlineStyleTag({context:o,rule:n[r],elems:t.replace(new RegExp("#"+l,"gi"),"").trim(),styleContent:p})}}}jQuery(document).ready(function(d){jQuery(document).on("click",".dslca-module-edit-option .dslc-control-toggle",function(e){e.preventDefault();var o=jQuery(e.target).closest(".dslca-module-edit-option").find(".dslca-module-edit-field").data("id");dslc_toogle_control(o)});jQuery(document).on("mousedown",".dslca-module-edit-option",function(e){var o=d(".dslc-control-toggle");if(!o.is(e.target)&&o.has(e.target).length===0){if(jQuery(e.target).closest(".dslca-module-edit-option").hasClass("dslca-option-off")){var s=d(e.target).closest(".dslca-module-edit-option").find(".dslca-module-edit-field").data("id");dslc_toogle_control(s)}}})});function disable_css_rule(e,o,s){var d;var l="css-for-"+s;var i=document.getElementById("page-builder-frame").contentWindow.document.getElementById(l);e=e.replace(/\s\s+/g," ");if(i){i=i.sheet;if(i["rules"]){d="rules"}else if(i["cssRules"]){d="cssRules"}else{}for(var t=0;t<i[d].length;t++){if(i[d][t].selectorText==e){if(i[d][t].style[o]){i[d][t].style[o]="";break}}}}}function dslc_combine_value_and_extension(e,o){if(""===e||null===e){return e}if(e.indexOf(o)==-1){e=e+o}return e}function dslc_get_control_value(e){var o=jQuery(".dslca-module-edit-option-"+e);var s="text";var d=o.find(".dslca-module-edit-field");var l;l=d.val();return l}function dslc_keypress_events(){jQuery([document,LiveComposer.Builder.PreviewAreaWindow.document]).unbind("keydown").bind("keydown",function(e){dslc_modal_keypress_events(e);dslc_disable_backspace_navigation(e);dslc_notice_on_refresh(e);dslc_save_page(e)})}function dslc_disable_backspace_navigation(e){var o=false;if(e.keyCode===8){var s=e.srcElement||e.target;if(s.tagName.toUpperCase()==="INPUT"&&(s.type.toUpperCase()==="TEXT"||s.type.toUpperCase()==="PASSWORD"||s.type.toUpperCase()==="NUMBER"||s.type.toUpperCase()==="FILE")||s.tagName.toUpperCase()==="TEXTAREA"||jQuery(s).hasClass("dslca-editable-content")||jQuery(s).hasClass("dslc-tabs-nav-hook-title")||jQuery(s).hasClass("dslc-accordion-title")){o=s.readOnly||s.disabled}else{o=true}}if(o){e.preventDefault()}}function dslc_notice_on_refresh(e){if(e.which==116||e.which===82&&e.metaKey){if(jQuery(".dslca-save-composer-hook").offsetParent!==null||jQuery(".dslca-module-edit-save").offsetParent!==null){e.preventDefault();LiveComposer.Builder.UI.CModalWindow({title:DSLCString.str_refresh_title,content:DSLCString.str_refresh_descr,confirm:function(){window.location.reload()}})}}}function dslc_save_page(e){if(e.which==83&&(e.metaKey||e.ctrlKey)){if(jQuery(".dslca-save-composer-hook").css("display")=="block"){dslc_save_composer();e.preventDefault();return false}}}function dslca_generate_error_report(e,o,s,d){var l="JavaScript error detected in a third-party plugin";if(o.match("wp-content/plugins/live-composer-page-builder/js")!=null){l="Live Composer returned JS error"}var i="";i+='<br /><strong style="color:#E55F5F;">'+l+"</strong><br />";i+=e+'<br /> File "'+o+'", line '+s+", char "+d+"<br />";if("undefined"!==typeof Storage){localStorage.setItem("js_errors_report",i)}}function dslca_update_report_log(){var e=document.getElementById("dslca-js-errors-report");var o=localStorage.getItem("js_errors_report");if(null!==o){e.value=o;localStorage.removeItem("js_errors_report");document.querySelector(".dslca-show-js-error-hook").setAttribute("style","visibility:visible")}}jQuery(document).on("editorFrameLoaded",function(){var a=jQuery;var e=a("div[data-hf]",LiveComposer.Builder.PreviewAreaDocument);var r="";e.each(function(e,o){var s=a(o).data("editing-link");var d=a(o).data("editing-type");var l=a(o).data("editing-label");var i=a(o).data("editing-sublabel");r+='<div class="dslc-hf-block-overlay"><a target="_blank" href="'+s+'" class="dslc-hf-block-overlay-button dslca-link">'+l+"</a>";if(i!==undefined){r+=' <span class="dslc-hf-block-overlay-text">'+i+"</span>"}r+="</div>";var t=document.createElement("div");t.innerHTML=r;o.append(t)})});"use strict";LiveComposer.Utils={addslashes:function(e){e=e.replace(/\\/g,"\\\\");e=e.replace(/\'/g,"\\'");e=e.replace(/\"/g,'\\"');e=e.replace(/\0/g,"\\0");return e},basename:function(e){return e.split(/[\\/]/).pop()},msieversion:function(){var e=window.navigator.userAgent;var o=e.indexOf("MSIE ");if(o>0||!!navigator.userAgent.match(/Trident.*rv\:11\./)){return parseInt(e.substring(o+5,e.indexOf(".",o)))}else{return false}},checkParams:function(e){if(!Array.isArray(e)){throw"Param is not array"}var o={integer:function(e){return isNaN(parseInt(e))},float:function(e){return isNaN(parseFloat(e))},string:function(e){return e!=null&&e!=undefined&&typeof e=="string"},array:function(e){return Array.isArray(e)},object:function(e){return typeof e=="object"}};e.map(function(e){if(!o[e[1]](e[0])){throw"Param "+e[0]+" is not "+e[1]}})},utf8_to_b64:function(e){return window.btoa(unescape(encodeURIComponent(e)))},b64_to_utf8:function(e){return decodeURIComponent(escape(window.atob(e)))},get_page_params:function(){return decodeURIComponent(window.location.search.slice(1)).split("&").reduce(function e(o,s){s=s.split("=");o[s[0]]=s[1];return o},{})},get_unique_id:function(){return Math.random().toString(32).slice(2)},update_module_property_raw:function(e,o,s){var d=e.getElementsByClassName("dslca-module-code")[0];var l=e.querySelector('.dslca-module-option-front[data-id="'+o+'"]');var i=d.value;i=JSON.parse(i);i[o]=s;i=JSON.stringify(i);d.value=i;d.innerHTML=i;l.value=s;l.innerHTML=s},update_section_property_raw:function(e,o,s){var d=e.getElementsByClassName("dslca-section-code")[0];var l=e.querySelector('.dslca-modules-section-settings input[data-id="'+o+'"]');var i=d.value;i=JSON.parse(i);i[o]=s;i=JSON.stringify(i);d.value=i;d.innerHTML=i;l.setAttribute("value",s);l.setAttribute("data-def",s)},publish:function(e,o){o=o?o:{};this.checkParams([[e,"string"],[o,"object"]]);jQuery(document).trigger({type:e,message:{details:o}});LiveComposer.Builder.PreviewAreaWindow.dslca_publish_event(e,o)}};"use strict";function dslc_dm_get_defaults(e){if(dslcDebug)console.log("dslc_dm_get_defaults");var o=e.find(".dslca-module-code").val();jQuery.post(DSLCAjax.ajaxurl,{action:"dslc-ajax-dm-module-defaults",dslc:"active",dslc_modules_options:o},function(e){jQuery(".dslca-prompt-modal textarea").val(e.output)})}function dslc_editable_content_gen_code(e){if(dslcDebug)console.log("dslc_editable_content_gen_code");if(undefined===e){return false}var o,s,d;o=e.closest(".dslc-module-front");s=e.html().trim().replace(/<textarea/g,"<lctextarea").replace(/<\/textarea/g,"</lctextarea");d=e.data("id");jQuery('.dslca-module-option-front[data-id="'+d+'"]',o).val(s)}function dslc_filter_textarea(e){if(dslcDebug)console.log("dslc_filter_textarea");if(undefined===e){return false}var o;o=e.trim().replace(/<textarea/g,"<lctextarea").replace(/<\/textarea/g,"</lctextarea");return o}window.onbeforeunload=function(){return};jQuery(document).ready(function(g){jQuery(document).on("change",".dslca-modules-section-edit-field",function(){var e,o,s,d,l,i,t,a,r,c,n;e=g(this);o=e.data("id");l=e.val();i=l;t=l+e.data("ext");a=e.data("css-rule");s=g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument);c=s;r=g('.dslca-modules-section-settings input[data-id="'+o+'"]',s);s.addClass("dslca-modules-section-change-made");if(e.hasClass("dslca-modules-section-edit-field-upload")){if(l&&l.length){l=g('.dslca-modules-section-settings input[data-id="dslca-img-url"]',s).val()}}if(a=="background-image"){l='url("'+l+'")';LiveComposer.Builder.PreviewAreaWindow.dslc_bg_video()}if(o=="bg_image_attachment"){s.removeClass("dslc-init-parallax")}if(o=="border-top"||o=="border-right"||o=="border-bottom"||o=="border-left"){var u=g('.dslca-modules-section-settings input[data-id="border_style"]').val();r=g('.dslca-modules-section-settings input[data-id="border"]',s);i="";var m=e.closest(".dslca-modules-section-edit-option-checkbox-wrapper");m.find(".dslca-modules-section-edit-field-checkbox").each(function(){if(g(this).is(":checked")){if(g(this).data("id")=="border-top"){i+="top "}else if(g(this).data("id")=="border-right"){i+="right "}else if(g(this).data("id")=="border-bottom"){i+="bottom "}else if(g(this).data("id")=="border-left"){i+="left "}}});if(e.is(":checked")){if(e.data("id")=="border-top"){s.css({"border-top-style":u})}else if(e.data("id")=="border-right"){s.css({"border-right-style":u})}else if(e.data("id")=="border-bottom"){s.css({"border-bottom-style":u})}else if(e.data("id")=="border-left"){s.css({"border-left-style":u})}}else{if(e.data("id")=="border-top"){s.css({"border-top-style":"hidden"})}else if(e.data("id")=="border-right"){s.css({"border-right-style":"hidden"})}else if(e.data("id")=="border-bottom"){s.css({"border-bottom-style":"hidden"})}else if(e.data("id")=="border-left"){s.css({"border-left-style":"hidden"})}}}else if(e.hasClass("dslca-modules-section-edit-field-checkbox")){var p=g(this).closest(".dslca-modules-section-edit-option-checkbox-wrapper").find(".dslca-modules-section-edit-field-checkbox");var f="";p.each(function(){if(g(this).prop("checked")){f+=g(this).data("val")+" "}});var i=f;if(e.data("id")=="show_on"){if(f.indexOf("desktop")!==-1){g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslc-hide-on-desktop")}else{g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).addClass("dslc-hide-on-desktop")}if(f.indexOf("tablet")!==-1){g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslc-hide-on-tablet")}else{g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).addClass("dslc-hide-on-tablet")}if(f.indexOf("phone")!==-1){g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslc-hide-on-phone")}else{g(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).addClass("dslc-hide-on-phone")}}}else if(o=="bg_image_attachment"&&l=="parallax"||o=="type"){if(o=="bg_image_attachment"){s.addClass("dslc-init-parallax");LiveComposer.Builder.PreviewAreaWindow.dslc_parallax()}else if(o=="type"){if(l=="full"){s.addClass("dslc-full")}else{s.removeClass("dslc-full")}LiveComposer.Builder.PreviewAreaWindow.dslc_masonry()}}else if(o=="columns_spacing"){if(l=="nospacing"){s.addClass("dslc-no-columns-spacing")}else{s.removeClass("dslc-no-columns-spacing")}}else if(o=="custom_class"){}else if(o=="custom_id"){}else if(o=="bg_video"){jQuery(".dslc-bg-video video",s).remove();if(l&&l.length){var v=l;v=v.replace(".webm","");v=v.replace(".mp4","");jQuery(".dslc-bg-video-inner",s).html('<video><source type="video/mp4" src="'+v+'.mp4" /><source type="video/webm" src="'+v+'.webm" /></video>');LiveComposer.Builder.PreviewAreaWindow.dslc_bg_video()}}else if(o=="bg_image_thumb"){if(i=="enabled"){if(jQuery("#dslca-post-data-thumb").length){var h="url('"+jQuery("#dslca-post-data-thumb").val()+"')";c.css(a,h)}}else if(i=="disabled"){c.css(a,"none")}}else{if(e.data("css-element")){c=jQuery(e.data("css-element"),s)}a=a.replace(/ /g,"").split(",");var _;if(null!=e.data("ext")){_=t}else{_=l}for(var y=0;y<a.length;y++){c.css(a[y],_)}}r.val(i);if(!LiveComposer.Builder.Flags.generate_code_after_row_changed)return false});jQuery(document).on("blur",".dslc-editable-area",function(e){var o=g(this).closest(".dslc-module-front");var s=g(this).data("dslc-option-id");var d=g(this).html();jQuery('.dslca-module-options-front textarea[data-id="'+s+'"]',o).val(d);dslc_module_output_altered()});jQuery(document).on("change",".dslca-module-edit-field",function(){if(dslcDebug)console.log("on change event for .dslca-module-edit-field");var e="",o="",l=jQuery(this),s=l.data("id"),d=l.closest(".dslca-module-edit-option"),i=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument),t=i.data("dslc-module-id"),a=jQuery(".dslca-module-options-front textarea",i);i.addClass("dslca-module-change-made");if(d.hasClass("dslca-module-edit-option-select")||d.hasClass("dslca-module-edit-option-checkbox")){dslc_module_options_hideshow_tabs()}if(jQuery(this).closest(".dslca-module-edit-option").data("refresh-on-change")=="active"){if(d.find(".dslca-module-edit-option-checkbox-wrapper").length){var r=jQuery('input[type="checkbox"]',d);r.each(function(){if(g(this).prop("checked")){e=e+jQuery(this).val()+" "}})}else if(l.hasClass("dslca-module-edit-option-radio")){var e=jQuery(".dslca-module-edit-field:checked",l).val()}else{var e=l.val();if(s=="orientation"&&e=="horizontal"){var c=jQuery(".dslca-module-edit-option-thumb_width .dslca-module-edit-field");c.val("40").trigger("change")}else if(s=="orientation"&&e=="vertical"){var c=jQuery(".dslca-module-edit-option-thumb_width .dslca-module-edit-field");c.val("100").trigger("change")}}e=dslc_filter_textarea(e);jQuery('.dslca-module-options-front textarea[data-id="'+s+'"]',i).val(e);jQuery(".dslca-container-loader").show();dslc_module_output_altered(function(){jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument).addClass("dslca-module-change-made");if(s=="css_load_preset"&&!jQuery("body").hasClass("dslca-new-preset-added")){dslc_module_options_show(t);jQuery(".dslca-container-loader").hide()}else{jQuery(".dslca-container-loader").hide()}jQuery("body").removeClass("dslca-new-preset-added");LiveComposer.Utils.publish("LC.moduleChange",{moduleId:t,optionID:s,optionVal:l.val()})})}else{if(l.hasClass("dslca-module-edit-field-font")){var n=l.val();n=n+":400,100,200,300,500,600,700,800,900";var u=l.data("affect-on-change-el");var m=l.data("affect-on-change-rule");var p=l.val();var f=p;var v=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);if(l.val().length&&dslcGoogleFontsArray.indexOf(l.val())!==-1){document.getElementById("page-builder-frame").contentWindow.WebFont.load({google:{families:[n]},active:function(e,o){if(jQuery(".dslca-font-loading").closest(".dslca-module-edit-field-font-next").length){jQuery(".dslca-font-loading").removeClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-spin").addClass("dslc-icon-chevron-right")}else{jQuery(".dslca-font-loading").removeClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-spin").addClass("dslc-icon-chevron-left")}var s=u.split(",");var d="#"+v[0].id+" "+s.join(", #"+v[0].id+" ")+" {"+m+": "+p+"}";LiveComposer.Builder.Helpers.processInlineStyleTag({context:l,rule:m,elems:u,styleContent:d})},inactive:function(e,o){if(jQuery(".dslca-font-loading").closest(".dslca-module-edit-field-font-next").length){jQuery(".dslca-font-loading").removeClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-spin").addClass("dslc-icon-chevron-right")}else{jQuery(".dslca-font-loading").removeClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-spin").addClass("dslc-icon-chevron-left")}}})}else{setTimeout(function(){if(jQuery(".dslca-font-loading.dslca-module-edit-field-font-next").length){jQuery(".dslca-font-loading").removeClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-spin").addClass("dslc-icon-chevron-right")}else{jQuery(".dslca-font-loading").removeClass("dslca-font-loading").find(".dslca-icon").removeClass("dslc-icon-spin").addClass("dslc-icon-chevron-left")}var e=u.split(",");var o="#"+v[0].id+" "+e.join(", #"+v[0].id+" ")+" {"+m+": "+p+"}";LiveComposer.Builder.Helpers.processInlineStyleTag({context:l,rule:m,elems:u,styleContent:o})},100)}}else if(l.hasClass("dslca-module-edit-field-checkbox")){var r=jQuery('input[type="checkbox"]',d);r.each(function(){if(jQuery(this).prop("checked")){e=e+"solid ";o=o+g(this).val()+" "}else{e=e+"none "}})}if(!l.hasClass("dslca-module-edit-field-font")&&l.data("affect-on-change-el")!=null&&l.data("affect-on-change-rule")!=null){var h=l.data("ext")||"";var u=l.data("affect-on-change-el");var m=l.data("affect-on-change-rule");var p=l.val();var f=p;if(l.hasClass("dslca-module-edit-field-checkbox")){p=e;f=o}if(l.hasClass("dslca-module-edit-field-image")){p='url("'+p+'")'}if(null!==p&&p.length<1&&(m=="background-color"||m=="background")){p="transparent"}m.split(",").forEach(function(e){e=e.replace(/\s+/g,"");var o=jQuery(".dslca-module-being-edited",LiveComposer.Builder.PreviewAreaDocument);var s=u.split(",");var d="#"+o[0].id+" "+s.join(", #"+o[0].id+" ")+" {"+e+": "+p+h+"}";LiveComposer.Builder.Helpers.processInlineStyleTag({context:l,rule:e,elems:u,styleContent:d})})}var _="";if(s.indexOf("css_")!==-1){_=f}else{_=l.val()}jQuery('.dslca-module-option-front[data-id="'+s+'"]',i).val(_);LiveComposer.Utils.publish("LC.moduleChange",{moduleId:i[0].id,optionID:s,optionVal:f||l.val()})}})});jQuery(document).ready(function(e){var i;jQuery(document).on("click",".dslca-module-edit-field-image-add-hook, .dslca-modules-section-edit-field-image-add-hook",function(){var s=jQuery(this);if(s.hasClass("dslca-module-edit-field-image-add-hook")){var d=s.siblings(".dslca-module-edit-field-image");var l=s.siblings(".dslca-module-edit-field-image-remove-hook")}else{var d=s.siblings(".dslca-modules-section-edit-field-upload");var l=s.siblings(".dslca-modules-section-edit-field-image-remove-hook")}var e=false;i=wp.media.frames.file_frame=wp.media({title:"Choose Image",button:{text:"Confirm"},multiple:e});i.on("select",function(){var e=i.state().get("selection").first().toJSON();d.val(e.id);var o=s.parent().attr("data-id");if(e.alt!=""&&o=="image"){jQuery('.dslca-module-edit-option-image_alt input[data-id="image_alt"]').val(e.alt)}if(e.title!=""&&o=="image"){jQuery('.dslca-module-edit-option-image_title input[data-id="image_title"]').val(e.title)}jQuery(".dslca-modules-section-being-edited",LiveComposer.Builder.PreviewAreaDocument).find('.dslca-modules-section-settings input[data-id="dslca-img-url"]').val(e.url);d.trigger("change");s.hide();l.show()});i.open()});jQuery(document).on("click",".dslca-module-edit-field-image-remove-hook, .dslca-modules-section-edit-field-image-remove-hook",function(){var e=jQuery(this);if(e.hasClass("dslca-module-edit-field-image-remove-hook")){var o=e.siblings(".dslca-module-edit-field-image");var s=e.siblings(".dslca-module-edit-field-image-add-hook")}else{var o=e.siblings(".dslca-modules-section-edit-field-upload");var s=e.siblings(".dslca-modules-section-edit-field-image-add-hook")}o.val("").trigger("change");var d=e.parent().attr("data-id");if(d=="image"){jQuery(".dslca-module-edit-option-image_alt input").attr("value","").trigger("change");jQuery(".dslca-module-edit-option-image_alt input").attr("data-val-bckp","").trigger("change");jQuery(".dslca-module-edit-option-image_title input").attr("value","").trigger("change");jQuery(".dslca-module-edit-option-image_title input").attr("data-val-bckp","").trigger("change")}e.hide();s.show()});jQuery(document).on("click",".dslca-wp-editor-save-hook",function(){var e=jQuery(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument).closest(".dslc-module-front");if(typeof tinymce!="undefined"){if(jQuery("#wp-dslcawpeditor-wrap").hasClass("tmce-active")){var o=tinymce.get("dslcawpeditor");var s=o.getContent()}else{var s=jQuery("#dslcawpeditor").val()}jQuery(".dslca-wp-editor").hide();jQuery(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument).html(s);if(e.hasClass("dslc-module-handle-like-accordion")){jQuery(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument).siblings(".dslca-accordion-plain-content").val(s);var d=e.find(".dslc-accordion");LiveComposer.Builder.PreviewAreaWindow.dslc_accordion_generate_code(d)}else if(e.hasClass("dslc-module-handle-like-tabs")){jQuery(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument).siblings(".dslca-tab-plain-content").val(s);var l=e.find(".dslc-tabs");LiveComposer.Builder.PreviewAreaWindow.dslc_tabs_generate_code(l)}dslc_editable_content_gen_code(jQuery(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument));jQuery(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-wysiwyg-active")}else{console.info("Live Composer: TinyMCE is undefined.")}});jQuery(document).on("click",".dslca-wp-editor-cancel-hook",function(){e(".dslca-wp-editor").hide();e(".dslca-wysiwyg-active",LiveComposer.Builder.PreviewAreaDocument).removeClass("dslca-wysiwyg-active")})});
js/builder/builder.codegeneration.functions.js CHANGED
@@ -256,10 +256,8 @@ function dslc_generate_section_code( theModulesSection ) {
256
 
257
  // Update dslc-modules-section-(not)empty classes
258
  if ( jQuery('.dslc-modules-area', modulesSection).length ) {
259
-
260
  modulesSection.removeClass('dslc-modules-section-empty').addClass('dslc-modules-section-not-empty');
261
  } else {
262
-
263
  modulesSection.removeClass('dslc-modules-section-not-empty').addClass('dslc-modules-section-empty');
264
  }
265
 
256
 
257
  // Update dslc-modules-section-(not)empty classes
258
  if ( jQuery('.dslc-modules-area', modulesSection).length ) {
 
259
  modulesSection.removeClass('dslc-modules-section-empty').addClass('dslc-modules-section-not-empty');
260
  } else {
 
261
  modulesSection.removeClass('dslc-modules-section-not-empty').addClass('dslc-modules-section-empty');
262
  }
263
 
js/builder/builder.modulearea.functions.js CHANGED
@@ -191,7 +191,7 @@ function dslc_modules_area_add( row ) {
191
  // Add class to body so we know it's in progress
192
  // jQuery('body', LiveComposer.Builder.PreviewAreaDocument).addClass('dslca-anim-in-progress');
193
 
194
- var output = '<div class="dslc-modules-area dslc-col dslc-12-col dslc-modules-area-empty " data-size="12">'+
195
  '<div class="dslca-modules-area-manage"> <div class="dslca-modules-area-manage-inner">'+
196
  '<span class="dslca-manage-action dslca-copy-modules-area-hook" title="Duplicate" ><span class="dslca-icon dslc-icon-copy">'+
197
  '</span></span> <span class="dslca-manage-action dslca-move-modules-area-hook" title="Drag to move" >'+
191
  // Add class to body so we know it's in progress
192
  // jQuery('body', LiveComposer.Builder.PreviewAreaDocument).addClass('dslca-anim-in-progress');
193
 
194
+ var output = '<div class="dslc-modules-area dslc-modules-area-dnd dslc-col dslc-12-col dslc-modules-area-empty " data-size="12">'+
195
  '<div class="dslca-modules-area-manage"> <div class="dslca-modules-area-manage-inner">'+
196
  '<span class="dslca-manage-action dslca-copy-modules-area-hook" title="Duplicate" ><span class="dslca-icon dslc-icon-copy">'+
197
  '</span></span> <span class="dslca-manage-action dslca-move-modules-area-hook" title="Drag to move" >'+
js/builder/builder.row.class.js CHANGED
@@ -29,7 +29,7 @@ LiveComposer.Builder.Elements.CRow = function(elem) {
29
 
30
  this.sortable = jQuery( sortableContainer ).sortable({
31
  connectWith: '.dslc-modules-section-inner',
32
- items: ".dslc-modules-area",
33
  handle: '.dslca-move-modules-area-hook:not(".dslca-action-disabled")',
34
  placeholder: 'dslca-modules-area-placeholder',
35
  cursorAt: { top: 0, left: 0 },
29
 
30
  this.sortable = jQuery( sortableContainer ).sortable({
31
  connectWith: '.dslc-modules-section-inner',
32
+ items: ".dslc-modules-area-dnd",
33
  handle: '.dslca-move-modules-area-hook:not(".dslca-action-disabled")',
34
  placeholder: 'dslca-modules-area-placeholder',
35
  cursorAt: { top: 0, left: 0 },
js/builder/builder.sectionscontainer.class.js CHANGED
@@ -9,7 +9,7 @@ LiveComposer.Builder.Elements.CSectionsContainer = function(elem) {
9
  var self = this;
10
 
11
  this.sortable = jQuery(elem).sortable({
12
- items: ".dslc-modules-section",
13
  handle: '.dslca-move-modules-section-hook:not(".dslca-action-disabled")',
14
  placeholder: 'dslca-modules-section-placeholder',
15
  tolerance : 'intersect',
9
  var self = this;
10
 
11
  this.sortable = jQuery(elem).sortable({
12
+ items: ".dslc-modules-section-dnd",
13
  handle: '.dslca-move-modules-section-hook:not(".dslca-action-disabled")',
14
  placeholder: 'dslca-modules-section-placeholder',
15
  tolerance : 'intersect',
modules/image/module.php CHANGED
@@ -879,7 +879,7 @@ class DSLC_Image extends DSLC_Module {
879
 
880
 
881
  $parsed = parse_url( $anchor_href );
882
- if ( '/' === $anchor_href || ! empty( $parsed['scheme'] ) ) {
883
  $image_url = $anchor_href;
884
  } else {
885
  $image_url = '//' . ltrim( $anchor_href, '/' );
@@ -893,8 +893,13 @@ class DSLC_Image extends DSLC_Module {
893
  $img_srcset = wp_get_attachment_image_srcset( $img_id, 'full' );
894
  $img_sizes = wp_get_attachment_image_sizes( $img_id, 'full' );
895
 
896
- $srcset = 'srcset="' . esc_attr( $img_srcset ) . '"';
897
- $sizes = 'sizes="' . esc_attr( $img_sizes ) . '"';
 
 
 
 
 
898
  }
899
 
900
  ?>
879
 
880
 
881
  $parsed = parse_url( $anchor_href );
882
+ if ( '/' === $anchor_href || '#' === $anchor_href || ! empty( $parsed['scheme'] ) ) {
883
  $image_url = $anchor_href;
884
  } else {
885
  $image_url = '//' . ltrim( $anchor_href, '/' );
893
  $img_srcset = wp_get_attachment_image_srcset( $img_id, 'full' );
894
  $img_sizes = wp_get_attachment_image_sizes( $img_id, 'full' );
895
 
896
+ if ( $img_srcset ) {
897
+ $srcset = 'srcset="' . esc_attr( $img_srcset ) . '"';
898
+ }
899
+
900
+ if ( $img_srcset && $img_sizes ) {
901
+ $sizes = 'sizes="' . esc_attr( $img_sizes ) . '"';
902
+ }
903
  }
904
 
905
  ?>
modules/infobox/module.php CHANGED
@@ -1283,6 +1283,35 @@ class DSLC_Info_Box extends DSLC_Module {
1283
  'section' => 'styling',
1284
  'tab' => __( 'Title', 'live-composer-page-builder' ),
1285
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1286
  array(
1287
  'label' => __( 'Letter Spacing', 'live-composer-page-builder' ),
1288
  'id' => 'css_title_letter_spacing',
1283
  'section' => 'styling',
1284
  'tab' => __( 'Title', 'live-composer-page-builder' ),
1285
  ),
1286
+ array(
1287
+ 'label' => __( 'Text Transform', 'live-composer-page-builder' ),
1288
+ 'id' => 'css_title_text_transform',
1289
+ 'std' => 'none',
1290
+ 'type' => 'select',
1291
+ 'choices' => array(
1292
+ array(
1293
+ 'label' => __( 'None', 'live-composer-page-builder' ),
1294
+ 'value' => 'none',
1295
+ ),
1296
+ array(
1297
+ 'label' => __( 'Capitalize', 'live-composer-page-builder' ),
1298
+ 'value' => 'capitalize',
1299
+ ),
1300
+ array(
1301
+ 'label' => __( 'Uppercase', 'live-composer-page-builder' ),
1302
+ 'value' => 'uppercase',
1303
+ ),
1304
+ array(
1305
+ 'label' => __( 'Lowercase', 'live-composer-page-builder' ),
1306
+ 'value' => 'lowercase',
1307
+ ),
1308
+ ),
1309
+ 'refresh_on_change' => false,
1310
+ 'affect_on_change_el' => '.dslc-info-box-title h4',
1311
+ 'affect_on_change_rule' => 'text-transform',
1312
+ 'section' => 'styling',
1313
+ 'tab' => __( 'Title', 'live-composer-page-builder' ),
1314
+ ),
1315
  array(
1316
  'label' => __( 'Letter Spacing', 'live-composer-page-builder' ),
1317
  'id' => 'css_title_letter_spacing',
modules/logo/module.php CHANGED
@@ -665,12 +665,16 @@ class DSLC_Logo extends DSLC_Module {
665
  $img_srcset = wp_get_attachment_image_srcset( $site_logo_id, 'full' );
666
  $img_sizes = wp_get_attachment_image_sizes( $site_logo_id, 'full' );
667
 
668
- $srcset = 'srcset="' . esc_attr( $img_srcset ) . '"';
669
- $sizes = 'sizes="' . esc_attr( $img_sizes ) . '"';
 
 
 
 
 
670
  }
671
 
672
  ?>
673
-
674
  <?php if ( ! empty( $options['link_url'] ) ) : ?>
675
  <a href="<?php echo $anchor_href; ?>" target="<?php echo $anchor_target; ?>">
676
  <?php endif; ?>
665
  $img_srcset = wp_get_attachment_image_srcset( $site_logo_id, 'full' );
666
  $img_sizes = wp_get_attachment_image_sizes( $site_logo_id, 'full' );
667
 
668
+ if ( $img_srcset ) {
669
+ $srcset = 'srcset="' . esc_attr( $img_srcset ) . '"';
670
+ }
671
+
672
+ if ( $img_srcset && $img_sizes ) {
673
+ $sizes = 'sizes="' . esc_attr( $img_sizes ) . '"';
674
+ }
675
  }
676
 
677
  ?>
 
678
  <?php if ( ! empty( $options['link_url'] ) ) : ?>
679
  <a href="<?php echo $anchor_href; ?>" target="<?php echo $anchor_target; ?>">
680
  <?php endif; ?>
modules/shortcode/module.php CHANGED
@@ -2882,27 +2882,21 @@ class DSLC_Shortcode extends DSLC_Module {
2882
  }
2883
 
2884
  ?>
2885
-
2886
  <div class="dslc-module-shortcode">
 
2887
 
2888
- <?php
2889
-
2890
- if ( empty( $options['content'] ) ) {
2891
- $output_content = '<div class="dslc-notification dslc-red">' . __( 'Please add your shortcode in the module settings.', 'live-composer-page-builder' ) . '</div>';
2892
- } elseif ( $render_code ) {
2893
- $output_content = stripslashes( $options['content'] );
2894
- $output_content = $output_content;
2895
- } else {
2896
- $output_content = '<div class="dslc-notification dslc-green">' . __( 'Save and refresh the page to display the module safely.', 'live-composer-page-builder' ) . '</div>';
2897
- }
2898
-
2899
- echo apply_filters( 'dslc_text_block_render', $output_content );
2900
-
2901
- ?>
2902
 
 
 
2903
  </div>
2904
-
2905
  <?php
2906
-
2907
  }
2908
  }
2882
  }
2883
 
2884
  ?>
 
2885
  <div class="dslc-module-shortcode">
2886
+ <?php
2887
 
2888
+ if ( empty( $options['content'] ) ) {
2889
+ $output_content = '<div class="dslc-notification dslc-red">' . __( 'Please add your shortcode in the module settings.', 'live-composer-page-builder' ) . '</div>';
2890
+ } elseif ( $render_code ) {
2891
+ $output_content = stripslashes( $options['content'] );
2892
+ $output_content = $output_content;
2893
+ } else {
2894
+ $output_content = '<div class="dslc-notification dslc-green">' . __( 'Save and refresh the page to display the module safely.', 'live-composer-page-builder' ) . '</div>';
2895
+ }
 
 
 
 
 
 
2896
 
2897
+ echo apply_filters( 'dslc_text_block_render', $output_content );
2898
+ ?>
2899
  </div>
 
2900
  <?php
 
2901
  }
2902
  }
modules/tp-gallery-slider/module.php CHANGED
@@ -1206,7 +1206,7 @@ class DSLC_TP_Gallery_Slider extends DSLC_Module {
1206
 
1207
  $img_srcset = wp_get_attachment_image_srcset( $gallery_image, 'full' );
1208
  $img_sizes = wp_get_attachment_image_sizes( $gallery_image, 'full' );
1209
-
1210
  $srcset = 'srcset="' . esc_attr( $img_srcset ) . '"';
1211
  $sizes = 'sizes="' . esc_attr( $img_sizes ) . '"';
1212
 
1206
 
1207
  $img_srcset = wp_get_attachment_image_srcset( $gallery_image, 'full' );
1208
  $img_sizes = wp_get_attachment_image_sizes( $gallery_image, 'full' );
1209
+
1210
  $srcset = 'srcset="' . esc_attr( $img_srcset ) . '"';
1211
  $sizes = 'sizes="' . esc_attr( $img_sizes ) . '"';
1212
 
modules/tp-project-slider/module.php CHANGED
@@ -988,7 +988,7 @@ class DSLC_TP_Project_Slider extends DSLC_Module {
988
 
989
  $img_srcset = wp_get_attachment_image_srcset( $project_image, 'full' );
990
  $img_sizes = wp_get_attachment_image_sizes( $project_image, 'full' );
991
-
992
  $srcset = 'srcset="' . esc_attr( $img_srcset ) . '"';
993
  $sizes = 'sizes="' . esc_attr( $img_sizes ) . '"';
994
 
988
 
989
  $img_srcset = wp_get_attachment_image_srcset( $project_image, 'full' );
990
  $img_sizes = wp_get_attachment_image_sizes( $project_image, 'full' );
991
+
992
  $srcset = 'srcset="' . esc_attr( $img_srcset ) . '"';
993
  $sizes = 'sizes="' . esc_attr( $img_sizes ) . '"';
994
 
readme.txt CHANGED
@@ -1,9 +1,9 @@
1
- === Page Builder: Live Composer – drag and drop website builder (visual front end site editor) ===
2
  Contributors: LiveComposer
3
- Tags: page builder, visual composer, visual editor, visual builder, drag and drop builder, landing page builder, frontend editor, frontend builder, landing pages, landing page, website builder, theme builder, site-builder, layout builder, drag-and-drop, builder, editor, responsive, mobile, layout, front end, frontend, Page Layout, squeeze page, page builder plugin, drag-n-drop page builder
4
  Requires at least: 4.7
5
  Tested up to: 5.2
6
- Stable tag: 1.4.4
7
  License: GPLv3
8
 
9
  Front-end page builder for WordPress with drag and drop editing. Build PRO responsive websites and landing pages. Visually customize any page element.
@@ -12,70 +12,45 @@ Front-end page builder for WordPress with drag and drop editing. Build PRO respo
12
 
13
  = 👓 Create Stunning Websites Visually =
14
 
15
- [Live Composer page builder](https://livecomposerplugin.com/) is complete and feature-reach website builder for WordPress. In our page builder, you get most of the features for free paying only for [Woo-Commerce support](https://livecomposerplugin.com/downloads/woocommerce-page-builder/?utm_source=wp-admin&utm_medium=changelog&utm_campaign=woo-integration) and [advanced integrations](https://livecomposerplugin.com/downloads/extensions/?utm_source=wp-admin&utm_medium=changelog&utm_campaign=add-ons) (ACF, CPT, Mega Menus). Create stunning custom page designs in real-time. Drag & drop front-end editing is a perfectly intuitive way to create and customize great looking websites.
16
 
17
- Do it yourself with easy content editing in real-time. Save your money on expensive coding and customization services. No tech skills needed to create professional websites in our page builder. Live Composer is a great tool for web designers, digital marketing specialists, WordPress theme developers and freelance consultants. Learn our page builder once and cut your website building time with every next project. Create an exceptional landing page, portfolio or fully featured pro website for your client.
18
 
19
  = 🏆 Over 50,000 Site Owners Chose Live Composer page builder =
20
 
21
- You can trust our plugin. 100% open source page builder backed by the experienced team of web developers. Our page builder on the market for more than 2 years. All the major bugs already fixed and new updates released regularly. Every day our developers work on code improvements and new features. With a purchase of any [premium extension](https://livecomposerplugin.com/downloads/extensions/?utm_source=wp-admin&utm_medium=changelog&utm_campaign=add-ons) you also getting access to our exceptional one-to-one support.
22
-
23
- = 📙 Our Page Builder comes with an [extensive documentation](https://livecomposer.help/), but you don't need it =
24
-
25
- Site design customization or page layout changes shouldn't be difficult or expensive. Our page builder is easy to use without reading [any documentation](https://livecomposer.help/). You'll be building beautiful custom WordPress site designs in no time. Create multi-media rich pages with very little effort: add new sections, rearrange columns, and add media from the same screen. It's a perfect solution for ALL users. No technical skills required.
26
-
27
- = ⏳ Create Custom Page Layouts in Minutes =
28
-
29
- Live Composer page builder is a simple but very powerful [WordPress site builder](https://livecomposerplugin.com/). Customize every little detail on your website or build stunning custom pages from scratch.
30
-
31
- = 🎯 Well Integrated With WordPress =
32
-
33
- Our page builder works with works with any standard compliant WordPress theme. It's fully compatible with other plugins like Yoast WP SEO or contact form builders. We also have a [marketplace with free and premium themes](https://livecomposerplugin.com/themes/) created especially for Live Composer.
34
-
35
- = ♻ No Code Left Behind When the Plugin Deactivated =
36
-
37
- Unlike other page builders, Live Composer doesn't leave behind the horrible amount of shortcodes when the plugin deactivated. It's not a commitment to a single plugin. We don't lock you. It's easy to start using any other page builder without a need to remove all the custom shortcodes before implementing a new solution.
38
-
39
- = ⭐ 100% Open Source Page Builder =
40
-
41
- Previously a premium plugin, Live Composer page builder is now a free fully functional plugin. Actively developed by [professional web developers](https://livecomposerplugin.com/) it has a bright future for years to come.
42
-
43
- = 🙈 No Coding Skills Required =
44
-
45
- Anyone can build pro website with Live Composer page builder. No coding or technical skills required. Our site builder will generate all the code for you.
46
-
47
- = 🌀 Export/Import Sections, Layouts or while Pages =
48
-
49
- Export any page section or the whole page. Reuse layout or page design you created.
50
 
51
  = 📱 Mobile Responsive Page Builder =
52
 
53
  It's easy to create responsive websites in our page builder. You can customize the responsive presentation of any page element to make it looks perfect on all mobile devices, ensuring your site is mobile-ready.
54
 
 
 
 
55
 
56
  == Installation ==
57
 
58
- Install and Activate our page builder from your WordPress admin as any other plugin
59
 
60
  == Frequently Asked Questions ==
61
 
62
- = How to I activate the page builder on a page? =
63
 
64
- When you visit a page you'll see a green "activate editor" button in the bottom right corner, click that and the page will reload with page builder ready to use.
65
 
66
  = Why is the "activate editor" button missing from the homepage =
67
 
68
- In most of the cases, this is because the homepage is not a real WordPress page, it's custom content generated by the theme's index.php. Publish a new page and set it as the homepage ( WP Admin > Settings > Reading > Front Page ). Now you can use page builder on the homepage too.
69
 
70
  == Screenshots ==
71
 
72
- 1. Page builder in editing mode
73
 
74
  == Changelog ==
75
 
76
- ⭐⭐⭐ NEW PLUGIN: STYLIST – ADDITIONAL STYLING FOR ANY SITE ELEMENT [ https://wordpress.org/plugins/stylist/ ]
77
 
78
- = FOUND A BUG? =
79
  * 🐛 [Please, report any bugs on GitHub](https://github.com/livecomposer/live-composer-page-builder/issues/)
80
  * ⌛ [You can download any previous version here](https://github.com/live-composer/live-composer-page-builder/releases)
81
 
@@ -83,6 +58,9 @@ In most of the cases, this is because the homepage is not a real WordPress page,
83
  * 🦊 [Check out our WooCommerce Page Builder Extension](https://livecomposerplugin.com/downloads/woocommerce-page-builder/?utm_source=wp-admin&utm_medium=changelog&utm_campaign=woo-integration)
84
  * 👀 [We keep updating and improving our extensions pack](https://livecomposerplugin.com/downloads/extensions/?utm_source=wp-admin&utm_medium=changelog&utm_campaign=add-ons) ACF + CPT + MegaMenu + 9 more add-ons.
85
 
 
 
 
86
  = 1.4.4 - May 23rd 2019 =
87
  * 🕷 Bug: WordPress automatically create a page when defining the image title in LC.
88
  * 🆕 New text shortcode: [dslc_bloghome] – Outputs the blog index page URL ( home_url() ).
@@ -106,1879 +84,3 @@ In most of the cases, this is because the homepage is not a real WordPress page,
106
 
107
  = Improved: =
108
  * Issue [#966](https://github.com/live-composer/live-composer-page-builder/issues/966): Delete Advertising Bar
109
-
110
- = 1.4 - December 11th 2018 =
111
-
112
- = Bug Fixes: =
113
- * Issue [#956](https://github.com/live-composer/live-composer-page-builder/issues/956): Meta module comment URL doesn't link to the page comments
114
- * Issue [#948](https://github.com/live-composer/live-composer-page-builder/issues/948): Multiple CSS issues on RTL
115
- * Issue [#394](https://github.com/live-composer/live-composer-page-builder/issues/394): I can't drag and drop modules when I use a Load Page Design
116
- * Issue [#445](https://github.com/live-composer/live-composer-page-builder/issues/445): RTL issue
117
- * Issue [#248](https://github.com/live-composer/live-composer-page-builder/issues/248): LC editing mode is broken on archive pages without page id
118
-
119
- = Improved: =
120
- * Issue [#947](https://github.com/live-composer/live-composer-page-builder/issues/947): Improvement for the Navigation module disable option
121
- * Issue [#805](https://github.com/live-composer/live-composer-page-builder/issues/805): Plus and minus expanding icons for accordion module
122
- * Issue [#739](https://github.com/live-composer/live-composer-page-builder/issues/739): Posts ordering by author
123
- * Issue [#730](https://github.com/live-composer/live-composer-page-builder/issues/730): Add the category to the blog module meta
124
- * Issue [#356](https://github.com/live-composer/live-composer-page-builder/issues/356): Keep the footer at the bottom of the page when there is no content
125
- * Issue [#333](https://github.com/live-composer/live-composer-page-builder/issues/333): Add 'Enable/Disable Custom CSS' for all modules
126
- * Issue [#955](https://github.com/live-composer/live-composer-page-builder/issues/955): Add lists style on the Info Box content
127
- * Issue [#954](https://github.com/live-composer/live-composer-page-builder/issues/954): Add tags on the blog meta
128
- * Issue [#958](https://github.com/live-composer/live-composer-page-builder/issues/958): Make the coment form GDPR Compliance
129
- * Issue [#698](https://github.com/live-composer/live-composer-page-builder/issues/698): Galleries grid button
130
- * Issue [#590](https://github.com/live-composer/live-composer-page-builder/issues/590): Gallery elements button
131
- * Issue [#505](https://github.com/live-composer/live-composer-page-builder/issues/505): Improve parallax
132
- * Issue [#482](https://github.com/live-composer/live-composer-page-builder/issues/482): Change pagination text
133
- * Issue [#348](https://github.com/live-composer/live-composer-page-builder/issues/348): Make sure all the modules with images has alt tags option
134
-
135
- = New: =
136
- * Issue [#405](https://github.com/live-composer/live-composer-page-builder/issues/405): Add template for "Not Found" on search results
137
- * Issue [#373](https://github.com/live-composer/live-composer-page-builder/issues/373): Add possibility to create template for a particular taxonomy term
138
- * Issue [#951](https://github.com/live-composer/live-composer-page-builder/issues/951): Add new filter for module image
139
- * Issue [#920](https://github.com/live-composer/live-composer-page-builder/issues/920): Add filters to override default module outputs
140
- * Issue [#599](https://github.com/live-composer/live-composer-page-builder/issues/599): Add opacity control for modle text
141
- * Issue [#500](https://github.com/live-composer/live-composer-page-builder/issues/500): Add second orderby for module blog
142
- * Issue [#407](https://github.com/live-composer/live-composer-page-builder/issues/407): Add possibility to filter posts by tag for module blog
143
- * Issue [#387](https://github.com/live-composer/live-composer-page-builder/issues/387): Add caption for module gallery slider
144
- * Issue [#384](https://github.com/live-composer/live-composer-page-builder/issues/384): Add preloader for template loading
145
-
146
- = 1.3.18 - August 24th 2018 =
147
-
148
- = Bug Fixes: =
149
- * Issue [#935](https://github.com/live-composer/live-composer-page-builder/issues/935): Sticky row does not work with a smooth scrolling plugin.
150
- * Issue [#942](https://github.com/live-composer/live-composer-page-builder/issues/942): The problematic Woo Product module is removed since we have a full Woocommerce integration extension.
151
-
152
- = Improved: =
153
- * Issue [#721](https://github.com/live-composer/live-composer-page-builder/issues/721): Allow the Excerpts to have formatting tags.
154
- * Issue [#945](https://github.com/live-composer/live-composer-page-builder/issues/945): Added separator thickness option on custom posts module for responsive devices.
155
- * Issue [#942](https://github.com/live-composer/live-composer-page-builder/issues/927): Improvements for Tab and Accordion modules to allow third-party plugins shortcodes usage.
156
- * Issue [#875](https://github.com/live-composer/live-composer-page-builder/issues/875): Improvements for images on responsive devices.
157
-
158
- = New: =
159
- * Issue [#944](https://github.com/live-composer/live-composer-page-builder/issues/944): Added the Lightbox option for all custom posts listing modules.
160
- * Issue [#865](https://github.com/live-composer/live-composer-page-builder/issues/965): Added an option to set the default row vertical paddings.
161
-
162
- = 1.3.17 - August 3th 2018 =
163
-
164
- = Bug Fixes: =
165
- * Issue [#885](https://github.com/live-composer/live-composer-page-builder/issues/885): Live Composer code Import and Export.
166
- * Issue [#901](https://github.com/live-composer/live-composer-page-builder/issues/901): Cache not flushing on ajax save action.
167
-
168
- = Improved: =
169
- * Issue [#938](https://github.com/live-composer/live-composer-page-builder/issues/938): Activation process ( Live Composer Woocommerce Integration ).
170
- * Issue [#916](https://github.com/live-composer/live-composer-page-builder/issues/916): Margins styles for buttons on the Post module.
171
- * Improved the Blog module flexibility for ACF integration
172
-
173
- = New: =
174
- * Issue [#882](https://github.com/live-composer/live-composer-page-builder/issues/882): Option to delete the presets from modules.
175
-
176
- = 1.3.16 - July 6th 2018 =
177
-
178
- = Bug Fixes: =
179
- * Issue [#926](https://github.com/live-composer/live-composer-page-builder/issues/926): The left position of the Activation editor button
180
- * Issue [#925](https://github.com/live-composer/live-composer-page-builder/issues/925): Video background issue according to the new autoplay policy
181
- * Issue [#922](https://github.com/live-composer/live-composer-page-builder/issues/922): The "Load more" button label from pagination cannot be translated
182
- * Issue [#912](https://github.com/live-composer/live-composer-page-builder/issues/912): The container columns option overlap issue
183
- * Issue [#929](https://github.com/live-composer/live-composer-page-builder/issues/929): Testimonial avatar issue, a problem with custom posts borders
184
-
185
-
186
- = Improved: =
187
- * Issue [#930](https://github.com/live-composer/live-composer-page-builder/issues/930): Added ALT and TITLE attributes for images from Infobox modules
188
- * Issue [#841](https://github.com/live-composer/live-composer-page-builder/issues/841): Image Link field from Image module can use now subdomain paths
189
- * Issue [#744](https://github.com/live-composer/live-composer-page-builder/issues/744): The testimonials are removed from Post module to avoid the confusion. The Testimonials need to be used with the dedicated module
190
- * Issue [#913](https://github.com/live-composer/live-composer-page-builder/issues/913): New header should be Default if it's the only header
191
-
192
- = New: =
193
- * Issue [#833](https://github.com/live-composer/live-composer-page-builder/issues/833): Connection between projects and other custom posts (staff and partners)
194
- * Issue [#829](https://github.com/live-composer/live-composer-page-builder/issues/829): Added comments count in the "Blog module" meta
195
-
196
- = 1.3.15 - May 1th 2018 =
197
-
198
- = New: =
199
- * Issue [#908](https://github.com/live-composer/live-composer-page-builder/issues/908): Add the sticky feature to the rows.
200
-
201
- = Improved: =
202
- * Grouping the row settings
203
-
204
- = 1.3.14 - April 12th 2018 =
205
-
206
- = Bug Fixes: =
207
- * Issue [#902](https://github.com/live-composer/live-composer-page-builder/issues/902): Deactivate LC cache if popular caching plugins are active
208
- * Issue [#903](https://github.com/live-composer/live-composer-page-builder/issues/903): Improved section icons
209
-
210
- = 1.3.13 - March 22nd 2018 =
211
-
212
- = Bug Fixes: =
213
- * Issue [#902](https://github.com/live-composer/live-composer-page-builder/issues/902): Fixing bug introduced in the previous version. (Temporary disables detection of the other caching plugins).
214
-
215
-
216
- = 1.3.12 - March 21st 2018 =
217
-
218
- = Bug Fixes: =
219
- * Issue [#863](https://github.com/live-composer/live-composer-page-builder/issues/863): Cache not resetting properly preventing for the page to update
220
- * Issue [#895](https://github.com/live-composer/live-composer-page-builder/issues/895): The section icons cannot be selected when there is no padding set
221
- * Issue [#714](https://github.com/live-composer/live-composer-page-builder/issues/714): WordPress SEO by Yoast don't read the "Info box module"
222
-
223
- = Improved: =
224
- * Issue [#890](https://github.com/live-composer/live-composer-page-builder/issues/890): WooCommerce out of stock products
225
- * Issue [#889](https://github.com/live-composer/live-composer-page-builder/issues/889): Improve the module 'Title' for WooCommerce
226
- * Issue [#845](https://github.com/live-composer/live-composer-page-builder/issues/845): Deactivate LC cache if popular caching plugins are active
227
-
228
-
229
- = 1.3.11 - February 9th 2018 =
230
-
231
- In this update we improve compatibility with Yoast SEO plugin and our premium [WooCommerce Integration](https://livecomposerplugin.com/downloads/woocommerce-page-builder/?utm_source=wp-admin&utm_medium=changelog&utm_campaign=woo-integration). Added a possibility to create your custom SVG icons, and improved design controls for many default modules. Default caching engine works better as well.
232
-
233
- = Bug Fixes: =
234
- * Issue [#877](https://github.com/live-composer/live-composer-page-builder/issues/877): The category archive listing issue with the very first post ( Custom Post Type )
235
- * Issue [#873](https://github.com/live-composer/live-composer-page-builder/issues/873): Show/Hide Dependency
236
- * Issue [#860](https://github.com/live-composer/live-composer-page-builder/issues/860): A string from the Comment module cannot be translated
237
- * Issue [#852](https://github.com/live-composer/live-composer-page-builder/issues/852): Module Testimonials: Option 'Row Separator' don't work
238
- * Issue [#740](https://github.com/live-composer/live-composer-page-builder/issues/740): Broken select control in SLIDER module
239
- * Issue [#850](https://github.com/live-composer/live-composer-page-builder/issues/850): Broken shortcodes in the posts preview.
240
- * Issue [#847](https://github.com/live-composer/live-composer-page-builder/issues/847): Yoast Open Graph tags do not show on the posts powered by custom templates.
241
- * Issue [#846](https://github.com/live-composer/live-composer-page-builder/issues/846): Missing color transparency control for the text shadow block in the Text module.
242
- * Issue [#844](https://github.com/live-composer/live-composer-page-builder/issues/844): Broken cache engine when premium extensions enabled.
243
- * Issue [#840](https://github.com/live-composer/live-composer-page-builder/issues/840): Improve compatibility with our premium [WooCommerce Integration](https://livecomposerplugin.com/downloads/woocommerce-page-builder/?utm_source=wp-admin&utm_medium=changelog&utm_campaign=woo-integration).
244
-
245
- = Improved: =
246
- * Issue [#868](https://github.com/live-composer/live-composer-page-builder/issues/868): Module Testimonials: Add Logo and Icon
247
- * Issue [#867](https://github.com/live-composer/live-composer-page-builder/issues/867): Add arrows on the sides for modules ( post based )
248
- * Some editing iterface elements polished also removed unwated Google font calls.
249
- * Issue [#839](https://github.com/live-composer/live-composer-page-builder/issues/839): Add filter for display module options (useful for 3-rd party developers).
250
- * Issue [#838](https://github.com/live-composer/live-composer-page-builder/issues/838): Add action hooks for css-generation.php (useful for 3-rd party developers).
251
- * Issue [#799](https://github.com/live-composer/live-composer-page-builder/issues/799): Removed direct access to the footer/header templates.
252
-
253
- = New: =
254
- * Issue [#871](https://github.com/live-composer/live-composer-page-builder/issues/871): Add the ability to add icon SVG
255
- * Issue [#859](https://github.com/live-composer/live-composer-page-builder/issues/859): New options for modules
256
-
257
-
258
- = 1.3.9 - November 27th 2017 =
259
-
260
- = Bug Fixes: =
261
- * Issue [#836](https://github.com/live-composer/live-composer-page-builder/issues/836): Fixed: PHP 7.1 Compatibility
262
-
263
- = Improved: =
264
- * This update mainly has inner code changes to make it possible to extend Live Composer functionality with module packs. This update is required for latest versions of [Extensions Pack](https://livecomposerplugin.com/downloads/extensions/) and [WooCommerce Integration](https://livecomposerplugin.com/downloads/woocommerce-page-builder/) plugins to work properly.
265
-
266
- = 1.3.8.1 - November 16th 2017 =
267
-
268
- = Bug Fixes: =
269
- * Issue [#834](https://github.com/live-composer/live-composer-page-builder/issues/834): Fixed: Broken color picker in WordPress 4.9
270
- * Issue [#784](https://github.com/livecomposer/live-composer-page-builder/issues/784): Fixed: The search archive listing issue with the very first post
271
- * Issue [#830](https://github.com/live-composer/live-composer-page-builder/issues/830): Fixed: Header position description is not quite accurate
272
-
273
- = Improved: =
274
- Issue [#825](https://github.com/livecomposer/live-composer-page-builder/issues/825): Improve function 'dslc_get_archive_template_by_pt'
275
-
276
-
277
- = 1.3.7 - October 4th 2017 =
278
-
279
- = Bug Fixes: =
280
- * Issue [#804](https://github.com/livecomposer/live-composer-page-builder/issues/804): Fixed: Link is not correct on LC WordPress
281
- * Issue [#797](https://github.com/livecomposer/live-composer-page-builder/issues/797): Fixed: The filter buttons should not be visible on mobile
282
- * Issue [#787](https://github.com/livecomposer/live-composer-page-builder/issues/787): Fixed: The sticky/fixed header option is not working properly
283
- * Issue [#784](https://github.com/livecomposer/live-composer-page-builder/issues/784): Fixed: The category archive listing issue with the very first post
284
-
285
- = Thanks to the next contributors for helping with this update: =
286
-
287
- * [emingus](https://github.com/emingus)
288
-
289
-
290
-
291
-
292
-
293
-
294
-
295
-
296
- = 1.3.6 - September 19th 2017 =
297
-
298
- = Bug Fixes: =
299
- * Issue [#800](https://github.com/livecomposer/live-composer-page-builder/issues/800): Fixed: Archives listing template is broken
300
- * Issue [#796](https://github.com/livecomposer/live-composer-page-builder/issues/796): Fixed: WPML - Translate Header and Footer
301
- * Issue [#795](https://github.com/livecomposer/live-composer-page-builder/issues/795): Fixed: Module 'Comments Form' - Rename shortcode
302
-
303
-
304
-
305
-
306
-
307
-
308
-
309
-
310
- = 1.3.5 - September 8th 2017 =
311
-
312
- = Bug Fixes: =
313
- * Issue [#722](https://github.com/livecomposer/live-composer-page-builder/issues/722): Fixed notice of module 'Image'
314
- * Issue [#776](https://github.com/livecomposer/live-composer-page-builder/issues/776): Fixed issue on templates import
315
- * Issue [#777](https://github.com/livecomposer/live-composer-page-builder/issues/777): Fixed blog comments
316
-
317
- = New: =
318
- * Issue [#788](https://github.com/livecomposer/live-composer-page-builder/issues/788): Added filter for WPML
319
- * Issue [#788](https://github.com/livecomposer/live-composer-page-builder/issues/788): Added new icon for module 'Social Element'
320
-
321
- = Thanks to the next contributors for helping with this update: =
322
-
323
- * [lejardindeden](https://github.com/lejardindeden)
324
-
325
-
326
-
327
-
328
-
329
-
330
-
331
-
332
- = 1.3.4 - August 13th 2017 =
333
-
334
- = Bug Fixes: =
335
- * Issue [#760](https://github.com/livecomposer/live-composer-page-builder/issues/760): Fixed NAVIGATION module subnav styling settings
336
- * Issue [#762](https://github.com/livecomposer/live-composer-page-builder/issues/762): Fixed Header/Footer Editing Functionality
337
- * Issue [#763](https://github.com/livecomposer/live-composer-page-builder/issues/763): Add option for developers to filter controls with on/off toggle
338
- * Issue [#764](https://github.com/livecomposer/live-composer-page-builder/issues/764): Fixed issue with height ( Footer )
339
-
340
- * [You can download any previous version here](https://wordpress.org/plugins/live-composer-page-builder/advanced/)
341
- * If something isn't working as expected, please try to disable cache first and report a problem.You can disable the Live Composer caching feature from WP Admin > Live Composer > Settings > Performance > HTML/CSS caching.
342
-
343
-
344
-
345
-
346
-
347
-
348
-
349
-
350
- = 1.3.3 - August 9th 2017 =
351
-
352
- = Bug Fixes: =
353
- * Fixes the broken div wrappers in header/footers introduced in the previous version
354
- * Fixes a JS error that appears in the Menu Pro (no outerHide function)
355
- * Issue [#753](https://github.com/livecomposer/live-composer-page-builder/issues/753): Fixes a bug of pagination when the LC caching is active
356
- * Issue [#754](https://github.com/livecomposer/live-composer-page-builder/issues/754): Fixes a bug with the active menu style when the LC caching is active
357
- * Issue [#755](https://github.com/livecomposer/live-composer-page-builder/issues/755): Fixes the broken google map when the LC caching is active
358
- * Issue [#756](https://github.com/livecomposer/live-composer-page-builder/issues/756): Fixes a bug in builder.frontend.main.js
359
- * Issue [#757](https://github.com/livecomposer/live-composer-page-builder/issues/757): Fixes a bug with the header/footer editing overlay
360
-
361
- = Information about cache: =
362
-
363
- If have problems with the cache, you can disable the Live Composer caching feature from WP Admin > Live Composer > Settings > Performance > HTML/CSS caching.
364
-
365
-
366
-
367
-
368
-
369
-
370
-
371
-
372
- = 1.3.2.1 - July 25th 2017 =
373
-
374
- = New: =
375
- * Live Composer now comes with a simple object-based cache. It will use 2-5 times fewer server resources. Pages will load 3-5 times faster. You can clear cache or disable it completely in WP Admin > Live Composer > Performance > HTML/CSS caching.
376
-
377
- = Bug Fixes: =
378
- * Issue [#720](https://github.com/livecomposer/live-composer-page-builder/issues/720): Social icons do not space out from center
379
-
380
- = Improved: =
381
- * Code optimization for faster loading times and better performance.
382
- * Issue [#725](https://github.com/livecomposer/live-composer-page-builder/issues/725): Added "Edit in Live Composer" buttons (posts list + editing screen)
383
- * Issue [#722](https://github.com/livecomposer/live-composer-page-builder/issues/722): Module 'Image' Show message to the site admins only.
384
- * Issue [#717](https://github.com/livecomposer/live-composer-page-builder/issues/717): Removed the ordering criteria which don't belong to the module
385
- * Issue [#709](https://github.com/livecomposer/live-composer-page-builder/issues/709): Added 'Enable/Disable' custom CSS for the module Shortcode
386
- * Improved function dslc_icons_current_set
387
- * Improved builder.main.css
388
- * Module InfoBox - Improved the controls for the icon ( Tablet and Phone )
389
- * Removed unwanted console.log form js code
390
-
391
- = Thanks to the next contributors for helping with this update: =
392
-
393
- * [lejardindeden](https://github.com/lejardindeden)
394
- * [lukeperrie](https://github.com/lukeperrie)
395
-
396
-
397
-
398
-
399
-
400
-
401
-
402
-
403
- = 1.3.1 - May 31th 2017 =
404
-
405
- = Improved: =
406
- * Module Comments Form: Fixed Notice
407
- * Added new filters for developers to insert custom HTML before and after any header or footer.
408
- * Added new filters for developers to insert custom HTML before and after content.
409
- * Improve function lc_welcome
410
- * Improve function dslc_code_migration
411
-
412
-
413
-
414
-
415
-
416
-
417
-
418
-
419
- = 1.3 - April 25th 2017 =
420
-
421
- = Improved: =
422
- * Issue [#639](https://github.com/livecomposer/live-composer-page-builder/issues/639): New filter added for the developers to adjust display of the composer panels
423
- * Issue [#684](https://github.com/livecomposer/live-composer-page-builder/issues/684): Improved filter allowing to insert custom code before and after any module or section.
424
- * Issue [#680](https://github.com/livecomposer/live-composer-page-builder/issues/680): Text module: Added margin-bottom (paragraph) for Tablets and Phones
425
- * Issue [#673](https://github.com/livecomposer/live-composer-page-builder/issues/673): Improved 'help' control for modules and sections
426
- * Issue [#576](https://github.com/livecomposer/live-composer-page-builder/issues/576): Improved the comments form
427
- * Issue [#435](https://github.com/livecomposer/live-composer-page-builder/issues/435): Simplified settings for the template posts
428
- * Issue [#404](https://github.com/livecomposer/live-composer-page-builder/issues/404): When editing any template LC, it will send you back to the original post when closed
429
- * Issue [#302](https://github.com/livecomposer/live-composer-page-builder/issues/302): Image Module: ALT and TITLE attributes now synchronize with the ones set in WP Media library
430
-
431
-
432
-
433
-
434
-
435
-
436
-
437
-
438
- = 1.2.9 - April 12th 2017 =
439
-
440
- = Bug fixes: =
441
- * Issue [#648](https://github.com/livecomposer/live-composer-page-builder/issues/648): Module Tabs: Shortcodes are getting converted to html
442
- * Issue [#677](https://github.com/livecomposer/live-composer-page-builder/issues/677): Fixed SyntaxError: JSON.parse
443
- * Issue [#674](https://github.com/livecomposer/live-composer-page-builder/issues/674): Fixed bug SEO tab in the plugin settings
444
-
445
- = Thanks to the next contributors for helping with this update: =
446
-
447
- * [urbanimatic](https://github.com/urbanimatic)
448
-
449
-
450
-
451
-
452
-
453
-
454
-
455
-
456
- = 1.2.8 - April 11th 2017 =
457
-
458
- = Bug fixes: =
459
- * Issue [#659](https://github.com/livecomposer/live-composer-page-builder/issues/659): "Show on" feature is missing from the BLOG module
460
- * Issue [#646](https://github.com/livecomposer/live-composer-page-builder/issues/646): SHORTCODE module not displaying styling options in some cases
461
- * Issue [#623](https://github.com/livecomposer/live-composer-page-builder/issues/623): Issue with INFOBOX module in IE11
462
-
463
- = New: =
464
- * Issue [#638](https://github.com/livecomposer/live-composer-page-builder/issues/638): New SEO tab in the plugin settings to check how much it will cost to promote website in Google for particular keywords (you can hide this tab if you have/had any of our premium extensions installed).
465
- * Issue [#545](https://github.com/livecomposer/live-composer-page-builder/issues/545): Added Arabic, Thai and all other non-English languages available in Google Fonts directory.
466
- * Issue [#650](https://github.com/livecomposer/live-composer-page-builder/issues/650): Developers now can add info popup for controls in the section settings
467
-
468
- = Improved: =
469
- * Issue [#595](https://github.com/livecomposer/live-composer-page-builder/issues/595): Module presets: Added an option to refresh modules with design presets only after the page reload. It can be useful if you have too many modules with the same preset on the page. See *WP Admin > Live Composer > Settings > Performance* panel.
470
- * Issue [#528](https://github.com/livecomposer/live-composer-page-builder/issues/528): Show submenu dropdown when editing SUBNAV in navigation module
471
- * Issue [#661](https://github.com/livecomposer/live-composer-page-builder/issues/661): Improve filters for developers to insert custom HTML before and after any module or section.
472
- * Add BG Image Size option to Text Module
473
-
474
- = Thanks to the next contributors for helping with this update: =
475
-
476
- * [angeltrendy](https://github.com/angeltrendy)
477
- * [HYBargouth](https://github.com/HYBargouth)
478
- * [menachemshapiro](https://github.com/menachemshapiro)
479
- * [jamesdlow](https://github.com/jamesdlow)
480
-
481
-
482
-
483
-
484
-
485
-
486
-
487
-
488
- = 1.2.7 - March 27th 2017 =
489
-
490
- = Bug fixes: =
491
- * Issue [#645](https://github.com/livecomposer/live-composer-page-builder/issues/645): Fixed bug in THE CONTENT and HTML modules (can't open Functionality tab)
492
- * Issue [#640](https://github.com/livecomposer/live-composer-page-builder/issues/640): Broken border color = active control in the navigation module
493
- * Issue [#628](https://github.com/livecomposer/live-composer-page-builder/issues/628): Clicking on the download button now downloads a file instead of opening it in the new tab.
494
- * Issue [#598](https://github.com/livecomposer/live-composer-page-builder/issues/598): Border controls are broken for active items in the Posts Grid > Filters
495
- * Issue [#555](https://github.com/livecomposer/live-composer-page-builder/issues/555): Woo Products Carousel showing part of the previous image
496
-
497
- = New: =
498
- * Issue [#642](https://github.com/livecomposer/live-composer-page-builder/issues/642): Added a new filters for developers to insert custom HTML before and after any module or section.
499
-
500
- = Improved: =
501
- * Issue [#626](https://github.com/livecomposer/live-composer-page-builder/issues/626): Possibility to hide promo messages panel in the Live Composer.
502
-
503
- = Thanks to the next contributors for helping with this update: =
504
-
505
- * [Silcarus](https://github.com/Silcarus)
506
- * [Janki Gajera](https://github.com/jgajera)
507
- * [ruut95](https://github.com/ruut95)
508
-
509
-
510
-
511
-
512
-
513
-
514
-
515
-
516
- = 1.2.6 - March 14th 2017 =
517
-
518
- = Bug fixes: =
519
-
520
- * Issue [#630](https://github.com/livecomposer/live-composer-page-builder/issues/630): Custom setting panels in WP Admin now render properly settings for extensions (used by developers who create extensions for Live Composer)
521
- * Issue [#591](https://github.com/livecomposer/live-composer-page-builder/issues/591): Module presets: Heading URL should not be copied in style presets between modules.
522
- * Issue [#584](https://github.com/livecomposer/live-composer-page-builder/issues/584): Module presets: Problem with styling presets and default values (Social Links Module + Presets)
523
- * Issue [#621](https://github.com/livecomposer/live-composer-page-builder/issues/621): Module Gallery slider: The "Display the pictures from" feature are limited to few options.
524
-
525
- = Thanks to the next contributors for helping with this update: =
526
-
527
- * [delorimier](https://github.com/delorimier)
528
- * [Slobodan Kustrimovic](https://github.com/BobaWebDev)
529
- * [Karen Totten](https://github.com/ktotten)
530
-
531
-
532
-
533
-
534
-
535
-
536
-
537
-
538
- = 1.2.5 - February 28th 2017 =
539
-
540
- = New: =
541
-
542
- * Added unique ID for every section. In the future updates it will help to improve the plugin performance.
543
- * Extension developers now have possibility to create description for the plugin setting panels
544
- * Added notice in the standard WP Editor to warn users to not make changes in the back-end.
545
- * New Shortcode module.
546
-
547
- = Improved: =
548
-
549
- * Added more margin options to the CONTENT module.
550
- * Issue [#589](https://github.com/livecomposer/live-composer-page-builder/issues/589): Minor optimization in the code generation functions
551
- * Issue [#577](https://github.com/livecomposer/live-composer-page-builder/issues/577): Improved editor messages: added PHP class
552
- * Issue [#604](https://github.com/livecomposer/live-composer-page-builder/issues/604): Improve function the_edit_template_link and button 'Disable Editor'
553
-
554
- = Bug fixes: =
555
-
556
- * Issue [#587](https://github.com/livecomposer/live-composer-page-builder/issues/587): Fixed a broken link in the Live Composer configuration notice.
557
- * Issue [#583](https://github.com/livecomposer/live-composer-page-builder/issues/583): Fixed broken comment form placeholders.
558
- * Issue [#581](https://github.com/livecomposer/live-composer-page-builder/issues/581): Inline editor - the wrong button hovers colors in some themes.
559
- * Issue [#579](https://github.com/livecomposer/live-composer-page-builder/issues/579): Image tab doesn't hide in the Info Box module settings.
560
- * Issue [#578](https://github.com/livecomposer/live-composer-page-builder/issues/578): Settings group wrapper doesn't hide in the responsive tab.
561
- * Issue [#574](https://github.com/livecomposer/live-composer-page-builder/issues/574): Infobox > Icon > Margin Right setting doesn't working
562
- * Issue [#573](https://github.com/livecomposer/live-composer-page-builder/issues/573): HTML element > insert - textarea = broken module
563
- * Fixed the notice that appears when LC installed but settings never saved.
564
- * Updated Meta module to ignore private taxonomies (compatibility with Yoast WP Pro).
565
- * Make ‘std’ option in custom setting panel work as expected (needed for CPT extension to work properly).
566
-
567
-
568
-
569
-
570
-
571
-
572
-
573
-
574
- = 1.2.4 - February 14th 2017 =
575
-
576
- = Bug fixes: =
577
-
578
- * [See closed issues for milestone 1.2.4 on GitHub](https://github.com/live-composer/live-composer-page-builder/issues?page=1&q=is%3Aissue+milestone%3A1.2.4+is%3Aclosed)
579
-
580
-
581
-
582
-
583
-
584
-
585
-
586
-
587
- = 1.2.3 - February 4th 2017 =
588
-
589
- = Bug fixes: =
590
-
591
- * [See closed issues for milestone 1.2.3 on GitHub](https://github.com/live-composer/live-composer-page-builder/issues?page=1&q=is%3Aissue+milestone%3A1.2.3+is%3Aclosed)
592
-
593
-
594
-
595
-
596
-
597
-
598
-
599
-
600
- = 1.2.2 - January 26th 2017 =
601
-
602
- = Bug fixes: =
603
-
604
- * [See closed issues for milestone 1.2.2 on GitHub](https://github.com/live-composer/live-composer-page-builder/issues?page=1&q=is%3Aissue+milestone%3A1.2.2+is%3Aclosed)
605
-
606
-
607
-
608
-
609
-
610
-
611
-
612
-
613
- = 1.2.1 - January 19th 2017 =
614
-
615
- = Bug fixes: =
616
-
617
- * [See closed issues for milestone 1.2.1 on GitHub](https://github.com/live-composer/live-composer-page-builder/issues?page=1&q=is%3Aissue+milestone%3A1.2.1+is%3Aclosed)
618
-
619
-
620
-
621
-
622
-
623
-
624
-
625
-
626
- = 1.2 - December 21st 2016 =
627
-
628
- = New features: =
629
-
630
- * Learn about this plugin update [in our blog post](https://livecomposerplugin.com/blog/live-composer-1-2/)
631
-
632
- = Bug fixes: =
633
-
634
- * [See closed issues for milestone 1.2 on GitHub](https://github.com/live-composer/live-composer-page-builder/issues?page=1&q=is%3Aissue+milestone%3A1.2+is%3Aclosed)
635
-
636
- = Thanks to the next contributors for helping with this update: =
637
-
638
- * [Luke Perrie](https://github.com/lukeperrie)
639
- * [Jessica Hawkins](https://github.com/jessicahawkins3344)
640
- * [Dean Phillips](https://www.thesuperhumanlab.com)
641
- * [mozalan](https://github.com/mozalan)
642
- * [kadoogan55](https://github.com/kadoogan55)
643
- * [tristanleboss](https://github.com/tristanleboss)
644
- * [Zakiy Fadhil Muhsin](https://github.com/zakiyfadhilmuhsin)
645
- * [delorimier](https://github.com/delorimier)
646
- * [talesg](https://github.com/talesg)
647
- * [thecomputeraide](https://github.com/thecomputeraide)
648
- * [Ike Ten](https://github.com/IkeTen)
649
- * [ElementalCrisis](https://github.com/ElementalCrisis)
650
- * [Stelios Djiongouros](https://github.com/urbanimatic)
651
- * [pezomatic](https://github.com/pezomatic)
652
-
653
-
654
-
655
-
656
-
657
-
658
-
659
- = 1.1.4 - September 12th 2016 =
660
-
661
- = Improved: =
662
-
663
- * Issue [#253](https://github.com/livecomposer/live-composer-page-builder/issues/253): Added animations for the ICON module.
664
- * Add Instagram as a social option to STAFF module. Thank you [Mario Zigliotto](https://github.com/mariozig).
665
- * Issue [#261](https://github.com/livecomposer/live-composer-page-builder/issues/261): Shadows for posts in the BLOG and POSTS module
666
-
667
- = Bug fixes: =
668
-
669
- * [JS Bug](https://wordpress.org/support/topic/js-error-when-editing?replies=1#post-8788982): TypeError: a.html(...) is undefined
670
- * Issue [#198](https://github.com/livecomposer/live-composer-page-builder/issues/198): [JS] Inline Editor do not disappear on module CONFIRM click ( Firefox )
671
- * Issue [#207](https://github.com/livecomposer/live-composer-page-builder/issues/207): [JS] Cick on module (in the modules list) freezes the Live Composer
672
- * Issue [#223](https://github.com/livecomposer/live-composer-page-builder/issues/223): Link to editing archive listing template is broken.
673
- * Issue [#224](https://github.com/livecomposer/live-composer-page-builder/issues/224): Posts Module showing error when Media post type selected.
674
- * Issue [#225](https://github.com/livecomposer/live-composer-page-builder/issues/225): WooCommerce Module – settings broken for the title and price position.
675
- * Issue [#226](https://github.com/livecomposer/live-composer-page-builder/issues/226): Galleries Module – Styling -> Count -> Position is not work.
676
- * Issue [#228](https://github.com/livecomposer/live-composer-page-builder/issues/228): Grids of posts with masonry grid will not refresh the grid properly on options change.
677
- * Issue [#232](https://github.com/livecomposer/live-composer-page-builder/issues/232): Broken Resize Height Control
678
- * Issue [#233](https://github.com/livecomposer/live-composer-page-builder/issues/233): Module Downloads - Main -> Location contol is broken
679
- * Issue [#240](https://github.com/livecomposer/live-composer-page-builder/issues/240): [JS] tinyMCE multiple instances
680
- * Issue [#246](https://github.com/livecomposer/live-composer-page-builder/issues/246): [JS Bug] – Cannot read property 'init' of undefined
681
- * Issue [#249](https://github.com/livecomposer/live-composer-page-builder/issues/249): [JS] Copy/Paste does not work in-line. Thank you [Luke Perrie](https://github.com/lukeperrie).
682
- * Issue [#260](https://github.com/livecomposer/live-composer-page-builder/issues/260): Chevrons doubling up in Navigation Module. Thank you [Luke Perrie](https://github.com/lukeperrie).
683
- * Issue [#262](https://github.com/livecomposer/live-composer-page-builder/issues/262): The LC templates are listed on WordPress search listing
684
- * Issue [#276](https://github.com/livecomposer/live-composer-page-builder/issues/276): Posts and Blog module filtering bug
685
- * Issue [#279](https://github.com/livecomposer/live-composer-page-builder/issues/279): Module Image - Box shadow ( Inner ) does not work
686
- * Infobox inline-editor in "content": https://github.com/livecomposer/live-composer-page-builder/commit/a964e976b54e5e3bff498e5af861350beda61f04
687
-
688
-
689
- Thanks to the next contributors for helping with this update:
690
-
691
- * [Luke Perrie](https://github.com/lukeperrie)
692
- * [Mario Zigliotto](https://github.com/mariozig)
693
- * [tristanleboss](https://github.com/tristanleboss)
694
- * [Aleksej Vukomanovic](https://github.com/zutigrm)
695
- * [Deanphillips](https://github.com/Deanphillips)
696
- * [menachemshapiro](https://github.com/menachemshapiro)
697
- * [Slobodan Kustrimovic](https://github.com/BobaWebDev)
698
- * [branislavs](https://github.com/branislavs)
699
- * [galschjodt](https://github.com/galschjodt)
700
- * [tbenci](https://github.com/tbenci)
701
- * [elfomaniac](https://github.com/elfomaniac)
702
- * [Jessica Hawkins](https://github.com/jessicahawkins3344)
703
- * [Christian Seiler](https://github.com/Christian-Seiler)
704
-
705
-
706
-
707
-
708
-
709
-
710
- = 1.1.3 - August 19th 2016 =
711
-
712
- = Bug fixes: =
713
-
714
- * Issue [#174](https://github.com/livecomposer/live-composer-page-builder/issues/174): Click "Edit template" in WP Admin on CPT listing is broken
715
- * Problem with border settings control. If set to 'none none none none' it will break.
716
- * Issue [#186](https://github.com/livecomposer/live-composer-page-builder/issues/186): Version 1.1+ problem with post archive templates, post styling is missing
717
- * Issue [#182](https://github.com/livecomposer/live-composer-page-builder/issues/182): Make sure disabled modules (WP Admin > Live Composer > Settings > Feature Control) do not show in list of the modules available for drag and drop.
718
- * Issue [#170](https://github.com/livecomposer/live-composer-page-builder/issues/170): Load Templates section is not scrollable anymore
719
- * Issue [#178](https://github.com/livecomposer/live-composer-page-builder/issues/178): TinyMCE inline link popup has a wrong position.
720
- * Issue [#172](https://github.com/livecomposer/live-composer-page-builder/issues/172): Element Titles cannot be changed in Safari on Mac
721
- * Issue [#208](https://github.com/livecomposer/live-composer-page-builder/issues/208): Responsive settings do not work for THE CONTENT module
722
- * Issue [#203](https://github.com/livecomposer/live-composer-page-builder/issues/203): Responsive line-height settings do not work in HTML module
723
- * Issue [#196](https://github.com/livecomposer/live-composer-page-builder/issues/196): Uncaught Error – cannot call methods on sortable prior to initialization; attempted to call method 'option'
724
- * Issue [#202](https://github.com/livecomposer/live-composer-page-builder/issues/202): Inline Editor – Bold, Italic text styling do not apply in some themes.
725
- * Issue [#193](https://github.com/livecomposer/live-composer-page-builder/issues/193): Navigation Module – Chevron not showing when enabled in navigation module
726
- * Issue [#276](https://github.com/livecomposer/live-composer-page-builder/issues/276): Post Filters – "All" button instead showing all the posts, is hiding them at all
727
-
728
- * Presets: Fixed presets auto-reload on module options change. (Thank you Paul!)
729
- * Presets: Removed Infobox > Image and Infobox > Image Url form synchronization. (Thank you Paul!)
730
- * Post Grids: Wrong post title centering over thumbnail. (Thank you Jacob!)
731
-
732
- = For developers: =
733
-
734
- * New filter added 'dslc_filter_modules'. Use it to enable/disable/sort/rename registered modules.
735
- * Removed dslc_sort_alphabetically function.
736
-
737
- = Other changes: =
738
-
739
- * Completely removed 'Modules Listing Order' setting from WP Admin > Live Composer > Settings
740
- * Issue [#181](https://github.com/livecomposer/live-composer-page-builder/issues/181): Fixed headers cover working area while editing page. From now Fixed / Absolute headers will looks like a regular header in editing more. If you want to see it fixed as on production, please click on "Hide Editor" button.
741
- * Changed limit for border width value (from 10 to 1000)
742
-
743
-
744
-
745
-
746
- = 1.1.2 - August 17th 2016 =
747
-
748
- = Bug fixes: =
749
-
750
- * Issue [#169](https://github.com/livecomposer/live-composer-page-builder/issues/169) + [#166](https://github.com/livecomposer/live-composer-page-builder/issues/166): Drag & Drop broken due to JS error (Uncaught TypeError: a.addEventListener is not a function...)
751
-
752
-
753
-
754
-
755
- = 1.1.1 - August 17th 2016 =
756
-
757
- = Bug fixes: =
758
-
759
- * Infobox Title Editing is broken #162
760
- * Icon selection control is broken #159
761
- * Modules Row Edit Menu Disappears after moving. #158
762
- * WP Admin Bar is not visible even when LC is not in active mode #155
763
- * Cannot open "WP Editor" for Accordion or Tabs modules #153
764
-
765
-
766
-
767
-
768
- = 1.1 - August 16th 2016 =
769
-
770
- [See latest changes in details with animated gifs and videos](https://livecomposerplugin.com/blog/live-composer-1-1-released/)
771
-
772
- = New: =
773
-
774
- * Inline text editing using TinyMCE
775
- * New toggle next to each styling control in module settings
776
- * Added JS Error reporting feature
777
- * Added Custom Class option for all the modules
778
- * Added box-shadow option for the image modules
779
- * Added possibility to change label text (“All”) on post categories filter
780
-
781
- = Improved: =
782
-
783
- * Better responsive design code based on media queries
784
- * Faster duplication for modules, module areas and rows (no AJAX requests)
785
- * Faster width change action for modules and module areas (no AJAX requests)
786
- * Empty module containers adds much faster on the page (no AJAX requests)
787
- * Changed drag and drop library for better performance (still in beta)
788
- * Improved browser performance thanks to better memory usage
789
- * Automatic soft permalinks flush on 404 error pages
790
-
791
- = Changes in UI: =
792
-
793
- * New ‘invisible’ slider for number-based controls
794
- * Click on any module to open settings panel
795
- * New responsive preview
796
- * Updated look for the modules panel
797
- * You can now scroll module panels with mouse wheel (removed custom scrolling)
798
- * Moved Templates and Header/Footers menu items under Appearance section
799
- * Removed Archives and Search settings in favor of template post settings
800
- * Improved post options panel for templates
801
- * New feature: dependency for options (show hide controls conditionally)
802
- * Module areas are grey from now for better color coding
803
- * Settings panel loading effect added
804
- * Removed Yoast WP meta-boxes for Header/Footer and Template CPT
805
- * Improved checkboxes in post options by making labels clickable
806
- * Changed control type for all the FONT WEIGHT controls
807
- * Added descriptive titles for action icons on module/container/row
808
- * Better preview for post thumbnails
809
- * Better current module/container width highlighting
810
- * Improved hover states for most of the UI elements
811
- * Text selection disabled for UI elements
812
- * Migrate all the UI animations and effects to pure-CSS when possible
813
- * Semi-transparent module area borders
814
-
815
- = Changes in code: =
816
-
817
- * Editing moved into iframe inside WP admin
818
- * We use grunt to run automatic tasks like JS/CSS files compression
819
- * Reorganized all the JS and CSS files for better structure and automatic minimization
820
- * New global object ‘LiveComposer’ in JS with the next structure:
821
- * LiveComposer
822
- * Builder
823
- * Elements
824
- * UI
825
- * Actions
826
- * Flags
827
- * PreviewAreaDocument
828
- * PreviewAreaWindow
829
- * Helpers
830
- * Production
831
- * Utils
832
- * Destroy controls when not used, cleared number of DOM nodes dramatically
833
- * Restricted access to the page with ?dslc=active
 in URL
834
- * On-flight JS debugging
835
- * Started to change code according to WP Code Styling standards
836
- * Improved module settings sanitization
837
- * Removed all the browser-depended styles
838
- * Clean automatically illegal characters in the sidebar name fields
839
- * Prevent direct access to any of php files in the plugin
840
- * Completely reworked modal window functions
841
- * Log version updates in database
842
- * New API for extension developers to create setting panels in Live Composer
843
- * New filter for ROW controls: dslc_filter_row_options
844
- * Deleted a few JS plugins we don’t use
845
- * Removed JS script for elements centering (in favor of flexbox )
846
- * Removed dslc_init_square JS function
847
-
848
- = Bug fixes: =
849
-
850
- * Fixed image styling bug
851
- * Sidebar content disappear when reserve LC settings
852
- * Option “Don’t link to the single post” wasn’t working for Partners, Staff and Downloads modules
853
- * Live Composer now work with custom fonts that require quotes in a name to work properly
854
-
855
- = 1.0.8.4 - May 22nd 2016 =
856
-
857
- * Bug Fixed: Responsive navigation do not display
858
-
859
- = 1.0.8.3 - May 21st 2016 =
860
-
861
- * Bug Fixed: A few font display issues introduced in the previous release
862
-
863
- = 1.0.8.2 - May 21st 2016 =
864
-
865
- * Module Options: New Max-Width setting in the IMAGE module added.
866
- * Code Improvements: New Live Composer automatically deacitvate Lite and Previous generation of the plugin.
867
- * Code Improvements: When save process fails, errors are more informative now.
868
- * Code Improvements: Removed all the custom fonts from Module defaults.
869
- * Bug Fixed: Fixed problems when styling options do not apply after.
870
- * Bug Fixed: Fixed infinite loop when full content displayed on posts archive listing.
871
-
872
-
873
- = 1.0.8.1 - May 14th 2016 =
874
-
875
- * Module Options: HTML/SHORTCODE module now has an Error-Proof mode. Use it when the complex shortcode or JS code break the Live Composer page editing functionality.
876
- * Code Improvements: Removed anonimous php functions to bring back support for php 5.3 and below.
877
- * Code Improvements: Updated page builder translation strigns.
878
- * Bug Fixed: Border-radius not working when border-width set to 0.
879
-
880
- = 1.0.8 - May 11th 2016 =
881
-
882
- * Module Options: Added 'Nofollow' option for the BUTTON and INFOBOX modules.
883
- * Module Options: New icon selection modal
884
- * Module Options: Removed confusing "Query Alter" tab. Created a simpler "Archive/Search Listing" control instead.
885
- * WordPress Admin: Show notice when W3 Total Cache plugin configs are wrong (can break Live Compose functionality)
886
- * WordPress Admin: Removed "Edit Template" button from header/footer editing screen and meta boxes.
887
- * WordPress Admin: Redesigned and improved plugin settings panel
888
- * WordPress Admin: Show notice if wrong settings detected in WP Admin > General
889
- * WordPress Admin: Overlay WP editor with LC Page Builder tab ONLY if there is LC content detected AND there is no content in the standard editor
890
- * Code: CSS generation optimization. After this change, we get ~30% shorter CSS code.
891
- * Code: Better content export into the dslc_content_for_search custom field. Now content fully recreate plain HTML output of the LC page. From now modules need to set attribute data-exportable-content for the peace that has searchable/exportable content inside.
892
- * Code: Improved code styling according to WordPress standards
893
- * Code: Removed DS_LIVE_COMPOSER_LOAD_MINIFIED constant. Developers, please use standard WP constant SCRIPT_DEBUG that can be declared in the wp-config file.
894
- * Code: Do not output empty Google font calls (when font set to an empty string in the editor)
895
- * Code: Added possibility for theme developers to output CSS for non-standard custom post types
896
- * Code: Make Welcome screen on activation optional for the theme developers. Use dslc_show_welcome_screen filter to disable it.
897
- * Code: Add 'dslc_archive_template_cpt' filter to give the theme developers an option to show their own custom posts types in the templates dropdown.
898
- * Code: Fix a broken reply to comment JS functionality due to the absence of a proper comment id in the html output.
899
- * Code: Fixed infinite loop in categories/tags feed output
900
- * Code: Fix broken styling for DSLC_TP_Content modules in templates
901
- * Code: Animations moved outside of media queries to it work in IE10 and IE11
902
- * Code: Fix a bug with posts listing on is_date() archive pages
903
-
904
- = 1.0.7 - March 5th 2016 =
905
-
906
- While we are working on major JavaScript optimizations our designer prepared a minor plugin update with a few UI improvements.
907
-
908
- To make sure new page builder users understand how to edit pages in Live Composer we added a few helpful buttons and Page Builder tab on page editing screen.
909
-
910
- Custom Post Types now also has a link that open selected template for editing in Live Composer.
911
- Page listing in WordPress admin panel now also has a link to activate Live Composer.
912
-
913
- = New Getting Started Screen =
914
-
915
- In the new Live Composer page builder update, we changed the location of the Welcome Screen. Now it's called Getting Started and located in plugin settings. We decided to make this screen always accessible as it has important information on where to find Live Composer documentation and how to get our one-to-one email support.
916
-
917
- We also working hard on improving our email list. We are going to send regular updates on the plugin development process and new releases. The new welcome screen includes email subscription form and our social badges.
918
-
919
- = No More Tutorials by Default =
920
-
921
- Tutorials is a great feature but mostly used by theme developers to introduce users to the Live Composer layout builder. We decided to disable this feature by default to improve settings panel and not confuse new page builder users from WordPress.org.
922
-
923
- If you need this feature back, just add the next line into your theme's functions.php file:
924
-
925
- add_filter( 'dslc_tutorials', '__return_true' );
926
-
927
-
928
- = What We are Working On =
929
-
930
- * Our developers work hard to improve interface speed and stability. They rewrite some functions on pure JS and optimize code to make it use fewer browser resources and work faster.
931
- * Our designer is working on UI redesign to make layout builder more native to WordPress users. We also want to improve the structure of the module options panel soon.
932
- * Support: We also changed the way support works. Forum closed for new postings. All the new support request are served via one to one email conversations.
933
- * Marketing and PR were neglected for a long time. Now we have experience and resources to give the front-end editor attention it deserves.
934
- * Community: we are going to invest our time into creating a strong community of users and developers around this plugin. First of all, we will promote and grow our Facebook Group. It will be used by theme users like you to share success stories, web site designs, find new clients, ask questions.
935
- * Brand: we hired an amazing Japanese illustrator to design a new mascot for our drag and drop website builder. We want to be more friendly and open to the users and not look too serious. Creating websites is a great fun!
936
- * Marketplace: this is one of the most important aspects for a long time success of our plugin. Our developers work on new powerful extensions and landing pages integrations. We are also working on amazing opportunities for 3-rd party developers, to make it easy for them to develop and sell their extensions on our website. Keep tuned, we will make you rich :)
937
-
938
- = Join Our New [Facebook Group] (https://www.facebook.com/groups/livecomposer/) =
939
-
940
- It's a great experience for us to support you via our new one-to-one support channel. We learn a lot on how you use visual composer for your business. To share your experience with our drag and drop plugin and learn about other users creations we created a new Facebook Group for Live Composer. Please, join us and other site creators to share your latest project or get a quick advice on website building. For those of you who want to get notifications about important plugin updates, we have [Facebook Page] (https://www.facebook.com/livecomposer) and [Twitter profile] (https://twitter.com/LiveComposerWP)
941
-
942
- = 1.0.6.1 - December 15th 2015 =
943
-
944
- [Check out the blog post about 1.0.7 release](https://livecomposerplugin.com/lc-version-1-0-7)
945
-
946
- = 1.0.6.1 - December 15th 2015 =
947
-
948
- This is a small update that fixes the issue with pagination not working in WordPress 4.4.
949
-
950
- [Check out the blog post about 1.0.6.1 release](https://livecomposerplugin.com/blog/version-1-0-6-1-released/)
951
-
952
- = 1.0.6 - November 24th 2015 =
953
-
954
- Yoast SEO v3 Compatibility
955
-
956
- Version 3.0 of Yoast SEO came with a lot of changes and one of them was they completely rewrote the way the keyword analysis is handled. Our front end website builder is now compatible with that new keyword analysis system.
957
-
958
- Aside of the compatibility we've improved the data website builder generates for the purpose of Yoast SEO analysis, it will now include HTML elements instead of just plain text, so when Yoast checks for headings, images it will find them.
959
-
960
- However, for your existing website builder created pages you will need to activate the editor and our landing page builder will then regenerate that content and show the "Publish Changes" button, press it.
961
-
962
- = Notification Module - Show Again After =
963
-
964
- Until now the notification module was quite simple, the user can close it but it would show up again when page reloaded. Now you can set it on a timer, you can set the amount of days that will take after the visitors closes it to be shown the notification again.
965
-
966
- = Jetpack's Photon Compatibility =
967
-
968
- Jetpack has a feature called Photon which makes the images be stored on Jetpack's server instead of your own server, making things a bit faster and saving up on your bandwidth.
969
-
970
- But it was not compatible with our layout builder since the image resizing functionality in visual composer needed the images to be on the same server in order to resize them. Now, front end site builder will use Photon's functions to handle the display of resized images.
971
-
972
- = Improvements in frontend layout builder code =
973
-
974
- * Button Module - Now supports opening videos ( youtube and vimeo ) in a lightbox
975
- * Blog/Posts Modules - Option to ignore sticky posts
976
- * Text/HTML/Content Modules - Box shadow options added for buttons
977
- * Clicking an image ( if lightbox activated ) in a gallery will now open that image instead of the first one in the gallery
978
- * Info Box Module - Letter spacing option added for title
979
- * Button Module - Letter spacing option added
980
- * Image Module - Negative bottom margin now possible
981
- * Widgets Module - Margin Left option added
982
-
983
- = Fixes =
984
-
985
- * Staff Social Module was broken
986
- * Issue with blockquote align option in HTML/Text/Content modules
987
- * Issue with masonry layout breaking
988
- * Issue with navigation module showing above lightbox
989
- * Issue with social shares count being incorrect
990
- * Issue with border radius on thumbnail in all posts related site builder modules
991
- * Issue with content of a post type being displayed on the archives of the post type
992
-
993
- [Check out the blog post about 1.0.6 release](https://livecomposerplugin.com/blog/version-1-0-6-released/)
994
-
995
- = 1.0.5 - November 2nd 2015 =
996
-
997
- This is a small update that fixes the issue with pagination not working in WordPress 4.4.
998
-
999
- [Check out the blog post about 1.0.5 release](https://livecomposerplugin.com/blog/version-1-0-5-released/)
1000
-
1001
- = 1.0.4 - October 19th 2015 =
1002
-
1003
- Text Shadow
1004
-
1005
- A new option type has been added to front end website builder, it's text shadow. it's been added to several modules ( Text, Content, HTML, Title, Meta, Excerpt, Icon ) and we'll keep adding it to more modules in upcoming releases.
1006
-
1007
- New Feature - "Currently Editing"
1008
-
1009
- When editing a row or a module, above the options ( left side ) will be a little bar with the text "Currently Editing: Blog Module" so you know which module are you editing. Also, clicking that bar will scroll the browser to the module you are editing and the border around it will flash to point out which one is it.
1010
-
1011
- New Feature - "Load More" Pagination
1012
-
1013
- If you want AJAX powered pagination ( click "load more" and more posts show up ), now you can have that, just set the "Pagination Type" option to "Load More". This is available for all the posts related page builder modules.
1014
-
1015
- New Elements - Social Sharing in Blog Module
1016
-
1017
- If you'd like to put social sharing links in your blog posts listing now you can, you can enable it under Styling > Post Elements, you'll see "Social" in there.
1018
-
1019
- New Feature - Icon Sets
1020
-
1021
- Icon sets is a new feature which allows developers to implement new icons that will be available in drag-and-drop visual editor. For each icon option in top right the current set being used is shown and clicking on it allows you to change the set being used.
1022
-
1023
- New Shortcode - Category Description
1024
-
1025
- If you are using layout builder to power the archives/category pages and want to display the category description, now you can, simply add a text module and add the [dslc_category_description] shortcode to output it.
1026
-
1027
- Improvements in drag-and-drop page editor code
1028
- * Info Box Module - Option to add an image just below the icon. This is useful if you want to use an image instead of an icon. ( thanks to Aman )
1029
- * Blog and Posts Modules - Option to turn off author/date in the meta independently
1030
- * All posts related modules - Option to change thumbnail align
1031
- * All posts related modules - Option to change align ( left/center/right ) on thumbnail
1032
- * Several animations in the editor have been switched over from JS to CSS
1033
-
1034
- Bugs
1035
- * The placeholder text on Info Box module was wrong and confusing
1036
- * The avatar shortcode was echoing instead of returning
1037
- * Parallax functionality was affecting horizontal position of BG image
1038
-
1039
- For Developers
1040
-
1041
- New landing page cretor Modules Option Type - Text Shadow
1042
-
1043
- To use this option in your own modules simply set the type of the option to text_shadow. If you are applying a default value to the option then use the usual order of parameters "horizontal vertical blur color".
1044
-
1045
- New Function - dslc_get_social_count()
1046
-
1047
- it's used to get the amount of shares the current post/page has on twitter, facebook and pinterest. It returns an array with keys "fb", "twitter", "pinterest".
1048
-
1049
- It accepts 2 parameters, first is the post ID ( in case you want to get social shares of a specific post/page instead of the current one ) and the second one is cache time in milliseconds ( how long until it should recheck again for the shares count, defaults to 3600 seconds, which is of course 1 hour ).
1050
-
1051
- New Filters - Custom Post Type and Taxonomy Arguments
1052
-
1053
- All the arguments for post types and taxonomies now have filters so you can alter them. This was asked by a developer so he can change the labels ( "Projects", "Add Project" ) to something else that suits his theme better, but you can also change other arguments with this.
1054
-
1055
- Here's the list of filters: dslc_projects_cpt_args, dslc_projects_cats_args, dslc_downloads_cpt_args, dslc_downloads_cats_args, dslc_downloads_tags_args, dslc_galleries_cpt_args, dslc_galleries_cats_args, dslc_partners_cpt_args, dslc_partners_cats_args, dslc_staff_cpt_args, dslc_staff_cats_args, dslc_testimonials_cpt_args, dslc_testimonials_cats_args
1056
-
1057
- For the list of arguments you can check the source code or check the register_post_type() and register_taxonomy().
1058
-
1059
- [Check out the blog post about 1.0.4 release](https://livecomposerplugin.com/blog/version-1-0-4-released/)
1060
-
1061
- = 1.0.3 - October 2nd 2015 =
1062
-
1063
- This is an unscheduled update, the next scheduled regular update is still planned for October 15th. The purpose of this update is to make our frontend page editor compatible with WordPress language packs, more info on language packs can be found at https://make.wordpress.org/plugins/2015/09/01/plugin-translations-on-wordpress-org/
1064
-
1065
- The text domain for visual composer used to be ds_string but for the language packs feature to work it has to be the same as the plugin's folder name which is live-composer-page-builder. So in this update all the textual strings have the text domain changed ( about 8500 strings ) and some other fixes related to the translation capabilities have been made.
1066
-
1067
- If you have your own translation of our frontend page editor the file name is something like dslc_string-sr_RS which will no longer work, change it to live-composer-page-builder-sr_RS ( the sr_RS part depends on the language code ).
1068
-
1069
- [Check out the blog post about 1.0.3 release](https://livecomposerplugin.com/blog/version-1-0-3-released/)
1070
-
1071
- = 1.0.2 - September 30th 2015 =
1072
-
1073
- [Check out the blog post about 1.0.2 release](https://livecomposerplugin.com/blog/version-1-0-2-released/)
1074
-
1075
- = 1.0.1 - September 15th 2015 =
1076
-
1077
- [Check out the blog post about 1.0.1 release](https://livecomposerplugin.com/blog/version-1-0-1-released/)
1078
-
1079
- = 1.0 - September 10th 2015 =
1080
-
1081
- * Wordress.org RE-RELEASE
1082
-
1083
-
1084
- = 1.2.4.1 (July 30th, 2015) - released on CodeCanyon before moving to WordPress.org =
1085
-
1086
-
1087
- = Improvements in landing page generator code =
1088
-
1089
- * Info Box Module - Responsive options added for wrapper
1090
- * New shortcode to display the avatar of the current user: [dslc_user_avatar] Accepts size parameter ( ex. [dslc_user_avatar size=200] will be 200px avatar )
1091
-
1092
- = Bugs =
1093
-
1094
- * Issue with row actions ( save/cancel ) still visible if you click to edit a module while a row is being edited
1095
- * The "Orientation" option in all posts visual composer modules was broken
1096
- * ID of the comments div in the comments module was wrong so WordPress generated URLs with #comments did not jump to comments
1097
- * Issue with layout builder modules not showing in Internet Explorer when an opacity related animation is applied
1098
- * Options not shown in an "edge case" scenario when there's only one option
1099
-
1100
-
1101
-
1102
- = 1.2.4 (July 23rd, 2015) - released on CodeCanyon before moving to WordPress.org =
1103
-
1104
- = Save Draft =
1105
-
1106
- A lot of our front end website builder users click the "Publish Changes" button often to make sure if something unexpected happens they don't lose the content they created. But when working on a live page ( visitors have access to it ) that's not something you'd want to do, you want to publish only when the page is finished.
1107
-
1108
- That's where drafts come in. On the right of the "Publish Changes" button is a new button called "Save Draft". Clicking that will save your changes but not publish them ( not visible to visitors ).
1109
-
1110
- This is also useful if you're working on a page but got to stop for some reason. You save the changes as a draft and you can then safely disable the visual editor. When you enable it again the changes will still be there.
1111
-
1112
- = Improvements in drag-and-drop page builder code =
1113
-
1114
- * Various site editor modules - Letter spacing options added to various modules ( text, navigation, widgets... ), more will be added in upcoming versions
1115
- * Comment Form Module - Javascript validation for required inputs
1116
- * Social module - Optional labels added for the social elements ( + the needed styling options )
1117
- * Galleries module - Button element to go to gallery single page added ( + the needed styling options )
1118
- * Info box module - Options added for wrapper giving more flexibility
1119
- * Widgets Module - Options for inner title giving more flexibility
1120
- * All modules - Minimum Height option added
1121
- * Gallery Slider module - Lightbox functionality
1122
- * Gallery and Gallery Slider modules - Added title for images in the lightbox
1123
- * Gallery Slider and Project Slider modules - Option to change border radius on "circle" navigation
1124
- * Social Module - Added padding options
1125
- * Information added for "Widget Module" and "Navigation Module" in Live Composer front-end editor settings panel
1126
- * Show error when duplicated items for "Widgets Module" and "Navigation Module" settings entered in Live Composer layout builder settings panel
1127
- * Meta module - Option to hide/show avatar
1128
- * New Shortcode - Icon shortcode added. [dslc_icon id="ICON_ID"] ( IDs can be found at https://livecomposerplugin.com/icons-listing/ )
1129
- * All posts related modules - Setting "Excerpt Length" to 0 now shows whole excerpt and does not strip HTML
1130
- * Icon Module - Margin bottom option added
1131
-
1132
- = Bugs =
1133
-
1134
- * Issue with some of the animations ( Styling > Animations > On Load Animation ) flickering
1135
- * Blog Module - Issue with margin bottom option ( under "General" ) not applying
1136
- * Issue with undefined function in older versions of WordPress ( prior to 4.0 )
1137
- * Issue with module width selectors going 1 per row instead of 2 per row
1138
- * Issue with CSS generation when page/post not using default header/footer
1139
- * All posts related modules - Non-published ( draft ) posts shown while in visual editor mode
1140
-
1141
- LCVV
1142
-
1143
- = 1.2.3 (July 7th, 2015) - released on CodeCanyon before moving to WordPress.org =
1144
-
1145
- = Bigger Changes =
1146
-
1147
- * Builder Performance/Speed
1148
-
1149
- Those who experienced slow response while building ( changing tabs, loading module options... ) should see a significant improvement in response time. The 5000+ lines of code that powers the page building process has been refactored, a lot of it improved and some of it rewritten.
1150
- * Module Width
1151
-
1152
- Front end site builder modules are no longer limited to 100% width of the modules area. Front-end modules now have the same width options as module areas do, allowing more flexibily in creating layouts. The interface is the same as for module areas, just click the icon and set the width.
1153
-
1154
- = Improvements in front end page builder code =
1155
-
1156
- * Text Module - Added responsive options for lists
1157
- * Text Module - Added responsive text align options for several elements
1158
- * Content Module - Added responsive text align and margin bottom options for headings
1159
- * Content/Text Modules - Added responsive options for blockquotes
1160
- * Social Module - Added RSS option
1161
- * Info Box Module - Added option to change icon color on hover
1162
- * Rows and areas will no longer take up any space if modules inside are hidden by the responsive "show on" option
1163
- * Gallery Slider Module - Lightbox functionality added
1164
- * Hovering over a module will show the name of that module in a tooltip ( only works when in editor mode )
1165
- * Color pallete in the colorpicker now available for rows as well
1166
- * Galleries Module - Option to set a custom URL to go to instead of the single gallery post
1167
- * The "X" in top right of the colorpicker has been removed due to causing confusion ( it's to clear the value, not to close the colorpicker )
1168
- * For developers using our frontend page builder - Function to check if the shown page is in editor mode, dslc_is_editor_active()
1169
- * For developers using our landing page builder - The "General" tab is no longer required. If there are no options under that tab it won't show up.
1170
- * For developers using page editor - Live Composer page templates can now be separated into different sections, no longer limited to "Theme"
1171
-
1172
- = Bugs =
1173
-
1174
- * Info Box Module - Issue with spacing showing between 2 buttons even when set to 0
1175
- * Error with module sorting when server runs on 5.2.x version of PHP
1176
- * Navigation Module - Issue with hamburger icon displaying on phones even when the responsiveness is disabled
1177
- * Conflict with queries made by themes and other plugins for post queries by author causing only 1 post to show
1178
- * All Posts Related Modules - Issue with slashes in "heading" when quotes are used
1179
- * Issue with colorpicker's "revert to default" not working
1180
- * Issue with website page builder modules being added to header/footer sections when they are not being edited
1181
- * Testimonials Module - Issue with some characters being cut off due to line height
1182
- * Issue with increased blockquote's bottom spacing due to margin on the paragraph inside
1183
-
1184
-
1185
-
1186
- = 1.2.2 (May 27th, 2015) - released on CodeCanyon before moving to WordPress.org =
1187
-
1188
- = Improvements in landing page generator code =
1189
-
1190
- * Thumbnail Module - Now available for pages as well
1191
- * Colorpicker options will now display the last 12 colors you used, making it easier to reuse colors ( so you don't have to copy/paste color codes )
1192
- * Comment Form - Option to change the text strings ( "Leave Comment", "Name", "Email"... ). By default they're empty and fall back to localized text strings, for backwards compatibility.
1193
- * Content Module - H1 font size and line height options for tablet and phones
1194
- * Navigation Module - Align and margin top options added for tablet and phone.
1195
- * Social Module - Margin top option added
1196
- * For developers using page builder: "dslc_content_width" filter added to change the page editor's content visual width. When filtering return a full CSS value ( like 1200px ), not just a number.
1197
- * For developers using page builder: "dslc_row_class" filter added to define additional classes for the rows ( .dslc-modules-section ). Example usage: pastie.org/10207408
1198
- * For developers using page builder: The "Post Options Framework" now has a "date" option type available.
1199
-
1200
- = Bugs =
1201
-
1202
- * Issue with row overlay not being displayed when "BG IMAGE - USE FEATURED" is enabled.
1203
- * Issue with text changes not saving due to module settings not yet being loaded when clicking confirm ( when doing it fast ). Now when clicking "Edit Content" to edit text, the "confirm" and "cancel" actions will be disabled until module settings are loaded.
1204
- * Issue with author queries displaying only 1 post
1205
- * Issue with the responsive preview ( when editing responsive options on a module ) not going back to regular view when confirming changes while responsive tab is active
1206
- * Issue with broken carousel layout on phones
1207
- * Social Module - Issue with the height of the container being taller than the icons inside
1208
- * Issue with an invalid Google Fonts call when none of the page builder modules on a page use a Google font
1209
-
1210
-
1211
-
1212
- = 1.2.1 (April 29th, 2015) - released on CodeCanyon before moving to WordPress.org =
1213
-
1214
- = Improvements in visual composer page editor code =
1215
-
1216
- * Rows - Decreased the amount of inline CSS on rows. Inline CSS will be added only for non-default option values.
1217
- * Rows - Option to choose on which devices a row is visible/hidden ( desktop, tablet, phone )
1218
- * Content Module - Options for horizontal and vertical padding added for all the headings
1219
- * Image Module - Option to manually set the URL of the image
1220
- * The "activate editor" button will no longer show when website viewed via WordPress Customize feature.
1221
- * For developers using visual page builder. The body element now has 2 additional classes. When the page has visual composer content it gets "dslc-page-has-content" and when the page has header or footer powered by frontend layout builder it gets "dslc-page-has-hf" )
1222
- * For developers using drag-and-drop page builder. Checkbox option type now available for rows.
1223
-
1224
- = Bugs =
1225
-
1226
- * Modules Listing - The "single" category modules displayed under all the filters
1227
- * On hover animation options showing on all modules instead only on posts related modules
1228
- * Posts Module - "Undefined variable" notice on taxonomy
1229
- * RTL - Fixing the floating of columns
1230
- * Tutorial Ch.3 - On lower display resolutions gets stuck at the beggining due to "BLOG" module in the listing being out of view
1231
- * Tutorial Ch.3 - When drag-and-drop page editor is translated to a different language it gets stuck on the step when making styling changes
1232
- * "Undefined index" notice on existing rows when a new row option is added
1233
-
1234
-
1235
-
1236
- = 1.2 (April 9th, 2015) - released on CodeCanyon before moving to WordPress.org =
1237
-
1238
- = Improvements in front end page builder code =
1239
-
1240
- * All Modules - Animation duration option added
1241
- * Row - Numeric options can now be a field instead of a slider
1242
- * Content Module - Improved placeholder text when creating a post template
1243
- * Button Module - Option to set custom classes to the anchor
1244
- * When non visual composer content is returned it will be wrapped with 2 divs ( #dslc-theme-content and #dslc-theme-content-inner ). For theme developers to style the content part if they use Live Composer visual builder for header and footer as well.
1245
-
1246
- = Bugs =
1247
-
1248
- * Posts Module - Category filters not showing categories
1249
- * Navigation Module - Spacing between nav items even when spacing set to 0
1250
- * Layout issue with masonry on phones
1251
- * Slight issue with the appearance of the close button for lightbox
1252
- * "Are you sure" prompt ( when clicking to edit a module while already editing one ) not showing when clicking "Edit Content"
1253
- * Issue with numeric options causing page jump under specific circustances
1254
- * Button height issue due to theme CSS
1255
- * Issue with layout due to animations in Internet Explorer ( temporarily disabled for IE )
1256
-
1257
-
1258
-
1259
- = 1.1.9 (March 21st, 2015) - released on CodeCanyon before moving to WordPress.org =
1260
-
1261
- = Improvement =
1262
-
1263
- * A new easier to use text align options ( no longer a "select" element )
1264
- * When styling changed on a module with a preset the page builder modules with that preset on that page will reload and apply the new style ( page refresh no longer needed )
1265
- * Option to choose numeric options ( WordPress admin > Live Composer > Other ) to be a regular input instead of a slider ( allowing values bigger than the ones with slider )
1266
- * Navigation module now changes to a "hamburger" menu on tablets and phones. If responsiveness set to disabled it will remain a regular menu.
1267
- * All the custom post types ( projects, galleries... ) now support comments ( comments and comment form module )
1268
- * Staff Module - Font style option added ( normal, italic )
1269
-
1270
- = Bugs =
1271
-
1272
- * Issue with styling of the "Edit Content" influenced by the chosen font for "Content"
1273
- * Issue with responsive preview width when other theme/plugin calls windows resize trigger on ajax complete
1274
- * Issue with small height of the "Text" version of the WYSIWYG editor
1275
- * Navigation Module - Hover border color not working
1276
-
1277
-
1278
-
1279
- = 1.1.8 (March 10th, 2015) - released on CodeCanyon before moving to WordPress.org =
1280
-
1281
- = Improvements in drag and drop layout builder code =
1282
-
1283
- * The WYSYWIG editor ( text editor ) now remembers which type ( visual, text ) you are using and keeps it active
1284
- * Button Module - Option to choose if the icon is shown on the left or the right side ( + margin left option for icon )
1285
- * Footer position options ( relative, fixed, absolute ) for themes compatible with the header/footer Live Composer layout builder feature
1286
- * Sidebar/Menu settings in WordPress admin > Live Composer will now confirm the item on enter key instead of making a new line
1287
-
1288
- = Bugs =
1289
-
1290
- * Issue with offset option ( all posts module ) braking pagination ( show same posts on all pages )
1291
- * Blog module avatar streched on some themes
1292
- * Posts modules with pagination disabled still get paginated when a different module has pagination
1293
- * Tabs module margin bottom option affects line height
1294
-
1295
-
1296
-
1297
- = 1.1.7 (February 28th, 2015) - released on CodeCanyon before moving to WordPress.org =
1298
-
1299
- = Improvements in drag-and-drop visual composer code =
1300
-
1301
- * Info Box Module - Option to set a link for the title
1302
- * Info Box Module - Every elements has it's own align options now
1303
- * Products Module - Option to enable/disable showing out of stock products
1304
- * Icon Module - Option to align ( left, center, right ) the icon
1305
- * Navigation Module - Better display of submenus when there's not enough room on the right side
1306
-
1307
- = Bugs =
1308
-
1309
- * Close icon missing on icon option tooltip
1310
- * Issue with columns breaking in downloads module under specific circumstances
1311
- * Issue when trying to use a non-Live Composer defined font family in font options
1312
- * Comments module showing pending comments
1313
-
1314
-
1315
-
1316
- = 1.1.6 (February 21st, 2015) - released on CodeCanyon before moving to WordPress.org =
1317
-
1318
- = Improvements in frontend page editor code =
1319
-
1320
- * 404 page can now be built with drag-and-drop page generator ( the page can be set in WordPress admin > Live Composer > Archives & Search )
1321
- * Yoast SEO plugin page analysis now takes front end site builder content into account
1322
- * Option to choose header "position" ( relative, absolute, fixed )
1323
- * Image Module - URL option now accepts shortcodes
1324
- * Gallery Slider and Projects Slider Modules - ALT attribute on images
1325
- * Widgets Module - Text transform option for title
1326
- * New Shortcode - [dslc_site_url] ( outputs the homepage URL )
1327
- * For developers using page builder. Filter to alter the array of post types that work using "post templates" ( dslc_post_templates_post_types )
1328
- * For developers using page builder. Filters for before_title and after_title in page editor website generated sidebars ( dslc_sidebar_before_title and dslc_sidebar_after_title )
1329
-
1330
- = Bugs =
1331
-
1332
- * 404 page on author archives pagination when regular WordPress query thinks there's no more pages
1333
- * Fatal error when a page has a module that no longer exists
1334
- * Issue with carousel not adjusting when switching from portrait to landscape and vice versa on mobile devices
1335
- * Automatic row adding not working when there's Live Composer drag-and-drop created header/footer on the page
1336
- * Issue with localization of "All" in filters for all posts builder modules
1337
-
1338
-
1339
-
1340
- = 1.1.5 (February 12th, 2015) - released on CodeCanyon before moving to WordPress.org =
1341
-
1342
- = New =
1343
-
1344
- * FREE front end website builder ADD-ON - Adds 47 additional animations ( for Styling > Animation > On Load Animation ), available on livecomposerplugin.com/downloads
1345
-
1346
- = Improvements in landing page builder code =
1347
-
1348
- * Option to choose whether Functionality or Styling is the default options section ( WordPress Admin > Live Composer > Other )
1349
- * Option to enable/disable permalinks prepend ( if supplied ) for Live Composer builder custom post types ( WordPress admin > Live Composer > Slugs )
1350
- * Ensuring that non-LC post queries that aren't properly handled do not make issues with our visual composer ( activate editor button taking to wrong page )
1351
- * Reset query in all posts related modules replaced with reset post data, which is a better choice for the WordPress_Query calls
1352
- * Added a filter for altering the animation options ( the ones in Styling > Animation > On Load Animation ) so developers using page builder can create custom animations ( filter name: dslc_animation_options )
1353
-
1354
- = Bugs =
1355
-
1356
- * Issue with the position of module helper during drag in latest version of Firefox
1357
- * Tag archive showing all posts instead of only the ones associated with the tag
1358
- * Several issues with theme CSS influencing builder CSS
1359
-
1360
-
1361
-
1362
- = 1.1.4 (January 27th, 2015) - released on CodeCanyon before moving to WordPress.org =
1363
-
1364
- = Improvements in drag and drop page builder code =
1365
-
1366
- * Widgets Module - Text align options for title and content
1367
- * Info Box Module - Content now supports shortcodes
1368
- * Navigation Module - Chevron icon for top level items with subnavigation
1369
- * Current width ( in the page builder modules area width changer ) now has an active state ( different color )
1370
- * Visible items in carousels now get a class "dslc-carousel-item-visible" ( requested by a developer )
1371
-
1372
- = Bugs =
1373
-
1374
- * Search functionality broken when there are other plugins altering the search query
1375
- * Minor issue with colorpicker display in row options
1376
- * 404 error in console when font family default altered to empty
1377
-
1378
-
1379
-
1380
- = 1.1.3 (January 27th, 2015) - released on CodeCanyon before moving to WordPress.org =
1381
-
1382
- = Improvements in frontend page builder code =
1383
-
1384
- * Added 40 new icons ( Font Awesome 4.3 )
1385
- * Accordion Module - Option to hide/show based on device ( desktop, tablet, phone )
1386
- * Tabs Module - More styling options for content area ( h1 - h6, links, lists, blockquotes... )
1387
- * Title Module - Now displays search term when on a search page
1388
- * Option to choose where dynamic CSS goes ( end of <head> or end of <body> )
1389
-
1390
- = Bugs =
1391
-
1392
- * Issue with slider/carousel animations not working properly on Chrome
1393
- * Issue with google fonts on https ( SSL ) websites
1394
- * Issue with non-google fonts being called with google fonts ( 404 error )
1395
- * Issue with tabs module content styling not applied ( overwritten by theme CSS )
1396
- * Issue when using quotes in accordion module title
1397
-
1398
-
1399
-
1400
- = 1.1.2 (January 19th, 2015) - released on CodeCanyon before moving to WordPress.org =
1401
-
1402
- = Improvements in drag-and-drop page editor code =
1403
-
1404
- * Content Module - New styling options for inputs and buttons
1405
- * Content Module - Additional styling options for wrapper ( BG image options ), headings ( BG styling options and margins ) and paragraph ( margin bottom )
1406
- * Option to choose "Disabled" for header and footer functionality of Live Composer website builder
1407
- * All Posts Modules ( 9 ) - Option to set separator thickness
1408
- * Accordion Module - Line height option added for the title
1409
- * Projects Module - Font style option for category
1410
- * Navigation Module - Added text transform options
1411
- * Notification Module - Added link color option
1412
- * Button Module - Added option for the onclick event ( requested by page builder users for Google Analytics Event Tracking )
1413
- * Developers can now build custom option types
1414
-
1415
- = Bugs =
1416
-
1417
- * Styling options not applied on posts for header and footer
1418
- * Issue with accordion module actions display ( in bulding mode )
1419
- * Blockquote typography options not applied for blockquote in Text/HTML/Content modules
1420
- * Icon from info box module was included in styling presets
1421
-
1422
-
1423
-
1424
- = 1.1.1 (January 13th, 2015) - released on CodeCanyon before moving to WordPress.org =
1425
-
1426
- = Improvements in frontend page editor code =
1427
-
1428
- * Option to change the slug on testimonials and testimonials categories
1429
- * Accordion Module - Ability to reorder the items
1430
- * Progress Bar Module - Animation now starts when the module is visible ( in vieWordPressort ) instead of starting on page load
1431
- * HTML Module - Added more styling options ( lists and blockquote )
1432
- * Social Module - Behance option added
1433
- * Image Module - Option to force image to 100% added
1434
- * Text, HTML and Content Modules - Font Style ( normal, italic ) option added to content and all headings
1435
-
1436
- = Bugs =
1437
-
1438
- * Button Module - Problem when using quotes
1439
- * Text Module - Custom CSS applied when the default was programatically changed to disabled by default
1440
- * Row Options - Background overlay opacity option was only going to 0.9 ( instead of 1 )
1441
- * Notification Module - Issue with typography options not applied in some specific cases
1442
-
1443
- = Starters/Blank Theme =
1444
-
1445
- With the free starters/blank theme you can build the header/footer with Live Composer visual editor as well. It's kind of a bigger feature so if you have any suggestions or thoughts please let us know on the forum.
1446
-
1447
- If you're familiar with Live Composer drag-and-drop builder there's just a few things you need to know to get started:
1448
- * You can manage headers and footers in WordPress admin > Header/Footer
1449
- * You can set a default header and footer which will be used accross the website.
1450
- * If you want a non-default header or footer on a page you can set a specific one in the top right corner of the page edit screen.
1451
-
1452
-
1453
-
1454
- = 1.1 (December 29th, 2014) - released on CodeCanyon before moving to WordPress.org =
1455
-
1456
- = New/Improvements in drag and drop layout builder code =
1457
-
1458
- * NEW MODULE - Navigation
1459
- * NEW MODULE - Project Images Slider
1460
- * NEW FEATURE - Search results page can now be created with drag and drop visual builder
1461
- * Removed the "prepends" for title module when on an archive page
1462
-
1463
- = Bugs =
1464
-
1465
- * Conflict between BG image attachment and BG image size options for rows.
1466
- * When selected option inputs had a white BG and white text on themes that force specific BG on active inputs
1467
- * All Posts Modules - Title not clickable between lines
1468
-
1469
-
1470
-
1471
- = 1.0.9 (December 22nd, 2014) - released on CodeCanyon before moving to WordPress.org =
1472
-
1473
- = New/Improvements in front end site builder code =
1474
-
1475
- * All Modules - Option to hide a module based on device ( desktop, tablet, phone ). The options are located at the beggining of Functionality options for each module.
1476
- * Title Module - When used for archive pages it will show the current category/author
1477
- * All Posts Modules - Option to set autoplay speed for carousel
1478
- * All Posts Modules - Option to enable/disable stopping autoplay of carousel on hover
1479
- * All Posts Modules - Speeding up queries by eliminating SQL_CALC_FOUND_ROWS when pagination disabled
1480
-
1481
- = Bugs =
1482
-
1483
- * Issue with AJAX requests when admin is SSL ( HTTPS ) and front is HTTP
1484
- * Issue with themes that load their own jQuery instead of the one WordPress supplied ( not supposed to be done but some themes do it )
1485
- * Image Module - Issue when using quotes in the caption
1486
- * All Posts Modules - Issue with pagination active state on homepage ( always shows 1st page as active )
1487
- * Responsive classes not applied properly when switching from responsive options to regular options
1488
-
1489
-
1490
-
1491
- = 1.0.8 (December 15th, 2014) - released on CodeCanyon before moving to WordPress.org =
1492
-
1493
- = Improvements in front-end website builder code =
1494
-
1495
- * Downloads Module - Outside files ( not hosted on the server ) can be set as the downloadable file now
1496
- * Downloads Module - When a file is not supplied the button will not show
1497
- * Testimonials Module - Shortcodes now enabled for the testimonial content
1498
- * Option to disable the HTML ( Text ) mode for the content editor ( WordPress admin > Live Composer > Other )
1499
- * HTML Module - Added margin bottom option for paragraphs
1500
-
1501
- = Bugs =
1502
-
1503
- * Custom Post Types still active when a module has been disabled with dslc_hook_unregister_modules
1504
- * Issue with "placeholder content" overwriting content generated by 3rd party plugins
1505
- * Author archive page showing both category and author archive pages
1506
- * Issue with parallax BG image on tablets ( now falls back to non-parallax )
1507
- * Issue with shortcodes inside of tab and accordion module content.
1508
- * HTML Module - Content styling overwritten by theme's CSS in some cases
1509
-
1510
-
1511
-
1512
- = 1.0.7 (December 8th, 2014) - released on CodeCanyon before moving to WordPress.org =
1513
-
1514
- = New =
1515
-
1516
- * Searchable content - One of the most requested features by page builder users was for WordPress search to check the content of Live Composer generated landing pages. For better search performance and better results the "searchable content" is generated separately from the regular page editor content code and includes only relevant content. Because of that you'll need to resave your old front-end site editor pages for this to take effect ( just visit the page in Live Composer visual editor mode, the "Publish Changes" will show up, click it ).
1517
-
1518
-
1519
-
1520
- = 1.0.6 (October 29th, 2014) - released on CodeCanyon before moving to WordPress.org =
1521
-
1522
- This update was mostly performance related. We will keep improving performance in upcoming updates as well.
1523
-
1524
- = Improvements in drag-and-drop page builder code ( builder perfomance ) =
1525
-
1526
- * Improvement in the speed of displaying module options on bigger pages. Tested on a huge front-end page ( 70 modules with non-default settings ) it was taking 7 seconds to display options after clicking to edit a module. Same action takes 2 seconds now. The speed will vary from installation to installation due to server, theme and other plugins but an improvement should be visible to everyone.
1527
- * Speed of displaying options on builder modules related to posts ( blog, projects, galleries... ) is improved in general, irrelevant of the size of the page.
1528
-
1529
- = New/Improvements in frontend page editor code ( page load performance ) =
1530
-
1531
- * JavaScript and CSS files are now minified for a faster page load.
1532
- * Added options ( WordPress admin > Live Composer > Performance ) to choose which subsets ( latin, cyrillic... ) for the fonts should be loaded. Make sure you set that to what you need, disabling what you do not need will improve the page load speed.
1533
- * All fonts now load with one single call instead of one call per font.
1534
- * Tutorial CSS and JavaScript files now load only when needed.
1535
- * The admin now loads CSS and JS for the plugin options and post options framework only when needed.
1536
- * Two jQuery plugins are removed, elementQuery and getEmPixels.
1537
-
1538
- = New/Improvements in landing page generator code ( general ) =
1539
-
1540
- * Author Archive - You can now set a page to serve as an author archive page.
1541
- * Projects Module - Option to choose whether links should open in the same tab or a new tab.
1542
-
1543
- = Bugs ( general ) =
1544
-
1545
- * Issue with presets feature including functionality options instead of only styling options
1546
- * Issue with rows having an empty ID parameter when no ID supplied in the options resulting in W3C validation errors.
1547
-
1548
-
1549
-
1550
- = 1.0.5.7 (October 6th, 2014) - released on CodeCanyon before moving to WordPress.org =
1551
-
1552
- = Improvements in drag-and-drop layout builder code =
1553
-
1554
- * All 8 posts modules + Title module - Text Transform ( none, uppercase, lowercase, capitalize ) option added to the title element
1555
- * All 8 posts modules - Carousel slide speed options added ( separate for arrows and circles )
1556
- * Info Box module - Secondary button is now available for "aside" layout as well
1557
- * Text module and HTML module - Added styling options for button form element
1558
- * HTML module - Styling options for inputs added
1559
- * Disabled animations on mobile
1560
- * Code and file cleanup ( removing unnecesery code and files )
1561
-
1562
- = Bugs =
1563
-
1564
- * Info Box - Responsive font size and line height weren't working properly on some setups
1565
- * Content Module - Paragraphs not affected by styling options on some setups
1566
- * Carousel not initiating on row import
1567
- * On some themes the width selection for columns had broken layout
1568
-
1569
-
1570
-
1571
- = 1.0.5.6 (September 23rd, 2014) - released on CodeCanyon before moving to WordPress.org =
1572
-
1573
- = New =
1574
-
1575
- * NEW MODULE - Icon
1576
-
1577
- = Improvements in Live Composer page builder code =
1578
-
1579
- * Projects Module - Option to choose wheter to link projects to the project page, landing page or a custom URL ( the URL can be set in the admin, when adding/editing a project )
1580
- * Category operator option added ( IN, NOT IN, AND ) for 8 modules ( blog, downloads, galleries, partners, projects, staff, testimonials, woocommerce )
1581
- * Force browsers to reload the JavaScript and CSS files when Live Composer editor version changes ( browser caching )
1582
- * Social Module - Align option
1583
- * Info Box - Added margin bottom option for the icon
1584
-
1585
- = Bugs =
1586
-
1587
- * Issue with the custom post types and custom widgets not showing in the front-end builder admin for some page builder users
1588
- * The "alter defaults" feature was not working for responsive options
1589
- * Info Box - Margin bottom option for content was not working in some cases
1590
-
1591
-
1592
-
1593
- = 1.0.5.5 (September 11th, 2014) - released on CodeCanyon before moving to WordPress.org =
1594
-
1595
- = Improvements in Live Composer page builder code =
1596
-
1597
- * Font Awesome updated ( 40 new icons )
1598
- * Text and Content Modules - Blockquote Options ( 16 styling options )
1599
- * Testimonials Module - Added BG image options ( image, repeat, attachment, position )
1600
- * All Posts Modules - Thumbnails now have the ALT attribute
1601
- * Slug Settings - Notification at the top explaining that a visit to the permalinks page is required after altering the slugs
1602
- * Tutorials - Disabled "automatic row" on tutorials to avoid confusion.
1603
- * Cleaning up the code ( 16 files affected )
1604
-
1605
- = Bugs =
1606
-
1607
- * If there was more than one row with a BG video the videos did not start
1608
- * Row parameters were not cleaned up for each row resulting in a larger Live Composer front-end editor generated data
1609
- * Info Box Module - Button tabs showing when buttons are disabled
1610
- * Issue with dropping a module while another module is still being loaded.
1611
- * Tutorials - "Tooltips" position was off when the admin bar is enabled.
1612
-
1613
-
1614
-
1615
- = 1.0.5.4 (September 3rd, 2014) - released on CodeCanyon before moving to WordPress.org =
1616
-
1617
- = Bugs =
1618
-
1619
- * Images not showing up on builder modules with presets applied to it.
1620
- * Couple issues with video background feature on rows
1621
- * Removing images in row options not working properly
1622
- * "Use featured image" option for background on rows not clearing the image when choosing disabled after already being enabled
1623
-
1624
-
1625
-
1626
- = 1.0.5.3 (August 30th, 2014) - released on CodeCanyon before moving to WordPress.org =
1627
-
1628
- = Improvements in Live Composer page builder code =
1629
-
1630
- * Image options will use ID instead of URL from now on
1631
- * Rows - Added option to use the post/page featured image as a background
1632
- * Rows - Added margin bottom option
1633
- * Title Module - Now available for pages as well
1634
- * Separator Module - Added more styling options
1635
- * Button Module - Added more styling options
1636
- * Info Box Module - Margin options added for 2nd button ( for separation between buttons )
1637
- * Staff Module - Email option added to the "social" area
1638
- * Content Module - Added styling options for lists
1639
- * Accordion and Tabs Module - Shortcodes now work inside of them
1640
- * Automatic element centering improved
1641
- * Removed stellar data from the code
1642
-
1643
- = Bugs =
1644
-
1645
- * Columns broken when row duplicated
1646
- * Downloads Module - Tag links broken
1647
- * Info Box Module - Typography options not working when there are paragraphs
1648
- * Info Box Module - Layout broken in specific scenarios
1649
- * HTML and Content Modules - Issues with disabled/enabled CSS
1650
- * Text Module - Responsive font size and line height not working when there are paragraphs
1651
- * Issue with background images on phones
1652
- * Rows - Horizontal margin option not working properly
1653
-
1654
-
1655
-
1656
- = 1.0.5.2 - released on CodeCanyon before moving to WordPress.org =
1657
-
1658
- = Improvements in Live Composer page builder code =
1659
-
1660
- * Blog Module - Button can now be aligned ( left, center, right ) irrelevant of the alignment of the main area
1661
- * Blog Module - Responsive options to change vertical and horizontal padding on the wrapper added
1662
- * Option tooltips ( help text ) now have a (x) in top right for closing them.
1663
- * Widgets Module - Help text ( tooltip ) added explaining where to register sidebars
1664
- * Some minor code improvements
1665
-
1666
- = Bugs =
1667
-
1668
- * Excerpt Module - Styling options not working properly
1669
- * Issue with dropping visual builder modules not working inside of a duplicated row
1670
- * Downloads and Partners Module - Links not pointing to the single post page
1671
- * Downloads and Partners Module - Wrong labels on "Link" option
1672
- * Info Box Module - Button not going away when the URL option is empty
1673
-
1674
-
1675
-
1676
- = 1.0.5.1 - released on CodeCanyon before moving to WordPress.org =
1677
-
1678
- = Improvements in frontend page editor code =
1679
-
1680
- * Button Module - Option to set the button to full width
1681
- * Info Box Module - Secondary button ( with it's own styling options ) added
1682
- * Text Module - Background Image options added ( image, repeat, attachment, position )
1683
- * Partners Module - Option to turn off linking to a single partner page
1684
- * Download Module - Option to turn off linking to a single download page
1685
- * Text Module - OL and UL now have separate list type options
1686
- * All the categories renamed to contain the post type ( Categories -> Projects Categories ) for easier management on pages like the Menus
1687
- * Removed MediaElement JS and CSS, it now uses the one that come with WordPress.
1688
- * Automatically add a row in Live Composer visual editor mode if there's no site builder content
1689
-
1690
- = Bugs =
1691
-
1692
- * Using a textarea in the WYSIWYG editor ( text module, accordion, table ) broke the page
1693
- * Issue with styling presets including some functionaity options
1694
- * Issue with our frontend builder powered category archives not working in some cases
1695
-
1696
- = For Developers using front-end page builder=
1697
-
1698
- Ability for theme authors to override the drag-and-drop dashboard updates feature until they test their theme with the latest version.
1699
-
1700
- define( 'THEME_LC_VER', '1.0.5.1' );
1701
-
1702
- If you set that in your theme's functions.php, when our website builder 1.0.5.2 is released it won't show up until you change it to 1.0.5.2 ( or greater ).
1703
-
1704
-
1705
-
1706
- = 1.0.5 - released on CodeCanyon before moving to WordPress.org =
1707
-
1708
- = Bigger Changes =
1709
-
1710
- * Archive Creation
1711
- Front-end Page Builder is expanding it's influence, you can now create archive ( ex. category ) pages with it as well. In WordPress Admin > Live Composer > Archive Setting you can set which page should be used as the archive page. All the posts modules will automatically show the correct category when used on an archive page.
1712
- * Styling Presets
1713
- Best way to explain it is with an example. Let's say you use the text module with the same styling on multiple pages and you decide to change the styling. You'd need to change each of those text modules separately, which takes more time than it should. Not anymore, you can now apply presets to modules and then changes to one of those modules will automatically apply to all the other ones that uses that preset. You will find the presets options in each module under Styling > Presets.
1714
- * Size of LC visual editor generated data
1715
- The size of the data generated by front end page Page Builder ( all the info about builder modules on a page ) has been drastically reduced, up to 95% from what it used to be.
1716
- * Translation Compatibility
1717
- Live Composer layout builder wasn't fully translatable ( to be honest most of it wasn't translatable ), but that's fixed now, you can properly translate it to your language. Much of the code had to be changed in order to achieve this but it's worth it.
1718
-
1719
- = Improvements in drag-and-drop page builder code =
1720
-
1721
- * Button Module - Option to disable icon
1722
- * Button Module - Options to change the position ( left, center, right ) separately for tablet and phone
1723
- * Widgets Module - Styling options for lists
1724
- * Text Module - Responsive options for h1 element
1725
- * Text Module - Styling options for lists
1726
- * Info Box Module - Link target option
1727
- * Progress Bar Module - Animation speed option
1728
- * All Posts Modules - Exclude current post ( if on a post page )
1729
- * All Posts Modules - Options to include and exclude posts by ID
1730
- * Accordion Module - Option to choose which item is active by default ( can also be set to 0 so all are closed )
1731
- * Modals ( like the modal that asks if you're sure you want to disable front-end layout builder ) - Keyboard shortcuts ( confirm on enter, cancel on escape )
1732
- * Modules scroller now scrolls 2 modules at a time
1733
- * Comments and Comment Form Modules are now available for pages
1734
- * Colorpicker - Styling Improvements
1735
- * Thumbnail Module - Option to set the width and height for the thumbnail to be resized to
1736
- * Comment Form - Link styling options
1737
-
1738
- = Bugs =
1739
-
1740
- * Comment Form Module - Layout issue with comment replies on phone
1741
- * Meta Module - Comments link not linking to the comments
1742
- * Meta Module - Color option not working
1743
- * Blog Module - Issue with separator when there's a sticky post
1744
- * Issue with the modules scroller getting stuck on a post when builder modules are filtered
1745
- * Issue with inline styling in the editor
1746
- * Issue with the function that checks if a module is active
1747
- * Prev/Next pagination option not working properly
1748
- * Issue with columns not getting correct size on module row duplication
1749
- * Cyrillic fonts not working properly
1750
-
1751
-
1752
-
1753
- = 1.0.4.5 - released on CodeCanyon before moving to WordPress.org =
1754
-
1755
- = Bugs =
1756
-
1757
- * Sometimes when editing text ( the WYSIWYG ) the current content does not show in the editor
1758
- * Meta Module - Class issue
1759
- * Tabs & Accordion Modules - Backspace not working when editing titles
1760
- * Product Module - Altering defaults does not work
1761
-
1762
- = Improvements in website builder code =
1763
-
1764
- * All Post Modules - Do not show any of the thumbnail elements if post does not have a thumbnail
1765
- * All Post Modules - Newer/Older ( Prev/Next ) pagination option added
1766
- * Image Module - Options to resize the image's height and width
1767
- * 71 new icons ( Font Awesome 4.1 )
1768
- * Staff Module - Option to enable/disable linking to the single staff member page
1769
- * Separator - Thickness option
1770
- * Load the fonts that are needed for frontend builder visual mode only when layout builder is active
1771
-
1772
-
1773
-
1774
- = 1.0.4.4 - released on CodeCanyon before moving to WordPress.org =
1775
-
1776
- = Bugs =
1777
-
1778
- * Password protected front-end Builder pages didn't show the password prompt
1779
- * Error when a module that no longer exists is on a page
1780
- * Error when a styling option is added in functionality section
1781
- * Meta Module - All cateogies/tags were shown instead only the ones that are attached to the post.
1782
- * Infobox Module - Title slashes issue
1783
-
1784
- = Improvements in landing page builder code =
1785
-
1786
- * Single Post Module now available when templating system disabled
1787
- * Removed fadeIn/fadeOut animations on module/area/row hover for a more smoother experience ( fading slowed things down )
1788
- * Contributors added as a possible option for access control
1789
- * No calling of WebFont when the font is a regular one
1790
- * All Modules - Justify added as text align option
1791
- * Text Module - Content styling changes now affect paragraphs as well
1792
- * Text Module - Margin bottom option for paragraphs
1793
- * Blog Module - Additional class added for blog posts regarding their format, blog-post-format-THEFORMAT
1794
- * Meta Module - The categories/tags now link to their archive page
1795
-
1796
-
1797
-
1798
- = 1.0.4.3 - released on CodeCanyon before moving to WordPress.org =
1799
-
1800
- = Bugs =
1801
-
1802
- * Next tutorial link ( at the end of a tutorial ) not working
1803
- * CSS issues with comments module
1804
- * Testimonials slug wrong
1805
- * Single download page returns 404
1806
- * Gallery Slider Module - Default animation type wrong
1807
- * Gallery Slider Module - Width sligtly bigger than container
1808
- * Gallery Slider Module - Border Radius not affecting image
1809
- * Testimonials Module - Layout issue when author set on right side
1810
- * Meta Module - The spacing option ( between the meta sections ) affects each category ( and tag ) making too much spacing
1811
- * WYSIWYG Editor - Some actions broken ( WordPress 3.9 related )
1812
- * Accordion and Tabs content editing broken
1813
-
1814
- = Improvements in drag and drop visual editor code =
1815
-
1816
- * Do shortcode on [dslc_custom_field] shortcode output
1817
- * Thumbnail Module - Bottom margin option
1818
-
1819
-
1820
-
1821
- = 1.0.4.2 - released on CodeCanyon before moving to WordPress.org =
1822
-
1823
- = Fixes =
1824
-
1825
- * WordPress classes on non-singular pages ( archive, search, homepage ) overwritten by front end site editor and in some cases an error shown.
1826
- * Columns break when a post doesn't have a thumbnail.
1827
- * Module options tabs don't get hidden on save/cancel ( specific scenario only )
1828
- * The WYSIWYG editor shows processed shortcodes ( instead of a call it turns into the HTML output )
1829
-
1830
-
1831
-
1832
- = 1.0.4.1 - released on CodeCanyon before moving to WordPress.org =
1833
-
1834
- = Fixes =
1835
-
1836
- * Issue with text not being editable in some modules ( button, notification... )
1837
- * Templates not showing in admin
1838
-
1839
-
1840
-
1841
- = 1.0.4 - released on CodeCanyon before moving to WordPress.org =
1842
-
1843
- = Fixes =
1844
-
1845
- * Issue with Comments Form module
1846
- * Instagram duplicated in Social Module
1847
- * Conflict with another drag and drop feature from a theme
1848
- * Bug when changing the builder modules filter when the modules listing is scrolled
1849
- * Page scrolls to top when changing vertical padding on a row
1850
- * Issue with parallax feature on long pages
1851
- * Product price CSS issue
1852
- * Carousel item spacing not correct
1853
- * Icons not being properly centered
1854
- * Error messages on 404 page
1855
- * Issue with content not being properly returned when no Live Composer webite builder content added ( on some themes )
1856
- * Backspace key ( when not in an input ) going back to previous page
1857
- * Products Module - When title and categories disabled the whole main area disapears
1858
- * Issue with Text module styling options not being properly applied
1859
- * On some themes media modal ( adding an image ) goes behind some elements
1860
- * In Chrome the module helper ( blue square when dragging a module from the list ) position issue
1861
- * Templates list scroller not working
1862
- * If content editor modules has padding the masonry does not calculate properly and brakes the layout
1863
- * Issue with the !important option for CSS
1864
- * Issue with parallax on mobile ( now switched to regular BG when on mobile )
1865
- * Meta Module - Styling issues
1866
- * Google fonts not working properly on https
1867
- * Default state of colorpickers in row options not correct
1868
-
1869
- = Improvements in front end page editor code =
1870
-
1871
- * Allow DISQUS to take over the Comments module
1872
- * Possibility to set "max width" in percentages
1873
- * Allow theme/plugin developers to alter which post type will use the "post templates" system and which one will behave normally ( like a page )
1874
- * Option to put thumbnail aside of content ( like in blog module ) for all posts modules
1875
- * Ask for confirmation when deleting a row, area or a module
1876
- * Use WordPress WYSIWYG editor for Text module
1877
- * Option to show full content instead of excerpts in all posts modules
1878
- * Enable HTML editing for tabs and accordion contents
1879
- * Widget Module - Styling options for lists
1880
- * Text and HTML modules - Styling for H1
1881
- * All Posts Modules - Option to disable row separator
1882
- * All Posts Modules - Do not output the main area when all the main area elements are disabled
1883
- * All Posts Modules - Option to set width for the thumbnail to be resized to
1884
- * All Posts Modules - Call shortcode on excerpt output
1885
- * All Posts Modules - .dslc-post-no-thumb class on .dslc-post element when the post does not have a thumbnail
1886
- * Blog Module - Avatar added
1887
- * Meta Module - Avatar added
1888
- * Switch tabs to regular content with headings on mobile
1889
-
1890
- = New =
1891
-
1892
- * "In VieWordPressort" animations for visual composer modules
1893
- * Option to turn off columns spacing in a row
1894
- * Access Control
1895
- * Interactive Tutorials ( like on the demo ) accessible on any installation
1896
- * Option to set custom classes and IDs for rows
1897
- * All Posts Module - Option to put the main area inside of the thumbnail animation options position options
1898
- * Row Export/Import
1899
- * The Excerpt - New Module
1900
- * For Developers - Generation of code needed for altering module defaults
1901
-
1902
-
1903
-
1904
- = 1.0.3 - released on CodeCanyon before moving to WordPress.org =
1905
-
1906
- = Fixes =
1907
-
1908
- * Numerous notices in the Live Composer visual editor backend builder settings.
1909
- * Blog Module - General styling options weren't affecting anything.
1910
- * Issue with the column layout braking in some cases.
1911
- * Issue with a specific popular theme that made the layout ( width ) options not show on click.
1912
-
1913
- = Improvements in frontend page editor code =
1914
-
1915
- * Product Thumbnail now links to the LC landing page generator post
1916
- * Colorpicker replaced with a better one ( accepts alpha/transparency )
1917
- * Text Module - More styling options for the headings (h2, h3, h4, h5, h6 ) like bg, padding, border...
1918
-
1919
- = New =
1920
-
1921
- * Live Composer website builder Dashboard updates system integrated. ( known as "Automatic Updates" ).
1922
- * Translation Ready
1923
- * Feature Control ( ability to enable/disable page builder modules )
1924
- * Posts Module - Displays posts from any post type registered ( plugins can be used to create custom post types )
1925
- * Option to force !important on CSS rules made by Drag and Drop Page Builder ( in case the theme's CSS overwrites LC website builder CSS )
1926
-
1927
-
1928
-
1929
- = 1.0.2 - released on CodeCanyon before moving to WordPress.org =
1930
-
1931
- = Fixes =
1932
-
1933
- * When the columns do not amount to 12/12 ( 10/12 + 4/12 ), the columns in the next rows were broken.
1934
- * Page content ( from WYSIWYG editor ) was showing when you activate the Live Composer front end editor mode on a page without website builder website content.
1935
- * Input height on save and load template popups
1936
- * The carousel was forced to 4 columns on <1199px, 3 on <980px and 2 on <768px ( owlCarousel plugin defaults )
1937
- * On some WordPress themes the post title options ( 6 website builder modules ) weren't affecting the post title.
1938
- * RTL ( right-to-left content orientation ) fixes.
1939
- * In some themes the row controls weren't positioned properly.
1940
-
1941
- = Improvements in Drag and Drop layout builder code =
1942
-
1943
- * On some themes the visual composer content was not showing, the whole logic behind figuring out if it should show or not is rewritten.
1944
- * Staff Module. New option added to choose whether the social links open in a new tab or not ( Functionality ? Other ).
1945
- * Galleries Module. Option to show the gallery lightbox on thumbnail/title click ( Functionality ? Other ).
1946
-
1947
- = New =
1948
-
1949
- * Shortcode for outputing a custom field value. [dslc_custom_field id="FIELD_ID" post_id="POST_ID"]. Use the post_id parameter only if you want to output the custom field value of a specific post/page, leave empty for dynamic.
1950
- * Possibility to programmatically change the default option values of existing visual composer modules. Main purpose is to let theme developers that want to use visual composer in their theme set the defaults to fit their design. More info will be in a dev tutorial.
1951
- * The <body> will have "dslc-page" class if the currently shown post/page has website builder powered content. Main purpose is so Drag and Drop Visual Composer users can easily target the content wrapper of the theme and make it full-width only for landing page creator without affecting the regular pages powered by the theme.
1952
-
1953
-
1954
-
1955
- = 1.0.1 - released on CodeCanyon before moving to WordPress.org =
1956
-
1957
- = Fixes =
1958
-
1959
- * The drag and drop helper element had an offset bug in Chrome v32 based on how far the page was scrolled.
1960
- * Setting row vertical padding to 0px was defaulting to 50px.
1961
- * Height of the select input field was short in Safari.
1962
- * Issue where a module already added on a page was not getting the default value of a newly introduced option.
1963
- * Website builder options were not showing in the WordPress admin.
1964
- * Had issue with another plugin that was hooking into get posts filter and using some WordPress variables that weren't ready at the point when our drag and drop front end editor used get_posts function.
1965
- * Fatal Error with themes that had Aqua Resizer script but no conditional to check if it was already defined.
1966
- * Om some themes, the CSS from the theme was influencing the height of the module/row option form fields.
1967
- * For some themes the content of landing page composer wasn't showing, the logic behind figuring out when it should show is improved now.
1968
- * The add to cart and details links didn't have correct links in the products module.
1969
-
1970
- = Improvements in visual landing page composer code =
1971
-
1972
- * All posts modules now have a new option, offset to set how many posts to skip. Good for building a magazine layout.
1973
- * Product Module - Options to change the "Add to cart" and "Details" text.
1974
-
1975
- = New =
1976
-
1977
- * HTML builder module. Use it for custom HTML and for calling shortcodes ( most importantly for the shortcodes, since the text module was parsing them imediately which made it imposible to edit the shortcode after that ).
1978
- * Content builder module. Output the page's content ( from the WYSIWYG editor ).
1979
-
1980
-
1981
-
1982
- = 1.0 - released on CodeCanyon before moving to WordPress.org =
1983
-
1984
- * Initial release
1
+ === Page Builder: Live Composer – drag and drop website builder ===
2
  Contributors: LiveComposer
3
+ Tags: page builder, landing page builder, frontend page builder, drag and drop page builder, website builder
4
  Requires at least: 4.7
5
  Tested up to: 5.2
6
+ Stable tag: 1.4.5
7
  License: GPLv3
8
 
9
  Front-end page builder for WordPress with drag and drop editing. Build PRO responsive websites and landing pages. Visually customize any page element.
12
 
13
  = 👓 Create Stunning Websites Visually =
14
 
15
+ [Live Composer page builder](https://livecomposerplugin.com/) is a complete and feature-reach website builder for WordPress. In our page builder, you get most of the features for free paying only for [Woo-Commerce support](https://livecomposerplugin.com/downloads/woocommerce-page-builder/?utm_source=wp-admin&utm_medium=changelog&utm_campaign=woo-integration) and [advanced integrations](https://livecomposerplugin.com/downloads/extensions/?utm_source=wp-admin&utm_medium=changelog&utm_campaign=add-ons) (ACF, CPT, Mega Menus). Create stunning custom page designs in real-time. Drag & drop front-end editing is an entirely intuitive way to create and customize great looking websites.
16
 
17
+ Do it yourself with easy content editing in real-time. Save your money on expensive coding and customization services. No tech skills needed to create professional websites in our page builder. Live Composer is an excellent tool for web designers, digital marketing specialists, WordPress theme developers, and freelance consultants. Learn our page builder once and cut your website building time with every next project. Create an exceptional landing page, portfolio, or fully featured pro website for your client.
18
 
19
  = 🏆 Over 50,000 Site Owners Chose Live Composer page builder =
20
 
21
+ You can trust our plugin. 100% open source page builder backed by the experienced team of web developers. Our page builder on the market for 5 years. All significant bugs already fixed and new updates released regularly. Every day our developers work on code improvements and new features. With a purchase of any [premium extension](https://livecomposerplugin.com/downloads/extensions/?utm_source=wp-admin&utm_medium=changelog&utm_campaign=add-ons), you also getting access to our exceptional one-to-one support.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
22
 
23
  = 📱 Mobile Responsive Page Builder =
24
 
25
  It's easy to create responsive websites in our page builder. You can customize the responsive presentation of any page element to make it looks perfect on all mobile devices, ensuring your site is mobile-ready.
26
 
27
+ = Gutenberg Compatible =
28
+
29
+ Out page builder does not affect your Gutenberg plugin usage and can work alongside with new WordPress block editor.
30
 
31
  == Installation ==
32
 
33
+ Install and Activate our page builder from your WordPress admin like any other plugin
34
 
35
  == Frequently Asked Questions ==
36
 
37
+ = How do I activate the page builder on a page? =
38
 
39
+ When you visit a page you'll see a green "activate editor" button in the bottom right corner, click that, and the page will reload with page builder ready to use.
40
 
41
  = Why is the "activate editor" button missing from the homepage =
42
 
43
+ In most of the cases, this is because the homepage is not a real WordPress page, it's custom content generated by the theme's index.php. Publish a new page and set it as the homepage ( WP Admin > Settings > Reading > Front Page ). Now you can use a page builder on the homepage too.
44
 
45
  == Screenshots ==
46
 
47
+ 1. The page builder in editing mode
48
 
49
  == Changelog ==
50
 
51
+ ⭐⭐⭐ NEW PLUGIN: STYLIST – ADDITIONAL STYLING FOR ANY SITE ELEMENT [ https://wordpress.org/plugins/stylist/ ](https://wordpress.org/plugins/stylist/)
52
 
53
+ = DID YOU FIND A BUG IN OUR PAGE BUILDER? =
54
  * 🐛 [Please, report any bugs on GitHub](https://github.com/livecomposer/live-composer-page-builder/issues/)
55
  * ⌛ [You can download any previous version here](https://github.com/live-composer/live-composer-page-builder/releases)
56
 
58
  * 🦊 [Check out our WooCommerce Page Builder Extension](https://livecomposerplugin.com/downloads/woocommerce-page-builder/?utm_source=wp-admin&utm_medium=changelog&utm_campaign=woo-integration)
59
  * 👀 [We keep updating and improving our extensions pack](https://livecomposerplugin.com/downloads/extensions/?utm_source=wp-admin&utm_medium=changelog&utm_campaign=add-ons) ACF + CPT + MegaMenu + 9 more add-ons.
60
 
61
+ = 1.4.5 - June 14 2019 =
62
+ * Code clean-up and improvements.
63
+
64
  = 1.4.4 - May 23rd 2019 =
65
  * 🕷 Bug: WordPress automatically create a page when defining the image title in LC.
66
  * 🆕 New text shortcode: [dslc_bloghome] – Outputs the blog index page URL ( home_url() ).
84
 
85
  = Improved: =
86
  * Issue [#966](https://github.com/live-composer/live-composer-page-builder/issues/966): Delete Advertising Bar