Fix for exporting a large number of lists.
[openemr.git] / library / js / oeUI / oeFileUploads.js
blobfef4a392639cfe11f66a4c2f532d2931100e4282
1 /**
2  * Styling input file uploads.
3  *
4  * @package   OpenEMR
5  * @link      http://www.open-emr.org
6  * @author Ranganath Pathak <pathak@scrs1.org>
7  * @copyright Copyright (c) 2018 Ranganath Pathak <pathak@scrs1.org>
8  * @license   https://github.com/openemr/openemr/blob/master/LICENSE GNU General Public License 3
9  */
10 $(function () {
11     //adapted from https://www.abeautifulsite.net/whipping-file-inputs-into-shape-with-bootstrap-3
12     // We can attach the `fileselect` event to all file inputs on the page
13     $(document).on('change', ':file', function () {
14         var input = $(this),
15             numFiles = input.get(0).files ? input.get(0).files.length : 1,
16             label = input.val().replace(/\\/g, '/').replace(/.*\//, '');
17         input.trigger('fileselect', [numFiles, label]);
18     });
19     // We can watch for our custom `fileselect` event like this
20     $(function () {
21         $(':file').on('fileselect', function (event, numFiles, label) {
22             var input = $(this).parents('.input-group').find(':text'),
23                 log = numFiles > 1 ? numFiles + ' files selected' : label;
24             if (input.length) {
25                 input.val(log);
26             } else {
27                 if (log) {
28                     alert(log);
29                 }
30             }
31         });
32     });
33 });