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

File diff suppressed because one or more lines are too long

View File

@@ -2,7 +2,7 @@
namespace Database\Factories;
use Domain\Zipping\Models\Zip;
use Domain\Zip\Models\Zip;
use Illuminate\Database\Eloquent\Factories\Factory;
use Illuminate\Support\Str;

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/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",
"/chunks/settings.17ab36c66821f7b6866c.hot-update.js": "/chunks/settings.17ab36c66821f7b6866c.hot-update.js",
"/chunks/settings-password.17ab36c66821f7b6866c.hot-update.js": "/chunks/settings-password.17ab36c66821f7b6866c.hot-update.js",
"/chunks/settings.53e438519217d537096f.hot-update.js": "/chunks/settings.53e438519217d537096f.hot-update.js",
"/chunks/settings.6f5297b3203e182729f6.hot-update.js": "/chunks/settings.6f5297b3203e182729f6.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"
"/chunks/sign-in.e4bd63dd478b0b7f9731.hot-update.js": "/chunks/sign-in.e4bd63dd478b0b7f9731.hot-update.js",
"/chunks/sign-in.5fb05f1c4d2f285ebf61.hot-update.js": "/chunks/sign-in.5fb05f1c4d2f285ebf61.hot-update.js",
"/chunks/sign-in.64892e5fdc888eba9b23.hot-update.js": "/chunks/sign-in.64892e5fdc888eba9b23.hot-update.js",
"/chunks/sign-in.62aa097b63d9b34e26cd.hot-update.js": "/chunks/sign-in.62aa097b63d9b34e26cd.hot-update.js"
}

View File

@@ -6,11 +6,11 @@ use Domain\Sharing\Controllers\ShareController;
use Domain\Trash\Controllers\DumpTrashController;
use App\Users\Controllers\ResetPasswordController;
use Domain\Files\Controllers\UploadFileController;
use Domain\Zipping\Controllers\ZipFilesController;
use Domain\Zip\Controllers\ZipFilesController;
use App\Users\Controllers\ForgotPasswordController;
use Domain\Folders\Controllers\FavouriteController;
use Domain\Plans\Controllers\ActivePlansController;
use Domain\Zipping\Controllers\ZipFolderController;
use Domain\Zip\Controllers\ZipFolderController;
use Domain\Folders\Controllers\CreateFolderController;
use Domain\Sharing\Controllers\ShareViaEmailController;
use Domain\Items\Controllers\MoveFileOrFolderController;

View File

@@ -2,16 +2,16 @@
// Get avatars and system images
use App\Users\Controllers\GetAvatarController;
use Domain\Zipping\Controllers\GetZipController;
use Domain\Settings\Controllers\GetIAppController;
use Domain\Zipping\Controllers\VisitorGetZipController;
use Domain\Zip\Controllers\GetZipController;
use Domain\Settings\Controllers\GetAppImageController;
use Domain\Zip\Controllers\VisitorGetZipController;
use Domain\Files\Controllers\FileAccess\GetFileController;
use Domain\Files\Controllers\FileAccess\GetThumbnailController;
use Domain\Files\Controllers\FileAccess\VisitorGetFileController;
use Domain\Files\Controllers\FileAccess\VisitorGetThumbnailController;
Route::get('/avatars/{avatar}', GetAvatarController::class);
Route::get('/system/{image}', GetIAppController::class);
Route::get('/system/{image}', GetAppImageController::class);
// Get public thumbnails and files
Route::get('/thumbnail/{name}/{shared}', VisitorGetThumbnailController::class);

View File

@@ -3,8 +3,8 @@
use Domain\Sharing\Controllers\ShareController;
use Domain\Files\Controllers\VisitorShowFileController;
use Domain\Files\Controllers\VisitorUploadFileController;
use Domain\Zipping\Controllers\VisitorZipFilesController;
use Domain\Zipping\Controllers\VisitorZipFolderController;
use Domain\Zip\Controllers\VisitorZipFilesController;
use Domain\Zip\Controllers\VisitorZipFolderController;
use Domain\Folders\Controllers\VisitorCreateFolderController;
use Domain\Sharing\Controllers\WebCrawlerOpenGraphController;
use Domain\Items\Controllers\VisitorMoveFileOrFolderController;

View File

