PageSourceSearch

https://cornwall-on-hudson.gov/WebResource.axd?d=St6wUWxSrWPHdwc75…JSWBxpZgWoNVeCMuE8NZ01&t=637532040100000000

js cornwall-on-hudson.gov collected 2026-10-08 10:06:16 UTC 26,689 bytes, 623 lines download raw bytes

1/// <reference path="LiveFormValidation.js" />
2function validatenumerics(key) {
3    //getting key code of pressed key
4    var keycode = (key.which) ? key.which : key.keyCode;
5    //comparing pressed keycodes
6
7    if (keycode > 31 && (keycode < 48 || keycode > 57)) {
8        return false;
9    }
10    else return true;
11};
12
13//$.validator.messages.wordcount = 'Please enter no more than {0} words';
14//$.validator.messages.alphanumeric = 'This field can only contain letters and numbers';
15$.validator.addMethod("vmaxlength", $.validator.methods.maxlength, LFValidations.vmaxlength);
16$.validator.addMethod('rbrequired', function (value, element) {
17    if ($(element).closest('.Field.Radiobutton').find("input:checked").length == 1 && $(element).closest('.Field.Radiobutton').find("input:checked").val() == "&%&" && $(element).closest('.Field.Radiobutton').find('input[type=hidden]').val() == "") {
18        return false;
19    }
20    else
21        return true;
22}, LFValidations.required);
23$.validator.addMethod('cbrequired', function (value, element) {
24    if ($(element).closest('.Field.Checkbox').find("input:checked").length == 1 && $(element).closest('.Field.Checkbox').find("input:checked").val() == "&%&" && $(element).closest('.Field.Checkbox').find('input[type=hidden]').val() == "") {
25        return false;
26    }
27    else if ($(element).closest('.Field.Checkbox').find("input:checked").length < 1)
28        return false;
29    else
30        return true;
31}, LFValidations.cbrequired);
32
33$.validator.addMethod('matrixCbrequired', function (value, element) {
34    if ($(element).closest('tr').find("input:checked").length < 1)
35        return false;
36    else
37        return true;
38}, LFValidations.required);
39
40$.validator.addMethod('matrixddlrequired', function (value, element) {
41    if ($(element).find('option:selected').index() == 0)
42        return false;
43    else
44        return true;
45}, LFValidations.required);
46
47$.validator.addMethod('checkCaptcha', function (value, element) {
48    if ($(element).closest('.Field.Checkbox').find("input:checked").length < 1)
49        return false;
50    else
51        return true;
52}, LFValidations.cbrequired);
53
54$.validator.addMethod('wordcount', function (value, element) {
55    var wordCount = $(element).attr('wordcount');
56    if ($(element).val().split(" ").length > wordCount)
57        return false;
58    else
59        return true;
60}, LFValidations.wordcount);
61
62$.validator.addMethod('alphanumeric', function (value, element) {
63    var ele = $(element).val();
64    if (ele != "") {
65        var re = /^[a-zA-Z0-9]+$/;
66        if (re.test(ele))
67            return true;
68        else
69            return false;
70    }
71    else
72        return true;
73}, LFValidations.alphanumeric);
74
75$.validator.addMethod('alphabetic', function (value, element) {
76    var ele = $(element).val();
77    if (ele != "") {
78        var re = /^[a-zA-Zs]+$/;
79        if (re.test(ele))
80            return true;
81        else
82            return false;
83    }
84    else
85        return true;
86}, LFValidations.alphabetic);
87
88$.validator.addMethod('numeric', function (value, element) {
89    var ele = $(element).val();
90    if (ele != "") {
91        var re = new RegExp("^[0-9]{" + ele.length + "}$");
92        if (re.test(ele))
93            return true;
94        else
95            return false;
96    }
97    else
98        return true;
99}, LFValidations.numeric);
100
101$.validator.addMethod('custom', function (value, element) {
102    if ($(element).parent().children('.customsetting').html() != "") {
103        var re = new RegExp($(element).parent().children('.customsetting').html());
104        if (re.test(value))
105            return true;
106        else
107            return false;
108    }
109    else
110        return true;
111}, LFValidations.custom);
112
113
114$.validator.addMethod('scorerequired', function (value, element) {
115    if ($(element).parent().find('div input[type=hidden]').val() == "")
116        return false;
117    else
118        return true;
119}, LFValidations.scorerequired);
120
121$.validator.addMethod('scalerequired', function (value, element) {
122    if ($(element).parent().parent().find('input[type=radio]').is(":checked") == true)
123        return true;
124    else
125        return false;
126}, LFValidations.scalerequired);
127
128$.validator.addMethod('isvaliddate', function (value, element) {
129    var month, day, year, hour, minute;
130    if ($(element).val() != "") {
131        $($(element).parent().parent().find('span.Field-SubLabel-TextBox')).each(function (index, item) {
132            if ($(item).find('input').length != 0) {
133                if ($(item).find('input').attr('class').indexOf("datepicker_month") != -1)
134                    month = $(item).find('input').val();
135                else if ($(item).find('input').attr('class').indexOf("datepicker_day") != -1)
136                    day = $(item).find('input').val();
137                else if ($(item).find('input').attr('class').indexOf("datepicker_year") != -1)
138                    year = $(item).find('input').val();
139            }
140            if ($(item).find('select').length != 0) {
141                if ($(item).find('select').attr('class').indexOf("datepicker_month") != -1)
142                    month = $(item).find('select').val();
143                if (month == "0")
144                    month = "";
145                if ($(item).find('select').attr('class').indexOf("datepicker_hour") != -1)
146                    hour = $(item).find('select').val();
147                else if ($(item).find('select').attr('class').indexOf("datepicker_minute") != -1)
148                    minute = $(item).find('select').val();
149            }
150        });
151        if (month == undefined)
152            month = "";
153        if (day == undefined)
154            day = "";
155        if (year == undefined)
156            year = "";
157        if (hour == undefined)
158            hour = "";
159        if (minute == undefined)
160            minute = "";
161        if (month != "" && day != "" && year != "" && hour != "" && minute != "") {
162            var dt = new Date(parseInt(year, 10), parseInt(month, 10) - 1, parseInt(day, 10), parseInt(hour, 10), parseInt(minute, 10), 00, 00);
163            if (dt.getDate() != parseInt(day, 10) || dt.getMonth() != (parseInt(month, 10) - 1) || dt.getFullYear() != parseInt(year, 10)) {
164                return false;
165            }
166            else
167                return true;
168        }
169        else if (month != "" && day != "" && year != "" && hour == "" && minute == "") {
170            var dt = new Date(parseInt(year, 10), parseInt(month, 10) - 1, parseInt(day, 10), 00, 00, 00, 00);
171            if (dt.getDate() != parseInt(day, 10) || dt.getMonth() != (parseInt(month, 10) - 1) || dt.getFullYear() != parseInt(year, 10)) {
172                return false;
173            }
174            else
175                return true;
176        }
177        else if (month == "" && (day != "" || year != ""))
178            return false;
179        else if (day == "" && (month != "" || year != ""))
180            return false;
181        else if (year == "" && (day != "" || month != ""))
182            return false;
183        else if (year == "" && day == "" && month == "" && (hour != "" || minute != ""))
184            return false;
185        else if (year != "" && day != "" && month != "" && (hour == "" || minute == ""))
186            return false;
187        else
188            return true;
189    }
190    else
191        return true;
192}, LFValidations.isvaliddate);
193
194$.validator.addMethod('furequired', function (value, element) {
195    if ($(element).parent().find('.plupload_content').length == 0)
196        return true;
197    if ($(element).parent().find('.plupload_content').attr('controlid').length > 0) {
198        var object = $(element).parent().find('.plupload_content').attr('controlid') + ".files.length==0";
199        var resume = true;
200        if ($(element).parent().find('.fileresume').length > 0) {
201            var val = $("#" + $(element).parent().find('.fileresume').attr('id')).val();
202            if (val !== null && val.trim() !== '') {
203                resume = false;
204            }
205        }
206
207        if (eval(object) && resume)
208            return false;
209        else
210            return true;
211    }
212    else
213        return true;
214}, LFValidations.furequired);
215
216$.validator.addMethod('fbrequired', function (value, element) {
217    var ele = $(element).val();
218    if (ele) {
219        return true;
220    }
221    else
222        return false;
223}, LFValidations.fbrequired);
224
225$(document).ready(function () {
226
227    $(".Field.Phone input[type=text].phone").each(function (index) {
228        if (typeof $(this).attr("placeholder") != 'undefined')
229            $("#" + $(this).attr("id")).mask($(this).attr("placeholder"), { clearIfNotMatch: true });
230    });
231
232    $(".Field.Textbox input[type=text].mask").each(function (index) {
233        if (typeof $(this).attr("placeholder") != 'undefined')
234            $("#" + $(this).attr("id")).mask($(this).attr("placeholder"), { clearIfNotMatch: true });
235    });
236
237    $(".Field.Password .strength").each(function (index) {
238        var options = {};
239        options.ui = {
240            container: "#" + $(this).attr("id"),
241            showVerdictsInsideProgressBar: true,
242            progressBarEmptyPercentage: 0,
243            progressBarMinPercentage: 25,
244            viewports: {
245                progress: "#" + $(this).attr("id") + "_viewport_progress"
246            }
247        };
248        $("#" + $(this).attr("id") + '_Password').pwstrength(options);
249        $("#" + $(this).attr("id") + '_Password').pwstrength("addRule", "testRule" + index, function (options, word, score) {
250            return word.match(/[0-9]/) && score;
251        }, 5, true);
252    });
253
254    $('.Field.Required.Fileupload input').attr("furequired", "furequired");
255    $(".Field.Required.Fileupload input.fileresume").removeAttr('furequired');
256
257    $('.Field.CkEditor.Required div.Field-Container-Wide').attr("editorrequired", "true");
258    $('.Field.CkEditor.Required div.Field-Container').attr("editorrequired", "true");
259
260    $(".Field.CkEditor").each(function (index) {
261        if (typeof $(this).attr("guid") != 'undefined') {
262            var GUID = $(this).attr("guid").replace(/-/g, '');
263            $(this).addClass('ck' + GUID.toLowerCase() + 'ck');
264        }
265    });
266
267    //Do Not Validate Required on Hidden Fields such as Allow Other in Radiobutton/Checkboxes
268    $('.Field input[type=hidden]').addClass("nrequired");
269
270    //Validate Required on All Inputs, Textareas & Selects Except Checkbox and those that explictly have "nrequired" class
271    $(".Field.Required:not(.Checkbox) input:not(.nrequired),.Field.Required select,.Field.Required textarea").attr("required", "");
272
273    //Validate Required on Radiobutton other fieds validate
274    $(".Field.Required.Radiobutton input[type=radio]:not(.nrequired)").attr("rbrequired", "rbrequired");
275
276    //Validate Required on Tag
277    $(".Field.Tag.Required input").attr("tagrequired", "tagrequired");
278    $('.Field.Tag.Required div.Field-Container-Wide').attr("tagrequired", "true");
279    $('.Field.Tag.Required div.Field-Container').attr("tagrequired", "true");
280
281    $(".Field.SingleReference.Required input").attr("tagrequired", "tagrequired");
282    $('.Field.SingleReference.Required div.Field-Container-Wide').attr("tagrequired", "true");
283    $('.Field.SingleReference.Required div.Field-Container').attr("tagrequired", "true");
284
285    $(".Field.MultiReference.Required input").attr("tagrequired", "tagrequired");
286    $('.Field.MultiReference.Required div.Field-Container-Wide').attr("tagrequired", "true");
287    $('.Field.MultiReference.Required div.Field-Container').attr("tagrequired", "true");
288
289    //Add attribute for Captcha
290    $('.Field.Captcha .mliveformcaptcha .textarea').attr("aria-label", "No value");
291
292    //Validate Required on Checkbox 
293    $(".Field.Required.Checkbox input[type=checkbox]:not(.nrequired)").attr("cbrequired", "cbrequired");
294
295    //Validate Required on matrix checkbox 
296    $(".Field.Required.Matrix input[type=checkbox]").removeAttr('required');
297    $(".Field.Required.Matrix input[type=checkbox]").attr("matrixCbrequired", "matrixCbrequired");
298
299    $(".Field.Matrix input[type=checkbox]").attr("aria-label", "Close");
300    $(".Field.Matrix input[type=radio]").attr("aria-label", "Close");
301
302    //Validate Required on matrix dropdownlist
303    $(".Field.Required.Matrix select").removeAttr('required');
304    $(".Field.Required.Matrix select").attr("matrixddlrequired", "matrixddlrequired");
305
306    //Validate Email
307    $(".Field.Email input[type=text]").attr("email", "email");
308
309    //Validate Cutom in Email field
310    $(".Field.Email.Custom input[type=text]").removeAttr('email');
311    $(".Field.Email.Custom input[type=text]").attr("custom", "custom");
312
313    //Validate CreditCard
314    jQuery(window).on('load', function () {
315        $(".Field.Fileupload input[type=file]").attr("aria-readonly", "true");
316        let textarea = document.getElementById("g-recaptcha-response");
317        if (textarea != null) {
318            textarea.setAttribute("aria-hidden", "true");
319            textarea.setAttribute("aria-label", "do not use");
320            textarea.setAttribute("aria-readonly", "true");
321        }
322    });
323
324    //Validate Alphanumeric
325    $(".Field.AlphaNumeric input[type=text]").attr("alphanumeric", "alphanumeric");
326
327    //Validate Custom
328    $(".Field.Textbox.Custom input[type=text]").attr("custom", "custom");
329    $(".Field.Textarea.Custom textarea").attr("custom", "custom");
330
331    //Validate Alphabetic 
332    $(".Field.Alphabetic input[type=text]").attr("alphabetic", "alphabetic");
333
334    //Validate Numeric  
335    $(".Field.Numeric input[type=text]").attr("numeric", "numeric");
336    $(".Field.CreditCard input[type=text].CVV").attr("numeric", "numeric");
337
338    // Validate Datetime  
339    $(".Field.Datetime input[type=text]").attr("isvaliddate", "isvaliddate");
340    $(".Field.Datetime select").attr("isvaliddate", "isvaliddate");
341
342    // Validate BirthDate  
343    $(".Field.Birthdate input[type=text]").attr("isvaliddate", "isvaliddate");
344    $(".Field.Birthdate select").attr("isvaliddate", "isvaliddate");
345
346    //Validate StarRating
347    $(".Field.Required.StarRating input[type=hidden].starratinghidden").removeClass('nrequired').attr("scorerequired", "scorerequired");
348
349    //Validate ScaleRating
350    $(".Field.Required.ScaleRating input[type=hidden]").attr("scalerequired", "scalerequired");
351    $(".Field.Required.ScaleRating input[type=radio]").removeAttr('required');
352
353    $(".Field.BrowseFile.Required input[required=required]").removeAttr('required');
354
355    //Handle Required on Radiobutton & Checkbox Allow Other
356    //Code Commented since Valiation Plugin is unable to handle the error placement for a Textbox that's inside a label
357    //$('.Field.Radiobutton input:not([type=hidden]),.Field.Checkbox input[type=checkbox]:not([type=hidden])').change(function () {
358    //    if ($(this).val() == 'Other') {
359    //        $(this).closest('.Field-Container').find('input[type=text]').removeClass('nrequired').attr('required', '');
360    //    } else {
361    //        $(this).closest('.Field-Container').find('input[type=text]').addClass('nrequired').removeAttr('required');
362    //    }
363    //});  
364
365
366    // Initialize validation on the entire ASP.NET form.
367    jQuery.validator.setDefaults({
368        //debug: true,
369        onsubmit: false,
370        ignore: ".novalidate",
371        rules: {
372            success: function (error) {
373                error.remove();
374            }
375        },
376        errorPlacement: function (error, element) {
377            if (element.closest('.ms-form-group').hasClass("Radiobutton") || element.closest('.ms-form-group').hasClass("Checkbox")) {
378                error.appendTo(element.closest('.ms-form-group'));
379                return;
380            }
381            else if (element.closest('.Field').hasClass("Radiobutton")) {
382                error.insertAfter(element.closest('.Field').find('.Field-Container'));
383                error.insertAfter(element.closest('.Field').find('.Field-Container-Wide'));
384                return;
385            }
386            else if (element.closest('.Field').hasClass("Matrix")) {
387                if ($(element).attr('type') == 'radio' || $(element).attr('type') == 'checkbox') {
388                    if ($(element).closest('tr').find('.tdBlank').find('.error').length < 1)
389                        element.closest('tr').find('.tdBlank').append(error);
390                    return;
391                }
392                else if ($(element).attr('type') == 'text' || $(element).attr('type') == 'number' || $(element).is('select')) {
393                    $(element).closest('tbody').find('.tdBlank').find('.error').remove();
394                    $(element).closest('tbody').find('.tdBlank').first().append(error);
395                    return;
396                }
397            }
398            else if (element.closest('.Field').hasClass("Phone")) {
399                if (element.hasClass('AreaCode'))
400                    return;
401            }
402            else if (element.closest('.Field').hasClass("Checkbox") || element.closest('.Field').hasClass("Datetime") || element.closest('.Field').hasClass("Time") || element.closest('.Field').hasClass("Birthdate") || element.closest('.Field').hasClass("Fullname") || element.closest('.Field').hasClass("Address")) {
403
404                if (element.closest('.Field').find('label.error').length == 0 || (element.closest('.Field').find('label.error').length > 0 && element.closest('.Field').find('label.error').is(":visible") == false)) {
405                    error.insertAfter(element.closest('.Field').find('.Field-Container'));
406                    error.insertAfter(element.closest('.Field').find('.Field-Container-Wide'));
407                }
408                return;
409
410            }
411
412
413
414            error.insertAfter(element);
415
416        }
417    });
418
419    //$("#form1").validate({
420    //    // This prevents validation from running on every
421    //    //  form submission by default.
422
423    //    onsubmit: false,
424
425
426    //});
427
428    // Search for controls marked with the causesValidation flag 
429    //  that are contained anywhere within elements marked as 
430    //  validationGroups, and wire their click event up.
431    $('.validationGroup .causesValidation').click(ValidateAndSubmit);
432    $('.validationGroup .SaveAndResume').click(SaveAndResume);
433    // Select any input[type=text] elements within a validation group
434    //  and attach keydown handlers to all of them.
435    $('.validationGroup :password,.validationGroup :text').keydown(function (evt) {
436        // Only execute validation if the key pressed was enter.
437        if (evt.keyCode == 13) {
438            ValidateAndSubmit(evt);
439        }
440    });
441});
442
443function SaveAndResume() {
444    //Finish client side operations
445    $('.Field.Currency input').each(function () {
446        $(this).select();
447        $(this).next().val($(this).maskMoney('unmasked')[0]);
448    });
449};
450
451function ValidateAndSubmit(evt) {
452
453    //Show the loading icons
454    jQuery(".lfoverlay").show();
455    jQuery(".lfmodal").show();
456
457    //Finish client side operations
458    $('.Field.Currency input').each(function () {
459        $(this).select();
460        $(this).next().val($(this).maskMoney('unmasked')[0]);
461    });
462
463
464
465    $('.Field.Dropdown select').each(function () {
466        $(this).prev().val($(this).find('option:selected').text());
467    });
468
469    $('.Field.Radiobutton table').each(function () {
470        $(this).prev().val($(this).find('input:checked').next().text());
471    });
472
473    $('.Field.Checkbox table').each(function () {
474        $(this).prev().val($(this).find('input:checkbox:checked').map(function () {
475            return $(this).next().text();
476        }).get().join(','));
477    });
478
479
480
481
482    // Ascend from the button that triggered this click event 
483    //  until we find a container element flagged with 
484    //  .validationGroup and store a reference to that element.
485
486    var $group = $(evt.currentTarget).parents('.validationGroup');
487
488    var isValid = true;
489    // Descending from that .validationGroup element, find any input
490    //  elements within it, iterate over them, and run validation on 
491    //  each of them.
492    $group.validate();
493    var focus = new Array();
494    $group.find(':input').each(function (i, item) {
495        if ($(item).is(':visible') && !$(item).valid()) {
496            focus.push(item);
497            isValid = false;
498        }
499        else if ($(item).attr('furequired') == "furequired" && !$(item).valid()) {
500            focus.push(item);
501            isValid = false;
502        }
503        else if ($(item).attr('fbrequired') == "fbrequired" && !$(item).valid()) {
504            focus.push(item);
505            isValid = false;
506        }
507        else if ($(item).attr('tagrequired') == "tagrequired") {
508            if ($(item).parent('div').attr('tagrequired') != undefined && $(item).parent('div').attr('tagrequired') == "true") {
509                if ($(item).parent('div').find("tag").length < 1) {
510                    $("#label" + $(item).attr('tag') + "").remove();
511                    $("<label id=label" + $(item).attr('tag') + " class=\"error\">" + LFValidations.required + "</label>").insertAfter($(item));
512                    isValid = false;
513                }
514                else {
515                    $("#label" + $(item).attr('tag') + "").remove();
516                }
517            }
518        }
519        else if ($(item).attr('ckeditor') == "required") {
520            if ($(item).parent('div').attr('editorrequired') != undefined && $(item).parent('div').attr('editorrequired') == "true") {
521                $.each(CKEDITOR.instances, function (key, editor) {
522                    if ($(editor.element.$).parent('div').parent('li') != undefined && $(editor.element.$).parent('div').parent('li').is(':visible') == true) {
523                        if ($(item).attr('ckeditor') == $(editor.element.$).attr('ckeditor')) {
524                            if (editor.getData() == "") {
525                                $("#label" + $(item).attr('ckeditor') + "").remove();
526                                $("<label id=label" + $(item).attr('ckeditor') + " class=\"error\">" + LFValidations.required + "</label>").insertAfter($(item).parent('div').children('div'));
527                                isValid = false;
528                            }
529                            else {
530                                $("#label" + $(item).attr('ckeditor') + "").remove();
531                            }
532                        }
533                    }
534                })
535            }
536        }
537        var pagesection_Visible = true;
538        var pagesection = $(item).closest('ul.page-break-section'); // in case of multiple captcha in a form with page breck 
539        if (pagesection && !$(pagesection).is(':visible'))
540            pagesection_Visible = false;
541        if (pagesection_Visible && $(item).hasClass('g-recaptcha-response') && !$(item).hasClass('novalidate')) {
542            var captchadiv = $(item).closest('div[googlerecaptchaid]');
543            var captcharesponse = grecaptcha.getResponse($(captchadiv).attr('googlerecaptchaid'));
544            $("#" + $(captchadiv).attr("id") + " .error").remove();
545            if (captcharesponse.length == 0) {
546                isValid = false;
547                $("#" + $(captchadiv).attr("id")).append('<label class="error">' + LFValidations.recaptcha + '</label>');
548            }
549
550        }
551
552    });
553    //password validate
554    $group.find('.Field.Password').each(function (i, item) {
555        var password = "", confirmpassword = "";
556        $(item).find(':input').each(function (i, inputitem) {
557            if ($(inputitem).is(':visible')) {
558                $(inputitem).next('.conmessage').remove();
559                if ($(inputitem).hasClass('password')) {
560                    password = inputitem.value;
561                }
562                else if ($(inputitem).hasClass('confirmpassword')) {
563                    $(inputitem).next('.conmessage').remove();
564                    confirmpassword = inputitem.value;
565                    if (password != confirmpassword) {
566                        focus.push(inputitem);
567                        $('<label class="error conmessage">' + LFValidations.matchpassmessage + '</label>').insertAfter(inputitem);
568                        isValid = false;
569                    }
570                }
571            }
572        });
573
574    });
575
576
577    //validate Extension fields
578    isValid = ValidateExtension($group, focus, isValid);
579
580    if ($(focus).length > 0) {
581        $('html,body').animate({ scrollTop: $(focus).first().closest('li').first().offset().top - 100 }, 500, function () { $(focus).first().focus(); });
582        //$(focus).first().focus();
583    }
584    // If any fields failed validation, prevent the button's click 
585    //  event from triggering form submission.
586    if (!isValid) {
587        jQuery(".lfoverlay").hide();
588        jQuery(".lfmodal").hide();
589        evt.preventDefault();
590    }
591    else if (evt.keyCode == 13) {
592        var SubmitButton = $group.find('.causesValidation.bSubmit');
593        if (SubmitButton.length > 0) {
594            SubmitButton.click();
595            evt.preventDefault();
596        }
597    }
598    //else {
599
600    //    var url = window.location.href;
601    //    if (url.indexOf("?") > -1)
602    //        url = url + '&mid=' + parseInt($(this).attr("mid"));
603    //    else
604    //        url = url + '?mid=' + parseInt($(this).attr("mid"));
605
606    //    $.post(url, $('form').serializeArray()).done(function (data) {
607    //        var $group = $(evt.currentTarget).parents('.validationGroup');
608    //        var SubmitButton = $group.find('.causesValidation.bSubmit');
609    //        jQuery(".lfoverlay").hide();
610    //        jQuery(".lfmodal").hide();
611    //        var html = $.parseHTML(data);
612    //        var dom = $(data);
613    //        $('body').find('[uniqueid="LiveForm' + parseInt($(SubmitButton).attr("mid")) + '"]').html(dom.find('[uniqueid="LiveForm' + parseInt($(SubmitButton).attr("mid")) + '"]').html());
614    //        $.each($(data).find('script'), function (k, v) {
615    //            var src = $(v).attr("src");
616    //            if (src != undefined && src.indexOf("DesktopModules/LiveForms") != -1) {
617    //                eval(v);
618    //            }
619    //        });
620    //    })
621    //    evt.preventDefault();
622    //}
623}

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.