diff --git a/app/Http/Controllers/InternalApiController.php b/app/Http/Controllers/InternalApiController.php index 25a90d8fb..9cfff70ce 100644 --- a/app/Http/Controllers/InternalApiController.php +++ b/app/Http/Controllers/InternalApiController.php @@ -290,6 +290,12 @@ class InternalApiController extends Controller array_push($mimes, $m->mime); } + $mediaType = StatusController::mimeTypeCheck($mimes); + + if(in_array($mediaType, ['photo', 'video', 'photo:album']) == false) { + abort(400, __('exception.compose.invalid.album')); + } + if($place && is_array($place)) { $status->place_id = $place['id']; } @@ -317,7 +323,7 @@ class InternalApiController extends Controller $status->is_nsfw = $cw; $status->visibility = $visibility; $status->scope = $visibility; - $status->type = StatusController::mimeTypeCheck($mimes); + $status->type = $mediaType; $status->save(); NewStatusPipeline::dispatch($status); diff --git a/resources/assets/js/components/ComposeClassic.vue b/resources/assets/js/components/ComposeClassic.vue index 24f49ea8c..f86363824 100644 --- a/resources/assets/js/components/ComposeClassic.vue +++ b/resources/assets/js/components/ComposeClassic.vue @@ -453,12 +453,8 @@ export default { let data = res.data; window.location.href = data; }).catch(err => { - let res = err.response.data; - if(res.message == 'Too Many Attempts.') { - swal('You\'re posting too much!', 'We only allow 50 posts per hour or 100 per day. If you\'ve reached that limit, please try again later. If you think this is an error, please contact an administrator.', 'error'); - return; - } - swal('Oops, something went wrong!', 'An unexpected error occurred.', 'error'); + let msg = err.response.data.message ? err.response.data.message : 'An unexpected error occured.' + swal('Oops, something went wrong!', msg, 'error'); }); return; break; diff --git a/resources/assets/js/components/ComposeModal.vue b/resources/assets/js/components/ComposeModal.vue index d021be280..daced1ef2 100644 --- a/resources/assets/js/components/ComposeModal.vue +++ b/resources/assets/js/components/ComposeModal.vue @@ -744,7 +744,8 @@ export default { let data = res.data; window.location.href = data; }).catch(err => { - swal('Oops, something went wrong!', 'An unexpected error occurred.', 'error'); + let msg = err.response.data.message ? err.response.data.message : 'An unexpected error occured.' + swal('Oops, something went wrong!', msg, 'error'); }); return; break;