From 3285a7e1c27764df2b7c1ee765ab4df786660a68 Mon Sep 17 00:00:00 2001 From: MakingCG Date: Tue, 10 Mar 2020 19:00:32 +0100 Subject: [PATCH] Initial commit --- .editorconfig | 15 + .env.example | 46 + .gitattributes | 5 + .gitignore | 13 + .idea/misc.xml | 6 + .idea/modules.xml | 8 + .idea/php.xml | 126 + .idea/vue-filemanager-laravel.iml | 32 + .idea/watcherTasks.xml | 4 + .idea/workspace.xml | 810 ++ .styleci.yml | 13 + README.md | 78 + app/Console/Kernel.php | 42 + app/Exceptions/Handler.php | 55 + app/FileManagerFile.php | 118 + app/FileManagerFolder.php | 177 + app/Http/Controllers/Controller.php | 13 + .../PrivateCLoud/AuthController.php | 126 + .../ConfirmPasswordController.php | 40 + .../PrivateCLoud/FileManagerController.php | 591 + .../PrivateCLoud/ForgotPasswordController.php | 54 + .../PrivateCLoud/LoginController.php | 40 + .../PrivateCLoud/RegisterController.php | 73 + .../PrivateCLoud/ResetPasswordController.php | 59 + .../PrivateCLoud/UserAccountController.php | 128 + .../PrivateCLoud/VerificationController.php | 42 + .../PublicCloud/FileManagerController.php | 505 + app/Http/Kernel.php | 86 + app/Http/Middleware/Authenticate.php | 21 + .../Middleware/CheckForMaintenanceMode.php | 17 + app/Http/Middleware/CookieAuth.php | 31 + app/Http/Middleware/EncryptCookies.php | 17 + .../Middleware/RedirectIfAuthenticated.php | 27 + app/Http/Middleware/TrimStrings.php | 18 + app/Http/Middleware/TrustProxies.php | 23 + app/Http/Middleware/VerifyCsrfToken.php | 24 + app/Http/helpers.php | 150 + app/Mail/TestMail.php | 33 + app/Notifications/ResetPassword.php | 64 + app/Providers/AppServiceProvider.php | 28 + app/Providers/AuthServiceProvider.php | 31 + app/Providers/BroadcastServiceProvider.php | 21 + app/Providers/EventServiceProvider.php | 34 + app/Providers/RouteServiceProvider.php | 80 + app/User.php | 129 + artisan | 53 + bootstrap/app.php | 55 + bootstrap/cache/.gitignore | 2 + composer.json | 71 + composer.lock | 6453 +++++++++ config/app.php | 267 + config/auth.php | 116 + config/broadcasting.php | 59 + config/cache.php | 103 + config/cors.php | 60 + config/database.php | 147 + config/filesystems.php | 69 + config/hashing.php | 52 + config/logging.php | 104 + config/mail.php | 136 + config/queue.php | 88 + config/scout.php | 103 + config/services.php | 38 + config/session.php | 199 + config/view.php | 36 + database/.gitignore | 2 + database/factories/UserFactory.php | 28 + .../2014_10_12_000000_create_users_table.php | 37 + ...12_100000_create_password_resets_table.php | 32 + ..._15_171328_create_file_manager_folders.php | 39 + ...08_15_171345_create_file_manager_files.php | 45 + ..._08_19_000000_create_failed_jobs_table.php | 35 + ...dd_user_id_to_file_manager_files_table.php | 32 + ..._user_id_to_file_manager_folders_table.php | 32 + ...070319_create_favourites_folders_table.php | 31 + database/seeds/DatabaseSeeder.php | 16 + package-lock.json | 10917 ++++++++++++++++ package.json | 31 + phpunit.xml | 37 + public/.htaccess | 21 + public/assets/images/default-avatar.png | Bin 0 -> 7311 bytes public/assets/images/hero.svg | 15 + public/css/app.css | 1 + public/favicon.ico | 0 public/index.php | 60 + public/js/main.js | 2 + public/js/main.js.LICENSE.txt | 26 + public/mix-manifest.json | 56 + public/robots.txt | 2 + public/web.config | 28 + resources/js/App.vue | 36 + resources/js/bootstrap.js | 28 + resources/js/bus.js | 2 + resources/js/components/VueFileManager.vue | 144 + .../VueFileManagerComponents/Auth.vue | 551 + .../Auth/AuthButton.vue | 117 + .../Auth/AuthContent.vue | 26 + .../Auth/AuthContentWrapper.vue | 25 + .../VueFileManagerComponents/FilesView.vue | 288 + .../FilesView/Alert.vue | 230 + .../FilesView/ButtonBase.vue | 57 + .../FilesView/ButtonUpload.vue | 60 + .../FilesView/ContextMenu.vue | 174 + .../FilesView/DesktopToolbar.vue | 212 + .../FilesView/EmptyMessage.vue | 47 + .../FilesView/EmptyPage.vue | 105 + .../FilesView/FileInfoPanel.vue | 223 + .../FilesView/FileItemGrid.vue | 391 + .../FilesView/FileItemList.vue | 400 + .../FilesView/FilesContainer.vue | 282 + .../FilesView/MobileActionButton.vue | 49 + .../FilesView/MobileActionButtonUpload.vue | 70 + .../FilesView/MobileActions.vue | 79 + .../FilesView/MobileOptionList.vue | 247 + .../FilesView/MobileToolbar.vue | 156 + .../FilesView/ProgressBar.vue | 46 + .../FilesView/SearchBar.vue | 133 + .../FilesView/Spinner.vue | 45 + .../FilesView/ToolbarButton.vue | 63 + .../FilesView/ToolbarButtonUpload.vue | 68 + .../FilesView/UploadProgress.vue | 66 + .../Others/PageHeader.vue | 80 + .../Others/TextLabel.vue | 24 + .../Others/ThemeLabel.vue | 24 + .../Others/UserImageInput.vue | 90 + .../VueFileManagerComponents/Sidebar.vue | 423 + .../Sidebar/FileListItemThumbnail.vue | 194 + .../Sidebar/StorageSize.vue | 71 + .../Sidebar/UserHeadline.vue | 211 + .../VueFileManagerComponents/UserSettings.vue | 278 + resources/js/components/router.js | 246 + resources/js/helpers.js | 170 + resources/js/main.js | 71 + resources/js/store/index.js | 14 + resources/js/store/modules/app.js | 35 + resources/js/store/modules/filesView.js | 488 + resources/js/store/modules/userAuth.js | 115 + resources/lang/en/auth.php | 19 + resources/lang/en/pagination.php | 19 + resources/lang/en/passwords.php | 21 + resources/lang/en/validation.php | 151 + resources/sass/app.scss | 7 + resources/sass/vue-file-manager/_forms.scss | 172 + resources/sass/vue-file-manager/_mixins.scss | 25 + .../sass/vue-file-manager/_variables.scss | 18 + resources/views/index.blade.php | 26 + routes/api.php | 75 + routes/channels.php | 16 + routes/console.php | 18 + routes/web.php | 19 + server.php | 21 + storage/app/.gitignore | 3 + storage/app/public/.gitignore | 2 + storage/framework/.gitignore | 8 + storage/framework/cache/.gitignore | 3 + storage/framework/cache/data/.gitignore | 2 + storage/framework/sessions/.gitignore | 2 + storage/framework/testing/.gitignore | 2 + storage/framework/views/.gitignore | 2 + storage/logs/.gitignore | 2 + tests/CreatesApplication.php | 22 + tests/Feature/ExampleTest.php | 21 + tests/TestCase.php | 10 + tests/Unit/ExampleTest.php | 18 + webpack.mix.js | 25 + 165 files changed, 31472 insertions(+) create mode 100644 .editorconfig create mode 100644 .env.example create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/php.xml create mode 100644 .idea/vue-filemanager-laravel.iml create mode 100644 .idea/watcherTasks.xml create mode 100644 .idea/workspace.xml create mode 100644 .styleci.yml create mode 100644 README.md create mode 100644 app/Console/Kernel.php create mode 100644 app/Exceptions/Handler.php create mode 100644 app/FileManagerFile.php create mode 100644 app/FileManagerFolder.php create mode 100644 app/Http/Controllers/Controller.php create mode 100644 app/Http/Controllers/PrivateCLoud/AuthController.php create mode 100644 app/Http/Controllers/PrivateCLoud/ConfirmPasswordController.php create mode 100644 app/Http/Controllers/PrivateCLoud/FileManagerController.php create mode 100644 app/Http/Controllers/PrivateCLoud/ForgotPasswordController.php create mode 100644 app/Http/Controllers/PrivateCLoud/LoginController.php create mode 100644 app/Http/Controllers/PrivateCLoud/RegisterController.php create mode 100644 app/Http/Controllers/PrivateCLoud/ResetPasswordController.php create mode 100644 app/Http/Controllers/PrivateCLoud/UserAccountController.php create mode 100644 app/Http/Controllers/PrivateCLoud/VerificationController.php create mode 100644 app/Http/Controllers/PublicCloud/FileManagerController.php create mode 100644 app/Http/Kernel.php create mode 100644 app/Http/Middleware/Authenticate.php create mode 100644 app/Http/Middleware/CheckForMaintenanceMode.php create mode 100644 app/Http/Middleware/CookieAuth.php create mode 100644 app/Http/Middleware/EncryptCookies.php create mode 100644 app/Http/Middleware/RedirectIfAuthenticated.php create mode 100644 app/Http/Middleware/TrimStrings.php create mode 100644 app/Http/Middleware/TrustProxies.php create mode 100644 app/Http/Middleware/VerifyCsrfToken.php create mode 100644 app/Http/helpers.php create mode 100644 app/Mail/TestMail.php create mode 100644 app/Notifications/ResetPassword.php create mode 100644 app/Providers/AppServiceProvider.php create mode 100644 app/Providers/AuthServiceProvider.php create mode 100644 app/Providers/BroadcastServiceProvider.php create mode 100644 app/Providers/EventServiceProvider.php create mode 100644 app/Providers/RouteServiceProvider.php create mode 100644 app/User.php create mode 100755 artisan create mode 100644 bootstrap/app.php create mode 100644 bootstrap/cache/.gitignore create mode 100644 composer.json create mode 100644 composer.lock create mode 100644 config/app.php create mode 100644 config/auth.php create mode 100644 config/broadcasting.php create mode 100644 config/cache.php create mode 100644 config/cors.php create mode 100644 config/database.php create mode 100644 config/filesystems.php create mode 100644 config/hashing.php create mode 100644 config/logging.php create mode 100644 config/mail.php create mode 100644 config/queue.php create mode 100644 config/scout.php create mode 100644 config/services.php create mode 100644 config/session.php create mode 100644 config/view.php create mode 100644 database/.gitignore create mode 100644 database/factories/UserFactory.php create mode 100644 database/migrations/2014_10_12_000000_create_users_table.php create mode 100644 database/migrations/2014_10_12_100000_create_password_resets_table.php create mode 100644 database/migrations/2019_08_15_171328_create_file_manager_folders.php create mode 100644 database/migrations/2019_08_15_171345_create_file_manager_files.php create mode 100644 database/migrations/2019_08_19_000000_create_failed_jobs_table.php create mode 100644 database/migrations/2020_03_03_065147_add_user_id_to_file_manager_files_table.php create mode 100644 database/migrations/2020_03_03_065155_add_user_id_to_file_manager_folders_table.php create mode 100644 database/migrations/2020_03_03_070319_create_favourites_folders_table.php create mode 100644 database/seeds/DatabaseSeeder.php create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 phpunit.xml create mode 100644 public/.htaccess create mode 100644 public/assets/images/default-avatar.png create mode 100644 public/assets/images/hero.svg create mode 100644 public/css/app.css create mode 100644 public/favicon.ico create mode 100644 public/index.php create mode 100644 public/js/main.js create mode 100644 public/js/main.js.LICENSE.txt create mode 100644 public/mix-manifest.json create mode 100644 public/robots.txt create mode 100644 public/web.config create mode 100644 resources/js/App.vue create mode 100644 resources/js/bootstrap.js create mode 100644 resources/js/bus.js create mode 100644 resources/js/components/VueFileManager.vue create mode 100644 resources/js/components/VueFileManagerComponents/Auth.vue create mode 100644 resources/js/components/VueFileManagerComponents/Auth/AuthButton.vue create mode 100644 resources/js/components/VueFileManagerComponents/Auth/AuthContent.vue create mode 100644 resources/js/components/VueFileManagerComponents/Auth/AuthContentWrapper.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/Alert.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/ButtonBase.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/ButtonUpload.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/ContextMenu.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/DesktopToolbar.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/EmptyMessage.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/EmptyPage.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/FileInfoPanel.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/FileItemGrid.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/FileItemList.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/FilesContainer.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/MobileActionButton.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/MobileActionButtonUpload.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/MobileActions.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/MobileOptionList.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/MobileToolbar.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/ProgressBar.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/SearchBar.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/Spinner.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/ToolbarButton.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/ToolbarButtonUpload.vue create mode 100644 resources/js/components/VueFileManagerComponents/FilesView/UploadProgress.vue create mode 100644 resources/js/components/VueFileManagerComponents/Others/PageHeader.vue create mode 100644 resources/js/components/VueFileManagerComponents/Others/TextLabel.vue create mode 100644 resources/js/components/VueFileManagerComponents/Others/ThemeLabel.vue create mode 100644 resources/js/components/VueFileManagerComponents/Others/UserImageInput.vue create mode 100644 resources/js/components/VueFileManagerComponents/Sidebar.vue create mode 100644 resources/js/components/VueFileManagerComponents/Sidebar/FileListItemThumbnail.vue create mode 100644 resources/js/components/VueFileManagerComponents/Sidebar/StorageSize.vue create mode 100644 resources/js/components/VueFileManagerComponents/Sidebar/UserHeadline.vue create mode 100644 resources/js/components/VueFileManagerComponents/UserSettings.vue create mode 100644 resources/js/components/router.js create mode 100644 resources/js/helpers.js create mode 100644 resources/js/main.js create mode 100644 resources/js/store/index.js create mode 100644 resources/js/store/modules/app.js create mode 100644 resources/js/store/modules/filesView.js create mode 100644 resources/js/store/modules/userAuth.js create mode 100644 resources/lang/en/auth.php create mode 100644 resources/lang/en/pagination.php create mode 100644 resources/lang/en/passwords.php create mode 100644 resources/lang/en/validation.php create mode 100644 resources/sass/app.scss create mode 100644 resources/sass/vue-file-manager/_forms.scss create mode 100755 resources/sass/vue-file-manager/_mixins.scss create mode 100755 resources/sass/vue-file-manager/_variables.scss create mode 100644 resources/views/index.blade.php create mode 100644 routes/api.php create mode 100644 routes/channels.php create mode 100644 routes/console.php create mode 100644 routes/web.php create mode 100644 server.php create mode 100644 storage/app/.gitignore create mode 100644 storage/app/public/.gitignore create mode 100644 storage/framework/.gitignore create mode 100644 storage/framework/cache/.gitignore create mode 100644 storage/framework/cache/data/.gitignore create mode 100644 storage/framework/sessions/.gitignore create mode 100644 storage/framework/testing/.gitignore create mode 100644 storage/framework/views/.gitignore create mode 100644 storage/logs/.gitignore create mode 100644 tests/CreatesApplication.php create mode 100644 tests/Feature/ExampleTest.php create mode 100644 tests/TestCase.php create mode 100644 tests/Unit/ExampleTest.php create mode 100644 webpack.mix.js diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 00000000..6537ca46 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,15 @@ +root = true + +[*] +charset = utf-8 +end_of_line = lf +insert_final_newline = true +indent_style = space +indent_size = 4 +trim_trailing_whitespace = true + +[*.md] +trim_trailing_whitespace = false + +[*.{yml,yaml}] +indent_size = 2 diff --git a/.env.example b/.env.example new file mode 100644 index 00000000..53d48bf3 --- /dev/null +++ b/.env.example @@ -0,0 +1,46 @@ +APP_NAME=Laravel +APP_ENV=local +APP_KEY= +APP_DEBUG=true +APP_URL=http://localhost + +LOG_CHANNEL=stack + +DB_CONNECTION=mysql +DB_HOST=127.0.0.1 +DB_PORT=3306 +DB_DATABASE=laravel +DB_USERNAME=root +DB_PASSWORD= + +BROADCAST_DRIVER=log +CACHE_DRIVER=file +QUEUE_CONNECTION=sync +SESSION_DRIVER=file +SESSION_LIFETIME=120 + +REDIS_HOST=127.0.0.1 +REDIS_PASSWORD=null +REDIS_PORT=6379 + +MAIL_DRIVER=smtp +MAIL_HOST=smtp.mailtrap.io +MAIL_PORT=2525 +MAIL_USERNAME=null +MAIL_PASSWORD=null +MAIL_ENCRYPTION=null +MAIL_FROM_ADDRESS=null +MAIL_FROM_NAME="${APP_NAME}" + +AWS_ACCESS_KEY_ID= +AWS_SECRET_ACCESS_KEY= +AWS_DEFAULT_REGION=us-east-1 +AWS_BUCKET= + +PUSHER_APP_ID= +PUSHER_APP_KEY= +PUSHER_APP_SECRET= +PUSHER_APP_CLUSTER=mt1 + +MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}" +MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..967315dd --- /dev/null +++ b/.gitattributes @@ -0,0 +1,5 @@ +* text=auto +*.css linguist-vendored +*.scss linguist-vendored +*.js linguist-vendored +CHANGELOG.md export-ignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..a8328560 --- /dev/null +++ b/.gitignore @@ -0,0 +1,13 @@ +/node_modules +/public/hot +/public/storage +/storage/*.key +/storage/*.index +/vendor +.env +.env.backup +.phpunit.result.cache +Homestead.json +Homestead.yaml +npm-debug.log +yarn-error.log diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 00000000..28a804d8 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 00000000..2835a729 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/php.xml b/.idea/php.xml new file mode 100644 index 00000000..d5b9bbbe --- /dev/null +++ b/.idea/php.xml @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/vue-filemanager-laravel.iml b/.idea/vue-filemanager-laravel.iml new file mode 100644 index 00000000..2a6f36d8 --- /dev/null +++ b/.idea/vue-filemanager-laravel.iml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/watcherTasks.xml b/.idea/watcherTasks.xml new file mode 100644 index 00000000..fb0d65a4 --- /dev/null +++ b/.idea/watcherTasks.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 00000000..e390b358 --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,810 @@ + + + + + + + $PROJECT_DIR$/composer.json + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + VueFileManager + APP_NAME + ResetUserPasswordNotification + MAIL_FROM_ADDRESS + belongsToMany + .map + recursiveFind + latest_uploads + ->each + ->first + VerifyCsrfToken + CreateFreshApiToken + j. M. Y, H:i + PersonalAccessTokens + cookieAu + CookieAuth + XSRF-TOKEN + @/assets/img/hero.svg + <style lang="scss"> + <style lang="scss" scoped> + $middlewareGroups + SET_AUTHORIZED + error.data + SET_START_DIREC + Nunito:400 + context + token + cookie + getAppData + SET_AUT + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +