PageSourceSearch

https://klinikantm.ru/js/ntm-quality-survey.js?v=3

js klinikantm.ru collected 2026-09-28 22:45:26 UTC 7,665 bytes, 141 lines download raw bytes

1(function () {
2    "use strict";
3
4    function initQualitySurvey() {
5        var container = document.getElementById("ntm-quality-survey");
6
7        if (!container || container.dataset.ntmSurveyReady === "1") {
8            return;
9        }
10
11        container.dataset.ntmSurveyReady = "1";
12
13        var params = new URLSearchParams(window.location.search);
14        var status = params.get("survey");
15
16        if (status === "ok" || status === "error") {
17            var message = document.createElement("div");
18            message.className = "ntm-survey-message " +
19                (status === "ok" ? "ntm-survey-success" : "ntm-survey-error");
20
21            if (status === "ok") {
22                message.innerHTML =
23                    "<strong>\u0421\u043f\u0430\u0441\u0438\u0431\u043e! \u0412\u0430\u0448\u0430 \u043e\u0446\u0435\u043d\u043a\u0430 \u043f\u0440\u0438\u043d\u044f\u0442\u0430.</strong><br>" +
24                    "\u0411\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u0438\u043c \u0432\u0430\u0441 \u0437\u0430 \u043e\u0431\u0440\u0430\u0442\u043d\u0443\u044e \u0441\u0432\u044f\u0437\u044c.";
25            } else {
26                message.innerHTML =
27                    "<strong>\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0430\u043d\u043a\u0435\u0442\u0443.</strong><br>" +
28                    "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u0435\u0449\u0451 \u0440\u0430\u0437.";
29            }
30
31            container.appendChild(message);
32        }
33if (status === "ok") {
34    return;
35}
36
37        var form = document.createElement("form");
38        form.className = "ntm-quality-form";
39        form.action = "/quality-survey-api/";
40        form.method = "post";
41
42        var questions = [
43        { name: "information", text: "1. \u041e\u0442\u043a\u0440\u044b\u0442\u043e\u0441\u0442\u044c \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u043a\u043b\u0438\u043d\u0438\u043a\u0435" },
44        { name: "booking", text: "2. \u0423\u0434\u043e\u0431\u0441\u0442\u0432\u043e \u0437\u0430\u043f\u0438\u0441\u0438 \u043d\u0430 \u043f\u0440\u0438\u0451\u043c \u0438\u043b\u0438 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435" },
45        { name: "comfort", text: "3. \u041a\u043e\u043c\u0444\u043e\u0440\u0442\u043d\u043e\u0441\u0442\u044c \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u0432 \u043a\u043b\u0438\u043d\u0438\u043a\u0435" },
46        { name: "waiting", text: "4. \u0412\u0440\u0435\u043c\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u043f\u0440\u0438\u0451\u043c\u0430 \u0438\u043b\u0438 \u0443\u0441\u043b\u0443\u0433\u0438" },
47        { name: "politeness", text: "5. \u0414\u043e\u0431\u0440\u043e\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438 \u0432\u0435\u0436\u043b\u0438\u0432\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u043d\u0438\u043a\u043e\u0432" },
48        { name: "accessibility", text: "6. \u0414\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u0434\u043b\u044f \u0438\u043d\u0432\u0430\u043b\u0438\u0434\u043e\u0432 \u0438 \u043c\u0430\u043b\u043e\u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u0433\u0440\u0430\u0436\u0434\u0430\u043d" },
49        { name: "overall", text: "7. \u041e\u0431\u0449\u0430\u044f \u043e\u0446\u0435\u043d\u043a\u0430 \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u043e\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u0443\u0441\u043b\u0443\u0433" }
50        ];
51
52        questions.forEach(function (question) {
53            var item = document.createElement("div");
54            item.className = "ntm-survey-item";
55
56            var title = document.createElement("p");
57            var strong = document.createElement("strong");
58            strong.textContent = question.text;
59            title.appendChild(strong);
60            item.appendChild(title);
61
62            for (var value = 1; value <= 5; value++) {
63                var label = document.createElement("label");
64                var radio = document.createElement("input");
65
66                radio.type = "radio";
67                radio.name = question.name;
68                radio.value = String(value);
69
70                if (value === 1) {
71                    radio.required = true;
72                }
73
74                label.appendChild(radio);
75                label.appendChild(document.createTextNode(" " + value));
76                item.appendChild(label);
77            }
78
79            form.appendChild(item);
80        });
81
82        var commentItem = document.createElement("div");
83        commentItem.className = "ntm-survey-item";
84
85        var commentLabel = document.createElement("label");
86        commentLabel.htmlFor = "ntm-survey-comment";
87
88        var commentStrong = document.createElement("strong");
89        commentStrong.textContent = "\u0412\u0430\u0448\u0438 \u0437\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u044f \u0438\u043b\u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f";
90        commentLabel.appendChild(commentStrong);
91
92        var textarea = document.createElement("textarea");
93        textarea.id = "ntm-survey-comment";
94        textarea.name = "comment";
95        textarea.rows = 5;
96        textarea.maxLength = 2000;
97        textarea.placeholder = "\u041d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e";
98
99        commentItem.appendChild(commentLabel);
100        commentItem.appendChild(textarea);
101        form.appendChild(commentItem);
102
103        var honeypot = document.createElement("div");
104        honeypot.className = "ntm-honeypot";
105        honeypot.setAttribute("aria-hidden", "true");
106
107        var hpLabel = document.createElement("label");
108        hpLabel.appendChild(document.createTextNode("Website"));
109
110        var hpInput = document.createElement("input");
111        hpInput.type = "text";
112        hpInput.name = "website";
113        hpInput.tabIndex = -1;
114        hpInput.autocomplete = "off";
115
116        hpLabel.appendChild(hpInput);
117        honeypot.appendChild(hpLabel);
118        form.appendChild(honeypot);
119
120        var buttonRow = document.createElement("p");
121        var button = document.createElement("button");
122        button.type = "submit";
123        button.className = "ntm-survey-submit";
124        button.textContent = "\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043e\u0446\u0435\u043d\u043a\u0443";
125        buttonRow.appendChild(button);
126        form.appendChild(buttonRow);
127
128        var note = document.createElement("p");
129        note.className = "ntm-survey-note";
130        note.textContent = "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043d\u0435 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0439\u0442\u0435 \u0432 \u043f\u043e\u043b\u0435 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u0434\u0438\u0430\u0433\u043d\u043e\u0437, \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u043e\u0431\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0439 \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u0437\u0434\u043e\u0440\u043e\u0432\u044c\u044f.";
131        form.appendChild(note);
132
133        container.appendChild(form);
134    }
135
136    if (document.readyState === "loading") {
137        document.addEventListener("DOMContentLoaded", initQualitySurvey);
138    } else {
139        initQualitySurvey();
140    }
141})();

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.