PageSourceSearch

https://clm-granada.com/wp-content/plugins/cf7-multistep/frontend/js/cf7-multistep.js?ver=1790842923

js clm-granada.com collected 2026-10-02 08:03:02 UTC 12,604 bytes, 228 lines download raw bytes

1(function ($) {
2    "use strict";
3    $(document).ready(function () {
4        document.addEventListener('wpcf7submit', function (event) {
5            var data = event.detail;
6            var $form = $(data.apiResponse.into).find("form");
7            if ($(".cf7-tab", $form).length < 1) {
8                return;
9            }
10            $(".wpcf7-spinner").css("visibility", "hidden");
11            $(".cf7-tab", $form).removeClass("cf7-new-tab");
12            var error_tab = false;
13            var tab_current = parseInt($(".wpcf7_check_tab", $form).val());
14            var step_comfirm_html = '<div class="cf7-container-step-confirm">';
15            $(".cf7-display-steps-container li", $form).each(function (index) {
16                console.log( $(this));
17                if ($(this).find(".cf-content-s").length > 0) {
18                    var title = $(this).find(".cf-content-s").text().trim();
19                }else{
20                    var title = $(this).text().trim();
21                }
22                var fist_char = title.charAt(0);
23                if ($.isNumeric(fist_char)) {
24                    title = title.substring(1);
25                }
26                step_comfirm_html += '<div class="cf7-step-confirm-title">' + title + '</div>';
27                var tab_name = $(this).data("tab");
28                var name_tab = [];
29                $form.find(tab_name + " input," + tab_name + " select," + tab_name + " textarea").each(function (index, joc) {
30                    if ($(this).attr("name") != "" && typeof $(this).attr("name") != 'undefined') {
31                        var name = $(this).attr("name").replace("[]", "");
32                        if (name_tab.indexOf(name) < 0) {
33                            name_tab.push(name);
34                            var value = cf7_step_confirm[name];
35                            if (value === undefined || value == "") {
36                                value = name
37                            }
38                            var type = $(this).attr("type");
39                            var data = "";
40                            if (type == "radio") {
41                                var chkArray = [];
42                                $("input[name=" + name + "]:checked").each(function () {
43                                    chkArray.push($(this).val());
44                                });
45                                data = chkArray.join(',');
46                            } else if (type == "checkbox") {
47                                var chkArray = [];
48                                $('input[name="' + name + '[]"]:checked').each(function () {
49                                    chkArray.push($(this).val());
50                                });
51                                data = chkArray.join(',');
52                            } else {
53                                data = $(this).val();
54                            }
55                            data = data.trim();
56                            if (data != "") {
57                                var data_images = data.split("|");
58                                var value_img = "";
59                                data_images.forEach(async (img) => {
60                                    img = img.trim();
61                                    if (checkURL(img)) {
62                                        value_img += '<img src="' + cf7_multistep.img_url + img + '" />';
63                                    }
64                                });
65                                if (value_img != "") {
66                                    data = value_img;
67                                }
68                                if (name.search("repeater") !== 0) {
69                                    step_comfirm_html += '<div class="cf7-step-confirm-item"><div class="cf7-step-confirm-name">' + value + ': </div><div class="cf7-step-confirm-value">' + data + '</div></div>';
70                                }
71                            }
72                        }
73                    }
74                })
75            });
76            step_comfirm_html += "</div>";
77            $(".cf7-data-confirm", $form).html(step_comfirm_html);
78            if (data.status == "validation_failed") {
79                $.each(data.apiResponse.invalid_fields, function (i, n) {
80                    if ($(".cf7-tab-" + tab_current + ' [name="' + n.field + '"]', $form).length > 0) {
81                        error_tab = true;
82                        return;
83                    }
84                    if ($(".cf7-tab-" + tab_current + ' [name="' + n.field + '[]"]', $form).length > 0) {
85                        error_tab = true;
86                        return;
87                    }
88                });
89                if (!error_tab) {
90                    /*
91                    * Next tab
92                    */
93                    var next_tab = tab_current + 1;
94                    console.log("Next tab: " + next_tab);
95                    $(".cf7-tab", $form).addClass("hidden");
96                    $(".cf7-tab-" + next_tab, $form).removeClass("hidden");
97                    $(".cf7-tab-" + next_tab, $form).addClass("cf7-new-tab");
98                    $(".wpcf7-not-valid-tip", $form).remove();
99                    $(".cf7-tab-" + next_tab + " .wpcf7-form-control", $form).removeClass("wpcf7-not-valid");
100                    $(".wpcf7_check_tab", $form).val(next_tab).change();
101                    $(".wpcf7-response-output", $form).addClass("hidden");
102                    $(".cf7-display-steps-container li", $form).removeClass("active");
103                    $(".cf7-display-steps-container .cf7-steps-" + next_tab, $form).addClass("active");
104                    for (var i = 1; i < next_tab; i++) {
105                        $(".cf7-display-steps-container li.cf7-steps-" + i, $form).addClass("enabled");
106                    }
107                    $(".cf7-tab-" + tab_current + " .multistep-nav-right .ajax-loader", $form).addClass("hidden");
108                    var top = $('.container-multistep-header', $form).offset().top - 200;
109                    $('html, body').animate({ scrollTop: top }, 800);
110                    if (next_tab == $(".multistep_total", $form).val()) {
111                        $('.wpcf7-acceptance input:checkbox', $form).each(function () {
112                            $(this).prop("checked", false);
113                        });
114                        $(".multistep-check input", $form).val("ok").change();
115                    }
116                } else {
117                    $(".wpcf7-response-output", $form).removeClass("hidden");
118                }
119            } else {
120                $(".cf7-steps-1", $form).addClass("active");
121                $(".cf7-tab", $form).addClass("hidden");
122                $(".cf7-tab-1", $form).removeClass("hidden");
123                $(".wpcf7_check_tab", $form).val(1);
124                $(".wpcf7-response-output", $form).removeClass("hidden");
125                var top = $('.container-multistep-header', $form).offset().top - 200;
126                $('html, body').animate({ scrollTop: top }, 800);
127                $(".wpcf7-response-output", $form).removeClass("hidden");
128            }
129        }, false);
130        $(".wpcf7").on('click', '.wpcf7-submit', function (e) {
131            if ($(this).find(".cf7-tab").length < 1) {
132                return;
133            }
134            var check_class = $(this).closest('.wpcf7').find('.wpcf7-acceptance').length;
135            $(".wpcf7-spinner").css("visibility", "visible");
136            if (check_class > 0) {
137                if (!$(this).closest('.wpcf7').find('.wpcf7-acceptance input').is(":checked")) {
138                    $(this).closest('.wpcf7').find('.wpcf7-acceptance').addClass('wpcf7-not-valid1');
139                }
140            }
141        })
142        $("body").on("click", ".multistep-cf7-next", function (e) {
143            e.preventDefault();
144            var step_name = $(this).data("name");
145            //gtag('send', 'click', 'Contact Step', step_name);
146            var $form = $(this).closest('form');
147            $(".wpcf7-spinner").css("visibility", "visible");
148            var tab_current = parseInt($(".wpcf7_check_tab", $form).val());
149            $('.wpcf7-acceptance input:checkbox', $form).each(function () {
150                var check = $(".cf7-tab-" + tab_current).find(".wpcf7-acceptance input:checkbox").val();
151                if (check != 1) {
152                    $(this).prop("checked", true);
153                }
154            });
155            var $submitBtn = $(this).closest('form').find(".wpcf7-submit");
156            if ($submitBtn.length > 0) {
157                $submitBtn.removeAttr("disabled").click();
158            } else {
159                $(this).closest('form').find(".container-body-tab .cf7-tab").last().find(".cf7-content-tab").append('<input type="submit" class="wpcf7-form-control wpcf7-submit has-spinner" value="Send">');
160                $(this).closest('form').find(".wpcf7-submit").removeAttr("disabled").click();
161            }
162        })
163        $("body").on("click", ".multistep-cf7-prev", function (e) {
164            e.preventDefault();
165            var $form = $(this).closest('form');
166            $(".wpcf7-response-output", $form).addClass("hidden");
167            var tab_current = parseInt($(".wpcf7_check_tab", $form).val());
168            var prev_tab = tab_current - 1;
169            $(".cf7-tab", $form).addClass("hidden");
170            $(".cf7-tab-" + prev_tab, $form).removeClass("hidden");
171            $(".wpcf7_check_tab", $form).val(prev_tab).change();
172            $(".cf7-display-steps-container li", $form).removeClass("active");
173            $(".cf7-display-steps-container li", $form).removeClass("enabled");
174            $(".cf7-display-steps-container .cf7-steps-" + prev_tab, $form).addClass("active");
175            for (var i = 1; i < prev_tab; i++) {
176                $(".cf7-display-steps-container li.cf7-steps-" + i, $form).addClass("enabled");
177            }
178            $(".multistep-check input", $form).val("");
179            var top = $('.container-multistep-header', $form).offset().top - 200;
180            $('html, body').animate({ scrollTop: top }, 800);
181            $('.wpcf7-acceptance input:checkbox').each(function () {
182                $(this).prop("checked", false);
183            });
184            $(".multistep-check input", $form).val('').change();
185            return false;
186        })
187        $("body").on("click", ".multistep-cf7-first", function (e) {
188            e.preventDefault();
189            var $form = $(this).closest('form');
190            $(".wpcf7-response-output", $form).addClass("hidden");
191            var prev_tab = 1;
192            $(".cf7-tab", $form).addClass("hidden");
193            $(".cf7-tab-" + prev_tab, $form).removeClass("hidden");
194            $(".wpcf7_check_tab", $form).val(prev_tab).change();
195            $(".cf7-display-steps-container li", $form).removeClass("active");
196            $(".cf7-display-steps-container li", $form).removeClass("enabled");
197            $(".cf7-display-steps-container .cf7-steps-" + prev_tab, $form).addClass("active");
198            for (var i = 1; i < prev_tab; i++) {
199                $(".cf7-display-steps-container li.cf7-steps-" + i, $form).addClass("enabled");
200            }
201            $(".multistep-check input", $form).val("");
202            var top = $('.container-multistep-header', $form).offset().top - 200;
203            $('html, body').animate({ scrollTop: top }, 800);
204            $('.wpcf7-acceptance input:checkbox').each(function () {
205                $(this).prop("checked", false);
206            });
207            $(".multistep-check input", $form).val('').change();
208            return false;
209        });
210        function checkURL(url) {
211            return (url.match(/\.(jpeg|jpg|gif|png|webp)$/) != null);
212        }
213        function remove_duplicates_ctf7_step(arr) {
214            var obj = {};
215            var ret_arr = [];
216            for (var i = 0; i < arr.length; i++) {
217                obj[arr[i]] = true;
218            }
219            for (var key in obj) {
220                if ("_wpcf7" == key || "_wpcf7_version" == key || "_wpcf7_locale" == key || "_wpcf7_unit_tag" == key || "_wpnonce" == key || "undefined" == key || "_wpcf7_container_post" == key || "_wpcf7_nonce" == key) {
221                } else {
222                    ret_arr.push(key + "(?!\\d)");
223                }
224            }
225            return ret_arr;
226        }
227    })
228})(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.