5
5
The only media manager with this number of features & flexibility.
6
6
7
7
<p align =" center " >
8
- <img src="https://user-images.githubusercontent.com/7388088/34068133-75687998-e23f -11e7-98a8-cd7ded43d209 .png">
8
+ <img src="https://user-images.githubusercontent.com/7388088/34976419-40c1bc90-fa9f -11e7-921f-f311e3099dcc .png">
9
9
</p >
10
10
11
11
- to optimize uploaded files on the fly try [ approached] ( https://github.com/approached/laravel-image-optimizer ) or [ spatie] ( https://github.com/spatie/laravel-image-optimizer )
@@ -31,15 +31,15 @@ The only media manager with this number of features & flexibility.
31
31
` php artisan vendor:publish --provider="ctf0\MediaManager\MediaManagerServiceProvider" `
32
32
33
33
- after installation, package will auto-add
34
- + package routes to ` routes/web.php `
35
- + package assets compiling to ` webpack.mix.js `
34
+ + package routes to ` routes/web.php `
35
+ + package assets compiling to ` webpack.mix.js `
36
36
37
37
- install dependencies
38
38
39
39
``` bash
40
- yarn add vue vue-ls vue-multi-ref vue-tippy@v1 vue2-filters vue-bounty vue-notif vue-clipboard2 vue-awesome vue-touch@next axios dropzone keycode babel-preset-es2015-node6 babel-preset-stage-2
40
+ yarn add vue vue-ls vue-multi-ref vue-tippy@v1 vue2-filters vue-bounty vue-notif vue-clipboard2 vue-awesome vue-touch@next axios dropzone cropperjs keycode babel-preset-es2015-node6 babel-preset-stage-2
41
41
# or
42
- npm install vue vue-ls vue-multi-ref vue-tippy@v1 vue2-filters vue-bounty vue-notif vue-clipboard2 vue-awesome vue-touch@next axios dropzone keycode babel-preset-es2015-node6 babel-preset-stage-2 --save
42
+ npm install vue vue-ls vue-multi-ref vue-tippy@v1 vue2-filters vue-bounty vue-notif vue-clipboard2 vue-awesome vue-touch@next axios dropzone cropperjs keycode babel-preset-es2015-node6 babel-preset-stage-2 --save
43
43
```
44
44
45
45
- add this one liner to your main js file and run ` npm run watch ` to compile your ` js/css ` files.
@@ -57,12 +57,13 @@ new Vue({
57
57
58
58
## Features
59
59
60
+ - [ image editor] ( https://github.com/ctf0/Laravel-Media-Manager/wiki/Image-Editor )
60
61
- multi
61
62
+ upload
62
63
+ move/copy
63
64
+ delete
65
+ - upload an image from a url
64
66
- bulk selection
65
- - restrict access to [ folders] ( https://github.com/ctf0/Laravel-Media-Manager/wiki/Folder-Restriction )
66
67
- dynamically hide [ files] ( https://github.com/ctf0/Laravel-Media-Manager/wiki/Hide-Files-With-Extension )
67
68
- dynamically hide [ folders] ( https://github.com/ctf0/Laravel-Media-Manager/wiki/Hide-Folders )
68
69
- toggle between ` random names ` & ` original names ` for uploaded files
@@ -100,8 +101,9 @@ new Vue({
100
101
| navigation | button | keyboard | click / tap | touch |
101
102
| ----------------| --------------------------------------------| ---------------| --------------------------| -------------------------|
102
103
| | upload * (toolbar)* | u | * | |
103
- | | refresh * (toolbar)* | r | * / hold * " clear cache" * | |
104
+ | | refresh * (toolbar)* | r | * / hold * ( clear cache) * | |
104
105
| | move * (toolbar)* | m | * | swipe up |
106
+ | | editor * (toolbar)* | e | * | |
105
107
| | delete * (toolbar)* | d/del | * | swipe down |
106
108
| | lock/unlock * (toolbar)* | l | * | |
107
109
| | (reset) bulk select * (toolbar)* | b | * | |
@@ -120,6 +122,7 @@ new Vue({
120
122
| |   ; | | | |
121
123
| | limit bulk select * (files container)* | shift + click | | |
122
124
| | preview image/pdf/text * (files container)* | space | ** | |
125
+ | | image editor * (files container)* | | hold | |
123
126
| | hide * (preview)* | space/esc | * | |
124
127
| select next | | right / down | * | swipe left * (preview)* |
125
128
| select prev | | left / up | * | swipe right * (preview)* |
@@ -130,17 +133,23 @@ new Vue({
130
133
131
134
- events
132
135
133
- | type | event-name | description |
134
- | ---------| ---------------------------------------| ------------------------------------------|
135
- | [ JS] ( https://github.com/gocanto/vuemit ) |
136
- | | modal-show | when modal is showen |
137
- | | modal-hide | when modal is hidden |
138
- | | file_selected * (when inside modal)* | get selected file url |
139
- | [ Laravel] ( https://laravel.com/docs/5.5/events#manually-registering-events ) |
140
- | | MMFileUploaded($file_path) | get uploaded file full path |
141
- | | MMFileDeleted($file_path, $is_folder) | get deleted file/folder full path |
142
- | | MMFileRenamed($old_path, $new_path) | get renamed file/folder "old & new" path |
143
- | | MMFileMoved($old_path, $new_path) | get moved file/folder "old & new" path |
136
+ | type | event-name | description |
137
+ | -----------------| ---------------------------------------| --------------------------------------------------|
138
+ | [ JS] [ js ] | | |
139
+ | | modal-show | when modal is showen |
140
+ | | modal-hide | when modal is hidden |
141
+ | | file_selected * (when inside modal)* | get selected file url |
142
+ | [ Laravel] [ lara ] | | |
143
+ | | MMFileUploaded($file_path) | get uploaded file full [ path] [ path ] |
144
+ | | [ MMFileSaved] [ event ] ($file_path) | get saved(edited/link) image full [ path] [ path ] |
145
+ | | MMFileDeleted($file_path, $is_folder) | get deleted file/folder full [ path] [ path ] |
146
+ | | MMFileRenamed($old_path, $new_path) | get renamed file/folder "old & new" [ path] [ path ] |
147
+ | | MMFileMoved($old_path, $new_path) | get moved file/folder "old & new" [ path] [ path ] |
148
+
149
+ [ js ] : https://github.com/gocanto/vuemit
150
+ [ lara ] : https://laravel.com/docs/5.5/events#manually-registering-events
151
+ [ event ] : https://github.com/ctf0/Laravel-Media-Manager/wiki/Image-Editor#optimize-edited-images-on-save
152
+ [ path ] : https://gist.github.com/ctf0/9fa6013954654384052d2e2e809b9bf6
144
153
145
154
<br >
146
155
0 commit comments