@@ -2,6 +2,10 @@
namespace App\Console\Commands;
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 Domain\Files\Models\File;
use Illuminate\Console\Command;
@@ -10,7 +14,6 @@ use Domain\Folders\Models\Folder;
use Domain\Settings\Models\Setting;
use Illuminate\Support\Facades\Storage;
use Illuminate\Foundation\Testing\WithFaker;
use Domain\SetupWizard\Services\SetupService;
class SetupDevEnvironment extends Command
{
@@ -18,47 +21,44 @@ class SetupDevEnvironment extends Command
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'setup:dev';
protected $license = 'Extended';
protected string $license = 'Extended';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Set up development environment with demo data';
private $setup;
public function __construct()
{
public function __construct(
private CreateDiskDirectoriesAction $createDiskDirectories,
private SeedDefaultSettingsAction $seedDefaultSettings,
private SeedDefaultLanguageAction $seedDefaultLanguage,
private SeedDefaultPagesAction $seedDefaultPages,
) {
parent::__construct();
$this->setUpFaker();
$this->setup = resolve(SetupService::class);
}
/**
* Execute the console command.
* return @void
*/
public function handle(): void
{
$this->info('Setting up development environment');
$this->info('Creating system directories...');
$this->setup->create_directories();
($this->createDiskDirectories)();
$this->info('Migrating Databases...');
$this->migrate_and_generate();
$this->info('Storing default settings and content...');
$this->store_default_settings();
$this->setup->seed_default_pages();
$this->setup->seed_default_settings($this->license);
$this->setup->seed_default_language();
($this->seedDefaultPages)();
($this->seedDefaultSettings)($this->license);
($this->seedDefaultLanguage)();
$this->info('Creating default admin...');
$this->create_admin();
@@ -298,7 +298,7 @@ class SetupDevEnvironment extends Command
'name' => 'Second Level',
]);
$third_level = Folder::factory(Folder::class)
Folder::factory(Folder::class)
->create([
'user_id' => $user->id,
'parent_id' => $second_level->id,

View File

@@ -2,19 +2,21 @@
namespace App\Console\Commands;
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 Domain\Settings\Models\Setting;
use Domain\SetupWizard\Services\SetupService;
class SetupProdEnvironment extends Command
{
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'setup:prod';
protected $license = 'Extended';
protected string $license = 'Extended';
/**
* The console command description.
@@ -23,12 +25,13 @@ class SetupProdEnvironment extends Command
*/
protected $description = 'Set up production environment';
private $setup;
public function __construct()
{
public function __construct(
private CreateDiskDirectoriesAction $createDiskDirectories,
private SeedDefaultSettingsAction $seedDefaultSettings,
private SeedDefaultLanguageAction $seedDefaultLanguage,
private SeedDefaultPagesAction $seedDefaultPages,
) {
parent::__construct();
$this->setup = resolve(SetupService::class);
}
/**
@@ -41,16 +44,17 @@ class SetupProdEnvironment extends Command
$this->info('Setting up production environment');
$this->info('Creating system directories...');
$this->setup->create_directories();
($this->createDiskDirectories)();
$this->info('Migrating Databases...');
$this->migrate_and_generate();
$this->info('Storing default settings and content...');
$this->store_default_settings();
$this->setup->seed_default_pages();
$this->setup->seed_default_settings($this->license);
$this->setup->seed_default_language();
($this->seedDefaultPages)();
($this->seedDefaultSettings)($this->license);
($this->seedDefaultLanguage)();
$this->info('Creating default admin...');
$this->create_admin();

View File

@@ -24,7 +24,7 @@ class CheckAccountController extends Controller
return [
'name' => $user->settings->name,
'avatar' => $user->settings->avatar,
'verified' => $user->email_verified_at ? true : false,
'verified' => $user->email_verified_at ? 1 : 0,
];
}
}

View File

@@ -6,37 +6,46 @@ use Intervention\Image\ImageManagerStatic as Image;
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(
string $file_path,
string $filename,
string $user_id
): string | null {
$availableFormats = ['image/gif', 'image/jpeg', 'image/jpg', 'image/png', 'image/webp'];
$mimeType = Storage::disk('local')->mimeType($file_path);
// Create thumbnail from image
if (in_array(Storage::disk('local')->mimeType($file_path), $availableFormats)) {
if (in_array($mimeType, $this->availableFormats)) {
// Get thumbnail name
$thumbnail = "thumbnail-$filename";
// Create intervention image
$image = Image::make(Storage::disk('local')->path($file_path))
$image = Image::make(Storage::disk('local')
->path($file_path))
->orientate();
// Resize image
$image->resize(512, null, function ($constraint) {
$constraint->aspectRatio();
})->stream();
$image->resize(512, null, fn ($constraint) => $constraint->aspectRatio())->stream();
// Store thumbnail to disk
Storage::put("files/$user_id/$thumbnail", $image);
}
// Return thumbnail as svg file
if (Storage::disk('local')->mimeType($file_path) === 'image/svg+xml') {
$thumbnail = $filename;
if ($mimeType === 'image/svg+xml') {
return $filename;
}
return $thumbnail ?? null;

View File

@@ -16,7 +16,7 @@ class MoveFileToExternalStorageAction
string $file,
string $user_id
): void {
$disk_local = \Storage::disk('local');
$disk_local = Storage::disk('local');
// Get file size
$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 ($filesize > 5242880) {
// Get driver
$driver = \Storage::getDriver();
$driver = Storage::getDriver();
// Get adapter
$adapter = $driver->getAdapter();

View File

@@ -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',
]);
}
}

View File

@@ -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));
}
}

View File

@@ -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));
}
}

View File

@@ -5,7 +5,7 @@ use Illuminate\Support\Facades\Storage;
use Symfony\Component\HttpFoundation\StreamedResponse;
use Illuminate\Contracts\Filesystem\FileNotFoundException;
class GetIAppController
class GetAppImageController
{
/**
* Get system image

View File

@@ -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);
});
}
}

View File

@@ -2,12 +2,14 @@
namespace Domain\SetupWizard\Controllers;
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\Response;
use Domain\Settings\Models\Setting;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth;
use Domain\SetupWizard\Services\SetupService;
/**
* Create and login admin account
@@ -15,9 +17,10 @@ use Domain\SetupWizard\Services\SetupService;
class CreateAdminAccountController extends Controller
{
public function __construct(
public SetupService $setup,
) {
}
public SeedDefaultPagesAction $seedDefaultPages,
public SeedDefaultLanguageAction $seedDefaultLanguage,
public SeedDefaultSettingsAction $seedDefaultSettingsAction,
) {}
public function __invoke(
Request $request
@@ -70,9 +73,9 @@ class CreateAdminAccountController extends Controller
});
// Set up application
$this->setup->seed_default_pages();
$this->setup->seed_default_settings($request->input('license'));
$this->setup->seed_default_language();
($this->seedDefaultPages)();
($this->seedDefaultSettingsAction)($request->input('license'));
($this->seedDefaultLanguage)();
// Login account
if (Auth::attempt($request->only(['email', 'password']))) {

View File

@@ -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',
]);
}
}

View File

@@ -5,8 +5,9 @@ use Domain\Sharing\Models\Share;
class ProtectShareRecordAction
{
public function __invoke(Share $shared): void
{
public function __invoke(
Share $shared
): void {
if ($shared->is_protected) {
$abort_message = "Sorry, you don't have permission";

View File

@@ -3,7 +3,7 @@ namespace Domain\Sharing\Controllers;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Domain\Zipping\Models\Zip;
use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth;
@@ -31,12 +31,8 @@ class ShareController extends Controller
SendViaEmailAction $sendLinkToEmailAction,
): ShareResource {
$shared = Share::create([
'password' => $request->has('password')
? bcrypt($request->input('password'))
: null,
'type' => $request->input('type') === 'folder'
? 'folder'
: 'file',
'password' => $request->has('password') ? bcrypt($request->input('password')) : null,
'type' => $request->input('type') === 'folder' ? 'folder' : 'file',
'is_protected' => $request->input('isPassword'),
'permission' => $request->input('permission') ?? null,
'expire_in' => $request->input('expiration') ?? null,

View File

@@ -1,8 +1,8 @@
<?php
namespace Domain\Zipping\Actions;
namespace Domain\Zip\Actions;
use Illuminate\Support\Str;
use Domain\Zipping\Models\Zip;
use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share;
use Illuminate\Support\Collection;
use Illuminate\Support\Facades\Auth;

View File

@@ -1,8 +1,8 @@
<?php
namespace Domain\Zipping\Actions;
namespace Domain\Zip\Actions;
use Illuminate\Support\Str;
use Domain\Zipping\Models\Zip;
use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder;
use Illuminate\Support\Facades\Auth;

View File

@@ -1,7 +1,7 @@
<?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 Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Storage;

View File

@@ -1,7 +1,7 @@
<?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 Illuminate\Support\Facades\Storage;
use Domain\Traffic\Actions\RecordDownloadAction;

View File

@@ -1,12 +1,12 @@
<?php
namespace Domain\Zipping\Controllers;
namespace Domain\Zip\Controllers;
use Illuminate\Http\Request;
use Domain\Files\Models\File;
use Illuminate\Http\Response;
use Domain\Sharing\Models\Share;
use App\Http\Controllers\Controller;
use Domain\Zipping\Actions\ZipFilesAction;
use Domain\Zip\Actions\ZipFilesAction;
use Domain\Sharing\Actions\ProtectShareRecordAction;
use Domain\Sharing\Actions\VerifyAccessToItemAction;
@@ -18,11 +18,11 @@ class VisitorZipFilesController extends Controller
public function __construct(
private ProtectShareRecordAction $protectShareRecord,
private VerifyAccessToItemAction $verifyAccessToItem,
private ZipFilesAction $zipFiles,
) {
}
public function __invoke(
ZipFilesAction $zipFiles,
Request $request,
Share $shared,
): Response {
@@ -43,7 +43,7 @@ class VisitorZipFilesController extends Controller
->whereIn('id', $request->items)
->get();
$zip = ($zipFiles)($files, $shared);
$zip = ($this->zipFiles)($files, $shared);
// Get file
return response([

View File

@@ -1,11 +1,11 @@
<?php
namespace Domain\Zipping\Controllers;
namespace Domain\Zip\Controllers;
use Illuminate\Http\Response;
use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder;
use App\Http\Controllers\Controller;
use Domain\Zipping\Actions\ZipFolderAction;
use Domain\Zip\Actions\ZipFolderAction;
use Domain\Sharing\Actions\ProtectShareRecordAction;
use Domain\Sharing\Actions\VerifyAccessToItemAction;
@@ -17,11 +17,11 @@ class VisitorZipFolderController extends Controller
public function __construct(
private ProtectShareRecordAction $protectShareRecord,
private VerifyAccessToItemAction $verifyAccessToItem,
private ZipFolderAction $zipFolder,
) {
}
public function __invoke(
ZipFolderAction $zipFolder,
string $id,
Share $shared,
): Response {
@@ -39,7 +39,7 @@ class VisitorZipFolderController extends Controller
abort(404, 'Requested folder doesn\'t exists.');
}
$zip = ($zipFolder)($id, $shared);
$zip = ($this->zipFolder)($id, $shared);
// Get file
return response([

View File

@@ -1,24 +1,28 @@
<?php
namespace Domain\Zipping\Controllers;
namespace Domain\Zip\Controllers;
use Illuminate\Http\Request;
use Domain\Files\Models\File;
use Illuminate\Http\Response;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth;
use Domain\Zipping\Actions\ZipFilesAction;
use Domain\Zip\Actions\ZipFilesAction;
class ZipFilesController extends Controller
{
public function __construct(
private ZipFilesAction $zipFiles,
) {
}
public function __invoke(
Request $request,
ZipFilesAction $zipFiles,
): Response {
$files = File::whereUserId(Auth::id())
->whereIn('id', $request->input('items'))
->get();
$zip = ($zipFiles)($files);
$zip = ($this->zipFiles)($files);
return response([
'url' => route('zip', $zip->id),

View File

@@ -1,17 +1,21 @@
<?php
namespace Domain\Zipping\Controllers;
namespace Domain\Zip\Controllers;
use Illuminate\Http\Response;
use Domain\Folders\Models\Folder;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth;
use Domain\Zipping\Actions\ZipFolderAction;
use Domain\Zip\Actions\ZipFolderAction;
class ZipFolderController extends Controller
{
public function __construct(
private ZipFolderAction $zipFolder,
) {
}
public function __invoke(
string $id,
ZipFolderAction $zipFolder,
): Response {
$folder = Folder::whereUserId(Auth::id())
->where('id', $id);
@@ -20,7 +24,7 @@ class ZipFolderController extends Controller
abort(404, "Requested folder doesn't exists.");
}
$zip = ($zipFolder)($id);
$zip = ($this->zipFolder)($id);
return response([
'url' => route('zip', $zip->id),

View File

@@ -1,5 +1,5 @@
<?php
namespace Domain\Zipping\Models;
namespace Domain\Zip\Models;
use App\Users\Models\User;
use Illuminate\Support\Str;
@@ -8,6 +8,9 @@ use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasOne;
use Illuminate\Database\Eloquent\Factories\HasFactory;
/**
* @property mixed basename
*/
class Zip extends Model
{
use HasFactory;

View File

@@ -1,7 +1,7 @@
<?php
namespace Support\Scheduler\Actions;
use Domain\Zipping\Models\Zip;
use Domain\Zip\Models\Zip;
use Illuminate\Support\Facades\Storage;
class DeleteOldZipsAction

View File

@@ -1,4 +1,4 @@
`<?php
<?php
use Carbon\Carbon;
use ByteUnits\Metric;

View File

@@ -7,17 +7,10 @@ use Tests\TestCase;
use App\Users\Models\User;
use Illuminate\Http\UploadedFile;
use Illuminate\Support\Facades\URL;
use Domain\SetupWizard\Services\SetupService;
use Illuminate\Auth\Notifications\VerifyEmail;
class UserAccountTest extends TestCase
{
public function __construct()
{
parent::__construct();
$this->setup = resolve(SetupService::class);
}
/**
* @test
*/

View File

@@ -7,21 +7,14 @@ use Tests\TestCase;
use App\Users\Models\User;
use Laravel\Sanctum\Sanctum;
use Domain\Files\Models\File;
use Domain\Zipping\Models\Zip;
use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile;
use App\Users\Notifications\ResetPassword;
use Domain\SetupWizard\Services\SetupService;
class AdminTest extends TestCase
{
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/**
* @test
*/

View File

@@ -7,19 +7,12 @@ use App\Users\Models\User;
use Illuminate\Support\Str;
use Laravel\Sanctum\Sanctum;
use Domain\Files\Models\File;
use Domain\Zipping\Models\Zip;
use Domain\Zip\Models\Zip;
use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile;
use Domain\SetupWizard\Services\SetupService;
class ContentAccessTest extends TestCase
{
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/**
* @test
*/

View File

@@ -9,16 +9,9 @@ use Domain\Files\Models\File;
use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile;
use Domain\Settings\Models\Setting;
use Domain\SetupWizard\Services\SetupService;
class FileTest extends TestCase
{
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/**
* @test
*/

View File

@@ -8,18 +8,9 @@ use Laravel\Sanctum\Sanctum;
use Domain\Files\Models\File;
use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile;
use Domain\SetupWizard\Services\SetupService;
// TODO: pridat foldre do api skupiny
class FolderTest extends TestCase
{
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/**
* @test
*/

View File

@@ -1,6 +1,8 @@
<?php
namespace Tests\Domain\Homepage;
use Domain\Pages\Actions\SeedDefaultPagesAction;
use Domain\Settings\Actions\SeedDefaultSettingsAction;
use Mail;
use Tests\TestCase;
use App\Users\Models\User;
@@ -9,24 +11,17 @@ use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder;
use Domain\Settings\Models\Setting;
use Domain\Homepage\Mail\SendContactMessage;
use Domain\SetupWizard\Services\SetupService;
class HomepageTest extends TestCase
{
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/**
* @test
*/
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([
'name' => 'setup_wizard_success',

View File

@@ -1,11 +1,11 @@
<?php
namespace Tests\Domain\Languages;
use Domain\Localization\Actions\SeedDefaultLanguageAction;
use Tests\TestCase;
use App\Users\Models\User;
use Domain\Settings\Models\Setting;
use Domain\Localization\Models\Language;
use Domain\SetupWizard\Services\SetupService;
class AdminLanguageTranslatorTest extends TestCase
{
@@ -51,7 +51,7 @@ class AdminLanguageTranslatorTest extends TestCase
*/
public function it_update_language()
{
resolve(SetupService::class)->seed_default_language();
resolve(SeedDefaultLanguageAction::class)();
$admin = User::factory(User::class)
->create(['role' => 'admin']);
@@ -110,7 +110,7 @@ class AdminLanguageTranslatorTest extends TestCase
*/
public function it_try_to_delete_default_language()
{
resolve(SetupService::class)->seed_default_language();
resolve(SeedDefaultLanguageAction::class)();
$admin = User::factory(User::class)
->create(['role' => 'admin']);
@@ -128,7 +128,7 @@ class AdminLanguageTranslatorTest extends TestCase
*/
public function it_get_all_languages()
{
resolve(SetupService::class)->seed_default_language();
resolve(SeedDefaultLanguageAction::class)();
$admin = User::factory(User::class)
->create(['role' => 'admin']);
@@ -148,7 +148,7 @@ class AdminLanguageTranslatorTest extends TestCase
*/
public function it_update_language_string()
{
resolve(SetupService::class)->seed_default_language();
resolve(SeedDefaultLanguageAction::class)();
$admin = User::factory(User::class)
->create(['role' => 'admin']);
@@ -174,7 +174,7 @@ class AdminLanguageTranslatorTest extends TestCase
*/
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)
->create(['role' => 'admin']);

View File

@@ -1,26 +1,18 @@
<?php
namespace Tests\Domain\Languages;
use Domain\Localization\Actions\SeedDefaultLanguageAction;
use Tests\TestCase;
use Domain\Localization\Models\Language;
use Domain\SetupWizard\Services\SetupService;
class TranslationsAccessTest extends TestCase
{
protected $setup;
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/**
* @test
*/
public function it_get_language_translations_for_frontend()
{
$this->setup->seed_default_language();
resolve(SeedDefaultLanguageAction::class)();
$this->getJson('/translations/en')
->assertStatus(200)
@@ -34,7 +26,7 @@ class TranslationsAccessTest extends TestCase
*/
public function it_get_custom_translations_from_file_config()
{
$this->setup->seed_default_language();
resolve(SeedDefaultLanguageAction::class)();
$this->assertDatabaseHas('language_translations', [
'key' => 'custom',
@@ -48,7 +40,7 @@ class TranslationsAccessTest extends TestCase
*/
public function it_get_translated_string_from_t_helper_function()
{
$this->setup->seed_default_language();
resolve(SeedDefaultLanguageAction::class)();
Language::first()
->languageTranslations()

View File

@@ -1,10 +1,10 @@
<?php
namespace Tests\Domain\Pages;
use Domain\Pages\Actions\SeedDefaultPagesAction;
use Tests\TestCase;
use App\Users\Models\User;
use Laravel\Sanctum\Sanctum;
use Domain\SetupWizard\Services\SetupService;
class AdminPagesTest extends TestCase
{
@@ -13,7 +13,7 @@ class AdminPagesTest extends TestCase
*/
public function it_get_all_pages()
{
resolve(SetupService::class)->seed_default_pages();
resolve(SeedDefaultPagesAction::class)();
$admin = User::factory(User::class)
->create(['role' => 'admin']);
@@ -35,7 +35,7 @@ class AdminPagesTest extends TestCase
*/
public function it_get_page()
{
resolve(SetupService::class)->seed_default_pages();
resolve(SeedDefaultPagesAction::class)();
$admin = User::factory(User::class)
->create(['role' => 'admin']);
@@ -54,7 +54,7 @@ class AdminPagesTest extends TestCase
*/
public function it_update_page()
{
resolve(SetupService::class)->seed_default_pages();
resolve(SeedDefaultPagesAction::class)();
$admin = User::factory(User::class)
->create(['role' => 'admin']);

View File

@@ -1,8 +1,8 @@
<?php
namespace Tests\Domain\Pages;
use Domain\Pages\Actions\SeedDefaultPagesAction;
use Tests\TestCase;
use Domain\SetupWizard\Services\SetupService;
class PagesTest extends TestCase
{
@@ -11,7 +11,7 @@ class PagesTest extends TestCase
*/
public function it_get_legal_page()
{
resolve(SetupService::class)->seed_default_pages();
resolve(SeedDefaultPagesAction::class)();
$this->getJson('/api/page/terms-of-service')
->assertStatus(200)

View File

@@ -1,12 +1,12 @@
<?php
namespace Tests\Domain\Settings;
use Domain\Settings\Actions\SeedDefaultSettingsAction;
use Storage;
use Tests\TestCase;
use App\Users\Models\User;
use Illuminate\Http\UploadedFile;
use Domain\Settings\Models\Setting;
use Domain\SetupWizard\Services\SetupService;
class SettingsTest extends TestCase
{
@@ -38,7 +38,7 @@ class SettingsTest extends TestCase
*/
public function it_get_admin_settings()
{
resolve(SetupService::class)->seed_default_settings('Extended');
resolve(SeedDefaultSettingsAction::class)('Extended');
$admin = User::factory(User::class)
->create(['role' => 'admin']);
@@ -72,7 +72,7 @@ class SettingsTest extends TestCase
*/
public function it_update_settings()
{
resolve(SetupService::class)->seed_default_settings('Extended');
resolve(SeedDefaultSettingsAction::class)('Extended');
$admin = User::factory(User::class)
->create(['role' => 'admin']);

View File

@@ -1,20 +1,12 @@
<?php
namespace Tests\Domain\SetupWizard;
use Domain\Localization\Actions\SeedDefaultLanguageAction;
use Storage;
use Tests\TestCase;
use Domain\Settings\Models\Setting;
use Domain\Localization\Models\Language;
use Domain\SetupWizard\Services\SetupService;
class SetupServiceTest extends TestCase
{
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/**
* @test
*/
@@ -33,15 +25,7 @@ class SetupServiceTest extends TestCase
*/
public function it_seed_default_language()
{
Setting::create([
'name' => 'license',
'value' => 'Extended',
]);
Language::create([
'name' => 'English',
'locale' => 'en',
]);
resolve(SeedDefaultLanguageAction::class)();
$this->assertDatabaseHas('languages', [
'name' => 'English',

View File

@@ -6,21 +6,12 @@ use Tests\TestCase;
use App\Users\Models\User;
use Illuminate\Support\Str;
use Domain\Files\Models\File;
use Domain\Zipping\Models\Zip;
use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share;
use Illuminate\Http\UploadedFile;
use Domain\SetupWizard\Services\SetupService;
class VisitorAccessToItemsTest extends TestCase
{
private $setup;
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/**
* @test
*/

View File

@@ -6,16 +6,9 @@ use App\Users\Models\User;
use Domain\Files\Models\File;
use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder;
use Domain\SetupWizard\Services\SetupService;
class VisitorBrowseTest extends TestCase
{
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/**
* @test
*/

View File

@@ -8,16 +8,9 @@ use Domain\Files\Models\File;
use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile;
use Domain\SetupWizard\Services\SetupService;
class VisitorManipulatingTest extends TestCase
{
public function __construct()
{
parent::__construct();
$this->setup = app()->make(SetupService::class);
}
/**
* @test
*/

View File

@@ -1,12 +1,12 @@
<?php
namespace Tests\Domain\Zipping;
namespace Tests\Domain\Zip;
use Storage;
use Tests\TestCase;
use App\Users\Models\User;
use Illuminate\Support\Str;
use Domain\Files\Models\File;
use Domain\Zipping\Models\Zip;
use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share;
use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile;

View File

@@ -1,12 +1,12 @@
<?php
namespace Tests\Domain\Zipping;
namespace Tests\Domain\Zip;
use Storage;
use Tests\TestCase;
use App\Users\Models\User;
use Laravel\Sanctum\Sanctum;
use Domain\Files\Models\File;
use Domain\Zipping\Models\Zip;
use Domain\Zip\Models\Zip;
use Domain\Folders\Models\Folder;
use Illuminate\Http\UploadedFile;

View File

@@ -4,7 +4,7 @@ namespace Tests\Support\Scheduler;
use Storage;
use Tests\TestCase;
use App\Users\Models\User;
use Domain\Zipping\Models\Zip;
use Domain\Zip\Models\Zip;
use Domain\Sharing\Models\Share;
use Illuminate\Http\UploadedFile;
use Support\Scheduler\Actions\DeleteOldZipsAction;

View File

@@ -2,9 +2,9 @@
namespace Tests;
use Carbon\Carbon;
use Domain\SetupWizard\Actions\CreateDiskDirectoriesAction;
use Illuminate\Support\Facades\Storage;
use Illuminate\Support\Facades\Notification;
use Domain\SetupWizard\Services\SetupService;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\TestCase as BaseTestCase;
@@ -23,7 +23,7 @@ abstract class TestCase extends BaseTestCase
Storage::fake('local');
resolve(SetupService::class)->create_directories();
resolve(CreateDiskDirectoriesAction::class)();
//$this->withoutExceptionHandling();
}