mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-04-05 18:23:48 +00:00
add 2fa, make 2fa login page
This commit is contained in:
@@ -11,12 +11,13 @@ use Kyslik\ColumnSortable\Sortable;
|
||||
use App\Notifications\ResetPassword;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
use Illuminate\Notifications\Notifiable;
|
||||
use Laravel\Fortify\TwoFactorAuthenticatable;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Foundation\Auth\User as Authenticatable;
|
||||
|
||||
class User extends Authenticatable
|
||||
{
|
||||
use Notifiable, Billable, Sortable, HasFactory, HasApiTokens;
|
||||
use Notifiable, Billable, Sortable, HasFactory, HasApiTokens, TwoFactorAuthenticatable;
|
||||
|
||||
protected $guarded = [
|
||||
'id',
|
||||
|
||||
@@ -136,8 +136,8 @@ return [
|
||||
// Features::emailVerification(),
|
||||
Features::updateProfileInformation(),
|
||||
//Features::updatePasswords(),
|
||||
/*Features::twoFactorAuthentication([
|
||||
Features::twoFactorAuthentication([
|
||||
'confirmPassword' => true,
|
||||
]),*/
|
||||
]),
|
||||
],
|
||||
];
|
||||
|
||||
@@ -1,76 +1,129 @@
|
||||
{
|
||||
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~2fac28cc.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~2fac28cc.js?id=59d8a92b461069b2d8ef",
|
||||
"/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~5f8db287.js": "/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~5f8db287.js?id=da9787176357b5821f88",
|
||||
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js?id=dfc34718027ffe49c095",
|
||||
"/chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser.js": "/chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser.js?id=78490a539df6de210807",
|
||||
"/chunks/admin~chunks/platform~chunks/shared.js": "/chunks/admin~chunks/platform~chunks/shared.js?id=6db60bf5154ed8946420",
|
||||
"/chunks/files~chunks/shared/file-browser~chunks/shared/single-file.js": "/chunks/files~chunks/shared/file-browser~chunks/shared/single-file.js?id=78d379b1b282c3ad5c0c",
|
||||
"/chunks/files~chunks/shared/file-browser.js": "/chunks/files~chunks/shared/file-browser.js?id=c6362b7ef3e9b06d3af7",
|
||||
"/chunks/not-found.js": "/chunks/not-found.js?id=3278798d98bd131aa379",
|
||||
"/chunks/profile~chunks/settings-password.js": "/chunks/profile~chunks/settings-password.js?id=dbfcbb7580f69474cc13",
|
||||
"/vendors~chunks/platform~chunks/shared.js": "/vendors~chunks/platform~chunks/shared.js?id=16e4937273d68f83c37f",
|
||||
"/js/main.js": "/js/main.js?id=1ced39466ba657ce3e16",
|
||||
"/css/app.css": "/css/app.css?id=a8f94d0c5a6f4a1185b1",
|
||||
"/chunks/admin.js": "/chunks/admin.js?id=c23b5f524dd386d797e5",
|
||||
"/chunks/admin-account.js": "/chunks/admin-account.js?id=a73cbe625776f823eb4e",
|
||||
"/chunks/app-appearance.js": "/chunks/app-appearance.js?id=1542b65e6edae59f17aa",
|
||||
"/chunks/app-billings.js": "/chunks/app-billings.js?id=15318dba11818d6ec888",
|
||||
"/chunks/app-email.js": "/chunks/app-email.js?id=b023f73218dda4abd604",
|
||||
"/chunks/app-index.js": "/chunks/app-index.js?id=08b7878a3fcd087c23b3",
|
||||
"/chunks/app-language.js": "/chunks/app-language.js?id=ad245f54b99ec8979f9e",
|
||||
"/chunks/app-others.js": "/chunks/app-others.js?id=256f8a571e9535774643",
|
||||
"/chunks/app-payments.js": "/chunks/app-payments.js?id=b57048c4667935499d3e",
|
||||
"/chunks/app-settings.js": "/chunks/app-settings.js?id=c6f95c5841c36de9d030",
|
||||
"/chunks/app-setup.js": "/chunks/app-setup.js?id=c0898f22c12ee8a56916",
|
||||
"/chunks/billings-detail.js": "/chunks/billings-detail.js?id=622b5dca6425427f7ea0",
|
||||
"/chunks/contact-us.js": "/chunks/contact-us.js?id=9415844c1627d307d951",
|
||||
"/chunks/create-new-password.js": "/chunks/create-new-password.js?id=ad4ac6e1e79602cbb929",
|
||||
"/chunks/dashboard.js": "/chunks/dashboard.js?id=db35f7a287b6407fc4af",
|
||||
"/chunks/database.js": "/chunks/database.js?id=669e7798dcc456197402",
|
||||
"/chunks/dynamic-page.js": "/chunks/dynamic-page.js?id=c53bdc4a88bf3f2e5434",
|
||||
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=52cde925b9687de4c29a",
|
||||
"/chunks/files.js": "/chunks/files.js?id=0fa05841bb3895d2d5e5",
|
||||
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=0708aa3e04e6ed11c91d",
|
||||
"/chunks/homepage.js": "/chunks/homepage.js?id=44552c231f6791295903",
|
||||
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=922ecf4d086b03abfc04",
|
||||
"/chunks/invoices.js": "/chunks/invoices.js?id=85b17b9371f4df37c00a",
|
||||
"/chunks/page-edit.js": "/chunks/page-edit.js?id=7e04b66e4bccb47e7f3f",
|
||||
"/chunks/pages.js": "/chunks/pages.js?id=76341f611821d93f1696",
|
||||
"/chunks/plan.js": "/chunks/plan.js?id=d44c79f456ece7ed20ba",
|
||||
"/chunks/plan-create.js": "/chunks/plan-create.js?id=f14b6474cc894199f962",
|
||||
"/chunks/plan-delete.js": "/chunks/plan-delete.js?id=82741fb5261f08150514",
|
||||
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=8e901b7cce8fabec9042",
|
||||
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=700253b16769e8270c73",
|
||||
"/chunks/plans.js": "/chunks/plans.js?id=dd7e195bb66f245cebbd",
|
||||
"/chunks/platform.js": "/chunks/platform.js?id=f7073145d3e27be2c880",
|
||||
"/chunks/profile.js": "/chunks/profile.js?id=bd661b08717158c5af9e",
|
||||
"/chunks/purchase-code.js": "/chunks/purchase-code.js?id=333af0b6deb880990f39",
|
||||
"/chunks/settings.js": "/chunks/settings.js?id=7726657c717fa7650d10",
|
||||
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=08cc16a560d5cc9b25b7",
|
||||
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=5ef85da047b11e2f1a21",
|
||||
"/chunks/settings-password.js": "/chunks/settings-password.js?id=19b5f0850ba9d6aa049a",
|
||||
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=7cfbeae7706827cd858e",
|
||||
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=c4210c768fddec3ccf9f",
|
||||
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=a7c2580bf4280ca3c76b",
|
||||
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=d60972a2216523642850",
|
||||
"/chunks/shared.js": "/chunks/shared.js?id=e72e37ffad23a1ea2a8e",
|
||||
"/chunks/shared/authenticate.js": "/chunks/shared/authenticate.js?id=86820a408438c3513b20",
|
||||
"/chunks/shared/file-browser.js": "/chunks/shared/file-browser.js?id=74d47dd07002086ba1de",
|
||||
"/chunks/shared/single-file.js": "/chunks/shared/single-file.js?id=03fb36b0d38a3218221f",
|
||||
"/chunks/sign-in.js": "/chunks/sign-in.js?id=6a401ac37ac49a729e04",
|
||||
"/chunks/sign-up.js": "/chunks/sign-up.js?id=f26bca8e48b5cfb69f30",
|
||||
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=cd44b6cf8631f690a75d",
|
||||
"/chunks/subscription-plans.js": "/chunks/subscription-plans.js?id=4cdc01a909e277284b1d",
|
||||
"/chunks/subscription-service.js": "/chunks/subscription-service.js?id=418145ac6ba4a4ba2e4a",
|
||||
"/chunks/upgrade-billing.js": "/chunks/upgrade-billing.js?id=98181a3cdcc9cc6e55c2",
|
||||
"/chunks/upgrade-plan.js": "/chunks/upgrade-plan.js?id=2eee581bb1d2586b9249",
|
||||
"/chunks/user.js": "/chunks/user.js?id=290b4b63ed5a10a5ca3c",
|
||||
"/chunks/user-create.js": "/chunks/user-create.js?id=2bfca881534622e3aa5f",
|
||||
"/chunks/user-delete.js": "/chunks/user-delete.js?id=dc708437ba1e5ebc0a0d",
|
||||
"/chunks/user-detail.js": "/chunks/user-detail.js?id=70bac25962505a1eb468",
|
||||
"/chunks/user-invoices.js": "/chunks/user-invoices.js?id=5f5cee4fbc2d5f122114",
|
||||
"/chunks/user-password.js": "/chunks/user-password.js?id=3214eb9dadcbeb1e685f",
|
||||
"/chunks/user-storage.js": "/chunks/user-storage.js?id=bfecceeadc0a2a0faf64",
|
||||
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=724f2551c1945e1071e2",
|
||||
"/chunks/users.js": "/chunks/users.js?id=bb902543025cdf7a79f2"
|
||||
"/js/main.js": "/js/main.js",
|
||||
"/css/app.css": "/css/app.css",
|
||||
"/chunks/admin.js": "/chunks/admin.js?id=db23a3d539fec4b03c65",
|
||||
"/chunks/admin-account.js": "/chunks/admin-account.js?id=ca3bdda58d0bb26a896c",
|
||||
"/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~c7a13fb0.js": "/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~c7a13fb0.js?id=789a8508d6219be0904d",
|
||||
"/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~cf616679.js": "/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~cf616679.js?id=bf8c299c1121b1370723",
|
||||
"/chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/~eeab5771.js": "/chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/~eeab5771.js?id=1d83683f5afa0abb114d",
|
||||
"/chunks/admin~chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser.js": "/chunks/admin~chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser.js?id=e1f223fd5412173ed827",
|
||||
"/chunks/admin~chunks/files~chunks/settings~chunks/shared/file-browser.js": "/chunks/admin~chunks/files~chunks/settings~chunks/shared/file-browser.js?id=2647d05d2a105cac3f0f",
|
||||
"/chunks/admin~chunks/platform.js": "/chunks/admin~chunks/platform.js?id=ae0bb7e684c857693aa8",
|
||||
"/chunks/admin~chunks/platform~chunks/shared.js": "/chunks/admin~chunks/platform~chunks/shared.js?id=ea0cb4ec8487af4776eb",
|
||||
"/chunks/app-appearance.js": "/chunks/app-appearance.js?id=3b66bd631241fe5466ed",
|
||||
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~605f4c49.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~605f4c49.js?id=69d6fefe404b9ec4f0de",
|
||||
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~8cc7d96f.js?id=07a6859a69c14d4bc289",
|
||||
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~b9e5655a.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~b9e5655a.js?id=b8f2628bc5946089d58a",
|
||||
"/chunks/app-billings.js": "/chunks/app-billings.js?id=8db305db2a42878cb243",
|
||||
"/chunks/app-email.js": "/chunks/app-email.js?id=21f1982949085b513cd4",
|
||||
"/chunks/app-index.js": "/chunks/app-index.js?id=ed459a1ea3fa89d3de30",
|
||||
"/chunks/app-language.js": "/chunks/app-language.js?id=3e30d578c3d751351eb9",
|
||||
"/chunks/app-language~chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pag~824d674f.js": "/chunks/app-language~chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pag~824d674f.js?id=53e545b823ce2e687b31",
|
||||
"/chunks/app-language~chunks/dashboard~chunks/files~chunks/invoices~chunks/pages~chunks/plans~chunks/s~934b6779.js": "/chunks/app-language~chunks/dashboard~chunks/files~chunks/invoices~chunks/pages~chunks/plans~chunks/s~934b6779.js?id=e3df08bfa100e0216a95",
|
||||
"/chunks/app-others.js": "/chunks/app-others.js?id=dfca041b0f77f19baa1e",
|
||||
"/chunks/app-payments.js": "/chunks/app-payments.js?id=54d9bf8fc371179f295b",
|
||||
"/chunks/app-settings.js": "/chunks/app-settings.js?id=7036abc45d63af4fe972",
|
||||
"/chunks/app-setup.js": "/chunks/app-setup.js?id=94f462aaa7a7e7dcd03d",
|
||||
"/chunks/billings-detail.js": "/chunks/billings-detail.js?id=d25da896180b673d0ff1",
|
||||
"/chunks/contact-us.js": "/chunks/contact-us.js?id=f317578eda4c05b98d7f",
|
||||
"/chunks/contact-us~chunks/dynamic-page~chunks/homepage.js": "/chunks/contact-us~chunks/dynamic-page~chunks/homepage.js?id=023e6b0ad58fa1dc5bc6",
|
||||
"/chunks/create-new-password.js": "/chunks/create-new-password.js?id=86c558e2cb256bda86c3",
|
||||
"/chunks/dashboard.js": "/chunks/dashboard.js?id=e2a93e2ceb83cab77b77",
|
||||
"/chunks/dashboard~chunks/invoices~chunks/pages~chunks/plan-subscribers~chunks/plans~chunks/settings-i~0e2a0654.js": "/chunks/dashboard~chunks/invoices~chunks/pages~chunks/plan-subscribers~chunks/plans~chunks/settings-i~0e2a0654.js?id=8e86179595c935837731",
|
||||
"/chunks/database.js": "/chunks/database.js?id=b86430381b515d8d220a",
|
||||
"/chunks/dynamic-page.js": "/chunks/dynamic-page.js?id=2167671fe3099f75ecfe",
|
||||
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=9c1986d846fdd73bb872",
|
||||
"/chunks/files.js": "/chunks/files.js?id=b852156f00c07bcd55aa",
|
||||
"/chunks/files~chunks/platform~chunks/shared/file-browser.js": "/chunks/files~chunks/platform~chunks/shared/file-browser.js?id=c1af7637432594f4a242",
|
||||
"/chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser.js": "/chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser.js?id=e5133c50af3101591521",
|
||||
"/chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser~chunks/shared/single-file.js": "/chunks/files~chunks/platform~chunks/shared~chunks/shared/file-browser~chunks/shared/single-file.js?id=39824e4246c795c46ed9",
|
||||
"/chunks/files~chunks/settings-subscription~chunks/shared/file-browser~chunks/user-subscription.js": "/chunks/files~chunks/settings-subscription~chunks/shared/file-browser~chunks/user-subscription.js?id=fdeb2974fe93fe48a7c0",
|
||||
"/chunks/files~chunks/shared/file-browser.js": "/chunks/files~chunks/shared/file-browser.js?id=f5af41b5b9e225c52b23",
|
||||
"/chunks/files~chunks/shared/file-browser~chunks/shared/single-file.js": "/chunks/files~chunks/shared/file-browser~chunks/shared/single-file.js?id=59ac7980d3f5884ac0d3",
|
||||
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=ebcbbc0115c1589dcca5",
|
||||
"/chunks/homepage.js": "/chunks/homepage.js?id=b62a9ad724d34bcbc44d",
|
||||
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=63a8701083fa67e7c689",
|
||||
"/chunks/invoices.js": "/chunks/invoices.js?id=b1ba41c331f013837e2d",
|
||||
"/chunks/not-found.js": "/chunks/not-found.js?id=e795bd0f98216a25dc06",
|
||||
"/chunks/page-edit.js": "/chunks/page-edit.js?id=88b6d026ec4d3794aa1a",
|
||||
"/chunks/pages.js": "/chunks/pages.js?id=2373f18eb236bf6775fa",
|
||||
"/chunks/plan.js": "/chunks/plan.js?id=fd5882a90b4705a172f2",
|
||||
"/chunks/plan-create.js": "/chunks/plan-create.js?id=47c71e0ae08db8d11c52",
|
||||
"/chunks/plan-delete.js": "/chunks/plan-delete.js?id=0e8ea332703dcae2fbdd",
|
||||
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=2b856bf8204afcea4078",
|
||||
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=bc757f00e838ebeddad0",
|
||||
"/chunks/plans.js": "/chunks/plans.js?id=36ebc380b6e7773a04ff",
|
||||
"/chunks/platform.js": "/chunks/platform.js?id=5a0101097d87433a7986",
|
||||
"/chunks/platform~chunks/shared.js": "/chunks/platform~chunks/shared.js?id=2224a6de276a2edc346b",
|
||||
"/chunks/profile.js": "/chunks/profile.js?id=20236b41dd811bfd492c",
|
||||
"/chunks/profile~chunks/settings-password.js": "/chunks/profile~chunks/settings-password.js?id=f532862b4c362de67360",
|
||||
"/chunks/purchase-code.js": "/chunks/purchase-code.js?id=f708db10063dd6c0a864",
|
||||
"/chunks/settings.js": "/chunks/settings.js?id=f3273efbf6b6d723b8ea",
|
||||
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=aa81750b0d9e206d5ee9",
|
||||
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=3810f765b5305c2ce25c",
|
||||
"/chunks/settings-password.js": "/chunks/settings-password.js?id=6a2aa5bcfa99fde75a77",
|
||||
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=c3c536eec45ffbbc77f4",
|
||||
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=ee860273cc027ffa83c1",
|
||||
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=d15d2096bcf308b21a50",
|
||||
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=d90814559910a424902d",
|
||||
"/chunks/shared.js": "/chunks/shared.js?id=de5b7595a352f2614b55",
|
||||
"/chunks/shared/authenticate.js": "/chunks/shared/authenticate.js?id=238c362399a4018549bd",
|
||||
"/chunks/shared/file-browser.js": "/chunks/shared/file-browser.js?id=d630c473dc6b751ec50f",
|
||||
"/chunks/shared/single-file.js": "/chunks/shared/single-file.js?id=040a7241ea133456200c",
|
||||
"/chunks/sign-in.js": "/chunks/sign-in.js?id=b2e97fd8b52b40b8c4af",
|
||||
"/chunks/sign-up.js": "/chunks/sign-up.js?id=f5634301e476029d6fa1",
|
||||
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=20721ca146c27a67bccd",
|
||||
"/chunks/subscription-plans.js": "/chunks/subscription-plans.js?id=d21cbdb1cee9197323c3",
|
||||
"/chunks/subscription-service.js": "/chunks/subscription-service.js?id=de43eac3b1627e00424d",
|
||||
"/chunks/upgrade-billing.js": "/chunks/upgrade-billing.js?id=114cd615807f23990197",
|
||||
"/chunks/upgrade-billing~chunks/upgrade-plan.js": "/chunks/upgrade-billing~chunks/upgrade-plan.js?id=75510b0f500e49b263d1",
|
||||
"/chunks/upgrade-plan.js": "/chunks/upgrade-plan.js?id=e75ca6ec0b01b9bead51",
|
||||
"/chunks/user.js": "/chunks/user.js?id=a73470995a4ae3fd2881",
|
||||
"/chunks/user-create.js": "/chunks/user-create.js?id=b051dfa4977253898319",
|
||||
"/chunks/user-delete.js": "/chunks/user-delete.js?id=a0782d05787effe95383",
|
||||
"/chunks/user-detail.js": "/chunks/user-detail.js?id=ff37a70a549fccc51dfc",
|
||||
"/chunks/user-invoices.js": "/chunks/user-invoices.js?id=fb09652ecb27af5f3b10",
|
||||
"/chunks/user-password.js": "/chunks/user-password.js?id=c6b39bbd4e2cf6175864",
|
||||
"/chunks/user-storage.js": "/chunks/user-storage.js?id=bef79e67371f255f883e",
|
||||
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=c64145dfa85586f564b0",
|
||||
"/chunks/users.js": "/chunks/users.js?id=0652fa00a2b955a7c591",
|
||||
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~2fac28cc.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~2fac28cc.js?id=57c854adb91ed9a9d088",
|
||||
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~d5e36d91.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~d5e36d91.js?id=170765b4fd923b62195c",
|
||||
"/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=ca01bfe1656f58710763",
|
||||
"/vendors~chunks/platform~chunks/shared.js": "/vendors~chunks/platform~chunks/shared.js?id=eb141834bc24b72d8e92",
|
||||
"/chunks/sign-in.8944159873fb3ac13fef.hot-update.js": "/chunks/sign-in.8944159873fb3ac13fef.hot-update.js",
|
||||
"/chunks/sign-in.75cb3d2cf12e3f45d175.hot-update.js": "/chunks/sign-in.75cb3d2cf12e3f45d175.hot-update.js",
|
||||
"/chunks/sign-in.729bff4dd920e0f1f41a.hot-update.js": "/chunks/sign-in.729bff4dd920e0f1f41a.hot-update.js",
|
||||
"/chunks/sign-in.90669c169f16b57043eb.hot-update.js": "/chunks/sign-in.90669c169f16b57043eb.hot-update.js",
|
||||
"/chunks/sign-in.50b9315adc692de91e6e.hot-update.js": "/chunks/sign-in.50b9315adc692de91e6e.hot-update.js",
|
||||
"/chunks/sign-in.715ff1e6dcdaa4910de3.hot-update.js": "/chunks/sign-in.715ff1e6dcdaa4910de3.hot-update.js",
|
||||
"/chunks/sign-in.8a6a097ff7b48e093939.hot-update.js": "/chunks/sign-in.8a6a097ff7b48e093939.hot-update.js",
|
||||
"/chunks/sign-in.46d30c932b3d8d9dbd95.hot-update.js": "/chunks/sign-in.46d30c932b3d8d9dbd95.hot-update.js",
|
||||
"/chunks/sign-in.a59d0f701426c969641c.hot-update.js": "/chunks/sign-in.a59d0f701426c969641c.hot-update.js",
|
||||
"/chunks/sign-in.2e40826ff67c58c6ed3e.hot-update.js": "/chunks/sign-in.2e40826ff67c58c6ed3e.hot-update.js",
|
||||
"/chunks/sign-in.84c5dfa58c23e943e8de.hot-update.js": "/chunks/sign-in.84c5dfa58c23e943e8de.hot-update.js",
|
||||
"/chunks/sign-in.7c45a9da1a784ba0fb28.hot-update.js": "/chunks/sign-in.7c45a9da1a784ba0fb28.hot-update.js",
|
||||
"/chunks/sign-in.277ba1e57ae1b9532188.hot-update.js": "/chunks/sign-in.277ba1e57ae1b9532188.hot-update.js",
|
||||
"/chunks/sign-in.a2a4c8724323f35fe2fc.hot-update.js": "/chunks/sign-in.a2a4c8724323f35fe2fc.hot-update.js",
|
||||
"/chunks/sign-in.1ae99812bef1c257f111.hot-update.js": "/chunks/sign-in.1ae99812bef1c257f111.hot-update.js",
|
||||
"/chunks/sign-in.fcb40ce9e15b9da70236.hot-update.js": "/chunks/sign-in.fcb40ce9e15b9da70236.hot-update.js",
|
||||
"/chunks/sign-in.dedc702a2543a419472a.hot-update.js": "/chunks/sign-in.dedc702a2543a419472a.hot-update.js",
|
||||
"/chunks/sign-in.d107b8c7fd8cd66a8c82.hot-update.js": "/chunks/sign-in.d107b8c7fd8cd66a8c82.hot-update.js",
|
||||
"/chunks/sign-in.4f7552d8551ef72b0d2a.hot-update.js": "/chunks/sign-in.4f7552d8551ef72b0d2a.hot-update.js",
|
||||
"/chunks/sign-in.38379efb36005d0c04b0.hot-update.js": "/chunks/sign-in.38379efb36005d0c04b0.hot-update.js",
|
||||
"/chunks/sign-in.10ccd5e13b40458a9922.hot-update.js": "/chunks/sign-in.10ccd5e13b40458a9922.hot-update.js",
|
||||
"/chunks/sign-in.ad5a33847ca334061269.hot-update.js": "/chunks/sign-in.ad5a33847ca334061269.hot-update.js",
|
||||
"/chunks/sign-in.8145c52ffe519bd17d37.hot-update.js": "/chunks/sign-in.8145c52ffe519bd17d37.hot-update.js",
|
||||
"/chunks/sign-in.0ee1b8ac9013dccd4ec9.hot-update.js": "/chunks/sign-in.0ee1b8ac9013dccd4ec9.hot-update.js",
|
||||
"/chunks/sign-in.4eb230d53fde24d16747.hot-update.js": "/chunks/sign-in.4eb230d53fde24d16747.hot-update.js",
|
||||
"/chunks/sign-in.f1970e090d9245380a59.hot-update.js": "/chunks/sign-in.f1970e090d9245380a59.hot-update.js",
|
||||
"/chunks/sign-in.3464c74313f726061ba7.hot-update.js": "/chunks/sign-in.3464c74313f726061ba7.hot-update.js",
|
||||
"/chunks/sign-in.c73835f25ea1f5db1e92.hot-update.js": "/chunks/sign-in.c73835f25ea1f5db1e92.hot-update.js",
|
||||
"/chunks/sign-in.18b3afbd7f399ccd92c4.hot-update.js": "/chunks/sign-in.18b3afbd7f399ccd92c4.hot-update.js",
|
||||
"/chunks/sign-in.78bc71b296288b1cfc7b.hot-update.js": "/chunks/sign-in.78bc71b296288b1cfc7b.hot-update.js",
|
||||
"/chunks/sign-in.c1dfe680eb1d42852c82.hot-update.js": "/chunks/sign-in.c1dfe680eb1d42852c82.hot-update.js",
|
||||
"/chunks/sign-in.4ff61daab837f57cd09e.hot-update.js": "/chunks/sign-in.4ff61daab837f57cd09e.hot-update.js",
|
||||
"/chunks/sign-in.40b44068090a59d03897.hot-update.js": "/chunks/sign-in.40b44068090a59d03897.hot-update.js",
|
||||
"/chunks/sign-in.39496c19f36fda3d8e7b.hot-update.js": "/chunks/sign-in.39496c19f36fda3d8e7b.hot-update.js",
|
||||
"/chunks/sign-in.23b65a3918af564ccfb7.hot-update.js": "/chunks/sign-in.23b65a3918af564ccfb7.hot-update.js"
|
||||
}
|
||||
|
||||
@@ -61,6 +61,72 @@
|
||||
</router-link>
|
||||
</span>
|
||||
</AuthContent>
|
||||
|
||||
<!-- Log in by 2fa -->
|
||||
<AuthContent name="two-factor-authentication" :visible="false">
|
||||
|
||||
<div class="user" v-if="checkedAccount">
|
||||
<img class="user-avatar" :src="checkedAccount.avatar" :alt="checkedAccount.name">
|
||||
<h1> Welcome {{ checkedAccount.name }} </h1>
|
||||
<h2> Confirm you by 2FA code :</h2>
|
||||
</div>
|
||||
|
||||
<ValidationObserver ref="two_factor_authentication" v-slot="{ invalid }" tag="form"
|
||||
class="form inline-form">
|
||||
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="Two Factor Authentication" rules="required"
|
||||
v-slot="{ errors }">
|
||||
<input v-model="twoFactorCode" placeholder="Type your 2FA code"
|
||||
@input="twoFactorChallenge(false)"
|
||||
type="text"
|
||||
maxlength="6"
|
||||
class="focus-border-theme"
|
||||
:class="{'is-error': errors[0]}" />
|
||||
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
|
||||
</ValidationProvider>
|
||||
|
||||
</ValidationObserver>
|
||||
|
||||
<span class="additional-link"> You don't know your 2fa code?
|
||||
<a @click="goToAuthPage('two-factor-recovery')" class="text-theme">
|
||||
Use recovery code.
|
||||
</a>
|
||||
</span>
|
||||
|
||||
<div class="spinner-wrapper">
|
||||
<Spinner v-if="isLoading" class="spinner"/>
|
||||
</div>
|
||||
|
||||
</AuthContent>
|
||||
|
||||
<!-- Log in by 2fa recovery code -->
|
||||
<AuthContent name="two-factor-recovery" :visible="false">
|
||||
|
||||
<div class="user" v-if="checkedAccount">
|
||||
<img class="user-avatar" :src="checkedAccount.avatar" :alt="checkedAccount.name">
|
||||
<h1> Welcome {{ checkedAccount.name }} </h1>
|
||||
<h2> Confirm you by 2FA code :</h2>
|
||||
</div>
|
||||
|
||||
<ValidationObserver ref="two_factor_recovery" v-slot="{ invalid }" tag="form"
|
||||
class="form inline-form">
|
||||
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="Two Factor Recovery" rules="required"
|
||||
v-slot="{ errors }">
|
||||
<input v-model="twoFactorRecoveryCode" placeholder="Type your recovery code"
|
||||
@input="twoFactorChallenge(true)"
|
||||
type="text"
|
||||
maxlength="21"
|
||||
class="focus-border-theme"
|
||||
:class="{'is-error': errors[0]}" />
|
||||
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
|
||||
</ValidationProvider>
|
||||
|
||||
</ValidationObserver>
|
||||
|
||||
<div class="spinner-wrapper">
|
||||
<Spinner v-if="isLoading" class="spinner"/>
|
||||
</div>
|
||||
|
||||
</AuthContent>
|
||||
</AuthContentWrapper>
|
||||
</template>
|
||||
|
||||
@@ -69,6 +135,7 @@
|
||||
import {ValidationProvider, ValidationObserver} from 'vee-validate/dist/vee-validate.full'
|
||||
import AuthContent from '@/components/Auth/AuthContent'
|
||||
import AuthButton from '@/components/Auth/AuthButton'
|
||||
import Spinner from '@/components/FilesView/Spinner'
|
||||
import {required} from 'vee-validate/dist/rules'
|
||||
import {mapGetters} from 'vuex'
|
||||
import {events} from "@/bus"
|
||||
@@ -83,6 +150,7 @@
|
||||
AuthContent,
|
||||
AuthButton,
|
||||
required,
|
||||
Spinner,
|
||||
},
|
||||
computed: {
|
||||
...mapGetters(['config']),
|
||||
@@ -93,6 +161,8 @@
|
||||
checkedAccount: undefined,
|
||||
loginPassword: '',
|
||||
loginEmail: '',
|
||||
twoFactorCode: '',
|
||||
twoFactorRecoveryCode: '',
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@@ -173,16 +243,22 @@
|
||||
email: this.loginEmail,
|
||||
password: this.loginPassword,
|
||||
})
|
||||
.then(() => {
|
||||
.then((response) => {
|
||||
|
||||
// End loading
|
||||
this.isLoading = false
|
||||
|
||||
// Set login state
|
||||
this.$store.commit('SET_AUTHORIZED', true)
|
||||
if(response.data.two_factor) {
|
||||
|
||||
// Go to files page
|
||||
this.$router.push({name: 'Files'})
|
||||
this.goToAuthPage('two-factor-authentication')
|
||||
} else {
|
||||
|
||||
// Set login state
|
||||
this.$store.commit('SET_AUTHORIZED', true)
|
||||
|
||||
// Go to files page
|
||||
this.$router.push({name: 'Files'})
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
|
||||
@@ -197,6 +273,54 @@
|
||||
this.isLoading = false
|
||||
})
|
||||
},
|
||||
async twoFactorChallenge(recovery) {
|
||||
|
||||
// Check if is normal authentication or recovery
|
||||
if( !recovery && this.twoFactorCode.length === 6 || recovery && this.twoFactorRecoveryCode.length === 21) {
|
||||
|
||||
this.isLoading = true
|
||||
|
||||
axios.
|
||||
post('/two-factor-challenge', {
|
||||
...(!recovery && {code: this.twoFactorCode}),
|
||||
...(recovery && { recovery_code: this.twoFactorRecoveryCode})
|
||||
})
|
||||
.then(() => {
|
||||
|
||||
this.isLoading = false
|
||||
|
||||
// Set login state
|
||||
this.$store.commit('SET_AUTHORIZED', true)
|
||||
|
||||
// Go to files page
|
||||
this.$router.push({name: 'Files'})
|
||||
})
|
||||
.catch(error => {
|
||||
|
||||
if (error.response.status == 422) {
|
||||
|
||||
//Authentication bad input
|
||||
if(! recovery) {
|
||||
|
||||
this.$refs.two_factor_authentication.setErrors({
|
||||
'Two Factor Authentication' : 'Incorrect code'
|
||||
})
|
||||
}
|
||||
|
||||
// Recovery bad input
|
||||
if(recovery) {
|
||||
|
||||
this.$refs.two_factor_recovery.setErrors({
|
||||
'Two Factor Recovery' : 'Incorrect recovery code'
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
this.isLoading = false
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.$scrollTop()
|
||||
@@ -213,4 +337,11 @@
|
||||
<style scoped lang="scss">
|
||||
@import '@assets/vuefilemanager/_auth-form';
|
||||
@import '@assets/vuefilemanager/_auth';
|
||||
|
||||
.spinner-wrapper {
|
||||
width: 100%;
|
||||
height: 50px;
|
||||
position: relative;
|
||||
top: 50px;
|
||||
}
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user