upload-limit v0.1

This commit is contained in:
Milos Holba
2020-11-04 12:48:15 +01:00
parent e5335c2472
commit 587daa5ffe
9 changed files with 169 additions and 74 deletions

View File

@@ -251,9 +251,15 @@ class Editor
$disk_file_name = basename('chunks/' . $file->getClientOriginalName(), '.part');
$temp_filename = $file->getClientOriginalName();
//File Path
$file_path = config('filesystems.disks.local.root') . '/chunks/' . $temp_filename;
// Generate file
File::append(config('filesystems.disks.local.root') . '/chunks/' . $temp_filename, $file->get());
File::append($file_path, $file->get());
//Size of file
$file_size = File::size($file_path);
//File size handling
if($file_size > get_setting('upload_limit') * 1000000) abort(413);
// If last then process file
if ($request->boolean('is_last')) {

View File

@@ -1,66 +1,102 @@
{
"/chunks/files~chunks/shared-files~chunks/shared-page~chunks/trash.js": "/chunks/files~chunks/shared-files~chunks/shared-page~chunks/trash.js?id=b2c33d183697d06adb8d",
"/js/main.js": "/js/main.js?id=939ce82189c86f19db73",
"/css/app.css": "/css/app.css?id=dbf49843b327d3936c06",
"/chunks/admin.js": "/chunks/admin.js?id=bd7dce5ddfbb8ebeb7a8",
"/chunks/admin-account.js": "/chunks/admin-account.js?id=ed4d3b5d0e9da3b70862",
"/chunks/app-appearance.js": "/chunks/app-appearance.js?id=046065efc4a67ad8587f",
"/chunks/app-billings.js": "/chunks/app-billings.js?id=0d1e25be91f67ffab63f",
"/chunks/app-email.js": "/chunks/app-email.js?id=b7a3bca09764ae780d6c",
"/chunks/app-index.js": "/chunks/app-index.js?id=e1544ff1341ca6416bab",
"/chunks/app-others.js": "/chunks/app-others.js?id=aa5b12609a66adf1d918",
"/chunks/app-payments.js": "/chunks/app-payments.js?id=a1a84878ec6f645946f5",
"/chunks/app-settings.js": "/chunks/app-settings.js?id=424c67c7d7f6b9109a99",
"/chunks/app-setup.js": "/chunks/app-setup.js?id=3ac1935129bff281257d",
"/chunks/billings-detail.js": "/chunks/billings-detail.js?id=e6434e402adec1cf8ba1",
"/chunks/contact-us.js": "/chunks/contact-us.js?id=fa10e7582a311ab12c1f",
"/chunks/create-new-password.js": "/chunks/create-new-password.js?id=b33f6ac5e174f51a443b",
"/chunks/dashboard.js": "/chunks/dashboard.js?id=a61fe2622dca51ca1396",
"/chunks/database.js": "/chunks/database.js?id=ac688c888342c5cf4c53",
"/chunks/dynamic-page.js": "/chunks/dynamic-page.js?id=08a0c2de8f93e0222600",
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=fb825f5ace1deeac3509",
"/chunks/files.js": "/chunks/files.js?id=bc21124b8956b99ab01f",
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=9a8acda895c0c40ea30b",
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=59450c310fb5af95b9a1",
"/chunks/invoices.js": "/chunks/invoices.js?id=6dd9f68419f741465844",
"/chunks/landing-page.js": "/chunks/landing-page.js?id=4dbec1937d1f5b71d17d",
"/chunks/not-found-shared.js": "/chunks/not-found-shared.js?id=af1fa088daae3fe7a3a8",
"/chunks/page-edit.js": "/chunks/page-edit.js?id=30e6227554f2f26e0419",
"/chunks/pages.js": "/chunks/pages.js?id=8dc613c3a82637e99dc2",
"/chunks/plan.js": "/chunks/plan.js?id=6de54ce130dd2766f4c6",
"/chunks/plan-create.js": "/chunks/plan-create.js?id=efaeb3ebdf30ba62c613",
"/chunks/plan-delete.js": "/chunks/plan-delete.js?id=93b6dfdf61caa4335a7c",
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=d1457670c217e13e97f9",
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=fba30dc476ddcd0c4b22",
"/chunks/plans.js": "/chunks/plans.js?id=f03834c110c677b6db0d",
"/chunks/profile.js": "/chunks/profile.js?id=23e34e6d7d73abcf317d",
"/chunks/purchase-code.js": "/chunks/purchase-code.js?id=f74384a387ce82e7751f",
"/chunks/settings.js": "/chunks/settings.js?id=a3b1c88c6b6af9b6308c",
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=543b594932039ef2b061",
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=b26452dbf79dcc6e2787",
"/chunks/settings-password.js": "/chunks/settings-password.js?id=919f57ae52204ea5ee54",
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=4cb65919f0627c8f9db1",
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=1a45b3cee17b17a7598d",
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=34e34dcb29cb84ab53bf",
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=47090233afc7b0cdf855",
"/chunks/shared-files.js": "/chunks/shared-files.js?id=bb6943a620f520324003",
"/chunks/shared-page.js": "/chunks/shared-page.js?id=2414f43c0129d239b907",
"/chunks/sign-in.js": "/chunks/sign-in.js?id=a0e2b7e58484e778848b",
"/chunks/sign-up.js": "/chunks/sign-up.js?id=774e43bc25ae4e3893a2",
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=e3639ebc187c3e568a20",
"/chunks/subscription-plans.js": "/chunks/subscription-plans.js?id=24f8053a0d89684699ad",
"/chunks/subscription-service.js": "/chunks/subscription-service.js?id=e0c770e988a664a18f76",
"/chunks/trash.js": "/chunks/trash.js?id=1ee3dde0c9d1a700c7f2",
"/chunks/upgrade.js": "/chunks/upgrade.js?id=77386550d2ac446e4ac1",
"/chunks/upgrade-billing.js": "/chunks/upgrade-billing.js?id=8bc53a77111144319a0d",
"/chunks/upgrade-plan.js": "/chunks/upgrade-plan.js?id=06718f96dbec2820c6fc",
"/chunks/user.js": "/chunks/user.js?id=7af75cb8c2c899fec9d5",
"/chunks/user-create.js": "/chunks/user-create.js?id=8483ffcbd12c68856186",
"/chunks/user-delete.js": "/chunks/user-delete.js?id=406c10bd53f7d33d85a7",
"/chunks/user-detail.js": "/chunks/user-detail.js?id=32f97c1bd9d9137ba5f0",
"/chunks/user-invoices.js": "/chunks/user-invoices.js?id=cfef95004b9346be2c3e",
"/chunks/user-password.js": "/chunks/user-password.js?id=227291c743ecc58681a5",
"/chunks/user-storage.js": "/chunks/user-storage.js?id=2592e0d43a710c5b197f",
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=93f76f47f1f8c8c9425d",
"/chunks/users.js": "/chunks/users.js?id=960ae7b595d7b5d9394b"
"/js/main.js": "/js/main.js",
"/css/app.css": "/css/app.css",
"/chunks/admin.js": "/chunks/admin.js?id=16d6432e9a5122f06bc1",
"/chunks/admin-account.js": "/chunks/admin-account.js?id=d6a0e09f9c1124d0e95b",
"/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~2d9ff916.js": "/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~2d9ff916.js?id=f3069a222eca5dd0270e",
"/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~3b77a26e.js": "/chunks/admin-account~chunks/app-setup~chunks/billings-detail~chunks/create-new-password~chunks/datab~3b77a26e.js?id=77bca29833216da797df",
"/chunks/admin~chunks/files~chunks/settings~chunks/shared-files~chunks/trash.js": "/chunks/admin~chunks/files~chunks/settings~chunks/shared-files~chunks/trash.js?id=4b2aa345198e20c36733",
"/chunks/app-appearance.js": "/chunks/app-appearance.js?id=592d97039a1bbd16df80",
"/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=764ee2f54c93ebf508f2",
"/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=f96dc1a0da58b6c0831f",
"/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=484b015de14dc4d7d07e",
"/chunks/app-billings.js": "/chunks/app-billings.js?id=56dbf797866f9127c903",
"/chunks/app-email.js": "/chunks/app-email.js?id=37d70468d3ede6a2d5c0",
"/chunks/app-index.js": "/chunks/app-index.js?id=93085b19900c2dfedad7",
"/chunks/app-others.js": "/chunks/app-others.js?id=96f544cf246b7c83798e",
"/chunks/app-payments.js": "/chunks/app-payments.js?id=58a7319b7ec435ba7905",
"/chunks/app-settings.js": "/chunks/app-settings.js?id=be61c2db5a777bc9564c",
"/chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pages~chunks/plan~chunk~8a0e1d25.js": "/chunks/app-settings~chunks/dashboard~chunks/invoices~chunks/page-edit~chunks/pages~chunks/plan~chunk~8a0e1d25.js?id=d453042783979afa9e8d",
"/chunks/app-setup.js": "/chunks/app-setup.js?id=e4595e91c026d18927e9",
"/chunks/billings-detail.js": "/chunks/billings-detail.js?id=f9b824ca07091c2187aa",
"/chunks/contact-us.js": "/chunks/contact-us.js?id=11a9f28eaf6c9bab655d",
"/chunks/contact-us~chunks/dynamic-page~chunks/landing-page.js": "/chunks/contact-us~chunks/dynamic-page~chunks/landing-page.js?id=1676f9a1ac9602026b2d",
"/chunks/create-new-password.js": "/chunks/create-new-password.js?id=b803bda9c2efa524336e",
"/chunks/dashboard.js": "/chunks/dashboard.js?id=df10b61625ff1634b8ea",
"/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=17649685610016a8501c",
"/chunks/database.js": "/chunks/database.js?id=5bf7fc8614772da0cada",
"/chunks/dynamic-page.js": "/chunks/dynamic-page.js?id=80fe4ed4501414037387",
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=72998371a634f818fdfd",
"/chunks/files.js": "/chunks/files.js?id=3b608964757ef9dda7c6",
"/chunks/files~chunks/settings-subscription~chunks/shared-files~chunks/shared-page~chunks/trash~chunks~3ea7670b.js": "/chunks/files~chunks/settings-subscription~chunks/shared-files~chunks/shared-page~chunks/trash~chunks~3ea7670b.js?id=93090f58b637eeb86ded",
"/chunks/files~chunks/shared-files~chunks/shared-page~chunks/trash.js": "/chunks/files~chunks/shared-files~chunks/shared-page~chunks/trash.js?id=8972c9075ea16ab0013e",
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=f78ef9c665238797e92a",
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=4fb27bef1f7595b94047",
"/chunks/invoices.js": "/chunks/invoices.js?id=95740d62a1ed253ef2ff",
"/chunks/landing-page.js": "/chunks/landing-page.js?id=9d0143a75b260733a95b",
"/chunks/not-found-shared.js": "/chunks/not-found-shared.js?id=f108b84833dbdcc4a0a1",
"/chunks/page-edit.js": "/chunks/page-edit.js?id=d048988f094763896f23",
"/chunks/pages.js": "/chunks/pages.js?id=982c94f46a1e931cd8f7",
"/chunks/plan.js": "/chunks/plan.js?id=6c60686496e9a0d96e55",
"/chunks/plan-create.js": "/chunks/plan-create.js?id=37f649fd35f8694e789e",
"/chunks/plan-delete.js": "/chunks/plan-delete.js?id=826ce0b3d11a75829ea2",
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=713906a8ef4e03a33ff0",
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=42d3dd48dfda0d4e6278",
"/chunks/plans.js": "/chunks/plans.js?id=4fabc44f63ad4ddabedb",
"/chunks/profile.js": "/chunks/profile.js?id=0490d3980377f3ba4b81",
"/chunks/profile~chunks/settings-password.js": "/chunks/profile~chunks/settings-password.js?id=b4ce31d48aed294bb1a3",
"/chunks/purchase-code.js": "/chunks/purchase-code.js?id=18f721619181c56cf5e9",
"/chunks/settings.js": "/chunks/settings.js?id=de3822cf8dae469fae99",
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=e9ee54062a8ca38c2b33",
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=1fc098872c98559521df",
"/chunks/settings-password.js": "/chunks/settings-password.js?id=98c11b2ba7f2c8db3920",
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=d936d92ceffa336dea5e",
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=de2b4e704b8dac7325c0",
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=f9b950116e40f4d368db",
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=566d3b75aa7be8b55c46",
"/chunks/shared-files.js": "/chunks/shared-files.js?id=65524b12f56ec717d06a",
"/chunks/shared-page.js": "/chunks/shared-page.js?id=03fb9ac34058853cb252",
"/chunks/sign-in.js": "/chunks/sign-in.js?id=699b1e6c46292afa065e",
"/chunks/sign-up.js": "/chunks/sign-up.js?id=a1d9c6f58ca8f28a5f03",
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=c81344269cc0c768db1e",
"/chunks/subscription-plans.js": "/chunks/subscription-plans.js?id=abf25cdc7b4746716a7c",
"/chunks/subscription-service.js": "/chunks/subscription-service.js?id=f5d6cc03c0f58e26d6b7",
"/chunks/trash.js": "/chunks/trash.js?id=00b36bf2be8f9f4090c7",
"/chunks/upgrade.js": "/chunks/upgrade.js?id=c76158bf59a8f0423856",
"/chunks/upgrade-billing.js": "/chunks/upgrade-billing.js?id=90a5109adcc087430775",
"/chunks/upgrade-billing~chunks/upgrade-plan.js": "/chunks/upgrade-billing~chunks/upgrade-plan.js?id=481a4ddb0c6d0f9de447",
"/chunks/upgrade-plan.js": "/chunks/upgrade-plan.js?id=cb7ec4c31c0b6d4534ec",
"/chunks/user.js": "/chunks/user.js?id=a32165809363978b63bc",
"/chunks/user-create.js": "/chunks/user-create.js?id=1818be930822a1b4476d",
"/chunks/user-delete.js": "/chunks/user-delete.js?id=c4029ce89944bd04b63f",
"/chunks/user-detail.js": "/chunks/user-detail.js?id=08c6b4ef87afe5953675",
"/chunks/user-invoices.js": "/chunks/user-invoices.js?id=78bd8d965d9e5e7c31ae",
"/chunks/user-password.js": "/chunks/user-password.js?id=4d9e46c209e88d5f47ab",
"/chunks/user-storage.js": "/chunks/user-storage.js?id=fafc88cef747e911e17b",
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=106a3b5ccd6d467ac524",
"/chunks/users.js": "/chunks/users.js?id=f213041c6b6095cd03e1",
"/js/main.6d4c9379e93b7fd722dd.hot-update.js": "/js/main.6d4c9379e93b7fd722dd.hot-update.js",
"/js/main.4b15d11dd959b8b3d2db.hot-update.js": "/js/main.4b15d11dd959b8b3d2db.hot-update.js",
"/js/main.7e232f51ea37b33d6e6e.hot-update.js": "/js/main.7e232f51ea37b33d6e6e.hot-update.js",
"/js/main.5112e48fd1fe599851a5.hot-update.js": "/js/main.5112e48fd1fe599851a5.hot-update.js",
"/js/main.0c2a451981e2dd0c1715.hot-update.js": "/js/main.0c2a451981e2dd0c1715.hot-update.js",
"/js/main.cff8a34ed097736a59e1.hot-update.js": "/js/main.cff8a34ed097736a59e1.hot-update.js",
"/js/main.0cdd771e759ea265140e.hot-update.js": "/js/main.0cdd771e759ea265140e.hot-update.js",
"/js/main.69bba4f0cf9c152cc806.hot-update.js": "/js/main.69bba4f0cf9c152cc806.hot-update.js",
"/js/main.881a819d23cee16eb6d7.hot-update.js": "/js/main.881a819d23cee16eb6d7.hot-update.js",
"/js/main.07c2afbdae54b92f6c36.hot-update.js": "/js/main.07c2afbdae54b92f6c36.hot-update.js",
"/js/main.543c3914b4cd8c8a41e7.hot-update.js": "/js/main.543c3914b4cd8c8a41e7.hot-update.js",
"/js/main.2fc14ec56633cef5c01d.hot-update.js": "/js/main.2fc14ec56633cef5c01d.hot-update.js",
"/js/main.2252386941b35f477203.hot-update.js": "/js/main.2252386941b35f477203.hot-update.js",
"/js/main.356bde86b81bb809e395.hot-update.js": "/js/main.356bde86b81bb809e395.hot-update.js",
"/js/main.d07fa64a7eca9af40986.hot-update.js": "/js/main.d07fa64a7eca9af40986.hot-update.js",
"/js/main.db2aca618459d70e657c.hot-update.js": "/js/main.db2aca618459d70e657c.hot-update.js",
"/js/main.cbb6fa78757671216c7f.hot-update.js": "/js/main.cbb6fa78757671216c7f.hot-update.js",
"/js/main.0dda53bffacab5dede99.hot-update.js": "/js/main.0dda53bffacab5dede99.hot-update.js",
"/js/main.e44b21862f6cd329bb3a.hot-update.js": "/js/main.e44b21862f6cd329bb3a.hot-update.js",
"/js/main.8a0ab76eefcf5fa29a20.hot-update.js": "/js/main.8a0ab76eefcf5fa29a20.hot-update.js",
"/js/main.785455fdc69e948b483f.hot-update.js": "/js/main.785455fdc69e948b483f.hot-update.js",
"/js/main.1c424901e55bf50e3480.hot-update.js": "/js/main.1c424901e55bf50e3480.hot-update.js",
"/js/main.0684608c5c2bee18c2b3.hot-update.js": "/js/main.0684608c5c2bee18c2b3.hot-update.js",
"/js/main.cccce713877598037388.hot-update.js": "/js/main.cccce713877598037388.hot-update.js"
}

View File

@@ -10,7 +10,7 @@ const Helpers = {
Vue.prototype.$updateText = debounce(function (route, name, value) {
let enableEmptyInput = ['mimetypes_blacklist' , 'google_analytics']
let enableEmptyInput = ['mimetypes_blacklist' , 'google_analytics' , 'upload_limit']
if (value === '' && !enableEmptyInput.includes(name)) return
@@ -148,8 +148,8 @@ const Helpers = {
if (error.response.status === 500)
isNotGeneralError = false
//Break if mimetype of file is in blacklist
if(error.response.status === 415)
//Break if mimetype of file is in blacklist or file size exceed upload limit
if(error.response.status === 415 || 413)
isNotGeneralError = false
// Show Error
@@ -177,7 +177,7 @@ const Helpers = {
if (files.length == 0) return
if (!this.$checkFileMimetype(files)) return
if (!this.$checkFileMimetype(files) || !this.$checkUploadLimit(files)) return
this.$handleUploading(files, undefined)
}
@@ -307,6 +307,27 @@ const Helpers = {
}
return validated
}
Vue.prototype.$checkUploadLimit = function (files) {
let uploadLimit = store.getters.config.uploadLimit
let validate = true
for (let i = 0 ; i<files.length; i++ ) {
if(files[i].size > uploadLimit * 1000000 ) {
validate = false
events.$emit('alert:open', {
emoji: '😬😬😬',
title: i18n.t('popup_upload_limit.title'),
message: i18n.t('popup_upload_limit.message', {uploadLimit: uploadLimit}),
})
break
}else {
validate = true
}
}
return validate
}
}
}

View File

@@ -208,6 +208,9 @@
"username_plac": "输入您的邮件用户名"
},
"others": {
"upload_limit": "Upload Limit",
"upload_limit_plac": "Type your upload limit in MB",
"upload_limit_help": "If you want make a limit of files size upload add size of you'r limit in MB",
"mimetypes_blacklist": "Mimetypes Blacklist",
"mimetypes_blacklist_plac":"Add mimetypes to Blacklist" ,
"mimetypes_blacklist_help" :"If you want to prevent upload some type of files, just add them to blacklist like this: x-php,mp3,jpeg <br/> Use a comma between each mimetype. Don't use a dot before mimetypes." ,
@@ -494,6 +497,10 @@
},
"title": "选择付款方式"
},
"popup_upload_limit": {
"title": "Oh No",
"message": "Size of your file upload exceed the upload limit ({uploadLimit} MB)"
},
"popup_mimetypes_blacklist": {
"title": "Oh no",
"message": "File of this type ({mimetype}) is not allowed to upload."

View File

@@ -210,6 +210,9 @@
"username_plac": "Type your mail username"
},
"others": {
"upload_limit": "Upload Limit",
"upload_limit_plac": "Type your upload limit in MB",
"upload_limit_help": "If you want make a limit of files size upload add size of you'r limit in MB",
"mimetypes_blacklist": "Mimetypes Blacklist",
"mimetypes_blacklist_plac":"Add mimetypes to Blacklist" ,
"mimetypes_blacklist_help" :"If you want to prevent upload some type of files, just add them to blacklist like this: x-php,mp3,jpeg <br/> Use a comma between each mimetype. Don't use a dot before mimetypes." ,
@@ -496,6 +499,10 @@
},
"title": "Choose Payment Method"
},
"popup_upload_limit": {
"title": "Oh No",
"message": "Size of your file upload exceed the upload limit ({uploadLimit} MB)"
},
"popup_mimetypes_blacklist": {
"title": "Oh No",
"message": "File of this type ({mimetype}) is not allowed to upload."

View File

@@ -210,6 +210,9 @@
"username_plac": "Zadajte svoje používateľské meno pre poštu"
},
"others": {
"upload_limit": "Limit pre velkost nahrávaného súbor",
"upload_limit_plac": "Pridajte veľkosť limitu v MB",
"upload_limit_help": "Ak chcete vytvoriť limit pre nahravane súbory pridajte veľkosť vášho limitu v MB.",
"mimetypes_blacklist": "Čierna listina mimetypov",
"mimetypes_blacklist_plac":"Pridajte mimetypy do Čiernej listiny",
"mimetypes_blacklist_help" :"Ak chcete zakázať nahrávanie niektorých typov súborov, jednoducho ich pridajte na čiernu listinu, príklad: x-php, mp3, jpeg <br/> Medzi mimetypmi použite čiarku. Nevkladajte bodku pred mimetyp." ,
@@ -496,6 +499,10 @@
},
"title": "Vyberte si metódu platby"
},
"popup_upload_limit": {
"title": "Je nám ľúto",
"message": "Veľkosť nahravaneho súboru prekročila limit pre nahravane súbory ({uploadLimit} MB)"
},
"popup_mimetypes_blacklist": {
"title": "Ospravelnujume sa",
"message": "Nieje povolené nahrávať tento typ súboru ({mimetype})."

View File

@@ -132,8 +132,8 @@ const actions = {
case 413:
events.$emit('alert:open', {
emoji: '😟😟😟',
title: i18n.t('popup_paylod_error.title'),
message: i18n.t('popup_paylod_error.message')
title: i18n.t('popup_upload_limit.title'),
message: i18n.t('popup_upload_limit.message', {uploadLimit: getters.config.uploadLimit})
})
break;
default:

View File

@@ -89,6 +89,15 @@
<small class="input-help" v-html="$t('admin_settings.others.mimetypes_blacklist_help')"></small>
</div>
<div class="block-wrapper">
<label>{{ $t('admin_settings.others.upload_limit') }}:</label>
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="Mimetypes Blacklist" v-slot="{ errors }">
<input @input="$updateText('/settings', 'upload_limit', app.uploadLimit)" v-model="app.uploadLimit" :placeholder="$t('admin_settings.others.upload_limit_plac')" type="number" :class="{'is-error': errors[0]}"/>
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
</ValidationProvider>
<small class="input-help" v-html="$t('admin_settings.others.upload_limit_help')"></small>
</div>
<FormLabel class="mt-70">
{{ $t('admin_settings.others.section_cache') }}
</FormLabel>
@@ -163,7 +172,7 @@
mounted() {
axios.get('/api/settings', {
params: {
column: 'contact_email|google_analytics|storage_default|registration|storage_limitation|mimetypes_blacklist'
column: 'contact_email|google_analytics|storage_default|registration|storage_limitation|mimetypes_blacklist|upload_limit'
}
})
.then(response => {
@@ -175,7 +184,8 @@
defaultStorage: response.data.storage_default,
userRegistration: parseInt(response.data.registration),
storageLimitation: parseInt(response.data.storage_limitation),
mimetypesBlacklist : response.data.mimetypes_blacklist
mimetypesBlacklist : response.data.mimetypes_blacklist,
uploadLimit: response.data.upload_limit
}
})
}

View File

@@ -56,6 +56,7 @@
storageDefaultSpace: {{ isset($settings->storage_default) ? $settings->storage_default : 5 }},
storageDefaultSpaceFormatted: '{{ isset($settings->storage_default) ? format_gigabytes($settings->storage_default) : format_gigabytes(5) }}',
mimetypesBlacklist: '{{ isset($settings->mimetypes_blacklist) ? $settings->mimetypes_blacklist: null}}',
uploadLimit: '{{ isset($settings->upload_limit) ? $settings->upload_limit: null}}' ,
hasAuthCookie: {{ Cookie::has('token') ? 1 : 0 }},
isSaaS: {{ isset($settings->license) && $settings->license === 'Extended' ? 1 : 0 }},