PageSourceSearch

https://www.crownresorts.com.au/Content/FormComponents/FileSelectC…?version=20260925.02_release_2.611.0

js crownresorts.com.au collected 2026-10-02 08:01:24 UTC 2,477 bytes, 72 lines download raw bytes

1document.addEventListener('DOMContentLoaded', function () {
2    fileSelectComponent_init();
3
4    // Custom kentico-form- events are dispatched via /Kentico/Scripts/forms/updatableFormHelper.js
5    document.addEventListener('kentico-form-update-after', function (e) {
6        fileSelectComponent_init();
7    }, false);
8
9    document.addEventListener('kentico-form-submitted', function (e) {
10        fileSelectComponent_init();
11    }, false);
12}, false);
13
14function fileSelectComponent_init() {
15    var dateSelects = document.querySelectorAll('input[type="file"][data-fieldtype="fileselect"]');
16    dateSelects.forEach(ds => {
17        ds.onchange = fileSelectComponent_onchangeHandler;
18    });
19}
20
21function fileSelectComponent_onchangeHandler() {
22    var fieldName = this.dataset.fieldname;
23    var errorLabel = document.querySelector('div[class^="field-validation-"][data-valmsg-for$="' + fieldName + '.FileSelected"]');
24
25    if (!fileSelectComponent_isValidFileExtension(this)) {
26        this.value = "";
27        errorLabel.innerHTML = this.dataset.accepterrormessage;
28        errorLabel.className = 'field-validation-error';
29        return;
30    }
31
32    if (!fileSelectComponent_isLessThanMaxFileSize(this)) {
33        this.value = "";
34        errorLabel.innerHTML = this.dataset.maxfilesizeerrormessage;
35        errorLabel.className = 'field-validation-error';
36        return;
37    }
38
39    errorLabel.innerHTML = '';
40    errorLabel.className = 'field-validation-valid';
41}
42
43function fileSelectComponent_isValidFileExtension(fileInputElement) {
44    var acceptList = fileInputElement.getAttribute("accept");
45
46    if (fileInputElement.value === "" || acceptList === null)
47        return true;
48
49    if (fileInputElement.value.length < 5 || !fileInputElement.value.includes("."))
50        return false;
51
52    var fileExtension = fileInputElement.value.substr(fileInputElement.value.length - 4, 4);
53
54    return acceptList.includes(fileExtension);
55}
56
57function fileSelectComponent_isLessThanMaxFileSize(fileInputElement) {
58    if (fileInputElement.value === "")
59        return true;
60
61    var maxFileSizeMB = fileInputElement.dataset.maxfilesizemb;
62    if (maxFileSizeMB === undefined)
63        maxFileSizeMB = 5; // default to 5MB
64
65    if (maxFileSizeMB === 0)
66        return true;
67
68    var maxMBs = parseInt(maxFileSizeMB);
69    var maxBytes = maxMBs * 1024 * 1024;
70
71    return (fileInputElement.files[0].size < maxBytes);
72}

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.