1jQuery(function () { 2 if (jQuery('.feedback-banner').length < 1) { 3 return; 4 } 5 var response = true; 6 jQuery(document).on("click", ".feedback-yes", function () { 7 jQuery(".yes-response").addClass("show"); 8 jQuery(".no-response").removeClass("show"); 9 jQuery(".feedback-no").removeClass("btn__feedback--filled"); 10 jQuery(".feedback-no").addClass("btn__feedback--border"); 11 jQuery(".feedback-no").attr("aria-pressed", "false"); 12 jQuery(this).addClass("btn__feedback--filled"); 13 jQuery(this).removeClass("btn__feedback--border"); 14 jQuery(this).attr("aria-pressed", "true"); 15 response = true; 16 showResponseBox() 17 }); 18 19 jQuery(document).on("click", ".feedback-no", function () { 20 jQuery(".yes-response").removeClass("show"); 21 jQuery(".no-response").addClass("show"); 22 jQuery(".feedback-yes").removeClass("btn__feedback--filled"); 23 jQuery(".feedback-yes").addClass("btn__feedback--border"); 24 jQuery(".feedback-yes").attr("aria-pressed", "false"); 25 jQuery(this).addClass("btn__feedback--filled"); 26 jQuery(this).removeClass("btn__feedback--border"); 27 jQuery(this).attr("aria-pressed", "true"); 28 response = false; 29 showResponseBox() 30 }); 31 32 jQuery(document).on("click", ".send-response", function (e) { 33 e.preventDefault(); 34 35 var antiForgeryToken = $(this).siblings("input[name='__RequestVerificationToken']").val(); 36 var textArea = jQuery(".feedback-banner__message textarea") 37 var feedbackResponse = jQuery(".feedback-response"); 38 var feedbackMinLength = textArea.data("minlength") 39 var width = jQuery(window).width(); 40 var commentLength = textArea.val().length; 41 42 if (commentLength >= feedbackMinLength) { 43 44 var comment = { 45 Lang: jQuery(".feedback-banner").data("lang"), 46 Comment: textArea.val(), 47 Name: textArea.data("pagename"), 48 Email: textArea.data("notificationemail"), 49 PageId: textArea.data("pageid"), 50 ContentOwners: textArea.data("contentowners"), 51 Feedback: response, 52 Reference: document.referrer, 53 ScreenWidth: width, 54 Token: antiForgeryToken 55 }; 56 57 jQuery(".feedback-banner").hide(); 58 feedbackResponse.hide() 59 addComment(comment); 60 } else { 61 jQuery(".invalid-feedback").show() 62 } 63 }); 64}); 65 66 67 68function addComment(comment) { 69 $.ajax({
70 url: "/api/FeedbackComments/AddComment", 71 contentType: "application/json", 72 type: 'Post', 73 dataType: 'json', 74 data: JSON.stringify(comment), 75 headers: { 76 "X-CSRF-Token": comment.Token // Brug samme headernavn som i Program.cs 77 }, 78 error: function (data) { 79 // eslint-disable-next-line no-console 80 console.log("Error: ", data) 81 }, 82 success: function (data) { 83 console.log(data) 84 jQuery(".feedback-success") 85 .css("display", "flex") 86 .hide() 87 .fadeIn(); 88 } 89 }); 90} 91 92function showResponseBox() { 93 var textArea = jQuery(".feedback-banner__message textarea") 94 95 jQuery(document).on("input", ".feedback-banner__message textarea", 96 function (e) { 97 if (textArea.val().length >= textArea.data("minlength")) { 98 jQuery(".invalid-feedback p").hide() 99 } else { 100 jQuery(".invalid-feedback p").show() 101 } 102 } 103 ) 104 jQuery(".feedback-response").slideDown(300); 105}
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.