9d1ae97e14c3bd22f7073d678e15862f16b57eb3
[edumed.git] / stage2 / static / js / checkfile.js
1 $(function() {
2     "use strict";
3     $('input[type=file]').on('change', function () {
4         if (window.FileReader && this.files && this.files[0]) {
5             var ok = true;
6             var name = this.files[0].name;
7             if (this.getAttribute('data-ext')) {
8                 var ext = this.getAttribute('data-ext');
9                 var re = new RegExp('\\.(' + ext + ')$', 'i');
10                 if (!re.exec(name)) {
11                     if (/\|/.exec(ext))
12                         alert('Błędne rozszerzenie! Powinno być jedno z: ' + ext.replace(/\|/g, ', '));
13                     else
14                         alert('Błędne rozszerzenie! Powinno być: ' + ext);
15                     ok = false;
16                 }
17                 if (name.length > 65) {
18                     alert('Za długa nazwa pliku! Maksymalna długość: 65 znaków (jest: ' + name.length + ')');
19                     ok = false;
20                 }
21             }
22             var size = this.files[0].size;
23             if (size > 20 * 1024 * 1024) {
24                 alert('Rozmiar pliku nie może przekraczać 20 MB!');
25                 ok = false;
26             }
27             if (!ok) {
28                 this.form.reset();
29             }
30         }
31     });
32 });