diff --git a/assets/css/admin.scss b/assets/css/admin.scss index 6562a9cbf..ffd3910f9 100644 --- a/assets/css/admin.scss +++ b/assets/css/admin.scss @@ -2118,7 +2118,32 @@ body { display: none; } } - + .ur-advance-setting-group { + border: 1px solid #f0f0f0; + padding: 0.25rem; + position: relative; + display: flex; + align-items: center; + margin-bottom: 1rem; + &.row { + align-items: end; + } + &.column { + flex-direction: column; + } + .ur-legend { + font-weight: 100; + font-size: 0.9rem; + position: absolute; + top: -10px; + left: 10px; + color: #333; + background-color: white; + } + label { + font-size: 0.75rem !important; + } + } .ur-advance-setting-block { margin-top: 0; } diff --git a/assets/css/user-registration.scss b/assets/css/user-registration.scss index 48965102b..6fda0cb88 100644 --- a/assets/css/user-registration.scss +++ b/assets/css/user-registration.scss @@ -3106,3 +3106,6 @@ body.user-registration-page { animation: toaster 5s ease-in-out forwards; } +.user-registration.ur-frontend-form form.register .d-none { + display: none; +} \ No newline at end of file diff --git a/assets/js/admin/form-builder.js b/assets/js/admin/form-builder.js index 6249fa2ef..5bf835b04 100644 --- a/assets/js/admin/form-builder.js +++ b/assets/js/admin/form-builder.js @@ -256,6 +256,79 @@ } } ); + + + // Hide sublabels from ur field in case of multiple fields field. + $(document).on('change', '#ur-setting-form [data-field=hide_sublabels]', function() { + if ($(this).is(':checked')) { + $('.ur-input-grids').find('.ur-item-active .ur-field').find('label').addClass('ur-d-none'); + } else { + $('.ur-input-grids').find('.ur-item-active .ur-field').find('label').removeClass('ur-d-none'); + } + }); + + // Hide sublabels from ur field in case of multiple fields field. + $(document).on('change', '#ur-setting-form [data-field=hide_sublabels]', function() { + if ($(this).is(':checked')) { + $('.ur-input-grids').find('.ur-item-active .ur-field').find('label').addClass('ur-d-none'); + } else { + $('.ur-input-grids').find('.ur-item-active .ur-field').find('label').removeClass('ur-d-none'); + } + }); + + // update placeholder for each sub fields. + var sourceInput = '.ur-advance-setting-group [data-advance-field$="placeholder"]'; + $(document).on('input', sourceInput, function () { + var targetInput = '.ur-' + $(this).data('advance-field').replace(/_placeholder$/, '').replace(/_/g, '-') + ' input'; + var inputValue = $(this).val(); + $(targetInput).attr('placeholder', inputValue); + }); + + + // show/hide sub fields. + $('.ur-advance-setting-group input[type="checkbox"]').each(function() { + var forClass = $(this).is(':checked'); + if($(this).is(":checked")) { + $('.ur-input-grids .ur-item-active').find('.' + forClass).addClass('ur-d-none'); + } else { + $('.ur-input-grids .ur-item-active').find('.' + forClass).removeClass('ur-d-none'); + } + }); + $(document).on('change', '.ur-advance-setting-group input[type="checkbox"]', function() { + var forClass = $(this).data('id'); + if($(this).is(":checked")) { + $('.ur-input-grids .ur-item-active').find('.' + forClass).addClass('ur-d-none'); + } else { + $('.ur-input-grids .ur-item-active').find('.' + forClass).removeClass('ur-d-none'); + } + }); + + // update placeholder for each sub fields. + let sourceInput = '.ur-advance-setting-group [data-advance-field$="placeholder"]'; + $(document).on('input', sourceInput, function () { + let targetInput = '.ur-' + $(this).data('advance-field').replace(/_placeholder$/, '').replace(/_/g, '-') + ' input'; + let inputValue = $(this).val(); + $(targetInput).attr('placeholder', inputValue); + }); + + + // show/hide sub fields. + $('.ur-advance-setting-group input[type="checkbox"]').each(function() { + let forClass = $(this).is(':checked'); + if($(this).is(":checked")) { + $('.ur-input-grids .ur-item-active').find('.' + forClass).addClass('ur-d-none'); + } else { + $('.ur-input-grids .ur-item-active').find('.' + forClass).removeClass('ur-d-none'); + } + }); + $(document).on('change', '.ur-advance-setting-group input[type="checkbox"]', function() { + let forClass = $(this).data('id'); + if($(this).is(":checked")) { + $('.ur-input-grids .ur-item-active').find('.' + forClass).addClass('ur-d-none'); + } else { + $('.ur-input-grids .ur-item-active').find('.' + forClass).removeClass('ur-d-none'); + } + }); }, init_user_profile_modal: function () { var user_profile_modal = { @@ -2213,7 +2286,9 @@ switch ($this_node.attr("type")) { case "checkbox": value = $this_node.is(":checked"); - + if ($this_node.data('field') == 'hide_sublabels') { + value = $(document).find('[data-field="hide_sublabels"]').prop('checked'); + } if ( $this_node.hasClass( "ur-type-checkbox-value" diff --git a/includes/abstracts/abstract-ur-field-settings.php b/includes/abstracts/abstract-ur-field-settings.php index 94b6bf7f5..2b735ea58 100644 --- a/includes/abstracts/abstract-ur-field-settings.php +++ b/includes/abstracts/abstract-ur-field-settings.php @@ -89,7 +89,18 @@ public function render_html($fields) foreach ($fields as $field_key => $field) { - $tooltip_html = ! empty($field['tip']) ? ur_help_tip($field['tip'], false, 'ur-portal-tooltip') : ''; + $tooltip_html = ! empty( $field['tip'] ) ? ur_help_tip( $field['tip'], false, 'ur-portal-tooltip' ) : ''; + + if( "row" === $field[ 'type' ] ) { + $this->fields_html .= '