- wp-admin assets refactoring (in process);

This commit is contained in:
Mykyta Synelnikov
2023-11-07 15:51:58 +02:00
parent ca4396e469
commit c65d7169d7
5 changed files with 116 additions and 71 deletions
+92 -2
View File
@@ -72,9 +72,79 @@ UM.admin.builder = {
}
});
}
},
previewResize: function() {
if ( jQuery('.um-admin-modal-body > .um').length ) {
jQuery('.um-admin-modal-body > .um').each(function(){
element_width = jQuery(this).width();
if ( element_width <= 340 ) {
jQuery(this).removeClass('uimob340');
jQuery(this).removeClass('uimob500');
jQuery(this).removeClass('uimob800');
jQuery(this).removeClass('uimob960');
jQuery(this).addClass('uimob340');
} else if ( element_width <= 500 ) {
jQuery(this).removeClass('uimob340');
jQuery(this).removeClass('uimob500');
jQuery(this).removeClass('uimob800');
jQuery(this).removeClass('uimob960');
jQuery(this).addClass('uimob500');
} else if ( element_width <= 800 ) {
jQuery(this).removeClass('uimob340');
jQuery(this).removeClass('uimob500');
jQuery(this).removeClass('uimob800');
jQuery(this).removeClass('uimob960');
jQuery(this).addClass('uimob800');
} else if ( element_width <= 960 ) {
jQuery(this).removeClass('uimob340');
jQuery(this).removeClass('uimob500');
jQuery(this).removeClass('uimob800');
jQuery(this).removeClass('uimob960');
jQuery(this).addClass('uimob960');
} else if ( element_width > 960 ) {
jQuery(this).removeClass('uimob340');
jQuery(this).removeClass('uimob500');
jQuery(this).removeClass('uimob800');
jQuery(this).removeClass('uimob960');
}
jQuery(this).css('opacity',1);
});
jQuery('.um-admin-modal-body .um-cover, .um-admin-modal-body .um-cover-e').each(function(){
var elem = jQuery(this);
var ratio = elem.data('ratio');
var width = elem.width();
var ratios = ratio.split(':');
calcHeight = Math.round( width / ratios[0] ) + 'px';
elem.height( calcHeight );
elem.find('.um-cover-add').height( calcHeight );
});
}
}
}
jQuery(window).on( 'resize', function() {
UM.admin.builder.previewResize();
});
wp.hooks.addAction( 'um_admin_modal_success_result', 'um_admin_builder', function( $adminModal, act_id ) {
UM.admin.builder.fieldConditions.refresh();
@@ -91,6 +161,26 @@ wp.hooks.addAction( 'um_admin_modal_success_result', 'um_admin_builder', functio
}
if ( 'um_admin_preview_form' === act_id ) {
// Make responsive script only when live preview.
UM.admin.builder.previewResize();
if ( typeof( jQuery.fn.um_raty ) === 'function' ) {
jQuery('.um-rating').um_raty({
half: false,
starType: 'i',
number: function() {
return jQuery(this).attr('data-number');
},
score: function() {
return jQuery(this).attr('data-score');
},
scoreName: function() {
return jQuery(this).attr('data-key');
},
hints: false,
});
}
// Fix for overlay in scrollable preview modal.
let $previewOverlay = jQuery('.um-admin-preview-overlay');
$previewOverlay.css('height', $previewOverlay.siblings('.um').outerHeight(true)*1 + 20 + 'px' );
@@ -102,13 +192,13 @@ wp.hooks.addAction( 'um_admin_modal_success_result', 'um_admin_builder', functio
wp.hooks.addAction( 'um_admin_modal_resize', 'um_admin_builder', function() {
if ( jQuery('#UM_preview_form .um-s1').length ) {
jQuery("#UM_preview_form .um-s1").select2({
jQuery("#UM_preview_form .um-s1").css({'display':'block'}).select2({
allowClear: true
});
}
if ( jQuery('#UM_preview_form .um-s2').length ) {
jQuery("#UM_preview_form .um-s2").select2({
jQuery("#UM_preview_form .um-s2").css({'display':'block'}).select2({
allowClear: false,
minimumResultsForSearch: 10
});
+1 -1
View File
File diff suppressed because one or more lines are too long
+2 -1
View File
@@ -281,6 +281,7 @@ jQuery(document).ready(function() {
wp.ajax.send( 'um_remove_file', args );
});
// @todo deprecate
jQuery(document).on('click', '.um-field-group-head:not(.disabled)', function() {
var field = jQuery(this).parents('.um-field-group');
var limit = field.data('max_entries');
@@ -308,7 +309,7 @@ jQuery(document).ready(function() {
}
});
// @todo deprecate
jQuery(document).on('click', '.um-field-group-cancel', function( e ) {
e.preventDefault();
var field = jQuery(this).parents('.um-field-group');
+20 -66
View File
@@ -275,70 +275,6 @@ final class Enqueue extends \um\common\Enqueue {
wp_enqueue_style( 'um_admin_directories-screen' );
}
/**
* Assets for FRONTEND PREVIEW.
*/
public function enqueue_frontend_preview_assets() {
$suffix = self::get_suffix();
$js_url = self::get_url( 'js' );
$css_url = self::get_url( 'css' );
$libs_url = self::get_url( 'libs' );
// Cropper.js
wp_register_script( 'um_crop', $libs_url . 'cropper/cropper' . $suffix . '.js', array( 'jquery' ), '1.6.1', true );
wp_register_style( 'um_crop', $libs_url . 'cropper/cropper' . $suffix . '.css', array(), '1.6.1' );
wp_register_script( 'um_frontend_common', $js_url . 'common-frontend' . $suffix . '.js', array( 'um_common', 'um_crop' ), UM_VERSION, true );
$um_common_variables = array();
/**
* Filters data array for localize frontend common scripts.
*
* @since 2.7.1
* @hook um_frontend_common_js_variables
*
* @param {array} $variables Data to localize.
*
* @return {array} Data to localize.
*
* @example <caption>Add `my_custom_variable` to common frontend scripts to be callable via `um_frontend_common_variables.my_custom_variable` in JS.</caption>
* function um_custom_frontend_common_js_variables( $variables ) {
* $variables['{my_custom_variable}'] = '{my_custom_variable_value}';
* return $variables;
* }
* add_filter( 'um_frontend_common_js_variables', 'um_custom_frontend_common_js_variables' );
*/
$um_common_variables = apply_filters( 'um_frontend_common_js_variables', $um_common_variables );
wp_localize_script( 'um_frontend_common', 'um_frontend_common_variables', $um_common_variables );
wp_register_script( 'um_jquery_form', $libs_url . 'jquery-form/jquery-form' . $suffix . '.js', array( 'jquery' ), UM_VERSION, true );
wp_register_script( 'um_fileupload', $libs_url . 'fileupload/fileupload.js', array( 'jquery', 'um_jquery_form' ), UM_VERSION, true );
wp_register_script( 'um_functions', $js_url . 'um-functions' . $suffix . '.js', array( 'um_frontend_common', 'um_fileupload' ), UM_VERSION, true );
wp_enqueue_script( 'um_functions' );
wp_register_script( 'um_scripts', $this->front_js_baseurl . 'um-scripts' . $suffix . '.js', array( 'um_functions', 'um_crop', 'um_raty', self::$select2_handle, 'um_fileupload', 'um_datetime', 'um_datetime_date', 'um_datetime_time'/*, 'um_datetime_legacy'*/ ), UM_VERSION, true );
wp_register_script( 'um_responsive', $this->front_js_baseurl . 'um-responsive' . $suffix . '.js', array( 'um_scripts', 'um_crop' ), UM_VERSION, true );
wp_register_script( 'um_modal', $this->front_js_baseurl . 'um-modal' . $suffix . '.js', array( 'um_responsive' ), UM_VERSION, true );
wp_register_style( 'um_responsive', $this->front_css_baseurl . 'um-responsive.css', array(), UM_VERSION );
wp_register_style( 'um_modal', $this->front_css_baseurl . 'um-modal.css', array(), UM_VERSION );
wp_register_style( 'um_styles', $this->front_css_baseurl . 'um-styles.css', array( 'um_ui', 'um_tipsy', 'um_raty', 'um_fonticons_ii', 'um_fonticons_fa', 'select2' ), UM_VERSION );
wp_register_style( 'um_members', $this->front_css_baseurl . 'um-members.css', array(), UM_VERSION );
wp_register_style( 'um_profile', $this->front_css_baseurl . 'um-profile.css', array(), UM_VERSION );
wp_register_style( 'um_account', $this->front_css_baseurl . 'um-account.css', array(), UM_VERSION );
wp_register_style( 'um_misc', $this->front_css_baseurl . 'um-misc.css', array(), UM_VERSION );
wp_register_style( 'um_default_css', $this->front_css_baseurl . 'um-old-default.css', array( 'um_crop', 'um_tipsy', 'um_raty', 'um_responsive', 'um_modal', 'um_styles', 'um_members', 'um_profile', 'um_account', 'um_misc', 'um_datetime_date', 'um_datetime_time', 'select2' ), UM_VERSION );
// Scripts for frontend preview.
UM()->frontend()->enqueue()->load_css();
UM()->frontend()->enqueue()->load_modal();
UM()->frontend()->enqueue()->load_responsive();
wp_enqueue_script( 'um_modal' );
wp_enqueue_style( 'um_default_css' );
}
/**
* Load Forms
*/
@@ -398,10 +334,10 @@ final class Enqueue extends \um\common\Enqueue {
$js_url = self::get_url( 'js' );
$css_url = self::get_url( 'css' );
wp_register_script( 'um_admin_builder', $js_url . 'admin/builder' . $suffix . '.js', array( 'um_admin_modal', 'jquery-ui-draggable', 'jquery-ui-sortable', 'editor', 'wp-tinymce', self::$select2_handle ), UM_VERSION, true );
wp_register_script( 'um_admin_builder', $js_url . 'admin/builder' . $suffix . '.js', array( 'um_admin_modal', 'jquery-ui-draggable', 'jquery-ui-sortable', 'editor', 'wp-tinymce', self::$select2_handle, 'um_raty' ), UM_VERSION, true );
wp_enqueue_script( 'um_admin_builder' );
wp_register_style( 'um_admin_builder', $css_url . 'admin/builder' . $suffix . '.css', array( 'um_admin_modal', 'select2' ), UM_VERSION );
wp_register_style( 'um_admin_builder', $css_url . 'admin/builder' . $suffix . '.css', array( 'um_admin_modal', 'select2', 'um_raty' ), UM_VERSION );
// RTL styles.
if ( is_rtl() ) {
wp_style_add_data( 'um_admin_builder', 'rtl', true );
@@ -410,6 +346,24 @@ final class Enqueue extends \um\common\Enqueue {
wp_enqueue_style( 'um_admin_builder' );
}
/**
* Assets for FRONTEND PREVIEW.
*/
private function enqueue_frontend_preview_assets() {
$suffix = self::get_suffix();
$css_url = self::get_url( 'css' );
wp_register_style( 'um_fileupload', $css_url . 'um-fileupload' . $suffix . '.css', array(), UM_VERSION );
wp_register_style( 'um_responsive', $css_url . 'um-responsive' . $suffix . '.css', array(), UM_VERSION );
wp_register_style( 'um_styles', $css_url . 'um-styles' . $suffix . '.css', array(), UM_VERSION );
wp_register_style( 'um_profile', $css_url . 'um-profile' . $suffix . '.css', array(), UM_VERSION );
wp_register_style( 'um_misc', $css_url . 'um-misc' . $suffix . '.css', array(), UM_VERSION );
wp_register_style( 'um_modal', $css_url . 'um-modal' . $suffix . '.css', array(), UM_VERSION );
wp_register_style( 'um_default_css', $css_url . 'um-old-default' . $suffix . '.css', array( 'um_fileupload', 'um_responsive', 'um_modal', 'um_styles', 'um_profile', 'um_misc' ), UM_VERSION );
wp_enqueue_style( 'um_default_css' );
}
/**
* Load global css
*/
+1 -1
View File
@@ -168,6 +168,6 @@ class Enqueue {
$um_common_variables = apply_filters( 'um_common_js_variables', $um_common_variables );
wp_localize_script( 'um_common', 'um_common_variables', $um_common_variables );
wp_register_style( 'um_common', $css_url . 'common' . $suffix . '.css', array( 'um_tipsy', 'um_datetime_date', 'um_datetime_time' ), UM_VERSION );
wp_register_style( 'um_common', $css_url . 'common' . $suffix . '.css', array( 'um_tipsy', 'um_datetime_date', 'um_datetime_time', 'um_fonticons_ii', 'um_fonticons_fa' ), UM_VERSION );
}
}