diff --git a/readme.md b/readme.md index 1ae23f1..af91d95 100644 --- a/readme.md +++ b/readme.md @@ -34,7 +34,15 @@ That's it. Hit refresh in your admin panel, and you'll find a new sidebar item p You can use elFinder in Backpack: - stand-alone, by accessing the ```/admin/elfinder``` route (see screenshot above); -- inside the [```browse```](https://backpackforlaravel.com/docs/4.1/crud-fields#browse), [```browse_multiple```](https://backpackforlaravel.com/docs/4.1/crud-fields#browse_multiple) or [```ckeditor```](https://backpackforlaravel.com/docs/4.1/crud-fields#ckeditor) field types; +- inside the [```browse```](https://backpackforlaravel.com/docs/4.1/crud-fields#browse), [```browse_multiple```](https://backpackforlaravel.com/docs/4.1/crud-fields#browse_multiple); + +## Customization + +You can publish the views to your `resources/views/vendor/backpack/filemanager` folder by running: + +```bash +php vendor:publish --provider="Backpack\FileManager\FileManagerServiceProvider" --tag="views" +``` ## Upgrade diff --git a/resources/assets/css/elfinder.backpack.theme.css b/resources/assets/css/elfinder.backpack.theme.css deleted file mode 100644 index 10c1fee..0000000 --- a/resources/assets/css/elfinder.backpack.theme.css +++ /dev/null @@ -1,127 +0,0 @@ -/** - * Laravel Backpack theme for elFinder. - * Required jquery ui "smoothness" theme. - * - * @author Cristian Tabacitu [hello@tabacitu.ro] - **/ - -body.elfinder { margin:0; } -body #elfinder.ui-widget-content { - border: 1px solid #cccccc; - background: #ffffff; - color: #23282c; - border-radius: 3px!important; -} - -.elfinder-cwd-icon:before { - background: #ccc; -} - -#elfinder .ui-state-default, -#elfinder .ui-widget-content .ui-state-default, -#elfinder .ui-widget-header .ui-state-default { - background: #e6e6e6; -} - -.elfinder-contextmenu .ui-state-hover { - color: black!important; -} - -.elfinder-cwd-file.ui-state-hover, -.elfinder-cwd-file.ui-widget-content .ui-state-hover, -.elfinder-cwd-file.ui-widget-header .ui-state-hover, -.elfinder-cwd-file.ui-state-focus, -.elfinder-cwd-file.ui-widget-content .ui-state-focus, -.elfinder-cwd-file.ui-widget-header .ui-state-focus { - background: transparent!important; - /*border: 1px solid #ccc;*/ -} - -.elfinder-cwd-view-icons .elfinder-cwd-file .elfinder-cwd-filename.ui-state-hover, -.elfinder-cwd table td.ui-state-hover, -.elfinder-button-menu .ui-state-hover { - /*color: black!important;*/ - /*font-weight: bold;*/ -} - -.elfinder .elfinder-contextmenu, .elfinder .elfinder-contextmenu-sub { - border: 1px solid #ccc!important; -} - -/* input textarea */ -.elfinder input, -.elfinder textarea { - color: #000; - background-color: #FFF; -} - -/* dialogs */ -.std42-dialog, .std42-dialog .ui-widget-content { background-color:#ededed; background-image:none; background-clip: content-box; } - -/* navbar */ -.elfinder .elfinder-navbar { background:#dde4eb; } -.elfinder-navbar .ui-state-hover { color:#000; background-color:#edf1f4; border-color:#bdcbd8; } -.elfinder-navbar-root.ui-state-active.ui-state-hover { color:white; background: #3875d7!important; } -.elfinder-navbar .ui-state-active { background: #3875d7; border-color:#3875d7; color:#fff; } -.elfinder-navbar .elfinder-droppable-active {background:#A7C6E5 !important;} -/* disabled elfinder */ -.elfinder-disabled .elfinder-navbar .ui-state-active { background: #dadada; border-color:#aaa; color:#fff; } - - -/* current directory */ -/* selected file in "icons" view */ -.elfinder-cwd-view-icons .elfinder-cwd-file .ui-state-hover { background:#ccc; } - -/* list view*/ -.elfinder-cwd table thead td.ui-state-hover { background:#ddd; } -.elfinder-cwd table tr:nth-child(odd) { background-color:#edf3fe; } -.elfinder-cwd table tr { - border: 1px solid transparent; - border-top:1px solid #fff; -} -.elfinder-cwd .elfinder-droppable-active td { background:#A7C6E5 !important; } - - -/* common selected background/color */ -.elfinder-cwd-view-icons .elfinder-cwd-file .elfinder-cwd-filename.ui-state-hover, -.elfinder-cwd table td.ui-state-hover, -.elfinder-button-menu .ui-state-hover { background: #3875d7; color:#fff;} -/* disabled elfinder */ -.elfinder-disabled .elfinder-cwd-view-icons .elfinder-cwd-file .elfinder-cwd-filename.ui-state-hover, -.elfinder-disabled .elfinder-cwd table td.ui-state-hover { background:#dadada;} - -/* statusbar */ -.elfinder .elfinder-statusbar { color:#555; } -.elfinder .elfinder-statusbar a { text-decoration:none; color:#555;} - - -.std42-dialog .elfinder-help, .std42-dialog .elfinder-help .ui-widget-content { background:#fff;} - -/* contextmenu */ -.elfinder-contextmenu .ui-state-hover { background: #3875d7; color:#fff; } -/* .elfinder-contextmenu .ui-state-hover .elfinder-contextmenu-arrow { background-image:url('../img/arrows-active.png'); } */ - -/* jquery-ui overwrites */ -.ui-widget-header { - background: #cccccc; - border: none; -} - -.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { - border-bottom-right-radius: 0; -} -.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { - border-bottom-left-radius: 0; -} -.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { - border-top-right-radius: 0; -} -.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { - border-top-left-radius: 0; -} -.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { - background: #dadada; -} -.elfinder-navbar-root .ui-state-hover { - background: #3875d7!important; -} \ No newline at end of file diff --git a/resources/views/ckeditor4.blade.php b/resources/views/ckeditor4.blade.php deleted file mode 100644 index 0e47561..0000000 --- a/resources/views/ckeditor4.blade.php +++ /dev/null @@ -1,67 +0,0 @@ - - - - - @include('vendor.elfinder.common_scripts') - @include('vendor.elfinder.common_styles') - - - - - - - -
- - - diff --git a/resources/views/ckeditor4.php b/resources/views/ckeditor4.php deleted file mode 100644 index 5191c12..0000000 --- a/resources/views/ckeditor4.php +++ /dev/null @@ -1,83 +0,0 @@ - - - - - elFinder 2.0 - - - - - - - - - - - - - - - - - - - - - - - - -
- - - diff --git a/resources/views/common_styles.blade.php b/resources/views/common_styles.blade.php index d529232..96e3e99 100644 --- a/resources/views/common_styles.blade.php +++ b/resources/views/common_styles.blade.php @@ -2,6 +2,8 @@ File Manager {{-- elFinder CSS (REQUIRED) --}} @basset('bp-elfinder-css') +@basset('bp-elfinder-icons-big', false) +@batter('bp-elfinder-logo', false) @basset('https://cdn.jsdelivr.net/gh/RobiNN1/elFinder-Material-Theme@3.0.0/Material/css/theme.min.css') @basset('https://cdn.jsdelivr.net/gh/RobiNN1/elFinder-Material-Theme@3.0.0/Material/images/loading.svg', false) @basset('https://cdn.jsdelivr.net/gh/RobiNN1/elFinder-Material-Theme@3.0.0/Material/font/material.eot', false) diff --git a/resources/views/elfinder.blade.php b/resources/views/elfinder.blade.php index 7308e48..f5825ab 100644 --- a/resources/views/elfinder.blade.php +++ b/resources/views/elfinder.blade.php @@ -2,8 +2,8 @@ @section('after_scripts') - @include('vendor.elfinder.common_scripts') - @include('vendor.elfinder.common_styles') + @include('backpack.elfinder::common_scripts') + @include('backpack.elfinder::common_styles') - - - - - - - - - - - - - - - - - - - - -
- - - diff --git a/resources/views/filepicker.blade.php b/resources/views/filepicker.blade.php deleted file mode 100644 index d8a1698..0000000 --- a/resources/views/filepicker.blade.php +++ /dev/null @@ -1,88 +0,0 @@ - - - - - @include('vendor.elfinder.common_scripts') - @include('vendor.elfinder.common_styles') - - - - - - -
- - - diff --git a/resources/views/filepicker.php b/resources/views/filepicker.php deleted file mode 100644 index bf0dda0..0000000 --- a/resources/views/filepicker.php +++ /dev/null @@ -1,106 +0,0 @@ - - - - - elFinder 2.0 - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - diff --git a/resources/views/standalonepopup.php b/resources/views/standalonepopup.php deleted file mode 100644 index 7e8f4e8..0000000 --- a/resources/views/standalonepopup.php +++ /dev/null @@ -1,82 +0,0 @@ - - - - - elFinder 2.0 - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - diff --git a/resources/views/tinymce.blade.php b/resources/views/tinymce.blade.php deleted file mode 100644 index ee70061..0000000 --- a/resources/views/tinymce.blade.php +++ /dev/null @@ -1,89 +0,0 @@ - - - - - @include('vendor.elfinder.common_scripts') - @include('vendor.elfinder.common_styles') - - - - - - - - - - -
- - - diff --git a/resources/views/tinymce.php b/resources/views/tinymce.php deleted file mode 100644 index ccf17f4..0000000 --- a/resources/views/tinymce.php +++ /dev/null @@ -1,105 +0,0 @@ - - - - - elFinder 2.0 - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - diff --git a/resources/views/tinymce4.blade.php b/resources/views/tinymce4.blade.php deleted file mode 100644 index 107a59b..0000000 --- a/resources/views/tinymce4.blade.php +++ /dev/null @@ -1,71 +0,0 @@ - - - - - @include('vendor.elfinder.common_scripts') - @include('vendor.elfinder.common_styles') - - - - - - - -
- - - diff --git a/resources/views/tinymce4.php b/resources/views/tinymce4.php deleted file mode 100644 index 5083463..0000000 --- a/resources/views/tinymce4.php +++ /dev/null @@ -1,86 +0,0 @@ - - - - - elFinder 2.0 - - - - - - - - - - - - - - - - - - - - - - - - -
- - - diff --git a/resources/views/tinymce5.blade.php b/resources/views/tinymce5.blade.php deleted file mode 100644 index 5a7cd30..0000000 --- a/resources/views/tinymce5.blade.php +++ /dev/null @@ -1,55 +0,0 @@ - - - - - @include('vendor.elfinder.common_scripts') - @include('vendor.elfinder.common_styles', ['styleBodyElement' => true]) - - - - - - - -
- - - diff --git a/resources/views/tinymce5.php b/resources/views/tinymce5.php deleted file mode 100644 index 6404f86..0000000 --- a/resources/views/tinymce5.php +++ /dev/null @@ -1,87 +0,0 @@ - - - - - elFinder 2.0 - - - - - - - - - - - - - - - - - - - - - - - - -
- - - diff --git a/src/BackpackElfinderController.php b/src/BackpackElfinderController.php index 6f6606a..a2f36bf 100644 --- a/src/BackpackElfinderController.php +++ b/src/BackpackElfinderController.php @@ -30,8 +30,15 @@ public function showPopup($input_id) } return $this->app['view'] - ->make($this->package.'::standalonepopup') + ->make('backpack.elfinder::::standalonepopup') ->with($this->getViewVars()) ->with(compact('input_id')); } + + public function showIndex() + { + return $this->app['view'] + ->make('backpack.elfinder::elfinder') + ->with($this->getViewVars()); + } } diff --git a/src/Console/Commands/Install.php b/src/Console/Commands/Install.php index ff3f046..0021630 100644 --- a/src/Console/Commands/Install.php +++ b/src/Console/Commands/Install.php @@ -42,10 +42,11 @@ public function handle() File::ensureDirectoryExists('public/uploads'); $this->closeProgressBlock(); - // Publishing custom elfinder views - $this->progressBlock('Publishing custom elfinder views'); + // Publishing elfinder config file + $this->progressBlock('Publishing the config file'); $this->executeArtisanProcess('vendor:publish', [ '--provider' => FileManagerServiceProvider::class, + '--tag' => 'config', ]); $this->closeProgressBlock(); diff --git a/src/FileManagerServiceProvider.php b/src/FileManagerServiceProvider.php index 8aea9ae..19d879f 100644 --- a/src/FileManagerServiceProvider.php +++ b/src/FileManagerServiceProvider.php @@ -27,10 +27,8 @@ public function boot() } $this->loadViewsFrom(__DIR__.'/../resources/views', 'backpack.elfinder'); - if (! backpack_pro()) { - Basset::map('bp-jquery-ui-js', 'https://raw.githubusercontent.com/jquery/jquery-ui/refs/tags/1.13.2/dist/jquery-ui.min.js', ['integrity' => 'sha384-4D3G3GikQs6hLlLZGdz5wLFzuqE9v4yVGAcOH86y23JqBDPzj9viv0EqyfIa6YUL', 'crossorigin' => 'anonymous']); - } + Basset::map('bp-jquery-ui', 'https://raw.githubusercontent.com/jquery/jquery-ui/refs/tags/1.13.2/dist/jquery-ui.min.js', ['integrity' => 'sha384-4D3G3GikQs6hLlLZGdz5wLFzuqE9v4yVGAcOH86y23JqBDPzj9viv0EqyfIa6YUL', 'crossorigin' => 'anonymous']); Basset::map('bp-elfinder-js', 'https://raw.githubusercontent.com/Studio-42/elFinder/refs/tags/2.1.64/js/elfinder.min.js', ['integrity' => 'sha384-Ow1wKIUQLS9bOa23gn7yT91nyowDhk2zK1lO7G5Hnxlh3bvTPNH7c5uODf7/jIec', 'crossorigin' => 'anonymous']); Basset::map('bp-elfinder-css', 'https://raw.githubusercontent.com/Studio-42/elFinder/refs/tags/2.1.64/css/elfinder.min.css', ['integrity' => 'sha384-O+x3Lv203m3W8SILSSf8xt2ryvN+CEx3s9tpGloi3D6UQ+1BkbXPuSxEj7uhKKCs', 'crossorigin' => 'anonymous']); Basset::map('bp-elfinder-icons-big', 'https://raw.githubusercontent.com/Studio-42/elFinder/refs/tags/2.1.64/img/icons-big.svg', ['integrity' => 'sha384-BWeb84E4ly6GgjPMWRpJNB+I8XpW+xqF9kezQR6PNqXP0pmjHi8iqlGZs0JRgHlu', 'crossorigin' => 'anonymous']); @@ -71,8 +69,7 @@ protected function bootForConsole() { // Publishing the views. $this->publishes([ - __DIR__.'/../resources/views/standalonepopup.blade.php' => resource_path('views/vendor/elfinder/standalonepopup.blade.php'), - __DIR__.'/../resources/views/elfinder.blade.php' => resource_path('views/vendor/elfinder/elfinder.blade.php'), + __DIR__.'/../resources/views' => resource_path('views/vendor/backpack/filemanager'), ], 'views'); // Publishing config file.