controller refactoring part 25

This commit is contained in:
Peter Papp
2021-07-22 07:49:25 +02:00
parent 6d8a7a429c
commit 5167f082f7
50 changed files with 252 additions and 481 deletions
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -2,7 +2,7 @@
namespace Database\Factories; namespace Database\Factories;
use Domain\Zipping\Models\Zip; use Domain\Zip\Models\Zip;
use Illuminate\Database\Eloquent\Factories\Factory; use Illuminate\Database\Eloquent\Factories\Factory;
use Illuminate\Support\Str; use Illuminate\Support\Str;
+4 -195
View File
@@ -94,199 +94,8 @@
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~cfac0ed6.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~cfac0ed6.js?id=f66c7653a087fe1f3320", "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~cfac0ed6.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~cfac0ed6.js?id=f66c7653a087fe1f3320",
"/vendors~chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser~chunks/shared/single-file.js": "/vendors~chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser~chunks/shared/single-file.js?id=9d10953d3b088324dfe3", "/vendors~chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser~chunks/shared/single-file.js": "/vendors~chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser~chunks/shared/single-file.js?id=9d10953d3b088324dfe3",
"/vendors~chunks/platform~chunks/shared.js": "/vendors~chunks/platform~chunks/shared.js?id=7d09e0b0658e140a7ffa", "/vendors~chunks/platform~chunks/shared.js": "/vendors~chunks/platform~chunks/shared.js?id=7d09e0b0658e140a7ffa",
"/chunks/settings.17ab36c66821f7b6866c.hot-update.js": "/chunks/settings.17ab36c66821f7b6866c.hot-update.js", "/chunks/sign-in.e4bd63dd478b0b7f9731.hot-update.js": "/chunks/sign-in.e4bd63dd478b0b7f9731.hot-update.js",
"/chunks/settings-password.17ab36c66821f7b6866c.hot-update.js": "/chunks/settings-password.17ab36c66821f7b6866c.hot-update.js", "/chunks/sign-in.5fb05f1c4d2f285ebf61.hot-update.js": "/chunks/sign-in.5fb05f1c4d2f285ebf61.hot-update.js",
"/chunks/settings.53e438519217d537096f.hot-update.js": "/chunks/settings.53e438519217d537096f.hot-update.js", "/chunks/sign-in.64892e5fdc888eba9b23.hot-update.js": "/chunks/sign-in.64892e5fdc888eba9b23.hot-update.js",
"/chunks/settings.6f5297b3203e182729f6.hot-update.js": "/chunks/settings.6f5297b3203e182729f6.hot-update.js", "/chunks/sign-in.62aa097b63d9b34e26cd.hot-update.js": "/chunks/sign-in.62aa097b63d9b34e26cd.hot-update.js"
"/chunks/settings.f5ce69eb059a0f7d89cd.hot-update.js": "/chunks/settings.f5ce69eb059a0f7d89cd.hot-update.js",
"/chunks/settings.19e7a6e5f8dc4db80b10.hot-update.js": "/chunks/settings.19e7a6e5f8dc4db80b10.hot-update.js",
"/js/main.dbe9b9568031b99c5d98.hot-update.js": "/js/main.dbe9b9568031b99c5d98.hot-update.js",
"/chunks/files~chunks/platform~chunks/settings~chunks/shared/file-browser.js": "/chunks/files~chunks/platform~chunks/settings~chunks/shared/file-browser.js?id=3b7644fd6adcc9225ced",
"/chunks/settings.dbe9b9568031b99c5d98.hot-update.js": "/chunks/settings.dbe9b9568031b99c5d98.hot-update.js",
"/js/main.c6082624d9f9e6d06e86.hot-update.js": "/js/main.c6082624d9f9e6d06e86.hot-update.js",
"/chunks/files~chunks/shared/file-browser.c6082624d9f9e6d06e86.hot-update.js": "/chunks/files~chunks/shared/file-browser.c6082624d9f9e6d06e86.hot-update.js",
"/chunks/platform.c6082624d9f9e6d06e86.hot-update.js": "/chunks/platform.c6082624d9f9e6d06e86.hot-update.js",
"/chunks/settings.c6082624d9f9e6d06e86.hot-update.js": "/chunks/settings.c6082624d9f9e6d06e86.hot-update.js",
"/js/main.58cc86ea6ab750cde2bf.hot-update.js": "/js/main.58cc86ea6ab750cde2bf.hot-update.js",
"/chunks/files~chunks/shared/file-browser.58cc86ea6ab750cde2bf.hot-update.js": "/chunks/files~chunks/shared/file-browser.58cc86ea6ab750cde2bf.hot-update.js",
"/chunks/platform.58cc86ea6ab750cde2bf.hot-update.js": "/chunks/platform.58cc86ea6ab750cde2bf.hot-update.js",
"/chunks/settings.58cc86ea6ab750cde2bf.hot-update.js": "/chunks/settings.58cc86ea6ab750cde2bf.hot-update.js",
"/js/main.022805217285043b46e8.hot-update.js": "/js/main.022805217285043b46e8.hot-update.js",
"/chunks/settings.022805217285043b46e8.hot-update.js": "/chunks/settings.022805217285043b46e8.hot-update.js",
"/chunks/settings.debd97760771aeabba49.hot-update.js": "/chunks/settings.debd97760771aeabba49.hot-update.js",
"/chunks/settings.f6b1869429e318c00591.hot-update.js": "/chunks/settings.f6b1869429e318c00591.hot-update.js",
"/chunks/settings.d10cfc4f45fda477d7df.hot-update.js": "/chunks/settings.d10cfc4f45fda477d7df.hot-update.js",
"/chunks/settings-password.685d1a0c206e8764d2af.hot-update.js": "/chunks/settings-password.685d1a0c206e8764d2af.hot-update.js",
"/chunks/settings.65e3452a376df1c6e884.hot-update.js": "/chunks/settings.65e3452a376df1c6e884.hot-update.js",
"/chunks/settings.36fc0ac40984d06fe6df.hot-update.js": "/chunks/settings.36fc0ac40984d06fe6df.hot-update.js",
"/chunks/settings.e6a83b31c5b460718694.hot-update.js": "/chunks/settings.e6a83b31c5b460718694.hot-update.js",
"/chunks/settings.4a002fab9a0600dea828.hot-update.js": "/chunks/settings.4a002fab9a0600dea828.hot-update.js",
"/chunks/settings.b5bec99fd23ec2965a2a.hot-update.js": "/chunks/settings.b5bec99fd23ec2965a2a.hot-update.js",
"/chunks/settings.4a199f4535b38c2c4654.hot-update.js": "/chunks/settings.4a199f4535b38c2c4654.hot-update.js",
"/chunks/settings.0ef802fd5678297a854e.hot-update.js": "/chunks/settings.0ef802fd5678297a854e.hot-update.js",
"/chunks/settings.5f5b672fb39e0d145a43.hot-update.js": "/chunks/settings.5f5b672fb39e0d145a43.hot-update.js",
"/chunks/settings.7e6d3073a140f1b85706.hot-update.js": "/chunks/settings.7e6d3073a140f1b85706.hot-update.js",
"/chunks/settings.2e6e7181135688eb9895.hot-update.js": "/chunks/settings.2e6e7181135688eb9895.hot-update.js",
"/chunks/settings.caf2daafbba194301628.hot-update.js": "/chunks/settings.caf2daafbba194301628.hot-update.js",
"/chunks/settings.d8e4f0a17901aa0dcb5c.hot-update.js": "/chunks/settings.d8e4f0a17901aa0dcb5c.hot-update.js",
"/chunks/settings.448ed3b222a05345f252.hot-update.js": "/chunks/settings.448ed3b222a05345f252.hot-update.js",
"/chunks/settings-password.aaa5822dafcfc16c2193.hot-update.js": "/chunks/settings-password.aaa5822dafcfc16c2193.hot-update.js",
"/chunks/settings-password.7d0808fbd0d801dbaac5.hot-update.js": "/chunks/settings-password.7d0808fbd0d801dbaac5.hot-update.js",
"/chunks/settings-password.08923cd3b445a335eb1e.hot-update.js": "/chunks/settings-password.08923cd3b445a335eb1e.hot-update.js",
"/chunks/settings-password.322a8974a9607f8b6cd5.hot-update.js": "/chunks/settings-password.322a8974a9607f8b6cd5.hot-update.js",
"/chunks/settings-password.9112fd25878967288ceb.hot-update.js": "/chunks/settings-password.9112fd25878967288ceb.hot-update.js",
"/chunks/settings-password.34d9ed61b284dd5bcae6.hot-update.js": "/chunks/settings-password.34d9ed61b284dd5bcae6.hot-update.js",
"/chunks/settings-password.d8e59095a18c55e1aa1f.hot-update.js": "/chunks/settings-password.d8e59095a18c55e1aa1f.hot-update.js",
"/chunks/settings-password.30ad5408a6b19e2c9637.hot-update.js": "/chunks/settings-password.30ad5408a6b19e2c9637.hot-update.js",
"/chunks/settings-password.47bdbc7da8db9d689436.hot-update.js": "/chunks/settings-password.47bdbc7da8db9d689436.hot-update.js",
"/chunks/settings-password.14f33bac2bb835482067.hot-update.js": "/chunks/settings-password.14f33bac2bb835482067.hot-update.js",
"/chunks/settings-password.47a524767e992ca1c0dd.hot-update.js": "/chunks/settings-password.47a524767e992ca1c0dd.hot-update.js",
"/chunks/settings-password.674bbdc4f858d50fc6f4.hot-update.js": "/chunks/settings-password.674bbdc4f858d50fc6f4.hot-update.js",
"/chunks/settings-password.cdfa06ffac05acfb3cc2.hot-update.js": "/chunks/settings-password.cdfa06ffac05acfb3cc2.hot-update.js",
"/chunks/settings-password.0295cfaaef557e28bdca.hot-update.js": "/chunks/settings-password.0295cfaaef557e28bdca.hot-update.js",
"/chunks/settings-password.cc03a066786e0b53a6c0.hot-update.js": "/chunks/settings-password.cc03a066786e0b53a6c0.hot-update.js",
"/chunks/settings-password.752515c929bbbf42577f.hot-update.js": "/chunks/settings-password.752515c929bbbf42577f.hot-update.js",
"/chunks/settings-password.23824d17e62bde7ac9aa.hot-update.js": "/chunks/settings-password.23824d17e62bde7ac9aa.hot-update.js",
"/chunks/settings-password.1b99ad28246fb47c9204.hot-update.js": "/chunks/settings-password.1b99ad28246fb47c9204.hot-update.js",
"/chunks/settings-password.6b1e388d9065e7ea44dc.hot-update.js": "/chunks/settings-password.6b1e388d9065e7ea44dc.hot-update.js",
"/chunks/settings-password.dd9e433b6792fa9de4db.hot-update.js": "/chunks/settings-password.dd9e433b6792fa9de4db.hot-update.js",
"/chunks/settings-password.61fcc87d12a50b8325be.hot-update.js": "/chunks/settings-password.61fcc87d12a50b8325be.hot-update.js",
"/chunks/settings-password.d3be9dec67fb73443651.hot-update.js": "/chunks/settings-password.d3be9dec67fb73443651.hot-update.js",
"/chunks/settings-password.cb1c37719a80498b6aad.hot-update.js": "/chunks/settings-password.cb1c37719a80498b6aad.hot-update.js",
"/chunks/settings-password.fc02301ec54dd66d7ce1.hot-update.js": "/chunks/settings-password.fc02301ec54dd66d7ce1.hot-update.js",
"/chunks/settings-password.f83088dc8ee65c75b298.hot-update.js": "/chunks/settings-password.f83088dc8ee65c75b298.hot-update.js",
"/chunks/settings-password.4b40bc87b3e8f44b4b4a.hot-update.js": "/chunks/settings-password.4b40bc87b3e8f44b4b4a.hot-update.js",
"/chunks/settings-password.b474d7f3bad87cf6abe3.hot-update.js": "/chunks/settings-password.b474d7f3bad87cf6abe3.hot-update.js",
"/chunks/settings-password.ea1558ac42f167fe54fe.hot-update.js": "/chunks/settings-password.ea1558ac42f167fe54fe.hot-update.js",
"/chunks/settings-password.8d66818bc28e2d0c23a6.hot-update.js": "/chunks/settings-password.8d66818bc28e2d0c23a6.hot-update.js",
"/chunks/settings-password.61dc33b01200227110a2.hot-update.js": "/chunks/settings-password.61dc33b01200227110a2.hot-update.js",
"/chunks/settings-password.76c862e5cd95028f6091.hot-update.js": "/chunks/settings-password.76c862e5cd95028f6091.hot-update.js",
"/chunks/settings-password.fd0319a6c79fa036c588.hot-update.js": "/chunks/settings-password.fd0319a6c79fa036c588.hot-update.js",
"/chunks/settings-password.2609f126cc0561ae3277.hot-update.js": "/chunks/settings-password.2609f126cc0561ae3277.hot-update.js",
"/chunks/settings-password.2290a3d30db095c98d71.hot-update.js": "/chunks/settings-password.2290a3d30db095c98d71.hot-update.js",
"/chunks/settings-password.8dc6b68bc8d4f5400043.hot-update.js": "/chunks/settings-password.8dc6b68bc8d4f5400043.hot-update.js",
"/chunks/settings-password.d19c5d7aa3fd032ce811.hot-update.js": "/chunks/settings-password.d19c5d7aa3fd032ce811.hot-update.js",
"/chunks/settings-password.f7e34a1c827bf73fa171.hot-update.js": "/chunks/settings-password.f7e34a1c827bf73fa171.hot-update.js",
"/chunks/settings-password.b38881f1af46aee69fb3.hot-update.js": "/chunks/settings-password.b38881f1af46aee69fb3.hot-update.js",
"/chunks/settings-password.cb2d68ad49cc174c7ee4.hot-update.js": "/chunks/settings-password.cb2d68ad49cc174c7ee4.hot-update.js",
"/chunks/settings-password.e1473bd92f7c02a464d4.hot-update.js": "/chunks/settings-password.e1473bd92f7c02a464d4.hot-update.js",
"/chunks/settings-password.d443cc722cd9aa266d41.hot-update.js": "/chunks/settings-password.d443cc722cd9aa266d41.hot-update.js",
"/chunks/settings-password.884defd4f87582a28df9.hot-update.js": "/chunks/settings-password.884defd4f87582a28df9.hot-update.js",
"/chunks/settings-password.273e1568cf727eb64d1a.hot-update.js": "/chunks/settings-password.273e1568cf727eb64d1a.hot-update.js",
"/chunks/settings-password.f8f778137f85bfdf190f.hot-update.js": "/chunks/settings-password.f8f778137f85bfdf190f.hot-update.js",
"/chunks/settings-password.843b5231bf2259e85402.hot-update.js": "/chunks/settings-password.843b5231bf2259e85402.hot-update.js",
"/chunks/settings-password.08549758bc4f7c4edbc5.hot-update.js": "/chunks/settings-password.08549758bc4f7c4edbc5.hot-update.js",
"/chunks/settings-password.817b892e6b5dc1687435.hot-update.js": "/chunks/settings-password.817b892e6b5dc1687435.hot-update.js",
"/chunks/settings-password.78d32678d73ca3685e47.hot-update.js": "/chunks/settings-password.78d32678d73ca3685e47.hot-update.js",
"/chunks/settings-password.380f84f27c11a5639e42.hot-update.js": "/chunks/settings-password.380f84f27c11a5639e42.hot-update.js",
"/chunks/settings.320e5124216ede38ec9b.hot-update.js": "/chunks/settings.320e5124216ede38ec9b.hot-update.js",
"/chunks/settings-password.320e5124216ede38ec9b.hot-update.js": "/chunks/settings-password.320e5124216ede38ec9b.hot-update.js",
"/chunks/settings-password.f89daa96d6f1f77ec630.hot-update.js": "/chunks/settings-password.f89daa96d6f1f77ec630.hot-update.js",
"/chunks/settings-password.63bed1e80b9a8ed36d0d.hot-update.js": "/chunks/settings-password.63bed1e80b9a8ed36d0d.hot-update.js",
"/chunks/admin-account.a39e0a440e3e4362df6c.hot-update.js": "/chunks/admin-account.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.a39e0a440e3e4362df6c.hot-update.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/app-language.a39e0a440e3e4362df6c.hot-update.js": "/chunks/app-language.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/app-setup.a39e0a440e3e4362df6c.hot-update.js": "/chunks/app-setup.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/billings-detail.a39e0a440e3e4362df6c.hot-update.js": "/chunks/billings-detail.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/database.a39e0a440e3e4362df6c.hot-update.js": "/chunks/database.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/environment-setup.a39e0a440e3e4362df6c.hot-update.js": "/chunks/environment-setup.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/installation-disclaimer.a39e0a440e3e4362df6c.hot-update.js": "/chunks/installation-disclaimer.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/page-edit.a39e0a440e3e4362df6c.hot-update.js": "/chunks/page-edit.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/plan-create.a39e0a440e3e4362df6c.hot-update.js": "/chunks/plan-create.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/profile~chunks/settings-password.a39e0a440e3e4362df6c.hot-update.js": "/chunks/profile~chunks/settings-password.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/settings-create-payment-methods.a39e0a440e3e4362df6c.hot-update.js": "/chunks/settings-create-payment-methods.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/settings-invoices.a39e0a440e3e4362df6c.hot-update.js": "/chunks/settings-invoices.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/settings-password.a39e0a440e3e4362df6c.hot-update.js": "/chunks/settings-password.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/settings-payment-methods.a39e0a440e3e4362df6c.hot-update.js": "/chunks/settings-payment-methods.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/settings-storage.a39e0a440e3e4362df6c.hot-update.js": "/chunks/settings-storage.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/settings-subscription.a39e0a440e3e4362df6c.hot-update.js": "/chunks/settings-subscription.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/stripe-credentials.a39e0a440e3e4362df6c.hot-update.js": "/chunks/stripe-credentials.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/subscription-plans.a39e0a440e3e4362df6c.hot-update.js": "/chunks/subscription-plans.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/upgrade-billing.a39e0a440e3e4362df6c.hot-update.js": "/chunks/upgrade-billing.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/user-create.a39e0a440e3e4362df6c.hot-update.js": "/chunks/user-create.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/user-subscription.a39e0a440e3e4362df6c.hot-update.js": "/chunks/user-subscription.a39e0a440e3e4362df6c.hot-update.js",
"/chunks/admin-account.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/admin-account.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/app-language.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/app-language.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/app-setup.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/app-setup.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/billings-detail.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/billings-detail.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/database.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/database.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/environment-setup.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/environment-setup.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/installation-disclaimer.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/installation-disclaimer.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/page-edit.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/page-edit.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/plan-create.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/plan-create.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/profile~chunks/settings-password.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/profile~chunks/settings-password.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/settings-create-payment-methods.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/settings-create-payment-methods.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/settings-invoices.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/settings-invoices.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/settings-payment-methods.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/settings-payment-methods.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/settings-storage.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/settings-storage.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/settings-subscription.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/settings-subscription.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/stripe-credentials.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/stripe-credentials.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/subscription-plans.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/subscription-plans.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/upgrade-billing.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/upgrade-billing.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/user-create.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/user-create.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/user-subscription.99ceb225e1eb4f34a5c7.hot-update.js": "/chunks/user-subscription.99ceb225e1eb4f34a5c7.hot-update.js",
"/chunks/admin-account.fc65a4899f195d5a6476.hot-update.js": "/chunks/admin-account.fc65a4899f195d5a6476.hot-update.js",
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.fc65a4899f195d5a6476.hot-update.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.fc65a4899f195d5a6476.hot-update.js",
"/chunks/app-language.fc65a4899f195d5a6476.hot-update.js": "/chunks/app-language.fc65a4899f195d5a6476.hot-update.js",
"/chunks/app-setup.fc65a4899f195d5a6476.hot-update.js": "/chunks/app-setup.fc65a4899f195d5a6476.hot-update.js",
"/chunks/billings-detail.fc65a4899f195d5a6476.hot-update.js": "/chunks/billings-detail.fc65a4899f195d5a6476.hot-update.js",
"/chunks/database.fc65a4899f195d5a6476.hot-update.js": "/chunks/database.fc65a4899f195d5a6476.hot-update.js",
"/chunks/environment-setup.fc65a4899f195d5a6476.hot-update.js": "/chunks/environment-setup.fc65a4899f195d5a6476.hot-update.js",
"/chunks/installation-disclaimer.fc65a4899f195d5a6476.hot-update.js": "/chunks/installation-disclaimer.fc65a4899f195d5a6476.hot-update.js",
"/chunks/page-edit.fc65a4899f195d5a6476.hot-update.js": "/chunks/page-edit.fc65a4899f195d5a6476.hot-update.js",
"/chunks/plan-create.fc65a4899f195d5a6476.hot-update.js": "/chunks/plan-create.fc65a4899f195d5a6476.hot-update.js",
"/chunks/profile~chunks/settings-password.fc65a4899f195d5a6476.hot-update.js": "/chunks/profile~chunks/settings-password.fc65a4899f195d5a6476.hot-update.js",
"/chunks/settings-create-payment-methods.fc65a4899f195d5a6476.hot-update.js": "/chunks/settings-create-payment-methods.fc65a4899f195d5a6476.hot-update.js",
"/chunks/settings-invoices.fc65a4899f195d5a6476.hot-update.js": "/chunks/settings-invoices.fc65a4899f195d5a6476.hot-update.js",
"/chunks/settings-payment-methods.fc65a4899f195d5a6476.hot-update.js": "/chunks/settings-payment-methods.fc65a4899f195d5a6476.hot-update.js",
"/chunks/settings-storage.fc65a4899f195d5a6476.hot-update.js": "/chunks/settings-storage.fc65a4899f195d5a6476.hot-update.js",
"/chunks/settings-subscription.fc65a4899f195d5a6476.hot-update.js": "/chunks/settings-subscription.fc65a4899f195d5a6476.hot-update.js",
"/chunks/stripe-credentials.fc65a4899f195d5a6476.hot-update.js": "/chunks/stripe-credentials.fc65a4899f195d5a6476.hot-update.js",
"/chunks/subscription-plans.fc65a4899f195d5a6476.hot-update.js": "/chunks/subscription-plans.fc65a4899f195d5a6476.hot-update.js",
"/chunks/upgrade-billing.fc65a4899f195d5a6476.hot-update.js": "/chunks/upgrade-billing.fc65a4899f195d5a6476.hot-update.js",
"/chunks/user-create.fc65a4899f195d5a6476.hot-update.js": "/chunks/user-create.fc65a4899f195d5a6476.hot-update.js",
"/chunks/user-subscription.fc65a4899f195d5a6476.hot-update.js": "/chunks/user-subscription.fc65a4899f195d5a6476.hot-update.js",
"/chunks/settings-password.9a95c4220c8d727f4ea2.hot-update.js": "/chunks/settings-password.9a95c4220c8d727f4ea2.hot-update.js",
"/chunks/settings-password.ecd3c3671fb1bd667cfa.hot-update.js": "/chunks/settings-password.ecd3c3671fb1bd667cfa.hot-update.js",
"/js/main.92f70ca3f9447c4cf64b.hot-update.js": "/js/main.92f70ca3f9447c4cf64b.hot-update.js",
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~3a8cc00e.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~3a8cc00e.js?id=fce563ddaedb2295ed12",
"/chunks/app-language~chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pag~f0c9b406.js": "/chunks/app-language~chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pag~f0c9b406.js?id=daeca0a30a4b88a7b521",
"/chunks/settings-password.92f70ca3f9447c4cf64b.hot-update.js": "/chunks/settings-password.92f70ca3f9447c4cf64b.hot-update.js",
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~89a341fe.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~89a341fe.js?id=83c32f5c8626f80c2da6",
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~db2ca71e.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~db2ca71e.js?id=017a08b8a2f6f97357ce",
"/js/main.15ec5b640945d7157ef3.hot-update.js": "/js/main.15ec5b640945d7157ef3.hot-update.js",
"/chunks/profile.15ec5b640945d7157ef3.hot-update.js": "/chunks/profile.15ec5b640945d7157ef3.hot-update.js",
"/chunks/settings.15ec5b640945d7157ef3.hot-update.js": "/chunks/settings.15ec5b640945d7157ef3.hot-update.js",
"/chunks/settings-password.15ec5b640945d7157ef3.hot-update.js": "/chunks/settings-password.15ec5b640945d7157ef3.hot-update.js",
"/chunks/settings-password.1d7cc7a540c6d655a133.hot-update.js": "/chunks/settings-password.1d7cc7a540c6d655a133.hot-update.js",
"/chunks/settings-password.e03839eac067411178ae.hot-update.js": "/chunks/settings-password.e03839eac067411178ae.hot-update.js",
"/chunks/settings-password.6e95478644c48b3da9e5.hot-update.js": "/chunks/settings-password.6e95478644c48b3da9e5.hot-update.js",
"/chunks/settings-password.af17a491cc6a9e9770ca.hot-update.js": "/chunks/settings-password.af17a491cc6a9e9770ca.hot-update.js",
"/chunks/settings-password.c7e99b4673137700ff7d.hot-update.js": "/chunks/settings-password.c7e99b4673137700ff7d.hot-update.js",
"/chunks/settings-password.a1ad87b73322e03760e1.hot-update.js": "/chunks/settings-password.a1ad87b73322e03760e1.hot-update.js",
"/chunks/settings-password.b0506a2ed51f1ae20fe9.hot-update.js": "/chunks/settings-password.b0506a2ed51f1ae20fe9.hot-update.js",
"/chunks/settings-password.0188e6bd0c54da3e5622.hot-update.js": "/chunks/settings-password.0188e6bd0c54da3e5622.hot-update.js",
"/chunks/settings.785b8b09d065036f22c3.hot-update.js": "/chunks/settings.785b8b09d065036f22c3.hot-update.js",
"/chunks/settings.cd58b80e4d16e8317220.hot-update.js": "/chunks/settings.cd58b80e4d16e8317220.hot-update.js",
"/chunks/settings-password.cd58b80e4d16e8317220.hot-update.js": "/chunks/settings-password.cd58b80e4d16e8317220.hot-update.js",
"/chunks/upgrade-billing.57be1b9a66de806ff391.hot-update.js": "/chunks/upgrade-billing.57be1b9a66de806ff391.hot-update.js",
"/chunks/upgrade-billing.8805b4393b5aceb393ab.hot-update.js": "/chunks/upgrade-billing.8805b4393b5aceb393ab.hot-update.js",
"/chunks/platform.13a7c4eb981e304dd11c.hot-update.js": "/chunks/platform.13a7c4eb981e304dd11c.hot-update.js",
"/chunks/platform.1dc9a86f8f195ad336c8.hot-update.js": "/chunks/platform.1dc9a86f8f195ad336c8.hot-update.js",
"/chunks/platform.c72b7ed144ae27e09ac0.hot-update.js": "/chunks/platform.c72b7ed144ae27e09ac0.hot-update.js",
"/chunks/homepage.e80d5d3c53decab802d5.hot-update.js": "/chunks/homepage.e80d5d3c53decab802d5.hot-update.js",
"/chunks/settings-payment-methods.8681aa04995d55912730.hot-update.js": "/chunks/settings-payment-methods.8681aa04995d55912730.hot-update.js",
"/chunks/upgrade-billing.8681aa04995d55912730.hot-update.js": "/chunks/upgrade-billing.8681aa04995d55912730.hot-update.js",
"/chunks/settings.38169fdae69094598f31.hot-update.js": "/chunks/settings.38169fdae69094598f31.hot-update.js",
"/chunks/settings-password.38169fdae69094598f31.hot-update.js": "/chunks/settings-password.38169fdae69094598f31.hot-update.js",
"/chunks/sign-in.5fd48bc3e49b7cb7e5e7.hot-update.js": "/chunks/sign-in.5fd48bc3e49b7cb7e5e7.hot-update.js",
"/chunks/settings-create-payment-methods.3c553438a1090569af54.hot-update.js": "/chunks/settings-create-payment-methods.3c553438a1090569af54.hot-update.js",
"/chunks/settings-payment-methods.3c553438a1090569af54.hot-update.js": "/chunks/settings-payment-methods.3c553438a1090569af54.hot-update.js",
"/chunks/upgrade-billing.3c553438a1090569af54.hot-update.js": "/chunks/upgrade-billing.3c553438a1090569af54.hot-update.js",
"/chunks/settings-invoices.4ab4d27b8447516929d2.hot-update.js": "/chunks/settings-invoices.4ab4d27b8447516929d2.hot-update.js",
"/chunks/profile.5902d31a95da744acd2b.hot-update.js": "/chunks/profile.5902d31a95da744acd2b.hot-update.js",
"/chunks/settings~chunks/settings-password.5902d31a95da744acd2b.hot-update.js": "/chunks/settings~chunks/settings-password.5902d31a95da744acd2b.hot-update.js",
"/chunks/user-create.ca38aa5d23cce5399b5d.hot-update.js": "/chunks/user-create.ca38aa5d23cce5399b5d.hot-update.js",
"/chunks/user.8e87c89c5f6cc9b7d635.hot-update.js": "/chunks/user.8e87c89c5f6cc9b7d635.hot-update.js"
} }
+2 -2
View File
@@ -6,11 +6,11 @@ use Domain\Sharing\Controllers\ShareController;
use Domain\Trash\Controllers\DumpTrashController; use Domain\Trash\Controllers\DumpTrashController;
use App\Users\Controllers\ResetPasswordController; use App\Users\Controllers\ResetPasswordController;
use Domain\Files\Controllers\UploadFileController; use Domain\Files\Controllers\UploadFileController;
use Domain\Zipping\Controllers\ZipFilesController; use Domain\Zip\Controllers\ZipFilesController;
use App\Users\Controllers\ForgotPasswordController; use App\Users\Controllers\ForgotPasswordController;
use Domain\Folders\Controllers\FavouriteController; use Domain\Folders\Controllers\FavouriteController;
use Domain\Plans\Controllers\ActivePlansController; use Domain\Plans\Controllers\ActivePlansController;
use Domain\Zipping\Controllers\ZipFolderController; use Domain\Zip\Controllers\ZipFolderController;
use Domain\Folders\Controllers\CreateFolderController; use Domain\Folders\Controllers\CreateFolderController;
use Domain\Sharing\Controllers\ShareViaEmailController; use Domain\Sharing\Controllers\ShareViaEmailController;
use Domain\Items\Controllers\MoveFileOrFolderController; use Domain\Items\Controllers\MoveFileOrFolderController;
+4 -4
View File
@@ -2,16 +2,16 @@
// Get avatars and system images // Get avatars and system images
use App\Users\Controllers\GetAvatarController; use App\Users\Controllers\GetAvatarController;
use Domain\Zipping\Controllers\GetZipController; use Domain\Zip\Controllers\GetZipController;
use Domain\Settings\Controllers\GetIAppController; use Domain\Settings\Controllers\GetAppImageController;
use Domain\Zipping\Controllers\VisitorGetZipController; use Domain\Zip\Controllers\VisitorGetZipController;
use Domain\Files\Controllers\FileAccess\GetFileController; use Domain\Files\Controllers\FileAccess\GetFileController;
use Domain\Files\Controllers\FileAccess\GetThumbnailController; use Domain\Files\Controllers\FileAccess\GetThumbnailController;
use Domain\Files\Controllers\FileAccess\VisitorGetFileController; use Domain\Files\Controllers\FileAccess\VisitorGetFileController;
use Domain\Files\Controllers\FileAccess\VisitorGetThumbnailController; use Domain\Files\Controllers\FileAccess\VisitorGetThumbnailController;
Route::get('/avatars/{avatar}', GetAvatarController::class); Route::get('/avatars/{avatar}', GetAvatarController::class);
Route::get('/system/{image}', GetIAppController::class); Route::get('/system/{image}', GetAppImageController::class);
// Get public thumbnails and files // Get public thumbnails and files
Route::get('/thumbnail/{name}/{shared}', VisitorGetThumbnailController::class); Route::get('/thumbnail/{name}/{shared}', VisitorGetThumbnailController::class);
+2 -2
View File
@@ -3,8 +3,8 @@
use Domain\Sharing\Controllers\ShareController; use Domain\Sharing\Controllers\ShareController;
use Domain\Files\Controllers\VisitorShowFileController; use Domain\Files\Controllers\VisitorShowFileController;
use Domain\Files\Controllers\VisitorUploadFileController; use Domain\Files\Controllers\VisitorUploadFileController;
use Domain\Zipping\Controllers\VisitorZipFilesController; use Domain\Zip\Controllers\VisitorZipFilesController;
use Domain\Zipping\Controllers\VisitorZipFolderController; use Domain\Zip\Controllers\VisitorZipFolderController;
use Domain\Folders\Controllers\VisitorCreateFolderController; use Domain\Folders\Controllers\VisitorCreateFolderController;
use Domain\Sharing\Controllers\WebCrawlerOpenGraphController; use Domain\Sharing\Controllers\WebCrawlerOpenGraphController;
use Domain\Items\Controllers\VisitorMoveFileOrFolderController; use Domain\Items\Controllers\VisitorMoveFileOrFolderController;
@@ -2,6 +2,10 @@
namespace App\Console\Commands; namespace App\Console\Commands;
use App\Users\Models\User; use App\Users\Models\User;
use Domain\Localization\Actions\SeedDefaultLanguageAction;
use Domain\Pages\Actions\SeedDefaultPagesAction;
use Domain\Settings\Actions\SeedDefaultSettingsAction;
use Domain\SetupWizard\Actions\CreateDiskDirectoriesAction;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use Domain\Files\Models\File; use Domain\Files\Models\File;
use Illuminate\Console\Command; use Illuminate\Console\Command;
@@ -10,7 +14,6 @@ use Domain\Folders\Models\Folder;
use Domain\Settings\Models\Setting; use Domain\Settings\Models\Setting;
use Illuminate\Support\Facades\Storage; use Illuminate\Support\Facades\Storage;
use Illuminate\Foundation\Testing\WithFaker; use Illuminate\Foundation\Testing\WithFaker;
use Domain\SetupWizard\Services\SetupService;
class SetupDevEnvironment extends Command class SetupDevEnvironment extends Command
{ {
@@ -18,47 +21,44 @@ class SetupDevEnvironment extends Command
/** /**
* The name and signature of the console command. * The name and signature of the console command.
*
* @var string
*/ */
protected $signature = 'setup:dev'; protected $signature = 'setup:dev';
protected $license = 'Extended'; protected string $license = 'Extended';
/** /**
* The console command description. * The console command description.
*
* @var string
*/ */
protected $description = 'Set up development environment with demo data'; protected $description = 'Set up development environment with demo data';
private $setup; public function __construct(
private CreateDiskDirectoriesAction $createDiskDirectories,
public function __construct() private SeedDefaultSettingsAction $seedDefaultSettings,
{ private SeedDefaultLanguageAction $seedDefaultLanguage,
private SeedDefaultPagesAction $seedDefaultPages,
) {
parent::__construct(); parent::__construct();
$this->setUpFaker(); $this->setUpFaker();
$this->setup = resolve(SetupService::class);
} }
/** /**
* Execute the console command. * Execute the console command.
* return @void
*/ */
public function handle(): void public function handle(): void
{ {
$this->info('Setting up development environment'); $this->info('Setting up development environment');
$this->info('Creating system directories...'); $this->info('Creating system directories...');
$this->setup->create_directories(); ($this->createDiskDirectories)();
$this->info('Migrating Databases...'); $this->info('Migrating Databases...');
$this->migrate_and_generate(); $this->migrate_and_generate();
$this->info('Storing default settings and content...'); $this->info('Storing default settings and content...');
$this->store_default_settings(); $this->store_default_settings();
$this->setup->seed_default_pages();
$this->setup->seed_default_settings($this->license); ($this->seedDefaultPages)();
$this->setup->seed_default_language(); ($this->seedDefaultSettings)($this->license);
($this->seedDefaultLanguage)();
$this->info('Creating default admin...'); $this->info('Creating default admin...');
$this->create_admin(); $this->create_admin();
@@ -298,7 +298,7 @@ class SetupDevEnvironment extends Command
'name' => 'Second Level', 'name' => 'Second Level',
]); ]);
$third_level = Folder::factory(Folder::class) Folder::factory(Folder::class)
->create([ ->create([
'user_id' => $user->id, 'user_id' => $user->id,
'parent_id' => $second_level->id, 'parent_id' => $second_level->id,
@@ -2,19 +2,21 @@
namespace App\Console\Commands; namespace App\Console\Commands;
use App\Users\Models\User; use App\Users\Models\User;
use Domain\Localization\Actions\SeedDefaultLanguageAction;
use Domain\Pages\Actions\SeedDefaultPagesAction;
use Domain\Settings\Actions\SeedDefaultSettingsAction;
use Domain\SetupWizard\Actions\CreateDiskDirectoriesAction;
use Illuminate\Console\Command; use Illuminate\Console\Command;
use Domain\Settings\Models\Setting; use Domain\Settings\Models\Setting;
use Domain\SetupWizard\Services\SetupService;
class SetupProdEnvironment extends Command class SetupProdEnvironment extends Command
{ {
/** /**
* The name and signature of the console command. * The name and signature of the console command.
*
* @var string
*/ */
protected $signature = 'setup:prod'; protected $signature = 'setup:prod';
protected $license = 'Extended';
protected string $license = 'Extended';
/** /**
* The console command description. * The console command description.
@@ -23,12 +25,13 @@ class SetupProdEnvironment extends Command
*/ */
protected $description = 'Set up production environment'; protected $description = 'Set up production environment';
private $setup; public function __construct(
private CreateDiskDirectoriesAction $createDiskDirectories,
public function __construct() private SeedDefaultSettingsAction $seedDefaultSettings,
{ private SeedDefaultLanguageAction $seedDefaultLanguage,
private SeedDefaultPagesAction $seedDefaultPages,
) {
parent::__construct(); parent::__construct();
$this->setup = resolve(SetupService::class);
} }
/** /**
@@ -41,16 +44,17 @@ class SetupProdEnvironment extends Command
$this->info('Setting up production environment'); $this->info('Setting up production environment');
$this->info('Creating system directories...'); $this->info('Creating system directories...');
$this->setup->create_directories(); ($this->createDiskDirectories)();
$this->info('Migrating Databases...'); $this->info('Migrating Databases...');
$this->migrate_and_generate(); $this->migrate_and_generate();
$this->info('Storing default settings and content...'); $this->info('Storing default settings and content...');
$this->store_default_settings(); $this->store_default_settings();
$this->setup->seed_default_pages();
$this->setup->seed_default_settings($this->license); ($this->seedDefaultPages)();
$this->setup->seed_default_language(); ($this->seedDefaultSettings)($this->license);
($this->seedDefaultLanguage)();
$this->info('Creating default admin...'); $this->info('Creating default admin...');
$this->create_admin(); $this->create_admin();
@@ -24,7 +24,7 @@ class CheckAccountController extends Controller
return [ return [
'name' => $user->settings->name, 'name' => $user->settings->name,
'avatar' => $user->settings->avatar, 'avatar' => $user->settings->avatar,
'verified' => $user->email_verified_at ? true : false, 'verified' => $user->email_verified_at ? 1 : 0,
]; ];
} }
} }
@@ -6,37 +6,46 @@ use Intervention\Image\ImageManagerStatic as Image;
class CreateImageThumbnailAction class CreateImageThumbnailAction
{ {
private array $availableFormats = [
'image/gif',
'image/jpeg',
'image/jpg',
'image/png',
'image/webp'
];
/** /**
* Create image thumbnail from gif, jpeg, jpg, png, webp or svg * Create image thumbnail from uploaded image
*/ */
public function __invoke( public function __invoke(
string $file_path, string $file_path,
string $filename, string $filename,
string $user_id string $user_id
): string | null { ): string | null {
$availableFormats = ['image/gif', 'image/jpeg', 'image/jpg', 'image/png', 'image/webp'];
$mimeType = Storage::disk('local')->mimeType($file_path);
// Create thumbnail from image // Create thumbnail from image
if (in_array(Storage::disk('local')->mimeType($file_path), $availableFormats)) { if (in_array($mimeType, $this->availableFormats)) {
// Get thumbnail name // Get thumbnail name
$thumbnail = "thumbnail-$filename"; $thumbnail = "thumbnail-$filename";
// Create intervention image // Create intervention image
$image = Image::make(Storage::disk('local')->path($file_path)) $image = Image::make(Storage::disk('local')
->path($file_path))
->orientate(); ->orientate();
// Resize image // Resize image
$image->resize(512, null, function ($constraint) { $image->resize(512, null, fn ($constraint) => $constraint->aspectRatio())->stream();
$constraint->aspectRatio();
})->stream();
// Store thumbnail to disk // Store thumbnail to disk
Storage::put("files/$user_id/$thumbnail", $image); Storage::put("files/$user_id/$thumbnail", $image);
} }
// Return thumbnail as svg file // Return thumbnail as svg file
if (Storage::disk('local')->mimeType($file_path) === 'image/svg+xml') { if ($mimeType === 'image/svg+xml') {
$thumbnail = $filename; return $filename;
} }
return $thumbnail ?? null; return $thumbnail ?? null;
@@ -16,7 +16,7 @@ class MoveFileToExternalStorageAction
string $file, string $file,
string $user_id string $user_id
): void { ): void {
$disk_local = \Storage::disk('local'); $disk_local = Storage::disk('local');
// Get file size // Get file size
$filesize = $disk_local->size("files/$user_id/$file"); $filesize = $disk_local->size("files/$user_id/$file");
@@ -24,7 +24,7 @@ class MoveFileToExternalStorageAction
// If file is bigger than 5.2MB then run multipart upload // If file is bigger than 5.2MB then run multipart upload
if ($filesize > 5242880) { if ($filesize > 5242880) {
// Get driver // Get driver
$driver = \Storage::getDriver(); $driver = Storage::getDriver();
// Get adapter // Get adapter
$adapter = $driver->getAdapter(); $adapter = $driver->getAdapter();
@@ -0,0 +1,27 @@
<?php
namespace Domain\Localization\Actions;
use Domain\Localization\Models\Language;
use Domain\Settings\Models\Setting;
class SeedDefaultLanguageAction
{
/**
* Store default VueFileManager language into database
*/
public function __invoke(): void
{
Language::create([
'name' => 'English',
'locale' => 'en',
]);
Setting::create([
'name' => 'language',
'value' => 'en',
]);
}
}
@@ -0,0 +1,19 @@
<?php
namespace Domain\Pages\Actions;
use Domain\Pages\Models\Page;
class SeedDefaultPagesAction
{
/**
* Store default pages content like Terms of Service, Privacy Policy and Cookie Policy into database
*/
public function __invoke(): void
{
collect(config('content.pages'))
->each(fn ($page) => Page::updateOrCreate($page));
}
}
@@ -0,0 +1,21 @@
<?php
namespace Domain\Settings\Actions;
use Domain\Settings\Models\Setting;
class SeedDefaultSettingsAction
{
/**
* Store default VueFileManager settings into database
*/
public function __invoke(
string $license
): void {
collect(
config('content.content.' . strtolower($license))
)->each(fn ($content) => Setting::forceCreate($content));
}
}
@@ -5,7 +5,7 @@ use Illuminate\Support\Facades\Storage;
use Symfony\Component\HttpFoundation\StreamedResponse; use Symfony\Component\HttpFoundation\StreamedResponse;
use Illuminate\Contracts\Filesystem\FileNotFoundException; use Illuminate\Contracts\Filesystem\FileNotFoundException;
class GetIAppController class GetAppImageController
{ {
/** /**
* Get system image * Get system image
@@ -0,0 +1,26 @@
<?php
namespace Domain\SetupWizard\Actions;
use Illuminate\Support\Facades\Storage;
class CreateDiskDirectoriesAction
{
/**
* Create default folders which application to process files.
*/
public function __invoke(): void
{
collect(['avatars', 'chunks', 'system', 'files', 'temp', 'zip'])
->each(function ($directory) {
// Create directory for local driver
Storage::disk('local')
->makeDirectory($directory);
// Create directory for external driver
Storage::makeDirectory($directory);
});
}
}
@@ -2,12 +2,14 @@
namespace Domain\SetupWizard\Controllers; namespace Domain\SetupWizard\Controllers;
use App\Users\Models\User; use App\Users\Models\User;
use Domain\Localization\Actions\SeedDefaultLanguageAction;
use Domain\Pages\Actions\SeedDefaultPagesAction;
use Domain\Settings\Actions\SeedDefaultSettingsAction;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Http\Response; use Illuminate\Http\Response;
use Domain\Settings\Models\Setting; use Domain\Settings\Models\Setting;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;
use Domain\SetupWizard\Services\SetupService;
/** /**
* Create and login admin account * Create and login admin account
@@ -15,9 +17,10 @@ use Domain\SetupWizard\Services\SetupService;
class CreateAdminAccountController extends Controller class CreateAdminAccountController extends Controller
{ {
public function __construct( public function __construct(
public SetupService $setup, public SeedDefaultPagesAction $seedDefaultPages,
) { public SeedDefaultLanguageAction $seedDefaultLanguage,
} public SeedDefaultSettingsAction $seedDefaultSettingsAction,
) {}
public function __invoke( public function __invoke(
Request $request Request $request
@@ -70,9 +73,9 @@ class CreateAdminAccountController extends Controller
}); });
// Set up application // Set up application
$this->setup->seed_default_pages(); ($this->seedDefaultPages)();
$this->setup->seed_default_settings($request->input('license')); ($this->seedDefaultSettingsAction)($request->input('license'));
$this->setup->seed_default_language(); ($this->seedDefaultLanguage)();
// Login account // Login account
if (Auth::attempt($request->only(['email', 'password']))) { if (Auth::attempt($request->only(['email', 'password']))) {
@@ -1,66 +0,0 @@
<?php
namespace Domain\SetupWizard\Services;
use Domain\Pages\Models\Page;
use Domain\Settings\Models\Setting;
use Illuminate\Support\Facades\Storage;
use Domain\Localization\Models\Language;
class SetupService
{
/**
* Create default folders which application to process files.
*/
public function create_directories()
{
collect(['avatars', 'chunks', 'system', 'files', 'temp', 'zip'])
->each(function ($directory) {
// Create directory for local driver
Storage::disk('local')
->makeDirectory($directory);
// Create directory for external driver
Storage::makeDirectory($directory);
});
}
/**
* Store default pages content like Terms of Service, Privacy Policy and Cookie Policy into database
*/
public function seed_default_pages()
{
collect(config('content.pages'))
->each(function ($page) {
Page::updateOrCreate($page);
});
}
/**
* Store default VueFileManager settings into database
*
* @param $license
*/
public function seed_default_settings($license)
{
collect(config('content.content.' . strtolower($license)))
->each(function ($content) {
Setting::forceCreate($content);
});
}
/**
* Store default VueFileManager settings into database
*/
public function seed_default_language()
{
Language::create([
'name' => 'English',
'locale' => 'en',
]);
Setting::create([
'name' => 'language',
'value' => 'en',
]);
}
}
@@ -5,8 +5,9 @@ use Domain\Sharing\Models\Share;
class ProtectShareRecordAction class ProtectShareRecordAction
{ {
public function __invoke(Share $shared): void public function __invoke(
{ Share $shared
): void {
if ($shared->is_protected) { if ($shared->is_protected) {
$abort_message = "Sorry, you don't have permission"; $abort_message = "Sorry, you don't have permission";
@@ -3,7 +3,7 @@ namespace Domain\Sharing\Controllers;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Http\Response; use Illuminate\Http\Response;
use Domain\Zipping\Models\Zip; use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share; use Domain\Sharing\Models\Share;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;
@@ -31,12 +31,8 @@ class ShareController extends Controller
SendViaEmailAction $sendLinkToEmailAction, SendViaEmailAction $sendLinkToEmailAction,
): ShareResource { ): ShareResource {
$shared = Share::create([ $shared = Share::create([
'password' => $request->has('password') 'password' => $request->has('password') ? bcrypt($request->input('password')) : null,
? bcrypt($request->input('password')) 'type' => $request->input('type') === 'folder' ? 'folder' : 'file',
: null,
'type' => $request->input('type') === 'folder'
? 'folder'
: 'file',
'is_protected' => $request->input('isPassword'), 'is_protected' => $request->input('isPassword'),
'permission' => $request->input('permission') ?? null, 'permission' => $request->input('permission') ?? null,
'expire_in' => $request->input('expiration') ?? null, 'expire_in' => $request->input('expiration') ?? null,
@@ -1,8 +1,8 @@
<?php <?php
namespace Domain\Zipping\Actions; namespace Domain\Zip\Actions;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use Domain\Zipping\Models\Zip; use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share; use Domain\Sharing\Models\Share;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;
@@ -1,8 +1,8 @@
<?php <?php
namespace Domain\Zipping\Actions; namespace Domain\Zip\Actions;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use Domain\Zipping\Models\Zip; use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share; use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder; use Domain\Folders\Models\Folder;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;
@@ -1,7 +1,7 @@
<?php <?php
namespace Domain\Zipping\Controllers; namespace Domain\Zip\Controllers;
use Domain\Zipping\Models\Zip; use Domain\Zip\Models\Zip;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Storage; use Illuminate\Support\Facades\Storage;
@@ -1,7 +1,7 @@
<?php <?php
namespace Domain\Zipping\Controllers; namespace Domain\Zip\Controllers;
use Domain\Zipping\Models\Zip; use Domain\Zip\Models\Zip;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Storage; use Illuminate\Support\Facades\Storage;
use Domain\Traffic\Actions\RecordDownloadAction; use Domain\Traffic\Actions\RecordDownloadAction;
@@ -1,12 +1,12 @@
<?php <?php
namespace Domain\Zipping\Controllers; namespace Domain\Zip\Controllers;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Domain\Files\Models\File; use Domain\Files\Models\File;
use Illuminate\Http\Response; use Illuminate\Http\Response;
use Domain\Sharing\Models\Share; use Domain\Sharing\Models\Share;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use Domain\Zipping\Actions\ZipFilesAction; use Domain\Zip\Actions\ZipFilesAction;
use Domain\Sharing\Actions\ProtectShareRecordAction; use Domain\Sharing\Actions\ProtectShareRecordAction;
use Domain\Sharing\Actions\VerifyAccessToItemAction; use Domain\Sharing\Actions\VerifyAccessToItemAction;
@@ -18,11 +18,11 @@ class VisitorZipFilesController extends Controller
public function __construct( public function __construct(
private ProtectShareRecordAction $protectShareRecord, private ProtectShareRecordAction $protectShareRecord,
private VerifyAccessToItemAction $verifyAccessToItem, private VerifyAccessToItemAction $verifyAccessToItem,
private ZipFilesAction $zipFiles,
) { ) {
} }
public function __invoke( public function __invoke(
ZipFilesAction $zipFiles,
Request $request, Request $request,
Share $shared, Share $shared,
): Response { ): Response {
@@ -43,7 +43,7 @@ class VisitorZipFilesController extends Controller
->whereIn('id', $request->items) ->whereIn('id', $request->items)
->get(); ->get();
$zip = ($zipFiles)($files, $shared); $zip = ($this->zipFiles)($files, $shared);
// Get file // Get file
return response([ return response([
@@ -1,11 +1,11 @@
<?php <?php
namespace Domain\Zipping\Controllers; namespace Domain\Zip\Controllers;
use Illuminate\Http\Response; use Illuminate\Http\Response;
use Domain\Sharing\Models\Share; use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder; use Domain\Folders\Models\Folder;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use Domain\Zipping\Actions\ZipFolderAction; use Domain\Zip\Actions\ZipFolderAction;
use Domain\Sharing\Actions\ProtectShareRecordAction; use Domain\Sharing\Actions\ProtectShareRecordAction;
use Domain\Sharing\Actions\VerifyAccessToItemAction; use Domain\Sharing\Actions\VerifyAccessToItemAction;
@@ -17,11 +17,11 @@ class VisitorZipFolderController extends Controller
public function __construct( public function __construct(
private ProtectShareRecordAction $protectShareRecord, private ProtectShareRecordAction $protectShareRecord,
private VerifyAccessToItemAction $verifyAccessToItem, private VerifyAccessToItemAction $verifyAccessToItem,
private ZipFolderAction $zipFolder,
) { ) {
} }
public function __invoke( public function __invoke(
ZipFolderAction $zipFolder,
string $id, string $id,
Share $shared, Share $shared,
): Response { ): Response {
@@ -39,7 +39,7 @@ class VisitorZipFolderController extends Controller
abort(404, 'Requested folder doesn\'t exists.'); abort(404, 'Requested folder doesn\'t exists.');
} }
$zip = ($zipFolder)($id, $shared); $zip = ($this->zipFolder)($id, $shared);
// Get file // Get file
return response([ return response([
@@ -1,24 +1,28 @@
<?php <?php
namespace Domain\Zipping\Controllers; namespace Domain\Zip\Controllers;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Domain\Files\Models\File; use Domain\Files\Models\File;
use Illuminate\Http\Response; use Illuminate\Http\Response;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;
use Domain\Zipping\Actions\ZipFilesAction; use Domain\Zip\Actions\ZipFilesAction;
class ZipFilesController extends Controller class ZipFilesController extends Controller
{ {
public function __construct(
private ZipFilesAction $zipFiles,
) {
}
public function __invoke( public function __invoke(
Request $request, Request $request,
ZipFilesAction $zipFiles,
): Response { ): Response {
$files = File::whereUserId(Auth::id()) $files = File::whereUserId(Auth::id())
->whereIn('id', $request->input('items')) ->whereIn('id', $request->input('items'))
->get(); ->get();
$zip = ($zipFiles)($files); $zip = ($this->zipFiles)($files);
return response([ return response([
'url' => route('zip', $zip->id), 'url' => route('zip', $zip->id),
@@ -1,17 +1,21 @@
<?php <?php
namespace Domain\Zipping\Controllers; namespace Domain\Zip\Controllers;
use Illuminate\Http\Response; use Illuminate\Http\Response;
use Domain\Folders\Models\Folder; use Domain\Folders\Models\Folder;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;
use Domain\Zipping\Actions\ZipFolderAction; use Domain\Zip\Actions\ZipFolderAction;
class ZipFolderController extends Controller class ZipFolderController extends Controller
{ {
public function __construct(
private ZipFolderAction $zipFolder,
) {
}
public function __invoke( public function __invoke(
string $id, string $id,
ZipFolderAction $zipFolder,
): Response { ): Response {
$folder = Folder::whereUserId(Auth::id()) $folder = Folder::whereUserId(Auth::id())
->where('id', $id); ->where('id', $id);
@@ -20,7 +24,7 @@ class ZipFolderController extends Controller
abort(404, "Requested folder doesn't exists."); abort(404, "Requested folder doesn't exists.");
} }
$zip = ($zipFolder)($id); $zip = ($this->zipFolder)($id);
return response([ return response([
'url' => route('zip', $zip->id), 'url' => route('zip', $zip->id),
@@ -1,5 +1,5 @@
<?php <?php
namespace Domain\Zipping\Models; namespace Domain\Zip\Models;
use App\Users\Models\User; use App\Users\Models\User;
use Illuminate\Support\Str; use Illuminate\Support\Str;
@@ -8,6 +8,9 @@ use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasOne; use Illuminate\Database\Eloquent\Relations\HasOne;
use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Factories\HasFactory;
/**
* @property mixed basename
*/
class Zip extends Model class Zip extends Model
{ {
use HasFactory; use HasFactory;
@@ -1,7 +1,7 @@
<?php <?php
namespace Support\Scheduler\Actions; namespace Support\Scheduler\Actions;
use Domain\Zipping\Models\Zip; use Domain\Zip\Models\Zip;
use Illuminate\Support\Facades\Storage; use Illuminate\Support\Facades\Storage;
class DeleteOldZipsAction class DeleteOldZipsAction
+1 -1
View File
@@ -1,4 +1,4 @@
`<?php <?php
use Carbon\Carbon; use Carbon\Carbon;
use ByteUnits\Metric; use ByteUnits\Metric;
-7
View File
@@ -7,17 +7,10 @@ use Tests\TestCase;
use App\Users\Models\User; use App\Users\Models\User;
use Illuminate\Http\UploadedFile; use Illuminate\Http\UploadedFile;
use Illuminate\Support\Facades\URL; use Illuminate\Support\Facades\URL;
use Domain\SetupWizard\Services\SetupService;
use Illuminate\Auth\Notifications\VerifyEmail; use Illuminate\Auth\Notifications\VerifyEmail;
class UserAccountTest extends TestCase class UserAccountTest extends TestCase
{ {
public function __construct()
{
parent::__construct();
$this->setup = resolve(SetupService::class);
}
/** /**
* @test * @test
*/ */
+1 -8
View File
@@ -7,21 +7,14 @@ use Tests\TestCase;
use App\Users\Models\User; use App\Users\Models\User;
use Laravel\Sanctum\Sanctum; use Laravel\Sanctum\Sanctum;
use Domain\Files\Models\File; use Domain\Files\Models\File;
use Domain\Zipping\Models\Zip; use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share; use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder; use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile; use Illuminate\Http\UploadedFile;
use App\Users\Notifications\ResetPassword; use App\Users\Notifications\ResetPassword;
use Domain\SetupWizard\Services\SetupService;
class AdminTest extends TestCase class AdminTest extends TestCase
{ {
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/** /**
* @test * @test
*/ */
+1 -8
View File
@@ -7,19 +7,12 @@ use App\Users\Models\User;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use Laravel\Sanctum\Sanctum; use Laravel\Sanctum\Sanctum;
use Domain\Files\Models\File; use Domain\Files\Models\File;
use Domain\Zipping\Models\Zip; use Domain\Zip\Models\Zip;
use Domain\Folders\Models\Folder; use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile; use Illuminate\Http\UploadedFile;
use Domain\SetupWizard\Services\SetupService;
class ContentAccessTest extends TestCase class ContentAccessTest extends TestCase
{ {
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/** /**
* @test * @test
*/ */
-7
View File
@@ -9,16 +9,9 @@ use Domain\Files\Models\File;
use Domain\Folders\Models\Folder; use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile; use Illuminate\Http\UploadedFile;
use Domain\Settings\Models\Setting; use Domain\Settings\Models\Setting;
use Domain\SetupWizard\Services\SetupService;
class FileTest extends TestCase class FileTest extends TestCase
{ {
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/** /**
* @test * @test
*/ */
-9
View File
@@ -8,18 +8,9 @@ use Laravel\Sanctum\Sanctum;
use Domain\Files\Models\File; use Domain\Files\Models\File;
use Domain\Folders\Models\Folder; use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile; use Illuminate\Http\UploadedFile;
use Domain\SetupWizard\Services\SetupService;
// TODO: pridat foldre do api skupiny
class FolderTest extends TestCase class FolderTest extends TestCase
{ {
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/** /**
* @test * @test
*/ */
+4 -9
View File
@@ -1,6 +1,8 @@
<?php <?php
namespace Tests\Domain\Homepage; namespace Tests\Domain\Homepage;
use Domain\Pages\Actions\SeedDefaultPagesAction;
use Domain\Settings\Actions\SeedDefaultSettingsAction;
use Mail; use Mail;
use Tests\TestCase; use Tests\TestCase;
use App\Users\Models\User; use App\Users\Models\User;
@@ -9,24 +11,17 @@ use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder; use Domain\Folders\Models\Folder;
use Domain\Settings\Models\Setting; use Domain\Settings\Models\Setting;
use Domain\Homepage\Mail\SendContactMessage; use Domain\Homepage\Mail\SendContactMessage;
use Domain\SetupWizard\Services\SetupService;
class HomepageTest extends TestCase class HomepageTest extends TestCase
{ {
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/** /**
* @test * @test
*/ */
public function it_get_index_page() public function it_get_index_page()
{ {
$this->setup->seed_default_pages(); resolve(SeedDefaultPagesAction::class)();
$this->setup->seed_default_settings('Extended'); resolve(SeedDefaultSettingsAction::class)('Extended');
Setting::create([ Setting::create([
'name' => 'setup_wizard_success', 'name' => 'setup_wizard_success',
@@ -1,11 +1,11 @@
<?php <?php
namespace Tests\Domain\Languages; namespace Tests\Domain\Languages;
use Domain\Localization\Actions\SeedDefaultLanguageAction;
use Tests\TestCase; use Tests\TestCase;
use App\Users\Models\User; use App\Users\Models\User;
use Domain\Settings\Models\Setting; use Domain\Settings\Models\Setting;
use Domain\Localization\Models\Language; use Domain\Localization\Models\Language;
use Domain\SetupWizard\Services\SetupService;
class AdminLanguageTranslatorTest extends TestCase class AdminLanguageTranslatorTest extends TestCase
{ {
@@ -51,7 +51,7 @@ class AdminLanguageTranslatorTest extends TestCase
*/ */
public function it_update_language() public function it_update_language()
{ {
resolve(SetupService::class)->seed_default_language(); resolve(SeedDefaultLanguageAction::class)();
$admin = User::factory(User::class) $admin = User::factory(User::class)
->create(['role' => 'admin']); ->create(['role' => 'admin']);
@@ -110,7 +110,7 @@ class AdminLanguageTranslatorTest extends TestCase
*/ */
public function it_try_to_delete_default_language() public function it_try_to_delete_default_language()
{ {
resolve(SetupService::class)->seed_default_language(); resolve(SeedDefaultLanguageAction::class)();
$admin = User::factory(User::class) $admin = User::factory(User::class)
->create(['role' => 'admin']); ->create(['role' => 'admin']);
@@ -128,7 +128,7 @@ class AdminLanguageTranslatorTest extends TestCase
*/ */
public function it_get_all_languages() public function it_get_all_languages()
{ {
resolve(SetupService::class)->seed_default_language(); resolve(SeedDefaultLanguageAction::class)();
$admin = User::factory(User::class) $admin = User::factory(User::class)
->create(['role' => 'admin']); ->create(['role' => 'admin']);
@@ -148,7 +148,7 @@ class AdminLanguageTranslatorTest extends TestCase
*/ */
public function it_update_language_string() public function it_update_language_string()
{ {
resolve(SetupService::class)->seed_default_language(); resolve(SeedDefaultLanguageAction::class)();
$admin = User::factory(User::class) $admin = User::factory(User::class)
->create(['role' => 'admin']); ->create(['role' => 'admin']);
@@ -174,7 +174,7 @@ class AdminLanguageTranslatorTest extends TestCase
*/ */
public function it_get_language_with_strings_by_selected_language_id() public function it_get_language_with_strings_by_selected_language_id()
{ {
resolve(SetupService::class)->seed_default_language(); resolve(SeedDefaultLanguageAction::class)();
$admin = User::factory(User::class) $admin = User::factory(User::class)
->create(['role' => 'admin']); ->create(['role' => 'admin']);
@@ -1,26 +1,18 @@
<?php <?php
namespace Tests\Domain\Languages; namespace Tests\Domain\Languages;
use Domain\Localization\Actions\SeedDefaultLanguageAction;
use Tests\TestCase; use Tests\TestCase;
use Domain\Localization\Models\Language; use Domain\Localization\Models\Language;
use Domain\SetupWizard\Services\SetupService;
class TranslationsAccessTest extends TestCase class TranslationsAccessTest extends TestCase
{ {
protected $setup;
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/** /**
* @test * @test
*/ */
public function it_get_language_translations_for_frontend() public function it_get_language_translations_for_frontend()
{ {
$this->setup->seed_default_language(); resolve(SeedDefaultLanguageAction::class)();
$this->getJson('/translations/en') $this->getJson('/translations/en')
->assertStatus(200) ->assertStatus(200)
@@ -34,7 +26,7 @@ class TranslationsAccessTest extends TestCase
*/ */
public function it_get_custom_translations_from_file_config() public function it_get_custom_translations_from_file_config()
{ {
$this->setup->seed_default_language(); resolve(SeedDefaultLanguageAction::class)();
$this->assertDatabaseHas('language_translations', [ $this->assertDatabaseHas('language_translations', [
'key' => 'custom', 'key' => 'custom',
@@ -48,7 +40,7 @@ class TranslationsAccessTest extends TestCase
*/ */
public function it_get_translated_string_from_t_helper_function() public function it_get_translated_string_from_t_helper_function()
{ {
$this->setup->seed_default_language(); resolve(SeedDefaultLanguageAction::class)();
Language::first() Language::first()
->languageTranslations() ->languageTranslations()
+4 -4
View File
@@ -1,10 +1,10 @@
<?php <?php
namespace Tests\Domain\Pages; namespace Tests\Domain\Pages;
use Domain\Pages\Actions\SeedDefaultPagesAction;
use Tests\TestCase; use Tests\TestCase;
use App\Users\Models\User; use App\Users\Models\User;
use Laravel\Sanctum\Sanctum; use Laravel\Sanctum\Sanctum;
use Domain\SetupWizard\Services\SetupService;
class AdminPagesTest extends TestCase class AdminPagesTest extends TestCase
{ {
@@ -13,7 +13,7 @@ class AdminPagesTest extends TestCase
*/ */
public function it_get_all_pages() public function it_get_all_pages()
{ {
resolve(SetupService::class)->seed_default_pages(); resolve(SeedDefaultPagesAction::class)();
$admin = User::factory(User::class) $admin = User::factory(User::class)
->create(['role' => 'admin']); ->create(['role' => 'admin']);
@@ -35,7 +35,7 @@ class AdminPagesTest extends TestCase
*/ */
public function it_get_page() public function it_get_page()
{ {
resolve(SetupService::class)->seed_default_pages(); resolve(SeedDefaultPagesAction::class)();
$admin = User::factory(User::class) $admin = User::factory(User::class)
->create(['role' => 'admin']); ->create(['role' => 'admin']);
@@ -54,7 +54,7 @@ class AdminPagesTest extends TestCase
*/ */
public function it_update_page() public function it_update_page()
{ {
resolve(SetupService::class)->seed_default_pages(); resolve(SeedDefaultPagesAction::class)();
$admin = User::factory(User::class) $admin = User::factory(User::class)
->create(['role' => 'admin']); ->create(['role' => 'admin']);
+2 -2
View File
@@ -1,8 +1,8 @@
<?php <?php
namespace Tests\Domain\Pages; namespace Tests\Domain\Pages;
use Domain\Pages\Actions\SeedDefaultPagesAction;
use Tests\TestCase; use Tests\TestCase;
use Domain\SetupWizard\Services\SetupService;
class PagesTest extends TestCase class PagesTest extends TestCase
{ {
@@ -11,7 +11,7 @@ class PagesTest extends TestCase
*/ */
public function it_get_legal_page() public function it_get_legal_page()
{ {
resolve(SetupService::class)->seed_default_pages(); resolve(SeedDefaultPagesAction::class)();
$this->getJson('/api/page/terms-of-service') $this->getJson('/api/page/terms-of-service')
->assertStatus(200) ->assertStatus(200)
+3 -3
View File
@@ -1,12 +1,12 @@
<?php <?php
namespace Tests\Domain\Settings; namespace Tests\Domain\Settings;
use Domain\Settings\Actions\SeedDefaultSettingsAction;
use Storage; use Storage;
use Tests\TestCase; use Tests\TestCase;
use App\Users\Models\User; use App\Users\Models\User;
use Illuminate\Http\UploadedFile; use Illuminate\Http\UploadedFile;
use Domain\Settings\Models\Setting; use Domain\Settings\Models\Setting;
use Domain\SetupWizard\Services\SetupService;
class SettingsTest extends TestCase class SettingsTest extends TestCase
{ {
@@ -38,7 +38,7 @@ class SettingsTest extends TestCase
*/ */
public function it_get_admin_settings() public function it_get_admin_settings()
{ {
resolve(SetupService::class)->seed_default_settings('Extended'); resolve(SeedDefaultSettingsAction::class)('Extended');
$admin = User::factory(User::class) $admin = User::factory(User::class)
->create(['role' => 'admin']); ->create(['role' => 'admin']);
@@ -72,7 +72,7 @@ class SettingsTest extends TestCase
*/ */
public function it_update_settings() public function it_update_settings()
{ {
resolve(SetupService::class)->seed_default_settings('Extended'); resolve(SeedDefaultSettingsAction::class)('Extended');
$admin = User::factory(User::class) $admin = User::factory(User::class)
->create(['role' => 'admin']); ->create(['role' => 'admin']);
+2 -18
View File
@@ -1,20 +1,12 @@
<?php <?php
namespace Tests\Domain\SetupWizard; namespace Tests\Domain\SetupWizard;
use Domain\Localization\Actions\SeedDefaultLanguageAction;
use Storage; use Storage;
use Tests\TestCase; use Tests\TestCase;
use Domain\Settings\Models\Setting;
use Domain\Localization\Models\Language;
use Domain\SetupWizard\Services\SetupService;
class SetupServiceTest extends TestCase class SetupServiceTest extends TestCase
{ {
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/** /**
* @test * @test
*/ */
@@ -33,15 +25,7 @@ class SetupServiceTest extends TestCase
*/ */
public function it_seed_default_language() public function it_seed_default_language()
{ {
Setting::create([ resolve(SeedDefaultLanguageAction::class)();
'name' => 'license',
'value' => 'Extended',
]);
Language::create([
'name' => 'English',
'locale' => 'en',
]);
$this->assertDatabaseHas('languages', [ $this->assertDatabaseHas('languages', [
'name' => 'English', 'name' => 'English',
@@ -6,21 +6,12 @@ use Tests\TestCase;
use App\Users\Models\User; use App\Users\Models\User;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use Domain\Files\Models\File; use Domain\Files\Models\File;
use Domain\Zipping\Models\Zip; use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share; use Domain\Sharing\Models\Share;
use Illuminate\Http\UploadedFile; use Illuminate\Http\UploadedFile;
use Domain\SetupWizard\Services\SetupService;
class VisitorAccessToItemsTest extends TestCase class VisitorAccessToItemsTest extends TestCase
{ {
private $setup;
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/** /**
* @test * @test
*/ */
@@ -6,16 +6,9 @@ use App\Users\Models\User;
use Domain\Files\Models\File; use Domain\Files\Models\File;
use Domain\Sharing\Models\Share; use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder; use Domain\Folders\Models\Folder;
use Domain\SetupWizard\Services\SetupService;
class VisitorBrowseTest extends TestCase class VisitorBrowseTest extends TestCase
{ {
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/** /**
* @test * @test
*/ */
@@ -8,16 +8,9 @@ use Domain\Files\Models\File;
use Domain\Sharing\Models\Share; use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder; use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile; use Illuminate\Http\UploadedFile;
use Domain\SetupWizard\Services\SetupService;
class VisitorManipulatingTest extends TestCase class VisitorManipulatingTest extends TestCase
{ {
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/** /**
* @test * @test
*/ */
+2 -2
View File
@@ -1,12 +1,12 @@
<?php <?php
namespace Tests\Domain\Zipping; namespace Tests\Domain\Zip;
use Storage; use Storage;
use Tests\TestCase; use Tests\TestCase;
use App\Users\Models\User; use App\Users\Models\User;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use Domain\Files\Models\File; use Domain\Files\Models\File;
use Domain\Zipping\Models\Zip; use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share; use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder; use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile; use Illuminate\Http\UploadedFile;
+2 -2
View File
@@ -1,12 +1,12 @@
<?php <?php
namespace Tests\Domain\Zipping; namespace Tests\Domain\Zip;
use Storage; use Storage;
use Tests\TestCase; use Tests\TestCase;
use App\Users\Models\User; use App\Users\Models\User;
use Laravel\Sanctum\Sanctum; use Laravel\Sanctum\Sanctum;
use Domain\Files\Models\File; use Domain\Files\Models\File;
use Domain\Zipping\Models\Zip; use Domain\Zip\Models\Zip;
use Domain\Folders\Models\Folder; use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile; use Illuminate\Http\UploadedFile;
+1 -1
View File
@@ -4,7 +4,7 @@ namespace Tests\Support\Scheduler;
use Storage; use Storage;
use Tests\TestCase; use Tests\TestCase;
use App\Users\Models\User; use App\Users\Models\User;
use Domain\Zipping\Models\Zip; use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share; use Domain\Sharing\Models\Share;
use Illuminate\Http\UploadedFile; use Illuminate\Http\UploadedFile;
use Support\Scheduler\Actions\DeleteOldZipsAction; use Support\Scheduler\Actions\DeleteOldZipsAction;
+2 -2
View File
@@ -2,9 +2,9 @@
namespace Tests; namespace Tests;
use Carbon\Carbon; use Carbon\Carbon;
use Domain\SetupWizard\Actions\CreateDiskDirectoriesAction;
use Illuminate\Support\Facades\Storage; use Illuminate\Support\Facades\Storage;
use Illuminate\Support\Facades\Notification; use Illuminate\Support\Facades\Notification;
use Domain\SetupWizard\Services\SetupService;
use Illuminate\Foundation\Testing\DatabaseMigrations; use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\TestCase as BaseTestCase; use Illuminate\Foundation\Testing\TestCase as BaseTestCase;
@@ -23,7 +23,7 @@ abstract class TestCase extends BaseTestCase
Storage::fake('local'); Storage::fake('local');
resolve(SetupService::class)->create_directories(); resolve(CreateDiskDirectoriesAction::class)();
//$this->withoutExceptionHandling(); //$this->withoutExceptionHandling();
} }