diff --git a/assets/js/admin/admin.js b/assets/js/admin/admin.js index ce593bf..260d8c2 100644 --- a/assets/js/admin/admin.js +++ b/assets/js/admin/admin.js @@ -19,3 +19,4 @@ require('./modules/form-collection.js')(); require('./modules/datepicker.js')(); require('./modules/sortable.js')(); require('./modules/batch.js')(); +require('./modules/file-manager.js')(); diff --git a/assets/js/admin/components/file-manager/FileIcon.vue b/assets/js/admin/components/file-manager/FileIcon.vue new file mode 100644 index 0000000..7dfa845 --- /dev/null +++ b/assets/js/admin/components/file-manager/FileIcon.vue @@ -0,0 +1,45 @@ + + + diff --git a/assets/js/admin/components/file-manager/FileManager.vue b/assets/js/admin/components/file-manager/FileManager.vue new file mode 100644 index 0000000..2c6eede --- /dev/null +++ b/assets/js/admin/components/file-manager/FileManager.vue @@ -0,0 +1,23 @@ + + + + + diff --git a/assets/js/admin/components/file-manager/Files.vue b/assets/js/admin/components/file-manager/Files.vue new file mode 100644 index 0000000..8bc2d20 --- /dev/null +++ b/assets/js/admin/components/file-manager/Files.vue @@ -0,0 +1,284 @@ + + + + + diff --git a/assets/js/admin/modules/editor.js b/assets/js/admin/modules/editor.js index e18fad5..9949035 100644 --- a/assets/js/admin/modules/editor.js +++ b/assets/js/admin/modules/editor.js @@ -96,5 +96,5 @@ module.exports = function() { const config = {attributes: false, childList: true, subtree: true}; observer.observe(document.querySelector('body'), config); - $(window).ready(doInitEditor); + doInitEditor(); }; diff --git a/assets/js/admin/modules/file-manager.js b/assets/js/admin/modules/file-manager.js new file mode 100644 index 0000000..689524d --- /dev/null +++ b/assets/js/admin/modules/file-manager.js @@ -0,0 +1,18 @@ +// file-manager +const Vue = require('vue').default + +const FileManager = require('../components/file-manager/FileManager').default + +module.exports = () => { + if (!document.getElementById('file-manager')) { + return + } + + new Vue({ + el: '#file-manager', + template: '', + components: { + FileManager + } + }); +} diff --git a/assets/js/admin/modules/form-confirm.js b/assets/js/admin/modules/form-confirm.js index 4e07e8c..6a0e848 100644 --- a/assets/js/admin/modules/form-confirm.js +++ b/assets/js/admin/modules/form-confirm.js @@ -1,7 +1,7 @@ const $ = require('jquery'); module.exports = function() { - $('*[data-form-confirm]').submit(function(e) { + $('body').on('submit', '*[data-form-confirm]', function(e) { let message = $(this).attr('data-form-confirm'); if (!message) { diff --git a/assets/js/admin/modules/form.js b/assets/js/admin/modules/form.js index 763cd7d..6a5c56e 100644 --- a/assets/js/admin/modules/form.js +++ b/assets/js/admin/modules/form.js @@ -1,7 +1,7 @@ const $ = require('jquery'); module.exports = function() { - $('.custom-file-input').on('change', function(event) { + $('body').on('change', '.custom-file-input', function(event) { let inputFile = event.currentTarget; $(inputFile).parent() diff --git a/assets/js/admin/modules/modal.js b/assets/js/admin/modules/modal.js index c0bed86..6c6d8fa 100644 --- a/assets/js/admin/modules/modal.js +++ b/assets/js/admin/modules/modal.js @@ -1,31 +1,50 @@ const $ = require('jquery'); module.exports = function() { + let click = 0; + $('body').on('click', '*[data-modal]', (e) => { e.preventDefault(); e.stopPropagation(); - let container = $('#modal-container'); - const body = $('body') + ++click; - if (!container.length) { - container = $('