mirror of
https://we.phorge.it/source/phorge.git
synced 2024-12-22 21:40:55 +01:00
Improve messages when no image formats are supported (due to GD not installed)
Summary: When GD is not installed, trying to set a custom image for a project/blog/repository/user/etc displays unhelpful error messages (`This server only supports these image formats: .` and `Supported formats: `) due to the array of supported image formats being empty. Display clearer messages instead. Closes T15720 Test Plan: Do not have php-gd installed, go to `/project/manage/1/`, take a look at the string below the "Upload Picture" button, select {nav icon=picture, name=Edit Picture} in the sidebar, select `Custom: Choose Icon and Color...`, `Choose Background Color` and `Choose Icon`, then click the `Save Image` button. Also try to upload a custom image and look at the error message. Reviewers: O1 Blessed Committers, valerio.bozzolan Reviewed By: O1 Blessed Committers, valerio.bozzolan Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno Maniphest Tasks: T15720 Differential Revision: https://we.phorge.it/D25525
This commit is contained in:
parent
052b5f41c7
commit
e2bec4c1f5
8 changed files with 64 additions and 40 deletions
|
@ -24,6 +24,12 @@ final class ConpherenceRoomPictureController
|
|||
$monogram = $conpherence->getMonogram();
|
||||
|
||||
$supported_formats = PhabricatorFile::getTransformableImageFormats();
|
||||
if ($supported_formats) {
|
||||
$supported_formats_message = pht('Supported image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
} else {
|
||||
$supported_formats_message = pht('Server supports no image formats.');
|
||||
}
|
||||
$e_file = true;
|
||||
$errors = array();
|
||||
|
||||
|
@ -56,9 +62,7 @@ final class ConpherenceRoomPictureController
|
|||
if (!$errors && !$is_default) {
|
||||
if (!$file->isTransformableImage()) {
|
||||
$e_file = pht('Not Supported');
|
||||
$errors[] = pht(
|
||||
'This server only supports these image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
$errors[] = $supported_formats_message;
|
||||
} else {
|
||||
$xform = PhabricatorFileTransform::getTransformByKey(
|
||||
PhabricatorFileThumbnailTransform::TRANSFORM_PROFILE);
|
||||
|
@ -195,8 +199,7 @@ final class ConpherenceRoomPictureController
|
|||
->setName('picture')
|
||||
->setLabel(pht('Upload Picture'))
|
||||
->setError($e_file)
|
||||
->setCaption(
|
||||
pht('Supported formats: %s', implode(', ', $supported_formats))))
|
||||
->setCaption($supported_formats_message))
|
||||
->appendChild(
|
||||
id(new AphrontFormSubmitControl())
|
||||
->addCancelButton('/'.$monogram)
|
||||
|
|
|
@ -24,6 +24,12 @@ final class DiffusionRepositoryProfilePictureController
|
|||
}
|
||||
|
||||
$supported_formats = PhabricatorFile::getTransformableImageFormats();
|
||||
if ($supported_formats) {
|
||||
$supported_formats_message = pht('Supported image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
} else {
|
||||
$supported_formats_message = pht('Server supports no image formats.');
|
||||
}
|
||||
$e_file = true;
|
||||
$errors = array();
|
||||
$done_uri = $repository->getURI();
|
||||
|
@ -57,9 +63,7 @@ final class DiffusionRepositoryProfilePictureController
|
|||
if (!$errors && !$is_default) {
|
||||
if (!$file->isTransformableImage()) {
|
||||
$e_file = pht('Not Supported');
|
||||
$errors[] = pht(
|
||||
'This server only supports these image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
$errors[] = $supported_formats_message;
|
||||
} else {
|
||||
$xform = PhabricatorFileTransform::getTransformByKey(
|
||||
PhabricatorFileThumbnailTransform::TRANSFORM_PROFILE);
|
||||
|
@ -213,8 +217,7 @@ final class DiffusionRepositoryProfilePictureController
|
|||
->setName('picture')
|
||||
->setLabel(pht('Upload Picture'))
|
||||
->setError($e_file)
|
||||
->setCaption(
|
||||
pht('Supported formats: %s', implode(', ', $supported_formats))))
|
||||
->setCaption($supported_formats_message))
|
||||
->appendChild(
|
||||
id(new AphrontFormSubmitControl())
|
||||
->addCancelButton($done_uri)
|
||||
|
|
|
@ -27,6 +27,12 @@ final class PhabricatorPeopleProfilePictureController
|
|||
$done_uri = '/p/'.$name.'/';
|
||||
|
||||
$supported_formats = PhabricatorFile::getTransformableImageFormats();
|
||||
if ($supported_formats) {
|
||||
$supported_formats_message = pht('Supported image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
} else {
|
||||
$supported_formats_message = pht('Server supports no image formats.');
|
||||
}
|
||||
$e_file = true;
|
||||
$errors = array();
|
||||
|
||||
|
@ -59,9 +65,7 @@ final class PhabricatorPeopleProfilePictureController
|
|||
if (!$errors && !$is_default) {
|
||||
if (!$file->isTransformableImage()) {
|
||||
$e_file = pht('Not Supported');
|
||||
$errors[] = pht(
|
||||
'This server only supports these image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
$errors[] = $supported_formats_message;
|
||||
} else {
|
||||
$xform = PhabricatorFileTransform::getTransformByKey(
|
||||
PhabricatorFileThumbnailTransform::TRANSFORM_PROFILE);
|
||||
|
@ -250,8 +254,7 @@ final class PhabricatorPeopleProfilePictureController
|
|||
->setName('picture')
|
||||
->setLabel(pht('Upload Picture'))
|
||||
->setError($e_file)
|
||||
->setCaption(
|
||||
pht('Supported formats: %s', implode(', ', $supported_formats))))
|
||||
->setCaption($supported_formats_message))
|
||||
->appendChild(
|
||||
id(new AphrontFormSubmitControl())
|
||||
->addCancelButton($done_uri)
|
||||
|
|
|
@ -24,6 +24,12 @@ final class PhameBlogHeaderPictureController
|
|||
$blog_uri = '/phame/blog/manage/'.$id;
|
||||
|
||||
$supported_formats = PhabricatorFile::getTransformableImageFormats();
|
||||
if ($supported_formats) {
|
||||
$supported_formats_message = pht('Supported image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
} else {
|
||||
$supported_formats_message = pht('Server supports no image formats.');
|
||||
}
|
||||
$e_file = true;
|
||||
$errors = array();
|
||||
$delete_header = ($request->getInt('delete') == 1);
|
||||
|
@ -45,9 +51,7 @@ final class PhameBlogHeaderPictureController
|
|||
if (!$errors && !$delete_header) {
|
||||
if (!$file->isTransformableImage()) {
|
||||
$e_file = pht('Not Supported');
|
||||
$errors[] = pht(
|
||||
'This server only supports these image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
$errors[] = $supported_formats_message;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -86,8 +90,7 @@ final class PhameBlogHeaderPictureController
|
|||
->setName('header')
|
||||
->setLabel(pht('Upload Header'))
|
||||
->setError($e_file)
|
||||
->setCaption(
|
||||
pht('Supported formats: %s', implode(', ', $supported_formats))))
|
||||
->setCaption($supported_formats_message))
|
||||
->appendChild(
|
||||
id(new AphrontFormCheckboxControl())
|
||||
->setName('delete')
|
||||
|
|
|
@ -24,6 +24,12 @@ final class PhameBlogProfilePictureController
|
|||
$blog_uri = '/phame/blog/manage/'.$id;
|
||||
|
||||
$supported_formats = PhabricatorFile::getTransformableImageFormats();
|
||||
if ($supported_formats) {
|
||||
$supported_formats_message = pht('Supported image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
} else {
|
||||
$supported_formats_message = pht('Server supports no image formats.');
|
||||
}
|
||||
$e_file = true;
|
||||
$errors = array();
|
||||
|
||||
|
@ -56,9 +62,7 @@ final class PhameBlogProfilePictureController
|
|||
if (!$errors && !$is_default) {
|
||||
if (!$file->isTransformableImage()) {
|
||||
$e_file = pht('Not Supported');
|
||||
$errors[] = pht(
|
||||
'This server only supports these image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
$errors[] = $supported_formats_message;
|
||||
} else {
|
||||
$xform = PhabricatorFileTransform::getTransformByKey(
|
||||
PhabricatorFileThumbnailTransform::TRANSFORM_PROFILE);
|
||||
|
@ -196,8 +200,7 @@ final class PhameBlogProfilePictureController
|
|||
->setName('picture')
|
||||
->setLabel(pht('Upload Picture'))
|
||||
->setError($e_file)
|
||||
->setCaption(
|
||||
pht('Supported formats: %s', implode(', ', $supported_formats))))
|
||||
->setCaption($supported_formats_message))
|
||||
->appendChild(
|
||||
id(new AphrontFormSubmitControl())
|
||||
->addCancelButton($blog_uri)
|
||||
|
|
|
@ -24,6 +24,12 @@ final class PhamePostHeaderPictureController
|
|||
$post_uri = '/phame/post/view/'.$id;
|
||||
|
||||
$supported_formats = PhabricatorFile::getTransformableImageFormats();
|
||||
if ($supported_formats) {
|
||||
$supported_formats_message = pht('Supported image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
} else {
|
||||
$supported_formats_message = pht('Server supports no image formats.');
|
||||
}
|
||||
$e_file = true;
|
||||
$errors = array();
|
||||
$delete_header = ($request->getInt('delete') == 1);
|
||||
|
@ -45,9 +51,7 @@ final class PhamePostHeaderPictureController
|
|||
if (!$errors && !$delete_header) {
|
||||
if (!$file->isTransformableImage()) {
|
||||
$e_file = pht('Not Supported');
|
||||
$errors[] = pht(
|
||||
'This server only supports these image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
$errors[] = $supported_formats_message;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -86,8 +90,7 @@ final class PhamePostHeaderPictureController
|
|||
->setName('header')
|
||||
->setLabel(pht('Upload Header'))
|
||||
->setError($e_file)
|
||||
->setCaption(
|
||||
pht('Supported formats: %s', implode(', ', $supported_formats))))
|
||||
->setCaption($supported_formats_message))
|
||||
->appendChild(
|
||||
id(new AphrontFormCheckboxControl())
|
||||
->setName('delete')
|
||||
|
|
|
@ -14,6 +14,12 @@ final class PhortuneMerchantPictureController
|
|||
$uri = $merchant->getDetailsURI();
|
||||
|
||||
$supported_formats = PhabricatorFile::getTransformableImageFormats();
|
||||
if ($supported_formats) {
|
||||
$supported_formats_message = pht('Supported image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
} else {
|
||||
$supported_formats_message = pht('Server supports no image formats.');
|
||||
}
|
||||
$e_file = true;
|
||||
$errors = array();
|
||||
|
||||
|
@ -46,9 +52,7 @@ final class PhortuneMerchantPictureController
|
|||
if (!$errors && !$is_default) {
|
||||
if (!$file->isTransformableImage()) {
|
||||
$e_file = pht('Not Supported');
|
||||
$errors[] = pht(
|
||||
'This server only supports these image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
$errors[] = $supported_formats_message;
|
||||
} else {
|
||||
$xform = PhabricatorFileTransform::getTransformByKey(
|
||||
PhabricatorFileThumbnailTransform::TRANSFORM_PROFILE);
|
||||
|
@ -185,8 +189,7 @@ final class PhortuneMerchantPictureController
|
|||
->setName('picture')
|
||||
->setLabel(pht('Upload Logo'))
|
||||
->setError($e_file)
|
||||
->setCaption(
|
||||
pht('Supported formats: %s', implode(', ', $supported_formats))))
|
||||
->setCaption($supported_formats_message))
|
||||
->appendChild(
|
||||
id(new AphrontFormSubmitControl())
|
||||
->addCancelButton($uri)
|
||||
|
|
|
@ -26,6 +26,12 @@ final class PhabricatorProjectEditPictureController
|
|||
$manage_uri = $this->getApplicationURI('manage/'.$project->getID().'/');
|
||||
|
||||
$supported_formats = PhabricatorFile::getTransformableImageFormats();
|
||||
if ($supported_formats) {
|
||||
$supported_formats_message = pht('Supported image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
} else {
|
||||
$supported_formats_message = pht('Server supports no image formats.');
|
||||
}
|
||||
$e_file = true;
|
||||
$errors = array();
|
||||
|
||||
|
@ -58,9 +64,7 @@ final class PhabricatorProjectEditPictureController
|
|||
if (!$errors && !$is_default) {
|
||||
if (!$file->isTransformableImage()) {
|
||||
$e_file = pht('Not Supported');
|
||||
$errors[] = pht(
|
||||
'This server only supports these image formats: %s.',
|
||||
implode(', ', $supported_formats));
|
||||
$errors[] = $supported_formats_message;
|
||||
} else {
|
||||
$xform = PhabricatorFileTransform::getTransformByKey(
|
||||
PhabricatorFileThumbnailTransform::TRANSFORM_PROFILE);
|
||||
|
@ -257,8 +261,7 @@ final class PhabricatorProjectEditPictureController
|
|||
->setName('picture')
|
||||
->setLabel(pht('Upload Picture'))
|
||||
->setError($e_file)
|
||||
->setCaption(
|
||||
pht('Supported formats: %s', implode(', ', $supported_formats))))
|
||||
->setCaption($supported_formats_message))
|
||||
->appendChild(
|
||||
id(new AphrontFormSubmitControl())
|
||||
->addCancelButton($manage_uri)
|
||||
|
|
Loading…
Reference in a new issue