Version Description
- Option type
popup
fixes - Added "Show/Hide other extensions" button #307
-
fw.soleModal
addedafterOpen
andafterClose
callbacks #379 - Fixed #432, #408
Download this release
Release Info
Developer | Unyson |
Plugin | Unyson |
Version | 2.2.7 |
Comparing to | |
See all releases |
Code changes from version 2.2.6 to 2.2.7
- framework/core/components/extensions/manager/class--fw-extensions-manager.php +1 -1
- framework/core/components/extensions/manager/static/extensions-page.css +1 -1
- framework/core/components/extensions/manager/views/extension.php +17 -7
- framework/core/components/extensions/manager/views/extensions-page.php +45 -6
- framework/includes/option-types/color-picker/class-fw-option-type-color-picker.php +2 -1
- framework/includes/option-types/gradient/class-fw-option-type-gradient.php +3 -0
- framework/includes/option-types/init.php +3 -1
- framework/includes/option-types/popup/class-fw-option-type-popup.php +51 -23
- framework/includes/option-types/popup/static/js/popup.js +2 -1
- framework/includes/option-types/wp-editor/class-fw-option-type-wp-editor.php +1 -0
- framework/manifest.php +1 -1
- framework/static/js/fw.js +11 -1
- readme.txt +7 -1
- unyson.php +1 -1
framework/core/components/extensions/manager/class--fw-extensions-manager.php
CHANGED
@@ -780,7 +780,7 @@ final class _FW_Extensions_Manager
|
|
780 |
|
781 |
echo '<h2>'. sprintf(__('%s Extensions', 'fw'), fw()->manifest->get_name()) .'</h2><br/>';
|
782 |
|
783 |
-
echo '<div id="fw-extensions-list-wrapper" style="opacity:
|
784 |
|
785 |
fw_render_view(dirname(__FILE__) .'/views/extensions-page.php', array(
|
786 |
'lists' => &$lists,
|
780 |
|
781 |
echo '<h2>'. sprintf(__('%s Extensions', 'fw'), fw()->manifest->get_name()) .'</h2><br/>';
|
782 |
|
783 |
+
echo '<div id="fw-extensions-list-wrapper" style="opacity:0;">';
|
784 |
|
785 |
fw_render_view(dirname(__FILE__) .'/views/extensions-page.php', array(
|
786 |
'lists' => &$lists,
|
framework/core/components/extensions/manager/static/extensions-page.css
CHANGED
@@ -187,4 +187,4 @@
|
|
187 |
margin-top: -2px;
|
188 |
}
|
189 |
|
190 |
-
/* end: form ajax loading */
|
187 |
margin-top: -2px;
|
188 |
}
|
189 |
|
190 |
+
/* end: form ajax loading */
|
framework/core/components/extensions/manager/views/extension.php
CHANGED
@@ -36,8 +36,23 @@ if (isset($lists['available'][$name])) {
|
|
36 |
$thumbnail = fw_akg('thumbnail', $lists['installed'][$name]['manifest'], $thumbnail);
|
37 |
}
|
38 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
?>
|
40 |
-
<div class="
|
41 |
<div class="inner">
|
42 |
<div class="fw-extension-list-item-table">
|
43 |
<div class="fw-extension-list-item-table-row">
|
@@ -81,12 +96,7 @@ if (isset($lists['available'][$name])) {
|
|
81 |
unset( $_links );
|
82 |
}
|
83 |
?>
|
84 |
-
<?php
|
85 |
-
if (
|
86 |
-
isset($lists['supported'][$name]) // is listed in the supported extensions list in theme manifest
|
87 |
-
||
|
88 |
-
($installed_data && $installed_data['is']['theme']) // is located in the theme
|
89 |
-
): ?>
|
90 |
<p><em><strong><span class="dashicons dashicons-yes"></span> <?php _e('Compatible', 'fw') ?></strong> <?php _e('with your current theme', 'fw') ?></em></p>
|
91 |
<?php endif; ?>
|
92 |
</div>
|
36 |
$thumbnail = fw_akg('thumbnail', $lists['installed'][$name]['manifest'], $thumbnail);
|
37 |
}
|
38 |
}
|
39 |
+
|
40 |
+
$is_compatible =
|
41 |
+
isset($lists['supported'][$name]) // is listed in the supported extensions list in theme manifest
|
42 |
+
||
|
43 |
+
($installed_data && $installed_data['is']['theme']); // is located in the theme
|
44 |
+
|
45 |
+
$wrapper_class = 'fw-col-xs-12 fw-col-lg-6 fw-extensions-list-item';
|
46 |
+
|
47 |
+
if ($installed_data && !$is_active) {
|
48 |
+
$wrapper_class .= ' disabled';
|
49 |
+
}
|
50 |
+
|
51 |
+
if (!$installed_data && !$is_compatible) {
|
52 |
+
$wrapper_class .= ' not-compatible';
|
53 |
+
}
|
54 |
?>
|
55 |
+
<div class="<?php echo esc_attr($wrapper_class) ?>" id="fw-ext-<?php echo esc_attr($name) ?>">
|
56 |
<div class="inner">
|
57 |
<div class="fw-extension-list-item-table">
|
58 |
<div class="fw-extension-list-item-table-row">
|
96 |
unset( $_links );
|
97 |
}
|
98 |
?>
|
99 |
+
<?php if ($is_compatible): ?>
|
|
|
|
|
|
|
|
|
|
|
100 |
<p><em><strong><span class="dashicons dashicons-yes"></span> <?php _e('Compatible', 'fw') ?></strong> <?php _e('with your current theme', 'fw') ?></em></p>
|
101 |
<?php endif; ?>
|
102 |
</div>
|
framework/core/components/extensions/manager/views/extensions-page.php
CHANGED
@@ -169,11 +169,50 @@ unset($data);
|
|
169 |
}
|
170 |
?>
|
171 |
</div>
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
178 |
<?php endif; ?>
|
179 |
</div>
|
169 |
}
|
170 |
?>
|
171 |
</div>
|
172 |
+
|
173 |
+
<?php if ($something_displayed): ?>
|
174 |
+
<!-- show/hide not compatible extensions -->
|
175 |
+
<p class="fw-text-center toggle-not-compat-ext-btn-wrapper"><?php
|
176 |
+
echo fw_html_tag(
|
177 |
+
'a',
|
178 |
+
array(
|
179 |
+
'href' => '#',
|
180 |
+
'onclick' => 'return false;',
|
181 |
+
'class' => 'button toggle-not-compat-ext-btn',
|
182 |
+
'style' => 'box-shadow:none;'
|
183 |
+
),
|
184 |
+
'<span class="the-show-text">'. __('Show other extensions', 'fw') .'</span>'.
|
185 |
+
'<span class="the-hide-text fw-hidden">'. __('Hide other extensions', 'fw') .'</span>'
|
186 |
+
);
|
187 |
+
?></p>
|
188 |
+
<script type="text/javascript">
|
189 |
+
jQuery(function($){
|
190 |
+
if (
|
191 |
+
!$('.fw-extensions-list .fw-extensions-list-item.not-compatible').length
|
192 |
+
||
|
193 |
+
<?php echo empty($lists['supported']) ? 'true' : 'false' ?>
|
194 |
+
) {
|
195 |
+
// disable the show/hide feature
|
196 |
+
$('#fw-extensions-list-wrapper .toggle-not-compat-ext-btn-wrapper').addClass('fw-hidden');
|
197 |
+
} else {
|
198 |
+
$('#fw-extensions-list-wrapper .fw-extensions-list .fw-extensions-list-item.not-compatible').fadeOut('fast');
|
199 |
+
|
200 |
+
$('#fw-extensions-list-wrapper .toggle-not-compat-ext-btn-wrapper').on('click', function(){
|
201 |
+
$('#fw-extensions-list-wrapper .fw-extensions-list .fw-extensions-list-item.not-compatible')[
|
202 |
+
$(this).find('.the-hide-text').hasClass('fw-hidden') ? 'fadeIn' : 'fadeOut'
|
203 |
+
]();
|
204 |
+
|
205 |
+
$(this).find('.the-show-text, .the-hide-text').toggleClass('fw-hidden');
|
206 |
+
});
|
207 |
+
}
|
208 |
+
});
|
209 |
+
</script>
|
210 |
+
<!-- end: show/hide not compatible extensions -->
|
211 |
+
<?php else: ?>
|
212 |
+
<script type="text/javascript">
|
213 |
+
jQuery(function($){
|
214 |
+
$('#fw-extensions-list-available').remove();
|
215 |
+
});
|
216 |
+
</script>
|
217 |
<?php endif; ?>
|
218 |
</div>
|
framework/includes/option-types/color-picker/class-fw-option-type-color-picker.php
CHANGED
@@ -24,11 +24,12 @@ class FW_Option_Type_Color_Picker extends FW_Option_Type
|
|
24 |
);
|
25 |
|
26 |
wp_enqueue_script('wp-color-picker');
|
|
|
27 |
|
28 |
wp_enqueue_script(
|
29 |
'fw-option-'. $this->get_type(),
|
30 |
fw_get_framework_directory_uri('/includes/option-types/'. $this->get_type() .'/static/js/scripts.js'),
|
31 |
-
array('fw-events'),
|
32 |
fw()->manifest->get_version(),
|
33 |
true
|
34 |
);
|
24 |
);
|
25 |
|
26 |
wp_enqueue_script('wp-color-picker');
|
27 |
+
wp_enqueue_script('fw-events');
|
28 |
|
29 |
wp_enqueue_script(
|
30 |
'fw-option-'. $this->get_type(),
|
31 |
fw_get_framework_directory_uri('/includes/option-types/'. $this->get_type() .'/static/js/scripts.js'),
|
32 |
+
array('jquery', 'fw-events'),
|
33 |
fw()->manifest->get_version(),
|
34 |
true
|
35 |
);
|
framework/includes/option-types/gradient/class-fw-option-type-gradient.php
CHANGED
@@ -27,6 +27,9 @@ class FW_Option_Type_Gradient extends FW_Option_Type
|
|
27 |
array(),
|
28 |
fw()->manifest->get_version()
|
29 |
);
|
|
|
|
|
|
|
30 |
wp_enqueue_script(
|
31 |
'fw-option-' . $this->get_type(),
|
32 |
fw_get_framework_directory_uri('/includes/option-types/' . $this->get_type() . '/static/js/scripts.js'),
|
27 |
array(),
|
28 |
fw()->manifest->get_version()
|
29 |
);
|
30 |
+
|
31 |
+
fw()->backend->option_type('color-picker')->enqueue_static();
|
32 |
+
|
33 |
wp_enqueue_script(
|
34 |
'fw-option-' . $this->get_type(),
|
35 |
fw_get_framework_directory_uri('/includes/option-types/' . $this->get_type() . '/static/js/scripts.js'),
|
framework/includes/option-types/init.php
CHANGED
@@ -20,7 +20,6 @@ require $dir . '/date-picker/class-fw-option-type-wp-date-picker.php';
|
|
20 |
require $dir . '/addable-option/class-fw-option-type-addable-option.php';
|
21 |
require $dir . '/addable-box/class-fw-option-type-addable-box.php';
|
22 |
require $dir . '/addable-popup/class-fw-option-type-addable-popup.php';
|
23 |
-
require $dir . '/multi-select/class-fw-option-type-multi-select.php';
|
24 |
require $dir . '/map/class-fw-option-type-map.php';
|
25 |
require $dir . '/datetime-range/class-fw-option-type-datetime-range.php';
|
26 |
require $dir . '/datetime-picker/class-fw-option-type-datetime-picker.php';
|
@@ -29,3 +28,6 @@ require $dir . '/popup/class-fw-option-type-popup.php';
|
|
29 |
require $dir . '/slider/class-fw-option-type-slider.php';
|
30 |
require $dir . '/range-slider/class-fw-option-type-range-slider.php';
|
31 |
require $dir . '/rgba-color-picker/class-fw-option-type-rgba-color-picker.php';
|
|
|
|
|
|
20 |
require $dir . '/addable-option/class-fw-option-type-addable-option.php';
|
21 |
require $dir . '/addable-box/class-fw-option-type-addable-box.php';
|
22 |
require $dir . '/addable-popup/class-fw-option-type-addable-popup.php';
|
|
|
23 |
require $dir . '/map/class-fw-option-type-map.php';
|
24 |
require $dir . '/datetime-range/class-fw-option-type-datetime-range.php';
|
25 |
require $dir . '/datetime-picker/class-fw-option-type-datetime-picker.php';
|
28 |
require $dir . '/slider/class-fw-option-type-slider.php';
|
29 |
require $dir . '/range-slider/class-fw-option-type-range-slider.php';
|
30 |
require $dir . '/rgba-color-picker/class-fw-option-type-rgba-color-picker.php';
|
31 |
+
if (!class_exists('FW_Option_Type_Multi_Select')) {
|
32 |
+
require $dir . '/multi-select/class-fw-option-type-multi-select.php';
|
33 |
+
}
|
framework/includes/option-types/popup/class-fw-option-type-popup.php
CHANGED
@@ -2,6 +2,11 @@
|
|
2 |
die( 'Forbidden' );
|
3 |
}
|
4 |
|
|
|
|
|
|
|
|
|
|
|
5 |
class FW_Option_Type_Popup extends FW_Option_Type {
|
6 |
public function _get_backend_width_type() {
|
7 |
return 'fixed';
|
@@ -11,17 +16,16 @@ class FW_Option_Type_Popup extends FW_Option_Type {
|
|
11 |
* @internal
|
12 |
* {@inheritdoc}
|
13 |
*/
|
14 |
-
protected function _enqueue_static($id, $option, $data)
|
15 |
-
{
|
16 |
wp_enqueue_style(
|
17 |
'fw-option-' . $this->get_type(),
|
18 |
-
fw_get_framework_directory_uri('/includes/option-types/' . $this->get_type() . '/static/css/styles.css'),
|
19 |
array( 'fw' )
|
20 |
);
|
21 |
|
22 |
wp_enqueue_script(
|
23 |
'fw-option-' . $this->get_type(),
|
24 |
-
fw_get_framework_directory_uri('/includes/option-types/' . $this->get_type() . '/static/js/' . $this->get_type() . '.js'),
|
25 |
array( 'underscore', 'fw-events', 'jquery-ui-sortable', 'fw' ),
|
26 |
false,
|
27 |
true
|
@@ -45,30 +49,27 @@ class FW_Option_Type_Popup extends FW_Option_Type {
|
|
45 |
protected function _render( $id, $option, $data ) {
|
46 |
unset( $option['attr']['name'], $option['attr']['value'] );
|
47 |
|
48 |
-
$option['attr']['data-for-js'] = json_encode(array(
|
49 |
-
'title' => ( $option['popup-title'] ) ? $option['popup-title'] : $option['label'],
|
50 |
'options' => $this->transform_options( $option['popup-options'] ),
|
51 |
-
'button' => $option['button']
|
52 |
-
|
|
|
53 |
|
54 |
-
if (!empty($data['value'])) {
|
55 |
-
if (is_array($data['value'])) {
|
56 |
-
$data['value'] = json_encode($data['value']);
|
57 |
}
|
58 |
} else {
|
59 |
$data['value'] = '';
|
60 |
}
|
61 |
|
62 |
-
$sortable_image = fw_get_framework_directory_uri('/static/img/sort-vertically.png');
|
63 |
|
64 |
-
return fw_render_view( fw_get_framework_directory('/includes/option-types/' . $this->get_type() . '/views/view.php' ),
|
|
|
65 |
}
|
66 |
|
67 |
-
/*
|
68 |
-
* Puts each option into a separate array
|
69 |
-
* to keep it's order inside the modal dialog
|
70 |
-
*/
|
71 |
-
|
72 |
/**
|
73 |
* Option's unique type, used in option array in 'type' key
|
74 |
* @return string
|
@@ -80,7 +81,7 @@ class FW_Option_Type_Popup extends FW_Option_Type {
|
|
80 |
private function transform_options( $options ) {
|
81 |
$new_options = array();
|
82 |
foreach ( $options as $id => $option ) {
|
83 |
-
if (is_int($id)) {
|
84 |
/**
|
85 |
* this happens when in options array are loaded external options using fw()->theme->get_options()
|
86 |
* and the array looks like this
|
@@ -91,7 +92,7 @@ class FW_Option_Type_Popup extends FW_Option_Type {
|
|
91 |
*/
|
92 |
$new_options[] = $option;
|
93 |
} else {
|
94 |
-
$new_options[] = array($id => $option);
|
95 |
}
|
96 |
}
|
97 |
|
@@ -109,7 +110,21 @@ class FW_Option_Type_Popup extends FW_Option_Type {
|
|
109 |
* @internal
|
110 |
*/
|
111 |
protected function _get_value_from_input( $option, $input_value ) {
|
112 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
113 |
return $values;
|
114 |
}
|
115 |
|
@@ -129,9 +144,22 @@ class FW_Option_Type_Popup extends FW_Option_Type {
|
|
129 |
*/
|
130 |
protected function _get_defaults() {
|
131 |
return array(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
132 |
'popup-options' => array(),
|
133 |
-
|
134 |
-
|
|
|
|
|
135 |
);
|
136 |
}
|
137 |
|
2 |
die( 'Forbidden' );
|
3 |
}
|
4 |
|
5 |
+
/**
|
6 |
+
* Unyson option type that allows to group option in a popup window
|
7 |
+
*
|
8 |
+
* Class FW_Option_Type_Popup
|
9 |
+
*/
|
10 |
class FW_Option_Type_Popup extends FW_Option_Type {
|
11 |
public function _get_backend_width_type() {
|
12 |
return 'fixed';
|
16 |
* @internal
|
17 |
* {@inheritdoc}
|
18 |
*/
|
19 |
+
protected function _enqueue_static( $id, $option, $data ) {
|
|
|
20 |
wp_enqueue_style(
|
21 |
'fw-option-' . $this->get_type(),
|
22 |
+
fw_get_framework_directory_uri( '/includes/option-types/' . $this->get_type() . '/static/css/styles.css' ),
|
23 |
array( 'fw' )
|
24 |
);
|
25 |
|
26 |
wp_enqueue_script(
|
27 |
'fw-option-' . $this->get_type(),
|
28 |
+
fw_get_framework_directory_uri( '/includes/option-types/' . $this->get_type() . '/static/js/' . $this->get_type() . '.js' ),
|
29 |
array( 'underscore', 'fw-events', 'jquery-ui-sortable', 'fw' ),
|
30 |
false,
|
31 |
true
|
49 |
protected function _render( $id, $option, $data ) {
|
50 |
unset( $option['attr']['name'], $option['attr']['value'] );
|
51 |
|
52 |
+
$option['attr']['data-for-js'] = json_encode( array(
|
53 |
+
'title' => ( isset( $option['popup-title'] ) ) ? $option['popup-title'] : ( string ) $option['label'],
|
54 |
'options' => $this->transform_options( $option['popup-options'] ),
|
55 |
+
'button' => $option['button'],
|
56 |
+
'size' => $option['size']
|
57 |
+
) );
|
58 |
|
59 |
+
if ( ! empty( $data['value'] ) ) {
|
60 |
+
if ( is_array( $data['value'] ) ) {
|
61 |
+
$data['value'] = json_encode( $data['value'] );
|
62 |
}
|
63 |
} else {
|
64 |
$data['value'] = '';
|
65 |
}
|
66 |
|
67 |
+
$sortable_image = fw_get_framework_directory_uri( '/static/img/sort-vertically.png' );
|
68 |
|
69 |
+
return fw_render_view( fw_get_framework_directory( '/includes/option-types/' . $this->get_type() . '/views/view.php' ),
|
70 |
+
compact( 'id', 'option', 'data', 'sortable_image' ) );
|
71 |
}
|
72 |
|
|
|
|
|
|
|
|
|
|
|
73 |
/**
|
74 |
* Option's unique type, used in option array in 'type' key
|
75 |
* @return string
|
81 |
private function transform_options( $options ) {
|
82 |
$new_options = array();
|
83 |
foreach ( $options as $id => $option ) {
|
84 |
+
if ( is_int( $id ) ) {
|
85 |
/**
|
86 |
* this happens when in options array are loaded external options using fw()->theme->get_options()
|
87 |
* and the array looks like this
|
92 |
*/
|
93 |
$new_options[] = $option;
|
94 |
} else {
|
95 |
+
$new_options[] = array( $id => $option );
|
96 |
}
|
97 |
}
|
98 |
|
110 |
* @internal
|
111 |
*/
|
112 |
protected function _get_value_from_input( $option, $input_value ) {
|
113 |
+
if ( empty( $input_value ) ) {
|
114 |
+
$values = array();
|
115 |
+
|
116 |
+
if ( ! isset( $option['popup-options'] ) ) {
|
117 |
+
return array();
|
118 |
+
}
|
119 |
+
|
120 |
+
foreach ( $option['popup-options'] as $key => $op ) {
|
121 |
+
$values[ $key ] = isset( $op['value'] ) ? $op['value'] : null;
|
122 |
+
}
|
123 |
+
|
124 |
+
} else {
|
125 |
+
$values = json_decode( $input_value, true );
|
126 |
+
}
|
127 |
+
|
128 |
return $values;
|
129 |
}
|
130 |
|
144 |
*/
|
145 |
protected function _get_defaults() {
|
146 |
return array(
|
147 |
+
/*
|
148 |
+
* Popup button text
|
149 |
+
*/
|
150 |
+
'button' => __( 'Edit', 'fw' ),
|
151 |
+
/*
|
152 |
+
* Title text that will appear in popup header
|
153 |
+
*/
|
154 |
+
'popup-title' => null,
|
155 |
+
/*
|
156 |
+
* Array of options that you need to add in the popup
|
157 |
+
*/
|
158 |
'popup-options' => array(),
|
159 |
+
/*
|
160 |
+
* Array of default values for the popup options
|
161 |
+
*/
|
162 |
+
'value' => array()
|
163 |
);
|
164 |
}
|
165 |
|
framework/includes/option-types/popup/static/js/popup.js
CHANGED
@@ -15,7 +15,8 @@
|
|
15 |
utils = {
|
16 |
modal: new fw.OptionsModal({
|
17 |
title: data.title,
|
18 |
-
options: data.options
|
|
|
19 |
}),
|
20 |
editItem: function (item, values) {
|
21 |
item.find('input').val( JSON.stringify( values ) );
|
15 |
utils = {
|
16 |
modal: new fw.OptionsModal({
|
17 |
title: data.title,
|
18 |
+
options: data.options,
|
19 |
+
size : data.size
|
20 |
}),
|
21 |
editItem: function (item, values) {
|
22 |
item.find('input').val( JSON.stringify( values ) );
|
framework/includes/option-types/wp-editor/class-fw-option-type-wp-editor.php
CHANGED
@@ -48,6 +48,7 @@ class FW_Option_Type_Wp_Editor extends FW_Option_Type {
|
|
48 |
*/
|
49 |
'value' => '',
|
50 |
/**
|
|
|
51 |
* string
|
52 |
*/
|
53 |
'size' => 'small' // small, large
|
48 |
*/
|
49 |
'value' => '',
|
50 |
/**
|
51 |
+
* Set the editor size: small - small box, large - full size
|
52 |
* string
|
53 |
*/
|
54 |
'size' => 'small' // small, large
|
framework/manifest.php
CHANGED
@@ -4,4 +4,4 @@ $manifest = array();
|
|
4 |
|
5 |
$manifest['name'] = __('Unyson', 'fw');
|
6 |
|
7 |
-
$manifest['version'] = '2.2.
|
4 |
|
5 |
$manifest['name'] = __('Unyson', 'fw');
|
6 |
|
7 |
+
$manifest['version'] = '2.2.7';
|
framework/static/js/fw.js
CHANGED
@@ -1213,6 +1213,8 @@ fw.soleModal = (function(){
|
|
1213 |
width: 350
|
1214 |
height: 200
|
1215 |
hidePrevious: false // just replace the modal content or hide the previous modal and open it again with new content
|
|
|
|
|
1216 |
}
|
1217 |
*/
|
1218 |
],
|
@@ -1324,7 +1326,9 @@ fw.soleModal = (function(){
|
|
1324 |
showCloseButton: true,
|
1325 |
width: 350,
|
1326 |
height: 200,
|
1327 |
-
hidePrevious: false
|
|
|
|
|
1328 |
}, opts || {});
|
1329 |
|
1330 |
// hide close button if close is not allowed
|
@@ -1386,6 +1390,8 @@ fw.soleModal = (function(){
|
|
1386 |
}
|
1387 |
|
1388 |
this.currentMethodTimeoutId = setTimeout(_.bind(function() {
|
|
|
|
|
1389 |
this.currentMethod = '';
|
1390 |
|
1391 |
if (this.runPendingMethod()) {
|
@@ -1441,6 +1447,8 @@ fw.soleModal = (function(){
|
|
1441 |
if (this.queue.length && !this.queue[0].hidePrevious) {
|
1442 |
// replace content
|
1443 |
this.$getContent().fadeOut('fast', _.bind(function(){
|
|
|
|
|
1444 |
this.currentMethod = '';
|
1445 |
this.current = null;
|
1446 |
this.show();
|
@@ -1453,6 +1461,8 @@ fw.soleModal = (function(){
|
|
1453 |
this.$modal.addClass('fw-modal-closing');
|
1454 |
|
1455 |
this.currentMethodTimeoutId = setTimeout(_.bind(function(){
|
|
|
|
|
1456 |
this.currentMethod = '';
|
1457 |
|
1458 |
this.$modal.css('display', 'none');
|
1213 |
width: 350
|
1214 |
height: 200
|
1215 |
hidePrevious: false // just replace the modal content or hide the previous modal and open it again with new content
|
1216 |
+
afterOpen: function(){}
|
1217 |
+
afterClose: function(){}
|
1218 |
}
|
1219 |
*/
|
1220 |
],
|
1326 |
showCloseButton: true,
|
1327 |
width: 350,
|
1328 |
height: 200,
|
1329 |
+
hidePrevious: false,
|
1330 |
+
afterOpen: function(){},
|
1331 |
+
afterClose: function(){}
|
1332 |
}, opts || {});
|
1333 |
|
1334 |
// hide close button if close is not allowed
|
1390 |
}
|
1391 |
|
1392 |
this.currentMethodTimeoutId = setTimeout(_.bind(function() {
|
1393 |
+
this.current.afterOpen();
|
1394 |
+
|
1395 |
this.currentMethod = '';
|
1396 |
|
1397 |
if (this.runPendingMethod()) {
|
1447 |
if (this.queue.length && !this.queue[0].hidePrevious) {
|
1448 |
// replace content
|
1449 |
this.$getContent().fadeOut('fast', _.bind(function(){
|
1450 |
+
this.current.afterClose();
|
1451 |
+
|
1452 |
this.currentMethod = '';
|
1453 |
this.current = null;
|
1454 |
this.show();
|
1461 |
this.$modal.addClass('fw-modal-closing');
|
1462 |
|
1463 |
this.currentMethodTimeoutId = setTimeout(_.bind(function(){
|
1464 |
+
this.current.afterClose();
|
1465 |
+
|
1466 |
this.currentMethod = '';
|
1467 |
|
1468 |
this.$modal.css('display', 'none');
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: unyson, themefusecom
|
|
3 |
Tags: page builder, cms, grid, layout, responsive, back up, backup, db backup, dump, migrate, schedule, search engine optimization, seo, media, slideshow, shortcode, slide, slideshare, slideshow, google sitemaps, sitemaps, analytics, google analytics, calendar, event, events, google maps, learning, lessons, sidebars, breadcrumbs, review, portfolio, framework
|
4 |
Requires at least: 4.0.0
|
5 |
Tested up to: 4.1
|
6 |
-
Stable tag: 2.2.
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
@@ -86,6 +86,12 @@ Yes; Unyson will work with any theme.
|
|
86 |
|
87 |
== Changelog ==
|
88 |
|
|
|
|
|
|
|
|
|
|
|
|
|
89 |
= 2.2.6 =
|
90 |
* Fixed [#404](https://github.com/ThemeFuse/Unyson/issues/404)
|
91 |
* Added the Translation extension in Available Extensions list
|
3 |
Tags: page builder, cms, grid, layout, responsive, back up, backup, db backup, dump, migrate, schedule, search engine optimization, seo, media, slideshow, shortcode, slide, slideshare, slideshow, google sitemaps, sitemaps, analytics, google analytics, calendar, event, events, google maps, learning, lessons, sidebars, breadcrumbs, review, portfolio, framework
|
4 |
Requires at least: 4.0.0
|
5 |
Tested up to: 4.1
|
6 |
+
Stable tag: 2.2.7
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
86 |
|
87 |
== Changelog ==
|
88 |
|
89 |
+
= 2.2.7 =
|
90 |
+
* Option type `popup` fixes
|
91 |
+
* Added "Show/Hide other extensions" button [#307](https://github.com/ThemeFuse/Unyson/issues/307)
|
92 |
+
* `fw.soleModal` added `afterOpen` and `afterClose` callbacks [#379](https://github.com/ThemeFuse/Unyson/issues/379)
|
93 |
+
* Fixed [#432](https://github.com/ThemeFuse/Unyson/issues/432), [#408](https://github.com/ThemeFuse/Unyson/issues/408)
|
94 |
+
|
95 |
= 2.2.6 =
|
96 |
* Fixed [#404](https://github.com/ThemeFuse/Unyson/issues/404)
|
97 |
* Added the Translation extension in Available Extensions list
|
unyson.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: Unyson
|
4 |
* Plugin URI: http://unyson.themefuse.com/
|
5 |
* Description: A free drag & drop framework that comes with a bunch of built in extensions that will help you develop premium themes fast & easy.
|
6 |
-
* Version: 2.2.
|
7 |
* Author: ThemeFuse
|
8 |
* Author URI: http://themefuse.com
|
9 |
* License: GPL2+
|
3 |
* Plugin Name: Unyson
|
4 |
* Plugin URI: http://unyson.themefuse.com/
|
5 |
* Description: A free drag & drop framework that comes with a bunch of built in extensions that will help you develop premium themes fast & easy.
|
6 |
+
* Version: 2.2.7
|
7 |
* Author: ThemeFuse
|
8 |
* Author URI: http://themefuse.com
|
9 |
* License: GPL2+
|