/* ------------------------------------------------------------------------------ * * # Bootstrap multiple file uploader * * Specific JS code additions for uploader_bootstrap.html page * * Version: 1.2 * Latest update: Aug 10, 2016 * * ---------------------------------------------------------------------------- */ $(function() { // // Define variables // // Modal template var modalTemplate = '\n'; // Buttons inside zoom modal var previewZoomButtonClasses = { toggleheader: 'btn btn-default btn-icon btn-xs btn-header-toggle', fullscreen: 'btn btn-default btn-icon btn-xs', borderless: 'btn btn-default btn-icon btn-xs', close: 'btn btn-default btn-icon btn-xs' }; // Icons inside zoom modal classes var previewZoomButtonIcons = { prev: '', next: '', toggleheader: '', fullscreen: '', borderless: '', close: '' }; // File actions var fileActionSettings = { zoomClass: 'btn btn-link btn-xs btn-icon', zoomIcon: '', dragClass: 'btn btn-link btn-xs btn-icon', dragIcon: '', removeClass: 'btn btn-link btn-icon btn-xs', removeIcon: '', indicatorNew: '', indicatorSuccess: '', indicatorError: '', indicatorLoading: '' }; // // Basic example // $('.file-input').fileinput({ browseLabel: 'Browse', browseIcon: '', uploadIcon: '', removeIcon: '', layoutTemplates: { icon: '', modal: modalTemplate }, initialCaption: "No file selected", previewZoomButtonClasses: previewZoomButtonClasses, previewZoomButtonIcons: previewZoomButtonIcons, fileActionSettings: fileActionSettings }); // // Custom layout // $('.file-input-custom').fileinput({ previewFileType: 'image', browseLabel: 'Select', browseClass: 'btn bg-slate-700', browseIcon: ' ', removeLabel: 'Remove', removeClass: 'btn btn-danger', removeIcon: ' ', uploadClass: 'btn bg-teal-400', uploadIcon: ' ', layoutTemplates: { icon: '', modal: modalTemplate }, initialCaption: "Please select image", mainClass: 'input-group', previewZoomButtonClasses: previewZoomButtonClasses, previewZoomButtonIcons: previewZoomButtonIcons, fileActionSettings: fileActionSettings }); // // Template modifications // $('.file-input-advanced').fileinput({ browseLabel: 'Browse', browseClass: 'btn btn-default', removeClass: 'btn btn-default', uploadClass: 'btn bg-success-400', browseIcon: '', uploadIcon: '', removeIcon: '', layoutTemplates: { icon: '', main1: "{preview}\n" + "
\n" + "
\n" + " {browse}\n" + "
\n" + " {caption}\n" + "
\n" + " {upload}\n" + " {remove}\n" + "
\n" + "
", modal: modalTemplate }, initialCaption: "No file selected", previewZoomButtonClasses: previewZoomButtonClasses, previewZoomButtonIcons: previewZoomButtonIcons, fileActionSettings: fileActionSettings }); // // Custom file extensions // $(".file-input-extensions").fileinput({ browseLabel: 'Browse', browseClass: 'btn btn-primary', uploadClass: 'btn btn-default', browseIcon: '', uploadIcon: '', removeIcon: '', layoutTemplates: { icon: '', modal: modalTemplate }, maxFilesNum: 10, allowedFileExtensions: ["jpg", "gif", "png", "txt"], initialCaption: "No file selected", previewZoomButtonClasses: previewZoomButtonClasses, previewZoomButtonIcons: previewZoomButtonIcons, fileActionSettings: fileActionSettings }); // // Always display preview // $(".file-input-preview").fileinput({ browseLabel: 'Browse', browseIcon: '', uploadIcon: '', removeIcon: '', layoutTemplates: { icon: '', modal: modalTemplate }, initialPreview: [ "assets/images/demo/images/1.png", "assets/images/demo/images/2.png", ], initialPreviewConfig: [ {caption: "Jane.jpg", size: 930321, key: 1, showDrag: false}, {caption: "Anna.jpg", size: 1218822, key: 2, showDrag: false} ], initialPreviewAsData: true, overwriteInitial: false, maxFileSize: 100, previewZoomButtonClasses: previewZoomButtonClasses, previewZoomButtonIcons: previewZoomButtonIcons, fileActionSettings: fileActionSettings }); // // Display preview on load // $(".file-input-overwrite").fileinput({ browseLabel: 'Browse', browseIcon: '', uploadIcon: '', removeIcon: '', layoutTemplates: { icon: '', modal: modalTemplate }, initialPreview: [ "assets/images/demo/images/1.png", "assets/images/demo/images/2.png" ], initialPreviewConfig: [ {caption: "Jane.jpg", size: 930321, key: 1, showDrag: false}, {caption: "Anna.jpg", size: 1218822, key: 2, showDrag: false} ], initialPreviewAsData: true, overwriteInitial: true, previewZoomButtonClasses: previewZoomButtonClasses, previewZoomButtonIcons: previewZoomButtonIcons, fileActionSettings: fileActionSettings }); // // AJAX upload // $(".file-input-ajax").fileinput({ uploadUrl: "http://localhost", // server upload action uploadAsync: true, maxFileCount: 5, initialPreview: [], fileActionSettings: { removeIcon: '', removeClass: 'btn btn-link btn-xs btn-icon', uploadIcon: '', uploadClass: 'btn btn-link btn-xs btn-icon', indicatorNew: '', indicatorSuccess: '', indicatorError: '', indicatorLoading: '', }, layoutTemplates: { icon: '', modal: modalTemplate }, initialCaption: "No file selected", previewZoomButtonClasses: previewZoomButtonClasses, previewZoomButtonIcons: previewZoomButtonIcons }); // // Misc // // Disable/enable button $("#btn-modify").on("click", function() { $btn = $(this); if ($btn.text() == "Disable file input") { $("#file-input-methods").fileinput("disable"); $btn.html("Enable file input"); alert("Hurray! I have disabled the input and hidden the upload button."); } else { $("#file-input-methods").fileinput("enable"); $btn.html("Disable file input"); alert("Hurray! I have reverted back the input to enabled with the upload button."); } }); });