| |
| <?php
|
|
|
|
|
|
|
|
|
|
|
| add_action('wpforms_wp_footer_end', function () {
|
|
|
| $form_id = '1000';
|
| $field_id = '1';
|
| $slider_min = 10;
|
|
|
| ?>
|
| <script type="text/javascript">
|
| (function($){
|
|
|
| var formId = '<?php echo esc_js($form_id); ?>';
|
| var fieldId = '<?php echo esc_js($field_id); ?>';
|
| var sliderMin = <?php echo (int) $slider_min; ?>;
|
|
|
| var $form = $('#wpforms-form-' + formId);
|
| var $slider = $('#wpforms-' + formId + '-field_' + fieldId);
|
|
|
| if (!$form.length || typeof window.wpforms === 'undefined') return;
|
|
|
| var errorLabelHtml = function(min) {
|
| return '<label class="wpforms-error" style="margin-top:5px; display:block !important; color:#d00 !important; font-weight:600; z-index:9999;">Please select a number greater than or equal to ' + min + '.</label>';
|
| };
|
|
|
| var validateSlider = function(event, minValue) {
|
| minValue = typeof minValue !== 'undefined' ? minValue : sliderMin;
|
| var value = parseInt($slider.val()) || 0;
|
| $slider.removeClass('wpforms-error');
|
| $slider.closest('.wpforms-field').find('.wpforms-error').remove();
|
|
|
| if (value < minValue) {
|
| if (event) {
|
| event.preventDefault();
|
| event.stopPropagation();
|
| }
|
| $slider.addClass('wpforms-error');
|
| $slider.closest('.wpforms-field').append(errorLabelHtml(minValue));
|
| $('html, body').animate({
|
| scrollTop: $slider.offset().top - 100
|
| }, 300);
|
| $('.wpforms-page-next').prop('disabled', true);
|
| setTimeout(function() {
|
| $('.wpforms-page-next').prop('disabled', false);
|
| }, 1000);
|
| return false;
|
| }
|
| return true;
|
| };
|
|
|
| $form.on('wpformsBeforePageChange', function(event, formIdCheck) {
|
| if (formIdCheck != formId) return;
|
| if (!$slider.length) return;
|
| return validateSlider(event, sliderMin);
|
| });
|
|
|
| $('.wpforms-page-next').on('click', function(e) {
|
| if (!$slider.length) return;
|
| validateSlider(e, sliderMin);
|
| });
|
|
|
| })(jQuery);
|
| </script>
|
| <?php
|
| }, 20);
|
| |
| |
Comments