PHUIErrorView

Summary: Clean up the error view styling.

Test Plan:
Tested as many as I could find, built additional tests in UIExamples

{F280452}

{F280453}

Reviewers: btrahan, epriestley

Reviewed By: epriestley

Subscribers: hach-que, Korvin, epriestley

Differential Revision: https://secure.phabricator.com/D11605
This commit is contained in:
Chad Little 2015-02-01 20:14:56 -08:00
parent 33c0b9423f
commit 3da38c74da
80 changed files with 388 additions and 334 deletions

View file

@ -7,7 +7,7 @@
*/ */
return array( return array(
'names' => array( 'names' => array(
'core.pkg.css' => '024a3170', 'core.pkg.css' => '44f5d60d',
'core.pkg.js' => '65e04767', 'core.pkg.js' => '65e04767',
'darkconsole.pkg.js' => '8ab24e01', 'darkconsole.pkg.js' => '8ab24e01',
'differential.pkg.css' => '8af45893', 'differential.pkg.css' => '8af45893',
@ -20,7 +20,6 @@ return array(
'rsrc/css/aphront/context-bar.css' => '1c3b0529', 'rsrc/css/aphront/context-bar.css' => '1c3b0529',
'rsrc/css/aphront/dark-console.css' => '6378ef3d', 'rsrc/css/aphront/dark-console.css' => '6378ef3d',
'rsrc/css/aphront/dialog-view.css' => '4dbbe3bb', 'rsrc/css/aphront/dialog-view.css' => '4dbbe3bb',
'rsrc/css/aphront/error-view.css' => '3462dbee',
'rsrc/css/aphront/lightbox-attachment.css' => '7acac05d', 'rsrc/css/aphront/lightbox-attachment.css' => '7acac05d',
'rsrc/css/aphront/list-filter-view.css' => '2ae43867', 'rsrc/css/aphront/list-filter-view.css' => '2ae43867',
'rsrc/css/aphront/multi-column.css' => '41a848c0', 'rsrc/css/aphront/multi-column.css' => '41a848c0',
@ -53,7 +52,7 @@ return array(
'rsrc/css/application/conpherence/widget-pane.css' => '3d575438', 'rsrc/css/application/conpherence/widget-pane.css' => '3d575438',
'rsrc/css/application/contentsource/content-source-view.css' => '4b8b05d4', 'rsrc/css/application/contentsource/content-source-view.css' => '4b8b05d4',
'rsrc/css/application/countdown/timer.css' => '86b7b0a0', 'rsrc/css/application/countdown/timer.css' => '86b7b0a0',
'rsrc/css/application/dashboard/dashboard.css' => 'a2bfdcbf', 'rsrc/css/application/dashboard/dashboard.css' => 'ec324e2a',
'rsrc/css/application/diff/inline-comment-summary.css' => '8cfd34e8', 'rsrc/css/application/diff/inline-comment-summary.css' => '8cfd34e8',
'rsrc/css/application/differential/add-comment.css' => 'c478bcaa', 'rsrc/css/application/differential/add-comment.css' => 'c478bcaa',
'rsrc/css/application/differential/changeset-view.css' => 'b2b71e76', 'rsrc/css/application/differential/changeset-view.css' => 'b2b71e76',
@ -80,7 +79,7 @@ return array(
'rsrc/css/application/owners/owners-path-editor.css' => '2f00933b', 'rsrc/css/application/owners/owners-path-editor.css' => '2f00933b',
'rsrc/css/application/paste/paste.css' => 'aa1767d1', 'rsrc/css/application/paste/paste.css' => 'aa1767d1',
'rsrc/css/application/people/people-profile.css' => '25970776', 'rsrc/css/application/people/people-profile.css' => '25970776',
'rsrc/css/application/phame/phame.css' => '19ecc703', 'rsrc/css/application/phame/phame.css' => 'db5682e3',
'rsrc/css/application/pholio/pholio-edit.css' => '3ad9d1ee', 'rsrc/css/application/pholio/pholio-edit.css' => '3ad9d1ee',
'rsrc/css/application/pholio/pholio-inline-comments.css' => '8e545e49', 'rsrc/css/application/pholio/pholio-inline-comments.css' => '8e545e49',
'rsrc/css/application/pholio/pholio.css' => '95174bdd', 'rsrc/css/application/pholio/pholio.css' => '95174bdd',
@ -127,6 +126,7 @@ return array(
'rsrc/css/phui/phui-button.css' => '008ba5e2', 'rsrc/css/phui/phui-button.css' => '008ba5e2',
'rsrc/css/phui/phui-crumbs-view.css' => '646a8830', 'rsrc/css/phui/phui-crumbs-view.css' => '646a8830',
'rsrc/css/phui/phui-document.css' => 'a494bdf8', 'rsrc/css/phui/phui-document.css' => 'a494bdf8',
'rsrc/css/phui/phui-error-view.css' => '6b660bbc',
'rsrc/css/phui/phui-feed-story.css' => 'c9f3a0b5', 'rsrc/css/phui/phui-feed-story.css' => 'c9f3a0b5',
'rsrc/css/phui/phui-fontkit.css' => '9ae12677', 'rsrc/css/phui/phui-fontkit.css' => '9ae12677',
'rsrc/css/phui/phui-form-view.css' => 'aad06f2a', 'rsrc/css/phui/phui-form-view.css' => 'aad06f2a',
@ -136,8 +136,8 @@ return array(
'rsrc/css/phui/phui-image-mask.css' => '5a8b09c8', 'rsrc/css/phui/phui-image-mask.css' => '5a8b09c8',
'rsrc/css/phui/phui-info-panel.css' => '27ea50a1', 'rsrc/css/phui/phui-info-panel.css' => '27ea50a1',
'rsrc/css/phui/phui-list.css' => '53deb25c', 'rsrc/css/phui/phui-list.css' => '53deb25c',
'rsrc/css/phui/phui-object-box.css' => '0d47b3c8', 'rsrc/css/phui/phui-object-box.css' => 'b8b7fd78',
'rsrc/css/phui/phui-object-item-list-view.css' => '2686a80e', 'rsrc/css/phui/phui-object-item-list-view.css' => '9626caac',
'rsrc/css/phui/phui-pinboard-view.css' => '3dd4a269', 'rsrc/css/phui/phui-pinboard-view.css' => '3dd4a269',
'rsrc/css/phui/phui-property-list-view.css' => '51480060', 'rsrc/css/phui/phui-property-list-view.css' => '51480060',
'rsrc/css/phui/phui-remarkup-preview.css' => '19ad512b', 'rsrc/css/phui/phui-remarkup-preview.css' => '19ad512b',
@ -496,7 +496,6 @@ return array(
'aphront-contextbar-view-css' => '1c3b0529', 'aphront-contextbar-view-css' => '1c3b0529',
'aphront-dark-console-css' => '6378ef3d', 'aphront-dark-console-css' => '6378ef3d',
'aphront-dialog-view-css' => '4dbbe3bb', 'aphront-dialog-view-css' => '4dbbe3bb',
'aphront-error-view-css' => '3462dbee',
'aphront-list-filter-view-css' => '2ae43867', 'aphront-list-filter-view-css' => '2ae43867',
'aphront-multi-column-view-css' => '41a848c0', 'aphront-multi-column-view-css' => '41a848c0',
'aphront-pager-view-css' => '2e3539af', 'aphront-pager-view-css' => '2e3539af',
@ -712,7 +711,7 @@ return array(
'phabricator-content-source-view-css' => '4b8b05d4', 'phabricator-content-source-view-css' => '4b8b05d4',
'phabricator-core-css' => 'd7f6ec35', 'phabricator-core-css' => 'd7f6ec35',
'phabricator-countdown-css' => '86b7b0a0', 'phabricator-countdown-css' => '86b7b0a0',
'phabricator-dashboard-css' => 'a2bfdcbf', 'phabricator-dashboard-css' => 'ec324e2a',
'phabricator-drag-and-drop-file-upload' => '8c49f386', 'phabricator-drag-and-drop-file-upload' => '8c49f386',
'phabricator-draggable-list' => 'a16ec1c6', 'phabricator-draggable-list' => 'a16ec1c6',
'phabricator-fatal-config-template-css' => '25d446d6', 'phabricator-fatal-config-template-css' => '25d446d6',
@ -756,7 +755,7 @@ return array(
'phabricator-uiexample-reactor-sendclass' => '1def2711', 'phabricator-uiexample-reactor-sendclass' => '1def2711',
'phabricator-uiexample-reactor-sendproperties' => 'b1f0ccee', 'phabricator-uiexample-reactor-sendproperties' => 'b1f0ccee',
'phabricator-zindex-css' => '40eb7003', 'phabricator-zindex-css' => '40eb7003',
'phame-css' => '19ecc703', 'phame-css' => 'db5682e3',
'pholio-css' => '95174bdd', 'pholio-css' => '95174bdd',
'pholio-edit-css' => '3ad9d1ee', 'pholio-edit-css' => '3ad9d1ee',
'pholio-inline-comments-css' => '8e545e49', 'pholio-inline-comments-css' => '8e545e49',
@ -774,6 +773,7 @@ return array(
'phui-calendar-month-css' => 'a92e47d2', 'phui-calendar-month-css' => 'a92e47d2',
'phui-crumbs-view-css' => '646a8830', 'phui-crumbs-view-css' => '646a8830',
'phui-document-view-css' => 'a494bdf8', 'phui-document-view-css' => 'a494bdf8',
'phui-error-view-css' => '6b660bbc',
'phui-feed-story-css' => 'c9f3a0b5', 'phui-feed-story-css' => 'c9f3a0b5',
'phui-font-icon-base-css' => '3dad2ae3', 'phui-font-icon-base-css' => '3dad2ae3',
'phui-fontkit-css' => '9ae12677', 'phui-fontkit-css' => '9ae12677',
@ -784,8 +784,8 @@ return array(
'phui-image-mask-css' => '5a8b09c8', 'phui-image-mask-css' => '5a8b09c8',
'phui-info-panel-css' => '27ea50a1', 'phui-info-panel-css' => '27ea50a1',
'phui-list-view-css' => '53deb25c', 'phui-list-view-css' => '53deb25c',
'phui-object-box-css' => '0d47b3c8', 'phui-object-box-css' => 'b8b7fd78',
'phui-object-item-list-view-css' => '2686a80e', 'phui-object-item-list-view-css' => '9626caac',
'phui-pinboard-view-css' => '3dd4a269', 'phui-pinboard-view-css' => '3dd4a269',
'phui-property-list-view-css' => '51480060', 'phui-property-list-view-css' => '51480060',
'phui-remarkup-preview-css' => '19ad512b', 'phui-remarkup-preview-css' => '19ad512b',
@ -2018,7 +2018,7 @@ return array(
'phabricator-transaction-view-css', 'phabricator-transaction-view-css',
'aphront-tooltip-css', 'aphront-tooltip-css',
'phabricator-flag-css', 'phabricator-flag-css',
'aphront-error-view-css', 'phui-error-view-css',
'sprite-gradient-css', 'sprite-gradient-css',
'sprite-menu-css', 'sprite-menu-css',
'phabricator-main-menu-view', 'phabricator-main-menu-view',

View file

@ -94,7 +94,7 @@ return array(
'phabricator-transaction-view-css', 'phabricator-transaction-view-css',
'aphront-tooltip-css', 'aphront-tooltip-css',
'phabricator-flag-css', 'phabricator-flag-css',
'aphront-error-view-css', 'phui-error-view-css',
'sprite-gradient-css', 'sprite-gradient-css',
'sprite-menu-css', 'sprite-menu-css',

View file

@ -107,7 +107,6 @@ phutil_register_library_map(array(
'AphrontDefaultApplicationConfiguration' => 'aphront/configuration/AphrontDefaultApplicationConfiguration.php', 'AphrontDefaultApplicationConfiguration' => 'aphront/configuration/AphrontDefaultApplicationConfiguration.php',
'AphrontDialogResponse' => 'aphront/response/AphrontDialogResponse.php', 'AphrontDialogResponse' => 'aphront/response/AphrontDialogResponse.php',
'AphrontDialogView' => 'view/AphrontDialogView.php', 'AphrontDialogView' => 'view/AphrontDialogView.php',
'AphrontErrorView' => 'view/form/AphrontErrorView.php',
'AphrontException' => 'aphront/exception/AphrontException.php', 'AphrontException' => 'aphront/exception/AphrontException.php',
'AphrontFileResponse' => 'aphront/response/AphrontFileResponse.php', 'AphrontFileResponse' => 'aphront/response/AphrontFileResponse.php',
'AphrontFormCheckboxControl' => 'view/form/control/AphrontFormCheckboxControl.php', 'AphrontFormCheckboxControl' => 'view/form/control/AphrontFormCheckboxControl.php',
@ -1140,6 +1139,8 @@ phutil_register_library_map(array(
'PHUIDocumentExample' => 'applications/uiexample/examples/PHUIDocumentExample.php', 'PHUIDocumentExample' => 'applications/uiexample/examples/PHUIDocumentExample.php',
'PHUIDocumentView' => 'view/phui/PHUIDocumentView.php', 'PHUIDocumentView' => 'view/phui/PHUIDocumentView.php',
'PHUIDurableColumn' => 'view/phui/PHUIDurableColumn.php', 'PHUIDurableColumn' => 'view/phui/PHUIDurableColumn.php',
'PHUIErrorExample' => 'applications/uiexample/examples/PHUIErrorExample.php',
'PHUIErrorView' => 'view/form/PHUIErrorView.php',
'PHUIFeedStoryExample' => 'applications/uiexample/examples/PHUIFeedStoryExample.php', 'PHUIFeedStoryExample' => 'applications/uiexample/examples/PHUIFeedStoryExample.php',
'PHUIFeedStoryView' => 'view/phui/PHUIFeedStoryView.php', 'PHUIFeedStoryView' => 'view/phui/PHUIFeedStoryView.php',
'PHUIFormDividerControl' => 'view/form/control/PHUIFormDividerControl.php', 'PHUIFormDividerControl' => 'view/form/control/PHUIFormDividerControl.php',
@ -1698,7 +1699,6 @@ phutil_register_library_map(array(
'PhabricatorEnglishTranslation' => 'infrastructure/internationalization/translation/PhabricatorEnglishTranslation.php', 'PhabricatorEnglishTranslation' => 'infrastructure/internationalization/translation/PhabricatorEnglishTranslation.php',
'PhabricatorEnv' => 'infrastructure/env/PhabricatorEnv.php', 'PhabricatorEnv' => 'infrastructure/env/PhabricatorEnv.php',
'PhabricatorEnvTestCase' => 'infrastructure/env/__tests__/PhabricatorEnvTestCase.php', 'PhabricatorEnvTestCase' => 'infrastructure/env/__tests__/PhabricatorEnvTestCase.php',
'PhabricatorErrorUIExample' => 'applications/uiexample/examples/PhabricatorErrorUIExample.php',
'PhabricatorEvent' => 'infrastructure/events/PhabricatorEvent.php', 'PhabricatorEvent' => 'infrastructure/events/PhabricatorEvent.php',
'PhabricatorEventEngine' => 'infrastructure/events/PhabricatorEventEngine.php', 'PhabricatorEventEngine' => 'infrastructure/events/PhabricatorEventEngine.php',
'PhabricatorEventListener' => 'infrastructure/events/PhabricatorEventListener.php', 'PhabricatorEventListener' => 'infrastructure/events/PhabricatorEventListener.php',
@ -3230,7 +3230,6 @@ phutil_register_library_map(array(
'AphrontDefaultApplicationConfiguration' => 'AphrontApplicationConfiguration', 'AphrontDefaultApplicationConfiguration' => 'AphrontApplicationConfiguration',
'AphrontDialogResponse' => 'AphrontResponse', 'AphrontDialogResponse' => 'AphrontResponse',
'AphrontDialogView' => 'AphrontView', 'AphrontDialogView' => 'AphrontView',
'AphrontErrorView' => 'AphrontView',
'AphrontException' => 'Exception', 'AphrontException' => 'Exception',
'AphrontFileResponse' => 'AphrontResponse', 'AphrontFileResponse' => 'AphrontResponse',
'AphrontFormCheckboxControl' => 'AphrontFormControl', 'AphrontFormCheckboxControl' => 'AphrontFormControl',
@ -4337,6 +4336,8 @@ phutil_register_library_map(array(
'PHUIDocumentExample' => 'PhabricatorUIExample', 'PHUIDocumentExample' => 'PhabricatorUIExample',
'PHUIDocumentView' => 'AphrontTagView', 'PHUIDocumentView' => 'AphrontTagView',
'PHUIDurableColumn' => 'AphrontTagView', 'PHUIDurableColumn' => 'AphrontTagView',
'PHUIErrorExample' => 'PhabricatorUIExample',
'PHUIErrorView' => 'AphrontView',
'PHUIFeedStoryExample' => 'PhabricatorUIExample', 'PHUIFeedStoryExample' => 'PhabricatorUIExample',
'PHUIFeedStoryView' => 'AphrontView', 'PHUIFeedStoryView' => 'AphrontView',
'PHUIFormDividerControl' => 'AphrontFormControl', 'PHUIFormDividerControl' => 'AphrontFormControl',
@ -4937,7 +4938,6 @@ phutil_register_library_map(array(
'PhabricatorEmptyQueryException' => 'Exception', 'PhabricatorEmptyQueryException' => 'Exception',
'PhabricatorEnglishTranslation' => 'PhabricatorBaseEnglishTranslation', 'PhabricatorEnglishTranslation' => 'PhabricatorBaseEnglishTranslation',
'PhabricatorEnvTestCase' => 'PhabricatorTestCase', 'PhabricatorEnvTestCase' => 'PhabricatorTestCase',
'PhabricatorErrorUIExample' => 'PhabricatorUIExample',
'PhabricatorEvent' => 'PhutilEvent', 'PhabricatorEvent' => 'PhutilEvent',
'PhabricatorEventListener' => 'PhutilEventListener', 'PhabricatorEventListener' => 'PhutilEventListener',
'PhabricatorEventType' => 'PhutilEventType', 'PhabricatorEventType' => 'PhutilEventType',

View file

@ -205,7 +205,7 @@ class AphrontDefaultApplicationConfiguration
} }
if ($ex instanceof AphrontUsageException) { if ($ex instanceof AphrontUsageException) {
$error = new AphrontErrorView(); $error = new PHUIErrorView();
$error->setTitle($ex->getTitle()); $error->setTitle($ex->getTitle());
$error->appendChild($ex->getMessage()); $error->appendChild($ex->getMessage());

View file

@ -188,8 +188,8 @@ abstract class AlmanacController
), ),
pht('Learn More')); pht('Learn More'));
$error_view = id(new AphrontErrorView()) $error_view = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_WARNING) ->setSeverity(PHUIErrorView::SEVERITY_WARNING)
->setErrors( ->setErrors(
array( array(
array($message, ' ', $doc_link), array($message, ' ', $doc_link),

View file

@ -15,7 +15,7 @@ abstract class PhabricatorAuthController extends PhabricatorController {
} }
protected function renderErrorPage($title, array $messages) { protected function renderErrorPage($title, array $messages) {
$view = new AphrontErrorView(); $view = new PHUIErrorView();
$view->setTitle($title); $view->setTitle($title);
$view->setErrors($messages); $view->setErrors($messages);

View file

@ -29,9 +29,9 @@ final class PhabricatorAuthNeedsMultiFactorController
$viewer->updateMultiFactorEnrollment(); $viewer->updateMultiFactorEnrollment();
if (!$viewer->getIsEnrolledInMultiFactor()) { if (!$viewer->getIsEnrolledInMultiFactor()) {
$help = id(new AphrontErrorView()) $help = id(new PHUIErrorView())
->setTitle(pht('Add Multi-Factor Authentication To Your Account')) ->setTitle(pht('Add Multi-Factor Authentication To Your Account'))
->setSeverity(AphrontErrorView::SEVERITY_WARNING) ->setSeverity(PHUIErrorView::SEVERITY_WARNING)
->setErrors( ->setErrors(
array( array(
pht( pht(
@ -53,9 +53,9 @@ final class PhabricatorAuthNeedsMultiFactorController
'account.'), 'account.'),
)); ));
} else { } else {
$help = id(new AphrontErrorView()) $help = id(new PHUIErrorView())
->setTitle(pht('Multi-Factor Authentication Configured')) ->setTitle(pht('Multi-Factor Authentication Configured'))
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setErrors( ->setErrors(
array( array(
pht( pht(

View file

@ -444,8 +444,8 @@ final class PhabricatorAuthRegisterController
$welcome_view = null; $welcome_view = null;
if ($is_setup) { if ($is_setup) {
$welcome_view = id(new AphrontErrorView()) $welcome_view = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setTitle(pht('Welcome to Phabricator')) ->setTitle(pht('Welcome to Phabricator'))
->appendChild( ->appendChild(
pht( pht(

View file

@ -128,7 +128,7 @@ EOBODY;
$error_view = null; $error_view = null;
if ($errors) { if ($errors) {
$error_view = new AphrontErrorView(); $error_view = new PHUIErrorView();
$error_view->setErrors($errors); $error_view->setErrors($errors);
} }

View file

@ -28,8 +28,8 @@ final class PhabricatorMustVerifyEmailController
$sent = null; $sent = null;
if ($request->isFormPost()) { if ($request->isFormPost()) {
$email->sendVerificationEmail($user); $email->sendVerificationEmail($user);
$sent = new AphrontErrorView(); $sent = new PHUIErrorView();
$sent->setSeverity(AphrontErrorView::SEVERITY_NOTICE); $sent->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
$sent->setTitle(pht('Email Sent')); $sent->setTitle(pht('Email Sent'));
$sent->appendChild( $sent->appendChild(
pht( pht(

View file

@ -103,11 +103,11 @@ final class PhabricatorAuthListController
), ),
$config_name); $config_name);
$warning = new AphrontErrorView(); $warning = new PHUIErrorView();
$email_domains = PhabricatorEnv::getEnvConfig($config_name); $email_domains = PhabricatorEnv::getEnvConfig($config_name);
if ($email_domains) { if ($email_domains) {
$warning->setSeverity(AphrontErrorView::SEVERITY_NOTICE); $warning->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
$warning->setTitle(pht('Registration is Restricted')); $warning->setTitle(pht('Registration is Restricted'));
$warning->appendChild( $warning->appendChild(
pht( pht(
@ -116,7 +116,7 @@ final class PhabricatorAuthListController
$config_link, $config_link,
phutil_tag('strong', array(), implode(', ', $email_domains)))); phutil_tag('strong', array(), implode(', ', $email_domains))));
} else { } else {
$warning->setSeverity(AphrontErrorView::SEVERITY_WARNING); $warning->setSeverity(PHUIErrorView::SEVERITY_WARNING);
$warning->setTitle(pht('Anyone Can Register an Account')); $warning->setTitle(pht('Anyone Can Register an Account'));
$warning->appendChild( $warning->appendChild(
pht( pht(

View file

@ -121,7 +121,7 @@ final class PhabricatorLDAPAuthProvider extends PhabricatorAuthProvider {
->setError($e_pass)); ->setError($e_pass));
if ($errors) { if ($errors) {
$errors = id(new AphrontErrorView())->setErrors($errors); $errors = id(new PHUIErrorView())->setErrors($errors);
} }
$dialog->appendChild($errors); $dialog->appendChild($errors);

View file

@ -194,7 +194,7 @@ final class PhabricatorPasswordAuthProvider extends PhabricatorAuthProvider {
} }
if ($errors) { if ($errors) {
$errors = id(new AphrontErrorView())->setErrors($errors); $errors = id(new PHUIErrorView())->setErrors($errors);
} }
$form = id(new PHUIFormLayoutView()) $form = id(new PHUIFormLayoutView())

View file

@ -103,7 +103,7 @@ final class PhabricatorCalendarEventEditController
$error_view = null; $error_view = null;
if ($errors) { if ($errors) {
$error_view = id(new AphrontErrorView()) $error_view = id(new PHUIErrorView())
->setTitle(pht('Status can not be set!')) ->setTitle(pht('Status can not be set!'))
->setErrors($errors); ->setErrors($errors);
} }

View file

@ -41,6 +41,9 @@ final class PhabricatorCalendarViewController
$month_view->setBrowseURI($request->getRequestURI()); $month_view->setBrowseURI($request->getRequestURI());
$month_view->setUser($user); $month_view->setUser($user);
$month_view->setHolidays($holidays); $month_view->setHolidays($holidays);
if ($this->getNoticeView()) {
$month_view->setErrorView($this->getNoticeView());
}
$phids = mpull($statuses, 'getUserPHID'); $phids = mpull($statuses, 'getUserPHID');
$handles = $this->loadViewerHandles($phids); $handles = $this->loadViewerHandles($phids);
@ -65,7 +68,6 @@ final class PhabricatorCalendarViewController
$nav->appendChild( $nav->appendChild(
array( array(
$crumbs, $crumbs,
$this->getNoticeView(),
$month_view, $month_view,
)); ));
@ -81,23 +83,23 @@ final class PhabricatorCalendarViewController
$view = null; $view = null;
if ($request->getExists('created')) { if ($request->getExists('created')) {
$view = id(new AphrontErrorView()) $view = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setTitle(pht('Successfully created your status.')); ->appendChild(pht('Successfully created your status.'));
} else if ($request->getExists('updated')) { } else if ($request->getExists('updated')) {
$view = id(new AphrontErrorView()) $view = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setTitle(pht('Successfully updated your status.')); ->appendChild(pht('Successfully updated your status.'));
} else if ($request->getExists('deleted')) { } else if ($request->getExists('deleted')) {
$view = id(new AphrontErrorView()) $view = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setTitle(pht('Successfully deleted your status.')); ->appendChild(pht('Successfully deleted your status.'));
} else if (!$request->getUser()->isLoggedIn()) { } else if (!$request->getUser()->isLoggedIn()) {
$login_uri = id(new PhutilURI('/auth/start/')) $login_uri = id(new PhutilURI('/auth/start/'))
->setQueryParam('next', '/calendar/'); ->setQueryParam('next', '/calendar/');
$view = id(new AphrontErrorView()) $view = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setTitle( ->appendChild(
pht( pht(
'You are not logged in. %s to see your calendar events.', 'You are not logged in. %s to see your calendar events.',
phutil_tag( phutil_tag(

View file

@ -108,23 +108,23 @@ final class PhabricatorConfigEditController
$error_view = null; $error_view = null;
if ($errors) { if ($errors) {
$error_view = id(new AphrontErrorView()) $error_view = id(new PHUIErrorView())
->setErrors($errors); ->setErrors($errors);
} else if ($option->getHidden()) { } else if ($option->getHidden()) {
$msg = pht( $msg = pht(
'This configuration is hidden and can not be edited or viewed from '. 'This configuration is hidden and can not be edited or viewed from '.
'the web interface.'); 'the web interface.');
$error_view = id(new AphrontErrorView()) $error_view = id(new PHUIErrorView())
->setTitle(pht('Configuration Hidden')) ->setTitle(pht('Configuration Hidden'))
->setSeverity(AphrontErrorView::SEVERITY_WARNING) ->setSeverity(PHUIErrorView::SEVERITY_WARNING)
->appendChild(phutil_tag('p', array(), $msg)); ->appendChild(phutil_tag('p', array(), $msg));
} else if ($option->getLocked()) { } else if ($option->getLocked()) {
$msg = $option->getLockedMessage(); $msg = $option->getLockedMessage();
$error_view = id(new AphrontErrorView()) $error_view = id(new PHUIErrorView())
->setTitle(pht('Configuration Locked')) ->setTitle(pht('Configuration Locked'))
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->appendChild(phutil_tag('p', array(), $msg)); ->appendChild(phutil_tag('p', array(), $msg));
} }

View file

@ -18,8 +18,8 @@ final class PhabricatorConfigIssueViewController
PhabricatorSetupCheck::countUnignoredIssues($issues)); PhabricatorSetupCheck::countUnignoredIssues($issues));
if (empty($issues[$this->issueKey])) { if (empty($issues[$this->issueKey])) {
$content = id(new AphrontErrorView()) $content = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setTitle(pht('Issue Resolved')) ->setTitle(pht('Issue Resolved'))
->appendChild(pht('This setup issue has been resolved. ')) ->appendChild(pht('This setup issue has been resolved. '))
->appendChild( ->appendChild(

View file

@ -165,7 +165,7 @@ final class ConpherenceUpdateController
} }
if ($errors) { if ($errors) {
$error_view = id(new AphrontErrorView()) $error_view = id(new PHUIErrorView())
->setErrors($errors); ->setErrors($errors);
} }

View file

@ -24,13 +24,13 @@ final class PhabricatorWorkerTaskDetailController
if (!$task) { if (!$task) {
$title = pht('Task Does Not Exist'); $title = pht('Task Does Not Exist');
$error_view = new AphrontErrorView(); $error_view = new PHUIErrorView();
$error_view->setTitle(pht('No Such Task')); $error_view->setTitle(pht('No Such Task'));
$error_view->appendChild(phutil_tag( $error_view->appendChild(phutil_tag(
'p', 'p',
array(), array(),
pht('This task may have recently been garbage collected.'))); pht('This task may have recently been garbage collected.')));
$error_view->setSeverity(AphrontErrorView::SEVERITY_NODATA); $error_view->setSeverity(PHUIErrorView::SEVERITY_NODATA);
$content = $error_view; $content = $error_view;
} else { } else {

View file

@ -56,8 +56,8 @@ final class PhabricatorDashboardManageController
'make changes, make a copy first.'); 'make changes, make a copy first.');
$box->setErrorView( $box->setErrorView(
id(new AphrontErrorView()) id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setErrors(array($no_edit))); ->setErrors(array($no_edit)));
} }

View file

@ -66,8 +66,8 @@ final class PhabricatorDashboardViewController
$id = $this->id; $id = $this->id;
$manage_uri = $this->getApplicationURI("manage/{$id}/"); $manage_uri = $this->getApplicationURI("manage/{$id}/");
return id(new AphrontErrorView()) return id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NODATA) ->setSeverity(PHUIErrorView::SEVERITY_NODATA)
->appendChild( ->appendChild(
pht('This dashboard has no panels '. pht('This dashboard has no panels '.
'yet. Use %s to add panels.', 'yet. Use %s to add panels.',

View file

@ -24,8 +24,8 @@ final class DifferentialDiffViewController extends DifferentialController {
return new Aphront404Response(); return new Aphront404Response();
} }
$error_view = id(new AphrontErrorView()) $error_view = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE); ->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
if ($diff->getRevisionID()) { if ($diff->getRevisionID()) {
$error_view->appendChild( $error_view->appendChild(
pht( pht(

View file

@ -52,7 +52,7 @@ final class DifferentialRevisionLandController extends DifferentialController {
} else { } else {
$text = phutil_tag('pre', array(), $ex->getMessage()); $text = phutil_tag('pre', array(), $ex->getMessage());
} }
$text = id(new AphrontErrorView()) $text = id(new PHUIErrorView())
->appendChild($text); ->appendChild($text);
} }

View file

@ -137,9 +137,9 @@ final class DifferentialRevisionViewController extends DifferentialController {
$large = $request->getStr('large'); $large = $request->getStr('large');
if (count($changesets) > $limit && !$large) { if (count($changesets) > $limit && !$large) {
$count = count($changesets); $count = count($changesets);
$warning = new AphrontErrorView(); $warning = new PHUIErrorView();
$warning->setTitle('Very Large Diff'); $warning->setTitle('Very Large Diff');
$warning->setSeverity(AphrontErrorView::SEVERITY_WARNING); $warning->setSeverity(PHUIErrorView::SEVERITY_WARNING);
$warning->appendChild(hsprintf( $warning->appendChild(hsprintf(
'%s <strong>%s</strong>', '%s <strong>%s</strong>',
pht( pht(
@ -258,8 +258,8 @@ final class DifferentialRevisionViewController extends DifferentialController {
$warning_handle_map, $warning_handle_map,
$handles); $handles);
if ($revision_warnings) { if ($revision_warnings) {
$revision_warnings = id(new AphrontErrorView()) $revision_warnings = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_WARNING) ->setSeverity(PHUIErrorView::SEVERITY_WARNING)
->setErrors($revision_warnings); ->setErrors($revision_warnings);
$revision_detail_box->setErrorView($revision_warnings); $revision_detail_box->setErrorView($revision_warnings);
} }
@ -386,8 +386,8 @@ final class DifferentialRevisionViewController extends DifferentialController {
$review_warnings = array_mergev($review_warnings); $review_warnings = array_mergev($review_warnings);
if ($review_warnings) { if ($review_warnings) {
$review_warnings_panel = id(new AphrontErrorView()) $review_warnings_panel = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_WARNING) ->setSeverity(PHUIErrorView::SEVERITY_WARNING)
->setErrors($review_warnings); ->setErrors($review_warnings);
$comment_form->setErrorView($review_warnings_panel); $comment_form->setErrorView($review_warnings_panel);
} }

View file

@ -10,7 +10,7 @@ final class DifferentialAddCommentView extends AphrontView {
private $ccs = array(); private $ccs = array();
private $errorView; private $errorView;
public function setErrorView(AphrontErrorView $error_view) { public function setErrorView(PHUIErrorView $error_view) {
$this->errorView = $error_view; $this->errorView = $error_view;
return $this; return $this;
} }

View file

@ -118,8 +118,8 @@ final class DiffusionBrowseFileController extends DiffusionBrowseController {
$follow = $request->getStr('follow'); $follow = $request->getStr('follow');
if ($follow) { if ($follow) {
$notice = new AphrontErrorView(); $notice = new PHUIErrorView();
$notice->setSeverity(AphrontErrorView::SEVERITY_WARNING); $notice->setSeverity(PHUIErrorView::SEVERITY_WARNING);
$notice->setTitle(pht('Unable to Continue')); $notice->setTitle(pht('Unable to Continue'));
switch ($follow) { switch ($follow) {
case 'first': case 'first':
@ -138,8 +138,8 @@ final class DiffusionBrowseFileController extends DiffusionBrowseController {
$renamed = $request->getStr('renamed'); $renamed = $request->getStr('renamed');
if ($renamed) { if ($renamed) {
$notice = new AphrontErrorView(); $notice = new PHUIErrorView();
$notice->setSeverity(AphrontErrorView::SEVERITY_NOTICE); $notice->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
$notice->setTitle(pht('File Renamed')); $notice->setTitle(pht('File Renamed'));
$notice->appendChild( $notice->appendChild(
pht("File history passes through a rename from '%s' to '%s'.", pht("File history passes through a rename from '%s' to '%s'.",

View file

@ -81,7 +81,7 @@ final class DiffusionBrowseSearchController extends DiffusionBrowseController {
} catch (ConduitException $ex) { } catch (ConduitException $ex) {
$err = $ex->getErrorDescription(); $err = $ex->getErrorDescription();
if ($err != '') { if ($err != '') {
return id(new AphrontErrorView()) return id(new PHUIErrorView())
->setTitle(pht('Search Error')) ->setTitle(pht('Search Error'))
->appendChild($err); ->appendChild($err);
} }

View file

@ -52,7 +52,7 @@ final class DiffusionCommitController extends DiffusionController {
return new Aphront404Response(); return new Aphront404Response();
} }
$error = id(new AphrontErrorView()) $error = id(new PHUIErrorView())
->setTitle(pht('Commit Still Parsing')) ->setTitle(pht('Commit Still Parsing'))
->appendChild( ->appendChild(
pht( pht(
@ -79,9 +79,9 @@ final class DiffusionCommitController extends DiffusionController {
if ($is_foreign) { if ($is_foreign) {
$subpath = $commit_data->getCommitDetail('svn-subpath'); $subpath = $commit_data->getCommitDetail('svn-subpath');
$error_panel = new AphrontErrorView(); $error_panel = new PHUIErrorView();
$error_panel->setTitle(pht('Commit Not Tracked')); $error_panel->setTitle(pht('Commit Not Tracked'));
$error_panel->setSeverity(AphrontErrorView::SEVERITY_WARNING); $error_panel->setSeverity(PHUIErrorView::SEVERITY_WARNING);
$error_panel->appendChild( $error_panel->appendChild(
pht("This Diffusion repository is configured to track only one ". pht("This Diffusion repository is configured to track only one ".
"subdirectory of the entire Subversion repository, and this commit ". "subdirectory of the entire Subversion repository, and this commit ".
@ -251,8 +251,8 @@ final class DiffusionCommitController extends DiffusionController {
->setTag('a') ->setTag('a')
->setIcon($icon); ->setIcon($icon);
$warning_view = id(new AphrontErrorView()) $warning_view = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_WARNING) ->setSeverity(PHUIErrorView::SEVERITY_WARNING)
->setTitle('Very Large Commit') ->setTitle('Very Large Commit')
->appendChild( ->appendChild(
pht('This commit is very large. Load each file individually.')); pht('This commit is very large. Load each file individually.'));

View file

@ -243,8 +243,8 @@ abstract class DiffusionController extends PhabricatorController {
} }
protected function renderStatusMessage($title, $body) { protected function renderStatusMessage($title, $body) {
return id(new AphrontErrorView()) return id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_WARNING) ->setSeverity(PHUIErrorView::SEVERITY_WARNING)
->setTitle($title) ->setTitle($title)
->appendChild($body); ->appendChild($body);
} }

View file

@ -69,9 +69,9 @@ final class DiffusionExternalController extends DiffusionController {
} }
$desc .= $id; $desc .= $id;
$content = id(new AphrontErrorView()) $content = id(new PHUIErrorView())
->setTitle(pht('Unknown External')) ->setTitle(pht('Unknown External'))
->setSeverity(AphrontErrorView::SEVERITY_WARNING) ->setSeverity(PHUIErrorView::SEVERITY_WARNING)
->appendChild(phutil_tag( ->appendChild(phutil_tag(
'p', 'p',
array(), array(),

View file

@ -84,7 +84,7 @@ final class DiffusionMirrorEditController
$form_errors = null; $form_errors = null;
if ($errors) { if ($errors) {
$form_errors = id(new AphrontErrorView()) $form_errors = id(new PHUIErrorView())
->setErrors($errors); ->setErrors($errors);
} }

View file

@ -68,9 +68,9 @@ final class DiffusionRepositoryController extends DiffusionController {
if ($page_has_content) { if ($page_has_content) {
$content[] = $this->buildNormalContent($drequest); $content[] = $this->buildNormalContent($drequest);
} else { } else {
$content[] = id(new AphrontErrorView()) $content[] = id(new PHUIErrorView())
->setTitle($empty_title) ->setTitle($empty_title)
->setSeverity(AphrontErrorView::SEVERITY_WARNING) ->setSeverity(PHUIErrorView::SEVERITY_WARNING)
->setErrors(array($empty_message)); ->setErrors(array($empty_message));
} }

View file

@ -258,8 +258,8 @@ final class DiffusionSetPasswordSettingsPanel extends PhabricatorSettingsPanel {
$saved = null; $saved = null;
if ($request->getBool('saved')) { if ($request->getBool('saved')) {
$saved = id(new AphrontErrorView()) $saved = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setTitle(pht('Password Updated')) ->setTitle(pht('Password Updated'))
->appendChild(pht('Your VCS password has been updated.')); ->appendChild(pht('Your VCS password has been updated.'));
} }

View file

@ -33,12 +33,12 @@ final class DiffusionEmptyResultView extends DiffusionView {
// TODO: Under git, this error message should be more specific. It // TODO: Under git, this error message should be more specific. It
// may exist on some other branch. // may exist on some other branch.
$body = pht('This path does not exist anywhere.'); $body = pht('This path does not exist anywhere.');
$severity = AphrontErrorView::SEVERITY_ERROR; $severity = PHUIErrorView::SEVERITY_ERROR;
break; break;
case DiffusionBrowseResultSet::REASON_IS_EMPTY: case DiffusionBrowseResultSet::REASON_IS_EMPTY:
$title = pht('Empty Directory'); $title = pht('Empty Directory');
$body = pht("This path was an empty directory at %s.\n", $commit); $body = pht("This path was an empty directory at %s.\n", $commit);
$severity = AphrontErrorView::SEVERITY_NOTICE; $severity = PHUIErrorView::SEVERITY_NOTICE;
break; break;
case DiffusionBrowseResultSet::REASON_IS_DELETED: case DiffusionBrowseResultSet::REASON_IS_DELETED:
$deleted = $this->browseResultSet->getDeletedAtCommit(); $deleted = $this->browseResultSet->getDeletedAtCommit();
@ -60,7 +60,7 @@ final class DiffusionEmptyResultView extends DiffusionView {
self::linkCommit($drequest->getRepository(), $deleted), self::linkCommit($drequest->getRepository(), $deleted),
$browse, $browse,
"r{$callsign}{$existed}"); "r{$callsign}{$existed}");
$severity = AphrontErrorView::SEVERITY_WARNING; $severity = PHUIErrorView::SEVERITY_WARNING;
break; break;
case DiffusionBrowseResultSet::REASON_IS_UNTRACKED_PARENT: case DiffusionBrowseResultSet::REASON_IS_UNTRACKED_PARENT:
$subdir = $drequest->getRepository()->getDetail('svn-subpath'); $subdir = $drequest->getRepository()->getDetail('svn-subpath');
@ -70,13 +70,13 @@ final class DiffusionEmptyResultView extends DiffusionView {
"of the entire repository ('%s'), ". "of the entire repository ('%s'), ".
"but you aren't looking at something in that subdirectory, so no ". "but you aren't looking at something in that subdirectory, so no ".
"information is available.", $subdir); "information is available.", $subdir);
$severity = AphrontErrorView::SEVERITY_WARNING; $severity = PHUIErrorView::SEVERITY_WARNING;
break; break;
default: default:
throw new Exception("Unknown failure reason: $reason"); throw new Exception("Unknown failure reason: $reason");
} }
$error_view = new AphrontErrorView(); $error_view = new PHUIErrorView();
$error_view->setSeverity($severity); $error_view->setSeverity($severity);
$error_view->setTitle($title); $error_view->setTitle($title);
$error_view->appendChild(phutil_tag('p', array(), $body)); $error_view->appendChild(phutil_tag('p', array(), $body));

View file

@ -92,10 +92,10 @@ final class DivinerAtomController extends DivinerController {
$warnings = $atom->getWarnings(); $warnings = $atom->getWarnings();
if ($warnings) { if ($warnings) {
$warnings = id(new AphrontErrorView()) $warnings = id(new PHUIErrorView())
->setErrors($warnings) ->setErrors($warnings)
->setTitle(pht('Documentation Warnings')) ->setTitle(pht('Documentation Warnings'))
->setSeverity(AphrontErrorView::SEVERITY_WARNING); ->setSeverity(PHUIErrorView::SEVERITY_WARNING);
} }
$methods = $this->composeMethods($symbol); $methods = $this->composeMethods($symbol);

View file

@ -97,8 +97,8 @@ final class PhabricatorFactHomeController extends PhabricatorFactController {
} }
if (!$options) { if (!$options) {
return id(new AphrontErrorView()) return id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setTitle(pht('No Chartable Facts')) ->setTitle(pht('No Chartable Facts'))
->appendChild(phutil_tag( ->appendChild(phutil_tag(
'p', 'p',

View file

@ -63,7 +63,7 @@ final class HarbormasterPlanRunController extends HarbormasterController {
} }
if ($errors) { if ($errors) {
$errors = id(new AphrontErrorView())->setErrors($errors); $errors = id(new PHUIErrorView())->setErrors($errors);
} }
$title = pht('Run Build Plan Manually'); $title = pht('Run Build Plan Manually');

View file

@ -50,7 +50,7 @@ final class HarbormasterStepAddController extends HarbormasterController {
} }
if ($errors) { if ($errors) {
$errors = id(new AphrontErrorView()) $errors = id(new PHUIErrorView())
->setErrors($errors); ->setErrors($errors);
} }

View file

@ -42,8 +42,8 @@ final class HeraldTranscriptController extends HeraldController {
$object_xscript = $xscript->getObjectTranscript(); $object_xscript = $xscript->getObjectTranscript();
if (!$object_xscript) { if (!$object_xscript) {
$notice = id(new AphrontErrorView()) $notice = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setTitle(pht('Old Transcript')) ->setTitle(pht('Old Transcript'))
->appendChild(phutil_tag( ->appendChild(phutil_tag(
'p', 'p',
@ -75,8 +75,8 @@ final class HeraldTranscriptController extends HeraldController {
$this->handles = $handles; $this->handles = $handles;
if ($xscript->getDryRun()) { if ($xscript->getDryRun()) {
$notice = new AphrontErrorView(); $notice = new PHUIErrorView();
$notice->setSeverity(AphrontErrorView::SEVERITY_NOTICE); $notice->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
$notice->setTitle(pht('Dry Run')); $notice->setTitle(pht('Dry Run'));
$notice->appendChild(pht('This was a dry run to test Herald '. $notice->appendChild(pht('This was a dry run to test Herald '.
'rules, no actions were executed.')); 'rules, no actions were executed.'));
@ -319,8 +319,8 @@ final class HeraldTranscriptController extends HeraldController {
} else { } else {
return $panel; return $panel;
} }
$panel = id(new AphrontErrorView()) $panel = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_WARNING) ->setSeverity(PHUIErrorView::SEVERITY_WARNING)
->setTitle($title) ->setTitle($title)
->appendChild($body); ->appendChild($body);
} }

View file

@ -65,8 +65,8 @@ final class LegalpadDocumentSignController extends LegalpadController {
// If they aren't logged in, we can't be as sure, so don't show // If they aren't logged in, we can't be as sure, so don't show
// anything. // anything.
if ($viewer->isLoggedIn()) { if ($viewer->isLoggedIn()) {
$signed_status = id(new AphrontErrorView()) $signed_status = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_WARNING) ->setSeverity(PHUIErrorView::SEVERITY_WARNING)
->setErrors( ->setErrors(
array( array(
pht('You have not signed this document yet.'), pht('You have not signed this document yet.'),
@ -95,8 +95,8 @@ final class LegalpadDocumentSignController extends LegalpadController {
phabricator_datetime($signed_at, $viewer)); phabricator_datetime($signed_at, $viewer));
} }
$signed_status = id(new AphrontErrorView()) $signed_status = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setErrors(array($signed_text)); ->setErrors(array($signed_text));
} }
@ -121,8 +121,8 @@ final class LegalpadDocumentSignController extends LegalpadController {
$login_text = pht( $login_text = pht(
'This document requires a corporate signatory. You must log in to '. 'This document requires a corporate signatory. You must log in to '.
'accept this document on behalf of a company you represent.'); 'accept this document on behalf of a company you represent.');
$signed_status = id(new AphrontErrorView()) $signed_status = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_WARNING) ->setSeverity(PHUIErrorView::SEVERITY_WARNING)
->setErrors(array($login_text)); ->setErrors(array($login_text));
} }
@ -254,7 +254,7 @@ final class LegalpadDocumentSignController extends LegalpadController {
if (!$has_signed) { if (!$has_signed) {
$error_view = null; $error_view = null;
if ($errors) { if ($errors) {
$error_view = id(new AphrontErrorView()) $error_view = id(new PHUIErrorView())
->setErrors($errors); ->setErrors($errors);
} }

View file

@ -293,8 +293,8 @@ final class LegalpadDocumentSignatureSearchEngine
->appendChild($table); ->appendChild($table);
if (!$this->document) { if (!$this->document) {
$policy_notice = id(new AphrontErrorView()) $policy_notice = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setErrors( ->setErrors(
array( array(
pht( pht(

View file

@ -261,9 +261,9 @@ final class ManiphestReportController extends ManiphestController {
} }
if ($caption) { if ($caption) {
$caption = id(new AphrontErrorView()) $caption = id(new PHUIErrorView())
->appendChild($caption) ->appendChild($caption)
->setSeverity(AphrontErrorView::SEVERITY_NOTICE); ->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
} }
$panel = new PHUIObjectBoxView(); $panel = new PHUIObjectBoxView();

View file

@ -522,7 +522,7 @@ final class ManiphestTaskEditController extends ManiphestController {
$error_view = null; $error_view = null;
if ($errors) { if ($errors) {
$error_view = new AphrontErrorView(); $error_view = new PHUIErrorView();
$error_view->setErrors($errors); $error_view->setErrors($errors);
} }
@ -692,7 +692,7 @@ final class ManiphestTaskEditController extends ManiphestController {
$field_list->appendFieldsToForm($form); $field_list->appendFieldsToForm($form);
require_celerity_resource('aphront-error-view-css'); require_celerity_resource('phui-error-view-css');
Javelin::initBehavior('project-create', array( Javelin::initBehavior('project-create', array(
'tokenizerID' => $project_tokenizer_id, 'tokenizerID' => $project_tokenizer_id,

View file

@ -247,7 +247,7 @@ final class PhabricatorApplicationEditEmailController
} }
if ($errors) { if ($errors) {
$errors = id(new AphrontErrorView()) $errors = id(new PHUIErrorView())
->setErrors($errors); ->setErrors($errors);
} }

View file

@ -8,7 +8,7 @@ final class PhabricatorNotificationStatusController
$status = PhabricatorNotificationClient::getServerStatus(); $status = PhabricatorNotificationClient::getServerStatus();
$status = $this->renderServerStatus($status); $status = $this->renderServerStatus($status);
} catch (Exception $ex) { } catch (Exception $ex) {
$status = new AphrontErrorView(); $status = new PHUIErrorView();
$status->setTitle('Notification Server Issue'); $status->setTitle('Notification Server Issue');
$status->appendChild(hsprintf( $status->appendChild(hsprintf(
'Unable to determine server status. This probably means the server '. 'Unable to determine server status. This probably means the server '.

View file

@ -55,8 +55,8 @@ abstract class PhabricatorOAuthServerController
} }
protected function buildErrorView($error_message) { protected function buildErrorView($error_message) {
$error = new AphrontErrorView(); $error = new PHUIErrorView();
$error->setSeverity(AphrontErrorView::SEVERITY_ERROR); $error->setSeverity(PHUIErrorView::SEVERITY_ERROR);
$error->setTitle($error_message); $error->setTitle($error_message);
return $error; return $error;

View file

@ -322,7 +322,7 @@ final class PassphraseCredentialEditController extends PassphraseController {
if ($request->isAjax()) { if ($request->isAjax()) {
if ($errors) { if ($errors) {
$errors = id(new AphrontErrorView())->setErrors($errors); $errors = id(new PHUIErrorView())->setErrors($errors);
} }
$dialog = id(new AphrontDialogView()) $dialog = id(new AphrontDialogView())

View file

@ -69,8 +69,8 @@ final class PhabricatorPeopleLdapController
$emails = $request->getArr('email'); $emails = $request->getArr('email');
$names = $request->getArr('name'); $names = $request->getArr('name');
$notice_view = new AphrontErrorView(); $notice_view = new PHUIErrorView();
$notice_view->setSeverity(AphrontErrorView::SEVERITY_NOTICE); $notice_view->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
$notice_view->setTitle(pht('Import Successful')); $notice_view->setTitle(pht('Import Successful'));
$notice_view->setErrors(array( $notice_view->setErrors(array(
pht('Successfully imported users from LDAP'), pht('Successfully imported users from LDAP'),

View file

@ -101,7 +101,7 @@ final class PhabricatorPeopleRenameController
->setError($e_username)); ->setError($e_username));
if ($errors) { if ($errors) {
$errors = id(new AphrontErrorView())->setErrors($errors); $errors = id(new PHUIErrorView())->setErrors($errors);
} }
return $this->newDialog() return $this->newDialog()

View file

@ -95,8 +95,8 @@ abstract class PhameController extends PhabricatorController {
} }
if (empty($stories)) { if (empty($stories)) {
return id(new AphrontErrorView()) return id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NODATA) ->setSeverity(PHUIErrorView::SEVERITY_NODATA)
->appendChild($nodata); ->appendChild($nodata);
} }

View file

@ -70,8 +70,8 @@ final class PhamePostNewController extends PhameController {
$nav->appendChild($crumbs); $nav->appendChild($crumbs);
if (!$blogs) { if (!$blogs) {
$notification = id(new AphrontErrorView()) $notification = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NODATA) ->setSeverity(PHUIErrorView::SEVERITY_NODATA)
->appendChild( ->appendChild(
pht('You do not have permission to join any blogs. Create a blog '. pht('You do not have permission to join any blogs. Create a blog '.
'first, then you can post to it.')); 'first, then you can post to it.'));

View file

@ -49,8 +49,8 @@ final class PhamePostViewController extends PhameController {
if ($post->isDraft()) { if ($post->isDraft()) {
$object_box->appendChild( $object_box->appendChild(
id(new AphrontErrorView()) id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setTitle(pht('Draft Post')) ->setTitle(pht('Draft Post'))
->appendChild( ->appendChild(
pht('Only you can see this draft until you publish it. '. pht('Only you can see this draft until you publish it. '.
@ -59,8 +59,8 @@ final class PhamePostViewController extends PhameController {
if (!$post->getBlog()) { if (!$post->getBlog()) {
$object_box->appendChild( $object_box->appendChild(
id(new AphrontErrorView()) id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_WARNING) ->setSeverity(PHUIErrorView::SEVERITY_WARNING)
->setTitle(pht('Not On A Blog')) ->setTitle(pht('Not On A Blog'))
->appendChild( ->appendChild(
pht('This post is not associated with a blog (the blog may have '. pht('This post is not associated with a blog (the blog may have '.

View file

@ -86,8 +86,8 @@ final class PhortuneCartViewController
} }
break; break;
case PhortuneCart::STATUS_PURCHASED: case PhortuneCart::STATUS_PURCHASED:
$error_view = id(new AphrontErrorView()) $error_view = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->appendChild(pht('This purchase has been completed.')); ->appendChild(pht('This purchase has been completed.'));
break; break;

View file

@ -125,7 +125,7 @@ final class PhortunePaymentMethodCreateController
$dialog = id(new AphrontDialogView()) $dialog = id(new AphrontDialogView())
->setUser($viewer) ->setUser($viewer)
->setTitle(pht('Error Adding Payment Method')) ->setTitle(pht('Error Adding Payment Method'))
->appendChild(id(new AphrontErrorView())->setErrors($errors)) ->appendChild(id(new PHUIErrorView())->setErrors($errors))
->addCancelButton($request->getRequestURI()); ->addCancelButton($request->getRequestURI());
return id(new AphrontDialogResponse())->setDialog($dialog); return id(new AphrontDialogResponse())->setDialog($dialog);

View file

@ -204,9 +204,9 @@ abstract class PhragmentController extends PhabricatorController {
public function renderConfigurationWarningIfRequired() { public function renderConfigurationWarningIfRequired() {
$alt = PhabricatorEnv::getEnvConfig('security.alternate-file-domain'); $alt = PhabricatorEnv::getEnvConfig('security.alternate-file-domain');
if ($alt === null) { if ($alt === null) {
return id(new AphrontErrorView()) return id(new PHUIErrorView())
->setTitle(pht('security.alternate-file-domain must be configured!')) ->setTitle(pht('security.alternate-file-domain must be configured!'))
->setSeverity(AphrontErrorView::SEVERITY_ERROR) ->setSeverity(PHUIErrorView::SEVERITY_ERROR)
->appendChild(phutil_tag('p', array(), pht( ->appendChild(phutil_tag('p', array(), pht(
'Because Phragment generates files (such as ZIP archives and '. 'Because Phragment generates files (such as ZIP archives and '.
'patches) as they are requested, it requires that you configure '. 'patches) as they are requested, it requires that you configure '.

View file

@ -64,7 +64,7 @@ final class PhragmentCreateController extends PhragmentController {
return id(new AphrontRedirectResponse()) return id(new AphrontRedirectResponse())
->setURI('/phragment/browse/'.trim($parent_path.'/'.$v_name, '/')); ->setURI('/phragment/browse/'.trim($parent_path.'/'.$v_name, '/'));
} else { } else {
$error_view = id(new AphrontErrorView()) $error_view = id(new PHUIErrorView())
->setErrors($errors) ->setErrors($errors)
->setTitle(pht('Errors while creating fragment')); ->setTitle(pht('Errors while creating fragment'));
} }

View file

@ -43,7 +43,7 @@ final class PhragmentUpdateController extends PhragmentController {
return id(new AphrontRedirectResponse()) return id(new AphrontRedirectResponse())
->setURI('/phragment/browse/'.$fragment->getPath()); ->setURI('/phragment/browse/'.$fragment->getPath());
} else { } else {
$error_view = id(new AphrontErrorView()) $error_view = id(new PHUIErrorView())
->setErrors($errors) ->setErrors($errors)
->setTitle(pht('Errors while updating fragment')); ->setTitle(pht('Errors while updating fragment'));
} }

View file

@ -42,8 +42,8 @@ final class PhrictionDocumentController
$create_uri = '/phriction/edit/?slug='.$slug; $create_uri = '/phriction/edit/?slug='.$slug;
$notice = new AphrontErrorView(); $notice = new PHUIErrorView();
$notice->setSeverity(AphrontErrorView::SEVERITY_NODATA); $notice->setSeverity(PHUIErrorView::SEVERITY_NODATA);
$notice->setTitle(pht('No content here!')); $notice->setTitle(pht('No content here!'));
$notice->appendChild( $notice->appendChild(
pht( pht(
@ -67,8 +67,8 @@ final class PhrictionDocumentController
if ($content->getID() != $document->getContentID()) { if ($content->getID() != $document->getContentID()) {
$vdate = phabricator_datetime($content->getDateCreated(), $user); $vdate = phabricator_datetime($content->getDateCreated(), $user);
$version_note = new AphrontErrorView(); $version_note = new PHUIErrorView();
$version_note->setSeverity(AphrontErrorView::SEVERITY_NOTICE); $version_note->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
$version_note->appendChild( $version_note->appendChild(
pht('You are viewing an older version of this document, as it '. pht('You are viewing an older version of this document, as it '.
'appeared on %s.', $vdate)); 'appeared on %s.', $vdate));
@ -88,16 +88,16 @@ final class PhrictionDocumentController
$core_content = $content->renderContent($user); $core_content = $content->renderContent($user);
} else if ($current_status == PhrictionChangeType::CHANGE_DELETE) { } else if ($current_status == PhrictionChangeType::CHANGE_DELETE) {
$notice = new AphrontErrorView(); $notice = new PHUIErrorView();
$notice->setSeverity(AphrontErrorView::SEVERITY_NOTICE); $notice->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
$notice->setTitle(pht('Document Deleted')); $notice->setTitle(pht('Document Deleted'));
$notice->appendChild( $notice->appendChild(
pht('This document has been deleted. You can edit it to put new '. pht('This document has been deleted. You can edit it to put new '.
'content here, or use history to revert to an earlier version.')); 'content here, or use history to revert to an earlier version.'));
$core_content = $notice->render(); $core_content = $notice->render();
} else if ($current_status == PhrictionChangeType::CHANGE_STUB) { } else if ($current_status == PhrictionChangeType::CHANGE_STUB) {
$notice = new AphrontErrorView(); $notice = new PHUIErrorView();
$notice->setSeverity(AphrontErrorView::SEVERITY_NOTICE); $notice->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
$notice->setTitle(pht('Empty Document')); $notice->setTitle(pht('Empty Document'));
$notice->appendChild( $notice->appendChild(
pht('This document is empty. You can edit it to put some proper '. pht('This document is empty. You can edit it to put some proper '.
@ -119,8 +119,8 @@ final class PhrictionDocumentController
$slug_uri = PhrictionDocument::getSlugURI($new_doc->getSlug()); $slug_uri = PhrictionDocument::getSlugURI($new_doc->getSlug());
} }
$notice = id(new AphrontErrorView()) $notice = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE); ->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
if ($slug_uri) { if ($slug_uri) {
$notice->appendChild( $notice->appendChild(
@ -164,8 +164,8 @@ final class PhrictionDocumentController
$slug_uri = PhrictionDocument::getSlugURI($from_doc->getSlug()); $slug_uri = PhrictionDocument::getSlugURI($from_doc->getSlug());
} }
$move_notice = id(new AphrontErrorView()) $move_notice = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE); ->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
if ($slug_uri) { if ($slug_uri) {
$move_notice->appendChild( $move_notice->appendChild(

View file

@ -94,8 +94,8 @@ final class PhrictionEditController
), ),
pht('discard this draft')); pht('discard this draft'));
$draft_note = new AphrontErrorView(); $draft_note = new PHUIErrorView();
$draft_note->setSeverity(AphrontErrorView::SEVERITY_NOTICE); $draft_note->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
$draft_note->setTitle('Recovered Draft'); $draft_note->setTitle('Recovered Draft');
$draft_note->appendChild(hsprintf( $draft_note->appendChild(hsprintf(
'<p>Showing a saved draft of your edits, you can %s.</p>', '<p>Showing a saved draft of your edits, you can %s.</p>',

View file

@ -138,7 +138,7 @@ final class PhabricatorPolicyEditController
)); ));
if ($errors) { if ($errors) {
$errors = id(new AphrontErrorView()) $errors = id(new PHUIErrorView())
->setErrors($errors); ->setErrors($errors);
} }

View file

@ -30,8 +30,8 @@ final class PonderQuestionViewController extends PonderController {
$authors = mpull($question->getAnswers(), null, 'getAuthorPHID'); $authors = mpull($question->getAnswers(), null, 'getAuthorPHID');
if (isset($authors[$user->getPHID()])) { if (isset($authors[$user->getPHID()])) {
$answer_add_panel = id(new AphrontErrorView()) $answer_add_panel = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NODATA) ->setSeverity(PHUIErrorView::SEVERITY_NODATA)
->appendChild( ->appendChild(
pht( pht(
'You have already answered this question. You can not answer '. 'You have already answered this question. You can not answer '.

View file

@ -210,8 +210,8 @@ final class ReleephRequestEditController extends ReleephBranchController {
$age_string, $age_string,
$handles[$pull->getRequestUserPHID()]->renderLink()), $handles[$pull->getRequestUserPHID()]->renderLink()),
); );
$notice_view = id(new AphrontErrorView()) $notice_view = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->setErrors($notice_messages); ->setErrors($notice_messages);
} }

View file

@ -161,7 +161,7 @@ final class PhabricatorApplicationSearchController
$errors = $engine->getErrors(); $errors = $engine->getErrors();
if ($errors) { if ($errors) {
$run_query = false; $run_query = false;
$errors = id(new AphrontErrorView()) $errors = id(new PHUIErrorView())
->setTitle(pht('Query Errors')) ->setTitle(pht('Query Errors'))
->setErrors($errors); ->setErrors($errors);
} }

View file

@ -61,8 +61,8 @@ final class PhabricatorConduitCertificateSettingsPanel
} }
if ($request->getStr('regenerated')) { if ($request->getStr('regenerated')) {
$notice = new AphrontErrorView(); $notice = new PHUIErrorView();
$notice->setSeverity(AphrontErrorView::SEVERITY_NOTICE); $notice->setSeverity(PHUIErrorView::SEVERITY_NOTICE);
$notice->setTitle(pht('Certificate Regenerated')); $notice->setTitle(pht('Certificate Regenerated'));
$notice->appendChild(phutil_tag( $notice->appendChild(phutil_tag(
'p', 'p',

View file

@ -228,7 +228,7 @@ final class PhabricatorEmailAddressesSettingsPanel
} }
if ($errors) { if ($errors) {
$errors = id(new AphrontErrorView()) $errors = id(new PHUIErrorView())
->setErrors($errors); ->setErrors($errors);
} }

View file

@ -41,6 +41,7 @@ final class PhabricatorUIExampleRenderController extends PhabricatorController {
require_celerity_resource('phabricator-ui-example-css'); require_celerity_resource('phabricator-ui-example-css');
$crumbs = $this->buildApplicationCrumbs(); $crumbs = $this->buildApplicationCrumbs();
$crumbs->setBorder(true);
$crumbs->addTextCrumb($example->getName()); $crumbs->addTextCrumb($example->getName());
$header = id(new PHUIHeaderView()) $header = id(new PHUIHeaderView())

View file

@ -0,0 +1,69 @@
<?php
final class PHUIErrorExample extends PhabricatorUIExample {
public function getName() {
return 'Errors';
}
public function getDescription() {
return hsprintf(
'Use <tt>PHUIErrorView</tt> to render errors, warnings and notices.');
}
public function renderExample() {
$request = $this->getRequest();
$user = $request->getUser();
$sevs = array(
PHUIErrorView::SEVERITY_ERROR => 'Error',
PHUIErrorView::SEVERITY_WARNING => 'Warning',
PHUIErrorView::SEVERITY_NOTICE => 'Notice',
PHUIErrorView::SEVERITY_NODATA => 'No Data',
);
$views = array();
// Only Title
foreach ($sevs as $sev => $title) {
$view = new PHUIErrorView();
$view->setSeverity($sev);
$view->setTitle($title);
$views[] = $view;
}
// Only Body
foreach ($sevs as $sev => $title) {
$view = new PHUIErrorView();
$view->setSeverity($sev);
$view->appendChild('Several issues were encountered.');
$views[] = $view;
}
// Only Errors
foreach ($sevs as $sev => $title) {
$view = new PHUIErrorView();
$view->setSeverity($sev);
$view->setErrors(
array(
'Overcooked.',
'Too much salt.',
'Full of sand.',
));
$views[] = $view;
}
// All
foreach ($sevs as $sev => $title) {
$view = new PHUIErrorView();
$view->setSeverity($sev);
$view->setTitle($title);
$view->appendChild('Several issues were encountered.');
$view->setErrors(
array(
'Overcooked.',
'Too much salt.',
'Full of sand.',
));
$views[] = $view;
}
return $views;
}
}

View file

@ -1,42 +0,0 @@
<?php
final class PhabricatorErrorUIExample extends PhabricatorUIExample {
public function getName() {
return 'Errors';
}
public function getDescription() {
return hsprintf(
'Use <tt>AphrontErrorView</tt> to render errors, warnings and notices.');
}
public function renderExample() {
$request = $this->getRequest();
$user = $request->getUser();
$sevs = array(
AphrontErrorView::SEVERITY_ERROR => 'Error',
AphrontErrorView::SEVERITY_WARNING => 'Warning',
AphrontErrorView::SEVERITY_NOTICE => 'Notice',
AphrontErrorView::SEVERITY_NODATA => 'No Data',
);
$views = array();
foreach ($sevs as $sev => $title) {
$view = new AphrontErrorView();
$view->setSeverity($sev);
$view->setTitle($title);
$view->appendChild('Several issues were encountered.');
$view->setErrors(
array(
'Overcooked.',
'Too much salt.',
'Full of sand.',
));
$views[] = $view;
}
return $views;
}
}

View file

@ -292,7 +292,7 @@ final class AphrontDialogView extends AphrontView {
if ($errors) { if ($errors) {
$children = array( $children = array(
id(new AphrontErrorView())->setErrors($errors), id(new PHUIErrorView())->setErrors($errors),
$children, $children,
); );
} }

View file

@ -1,6 +1,6 @@
<?php <?php
final class AphrontErrorView extends AphrontView { final class PHUIErrorView extends AphrontView {
const SEVERITY_ERROR = 'error'; const SEVERITY_ERROR = 'error';
const SEVERITY_WARNING = 'warning'; const SEVERITY_WARNING = 'warning';
@ -34,7 +34,7 @@ final class AphrontErrorView extends AphrontView {
final public function render() { final public function render() {
require_celerity_resource('aphront-error-view-css'); require_celerity_resource('phui-error-view-css');
$errors = $this->errors; $errors = $this->errors;
if ($errors) { if ($errors) {
@ -48,7 +48,7 @@ final class AphrontErrorView extends AphrontView {
$list = phutil_tag( $list = phutil_tag(
'ul', 'ul',
array( array(
'class' => 'aphront-error-view-list', 'class' => 'phui-error-view-list',
), ),
$list); $list);
} else { } else {
@ -60,7 +60,7 @@ final class AphrontErrorView extends AphrontView {
$title = phutil_tag( $title = phutil_tag(
'h1', 'h1',
array( array(
'class' => 'aphront-error-view-head', 'class' => 'phui-error-view-head',
), ),
$title); $title);
} else { } else {
@ -70,12 +70,24 @@ final class AphrontErrorView extends AphrontView {
$this->severity = nonempty($this->severity, self::SEVERITY_ERROR); $this->severity = nonempty($this->severity, self::SEVERITY_ERROR);
$classes = array(); $classes = array();
$classes[] = 'aphront-error-view'; $classes[] = 'phui-error-view';
$classes[] = 'aphront-error-severity-'.$this->severity; $classes[] = 'phui-error-severity-'.$this->severity;
$classes = implode(' ', $classes); $classes = implode(' ', $classes);
$children = $this->renderChildren(); $children = $this->renderChildren();
if ($list) {
$children[] = $list; $children[] = $list;
}
$body = null;
if (!empty($children)) {
$body = phutil_tag(
'div',
array(
'class' => 'phui-error-view-body',
),
$children);
}
return phutil_tag( return phutil_tag(
'div', 'div',
@ -85,12 +97,7 @@ final class AphrontErrorView extends AphrontView {
), ),
array( array(
$title, $title,
phutil_tag( $body,
'div',
array(
'class' => 'aphront-error-view-body',
),
$children),
)); ));
} }
} }

View file

@ -93,7 +93,7 @@ final class PHUIObjectBoxView extends AphrontView {
public function setFormErrors(array $errors, $title = null) { public function setFormErrors(array $errors, $title = null) {
if ($errors) { if ($errors) {
$this->formErrors = id(new AphrontErrorView()) $this->formErrors = id(new PHUIErrorView())
->setTitle($title) ->setTitle($title)
->setErrors($errors); ->setErrors($errors);
} }
@ -105,15 +105,15 @@ final class PHUIObjectBoxView extends AphrontView {
$text = pht('Changes saved.'); $text = pht('Changes saved.');
} }
if ($saved) { if ($saved) {
$save = id(new AphrontErrorView()) $save = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NOTICE) ->setSeverity(PHUIErrorView::SEVERITY_NOTICE)
->appendChild($text); ->appendChild($text);
$this->formSaved = $save; $this->formSaved = $save;
} }
return $this; return $this;
} }
public function setErrorView(AphrontErrorView $view) { public function setErrorView(PHUIErrorView $view) {
$this->errorView = $view; $this->errorView = $view;
return $this; return $this;
} }
@ -192,7 +192,7 @@ final class PHUIObjectBoxView extends AphrontView {
$messages[] = $error->getMessage(); $messages[] = $error->getMessage();
} }
if ($messages) { if ($messages) {
$exception_errors = id(new AphrontErrorView()) $exception_errors = id(new PHUIErrorView())
->setErrors($messages); ->setErrors($messages);
} }
} }

View file

@ -108,8 +108,8 @@ final class PHUIObjectItemListView extends AphrontTagView {
$items = null; $items = null;
} else { } else {
$string = nonempty($this->noDataString, pht('No data.')); $string = nonempty($this->noDataString, pht('No data.'));
$string = id(new AphrontErrorView()) $string = id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NODATA) ->setSeverity(PHUIErrorView::SEVERITY_NODATA)
->appendChild($string); ->appendChild($string);
$items = phutil_tag( $items = phutil_tag(
'li', 'li',

View file

@ -20,8 +20,8 @@ final class PHUIPinboardView extends AphrontView {
if (!$this->items) { if (!$this->items) {
$string = nonempty($this->noDataString, pht('No data.')); $string = nonempty($this->noDataString, pht('No data.'));
return id(new AphrontErrorView()) return id(new PHUIErrorView())
->setSeverity(AphrontErrorView::SEVERITY_NODATA) ->setSeverity(PHUIErrorView::SEVERITY_NODATA)
->appendChild($string) ->appendChild($string)
->render(); ->render();
} }

View file

@ -9,6 +9,7 @@ final class PHUICalendarMonthView extends AphrontView {
private $events = array(); private $events = array();
private $browseURI; private $browseURI;
private $image; private $image;
private $error;
public function setBrowseURI($browse_uri) { public function setBrowseURI($browse_uri) {
$this->browseURI = $browse_uri; $this->browseURI = $browse_uri;
@ -28,6 +29,11 @@ final class PHUICalendarMonthView extends AphrontView {
return $this; return $this;
} }
public function setErrorView(PHUIErrorView $error) {
$this->error = $error;
return $this;
}
public function setHolidays(array $holidays) { public function setHolidays(array $holidays) {
assert_instances_of($holidays, 'PhabricatorCalendarHoliday'); assert_instances_of($holidays, 'PhabricatorCalendarHoliday');
$this->holidays = mpull($holidays, null, 'getDay'); $this->holidays = mpull($holidays, null, 'getDay');
@ -185,6 +191,10 @@ final class PHUICalendarMonthView extends AphrontView {
$box = id(new PHUIObjectBoxView()) $box = id(new PHUIObjectBoxView())
->setHeader($this->renderCalendarHeader($first)) ->setHeader($this->renderCalendarHeader($first))
->appendChild($table); ->appendChild($table);
if ($this->error) {
$box->setErrorView($this->error);
}
return $box; return $box;
} }

View file

@ -1,95 +0,0 @@
/**
* @provides aphront-error-view-css
*/
.aphront-error-view {
border-style: solid;
border-width: 1px;
}
.aphront-error-view {
margin: 16px;
}
.device-phone .aphront-error-view {
margin: 8px;
}
.aphront-error-view .phui-form-view {
padding: 0;
}
.aphront-error-view-body {
padding: 12px;
}
.aphront-panel-plain .aphront-error-view {
margin-left: 0;
margin-right: 0;
}
h1.aphront-error-view-head {
padding: 12px 8px 0 12px;
font-weight: bold;
font-size: 15px;
color: {$darkgreytext};
}
.aphront-error-view-list {
margin: 0 0 0 16px;
list-style: disc;
}
.aphront-error-severity-error {
color: {$red};
border-color: {$red};
background: {$lightred};
}
.aphront-error-severity-error .aphront-error-view-head {
color: {$red};
}
.aphront-error-severity-warning {
color: #bc7837;
border-color: {$yellow};
background: {$lightyellow};
}
.aphront-error-severity-warning .aphront-error-view-head {
color: #bc7837;
}
.aphront-error-severity-notice {
color: {$blue};
border-color: {$blue};
background: {$lightblue};
}
.aphront-error-severity-notice .aphront-error-view-head {
color: {$blue};
}
.aphront-error-severity-nodata {
border-color: {$lightgreyborder};
border-bottom: 1px solid {$greyborder};
color: {$greytext};
background-color: #fff;
}
.legalpad .aphront-error-view {
margin: 0;
border-width: 0 0 1px 0;
border-bottom: 1px solid {$lightblueborder};
}
.aphront-dialog-body .aphront-error-view {
margin: -16px -16px 16px -16px;
border-width: 0 0 1px 0;
border-bottom: 1px solid {$lightblueborder};
}
.aphront-dialog-body .aphront-error-view .aphront-error-view-list {
margin: 0 0 0 16px;
list-style: disc;
}

View file

@ -66,7 +66,7 @@
.aphront-multi-column-fluid .aphront-multi-column-fluid
.aphront-multi-column-column-outer .aphront-multi-column-column-outer
.aphront-multi-column-column .aphront-error-view { .aphront-multi-column-column .phui-error-view {
margin: 0; margin: 0;
} }

View file

@ -25,7 +25,7 @@
max-width: 600px; max-width: 600px;
} }
.phame-post-list .aphront-error-view { .phame-post-list .phui-error-view {
margin: 0; margin: 0;
} }

View file

@ -0,0 +1,102 @@
/**
* @provides phui-error-view-css
*/
.phui-error-view {
border-style: solid;
border-left-width: 4px;
}
.phui-error-view {
margin: 16px;
padding: 12px;
}
.device-phone .phui-error-view {
margin: 8px;
}
.phui-error-view .phui-form-view {
padding: 0;
}
.phui-error-view-body {
line-height: 1.45em;
}
.phui-error-view-head + .phui-error-view-body {
padding-top: 4px;
}
.aphront-panel-plain .phui-error-view {
margin-left: 0;
margin-right: 0;
}
h1.phui-error-view-head {
font-weight: bold;
font-size: 15px;
}
.phui-error-view-list {
margin: 0 0 0 16px;
list-style: disc;
line-height: 1.5em;
}
.phui-error-severity-error {
border-color: {$red};
background: {$lightred};
}
.phui-error-severity-warning {
border-color: {$yellow};
background: {$lightyellow};
}
.phui-error-severity-notice {
border-color: {$blue};
background: {$lightblue};
}
.phui-error-severity-nodata {
border-color: {$lightgreyborder};
background-color: #fff;
}
.legalpad .phui-error-view {
margin: 0;
border-width: 0 0 1px 0;
border-bottom: 1px solid {$lightblueborder};
}
.aphront-dialog-body .phui-error-view {
margin: -16px -16px 16px -16px;
border-width: 0 0 1px 0;
border-bottom: 1px solid {$lightblueborder};
}
.aphront-dialog-body .phui-error-view .phui-error-view-list {
margin: 0 0 0 16px;
list-style: disc;
}
.phui-object-box .phui-error-severity-error {
color: {$red};
}
.phui-object-box .phui-error-severity-warning {
color: #bc7837;
}
.phui-object-box .phui-error-severity-notice {
color: {$blue};
}
.phui-crumbs-view + .phui-error-view {
margin-top: 0;
}
.phui-crumbs-view.phui-crumbs-border + .phui-error-view {
margin-top: 16px;
}

View file

@ -21,7 +21,7 @@ div.phui-object-box.phui-object-box-flush {
padding: 8px 0; padding: 8px 0;
} }
.phui-object-box .phui-header-shell + .aphront-error-view { .phui-object-box .phui-header-shell + .phui-error-view {
margin: 0; margin: 0;
border-width: 0; border-width: 0;
border-bottom: 1px solid {$lightblueborder}; border-bottom: 1px solid {$lightblueborder};

View file

@ -28,7 +28,7 @@ ul.phui-object-item-list-view {
margin: 0; margin: 0;
} }
.phui-object-item-list-view .aphront-error-view { .phui-object-item-list-view .phui-error-view {
margin: 4px 0 8px 0; margin: 4px 0 8px 0;
color: {$greytext}; color: {$greytext};
} }
@ -631,7 +631,7 @@ ul.phui-object-item-icons {
padding: 0; padding: 0;
} }
.phui-object-list-states .aphront-error-view { .phui-object-list-states .phui-error-view {
margin: 0; margin: 0;
border: none; border: none;
} }
@ -670,7 +670,7 @@ ul.phui-object-item-icons {
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
} }
.dashboard-panel .phui-object-item-empty .aphront-error-view { .dashboard-panel .phui-object-item-empty .phui-error-view {
border: none; border: none;
border-bottom: 1px solid {$thinblueborder}; border-bottom: 1px solid {$thinblueborder};
} }