MantisBT: master-2.0.x c30bfb84

Author Committer Branch Timestamp Parent
Paul Richards Paul Richards master-2.0.x 2012-11-11 18:40 master-2.0.x 21843420
Changeset

Remove ERROR_ constants and ERRORSTRINGS[...] translations
The new Locale API (using gettext) and the new Exception approach to
error handling in MantisBT means that ERROR
constants are now
unnecessary.

All exceptions have been updated to use gettext for translating error
strings. Because many of the error messages have been rewritten in the
process, translations have been dropped. It is expected that we'll need
to recommence translating MantisBT from scratch after the new Locale API
is fully implemented. Why?

  1. We need to support pluralisation.
  2. We need to factor in the context of strings that need translating.
  3. Many old error messages/strings are confusing and desperately in need
    of updating.
  4. A move towards modern web standards compliant HTML will greatly
    increase the number of strings needing translation: alt and title
    attributes on images and hyperlinks being just one example.
  5. Huge chunks of MantisBT are likely going to be rewritten or
    redesigned, dramatically changing the strings/error messages that need
    to be translated.

As part of this change error codes have also been removed from MantisBT
exceptions. These codes do not add any value because exception class
names already provide unique identification (that is superior than just
a random number).

Exception constructors are also heavily simplified -- now containing
just a single argument for the error message.

MantisBT\Error has also been cleaned up further in preparation for
removal/replacement with a modern exception handler/displayer. We no
longer have an error_handler: all errors are converted to exceptions of
type ErrorException and handled by exception_handler. This removes a lot
of duplication and complexity.

mod - core/classes/Exception/Access/AccessDenied.class.php Diff File
mod - core/classes/Exception/Access/InsufficientAccessLevel.class.php Diff File
mod - core/classes/Exception/Configuration/OptionInvalidValue.class.php Diff File
mod - core/classes/Exception/Configuration/OptionNotFound.class.php Diff File
mod - core/classes/Exception/CustomField/FieldNotFound.class.php Diff File
mod - core/classes/Exception/CustomField/InvalidDefinition.class.php Diff File
mod - core/classes/Exception/CustomField/NameNotUnique.class.php Diff File
mod - core/classes/Exception/CustomField/NotLinkedToProject.class.php Diff File
mod - core/classes/Exception/Database/ConnectionFailed.class.php Diff File
mod - core/classes/Exception/Database/QueryFailed.class.php Diff File
mod - core/classes/Exception/Email/AddressInvalid.class.php Diff File
mod - core/classes/Exception/Email/DisposableAddressNotAllowed.class.php Diff File
mod - core/classes/Exception/FTP/ConnectionFailed.class.php Diff File
mod - core/classes/Exception/Field/EmptyField.class.php Diff File
mod - core/classes/Exception/File/FileDuplicate.class.php Diff File
mod - core/classes/Exception/File/FileMoveFailed.class.php Diff File
mod - core/classes/Exception/File/FileNoUpload.class.php Diff File
mod - core/classes/Exception/File/FileTooBig.class.php Diff File
mod - core/classes/Exception/File/FileUploadFailed.class.php Diff File
mod - core/classes/Exception/Filter/FilterNotFound.class.php Diff File
mod - core/classes/Exception/Filter/FilterTooOldToUpgrade.class.php Diff File
mod - core/classes/Exception/Issue/Category/CategoryDuplicate.class.php Diff File
mod - core/classes/Exception/Issue/Category/CategoryNotFound.class.php Diff File
mod - core/classes/Exception/Issue/IssueDuplicateSelf.class.php Diff File
mod - core/classes/Exception/Issue/IssueNotFound.class.php Diff File
mod - core/classes/Exception/Issue/Relationship/RelationshipNotFound.class.php Diff File
mod - core/classes/Exception/Issue/Revision/RevisionNotFound.class.php Diff File
mod - core/classes/Exception/Issue/Tag/TagAlreadyAttached.class.php Diff File
mod - core/classes/Exception/Issue/Tag/TagNotAttached.class.php Diff File
mod - core/classes/Exception/Issue/Version/VersionDuplicate.class.php Diff File
mod - core/classes/Exception/Issue/Version/VersionNotFound.class.php Diff File
mod - core/classes/Exception/LDAP/QueryFailed.class.php Diff File
mod - core/classes/Exception/LDAP/ServerConnectFailed.class.php Diff File
mod - core/classes/Exception/Language/LanguageStringNotFound.class.php Diff File
mod - core/classes/Exception/Locale/LocaleNotProvidedByUserAgent.php Diff File
mod - core/classes/Exception/Locale/LocalesNotSupported.php Diff File
mod - core/classes/Exception/PHP/ExtensionNotLoaded.class.php Diff File
mod - core/classes/Exception/PHP/HeadersAlreadySent.class.php Diff File
mod - core/classes/Exception/Plugin/EventNotDeclared.class.php Diff File
mod - core/classes/Exception/Plugin/PluginAlreadyInstalled.class.php Diff File
mod - core/classes/Exception/Plugin/PluginUpgradeFailed.class.php Diff File
mod - core/classes/Exception/Project/Category/CategoryNotFound.class.php Diff File
mod - core/classes/Exception/Project/ProjectNameNotUnique.class.php Diff File
mod - core/classes/Exception/Project/ProjectNameNotValid.class.php Diff File
mod - core/classes/Exception/Project/ProjectNotFound.class.php Diff File
mod - core/classes/Exception/Project/RecursiveHierarchyNotAllowed.class.php Diff File
mod - core/classes/Exception/Security/CSPRNGNotAvailable.class.php Diff File
mod - core/classes/Exception/Security/CSRFTokenInvalid.class.php Diff File
mod - core/classes/Exception/Security/MasterSaltInvalid.class.php Diff File
mod - core/classes/Exception/Session/SessionHandlerInvalid.class.php Diff File
mod - core/classes/Exception/Session/SessionVariableNotFound.class.php Diff File
mod - core/classes/Exception/Sponsorship/SponsorshipAmountTooLow.class.php Diff File
mod - core/classes/Exception/Sponsorship/SponsorshipDisabled.class.php Diff File
mod - core/classes/Exception/Sponsorship/SponsorshipNotFound.class.php Diff File
mod - core/classes/Exception/Tag/TagDuplicate.class.php Diff File
mod - core/classes/Exception/Tag/TagNameNotValid.class.php Diff File
mod - core/classes/Exception/Tag/TagNotFound.class.php Diff File
mod - core/classes/Exception/Token/TokenNotFound.class.php Diff File
mod - core/classes/Exception/UnknownException.class.php Diff File
mod - core/classes/Exception/User/PasswordMismatch.class.php Diff File
mod - core/classes/Exception/User/ProtectedLastAdministrator.class.php Diff File
mod - core/classes/Exception/User/ProtectedUser.class.php Diff File
mod - core/classes/Exception/User/UserNameNotUnique.class.php Diff File
mod - core/classes/Exception/User/UserPreferencesNotFound.class.php Diff File
mod - core/classes/Exception/Validation/ArrayExpected.class.php Diff File
mod - core/classes/Exception/Validation/ArrayNotExpected.class.php Diff File
mod - core/classes/Exception/Validation/DateFormatInvalid.class.php Diff File
mod - core/classes/Exception/Validation/GPCNotFound.class.php Diff File
mod - core/classes/Exception/Validation/NumberExpected.class.php Diff File
mod - core/classes/Locale/LocaleManager.php Diff File
mod - core/classes/MantisDatabase/MantisDatabase.class.php Diff File
mod - core/classes/MantisError.class.php Diff File
mod - core/columns_api.php Diff File
mod - core/email_api.php Diff File
mod - core/file_api.php Diff File
mod - core/news_api.php Diff File
mod - core/session_api.php Diff File
mod - core/user_api.php Diff File
mod - core/utility_api.php Diff File
mod - lang/strings_afrikaans.txt Diff File
mod - lang/strings_amharic.txt Diff File
mod - lang/strings_arabic.txt Diff File
mod - lang/strings_arabicegyptianspoken.txt Diff File
mod - lang/strings_breton.txt Diff File
mod - lang/strings_bulgarian.txt Diff File
mod - lang/strings_catalan.txt Diff File
mod - lang/strings_chinese_simplified.txt Diff File
mod - lang/strings_chinese_traditional.txt Diff File
mod - lang/strings_croatian.txt Diff File
mod - lang/strings_czech.txt Diff File
mod - lang/strings_danish.txt Diff File
mod - lang/strings_dutch.txt Diff File
mod - lang/strings_english.txt Diff File
mod - lang/strings_estonian.txt Diff File
mod - lang/strings_finnish.txt Diff File
mod - lang/strings_french.txt Diff File
mod - lang/strings_galician.txt Diff File
mod - lang/strings_german.txt Diff File
mod - lang/strings_greek.txt Diff File
mod - lang/strings_hebrew.txt Diff File
mod - lang/strings_hungarian.txt Diff File
mod - lang/strings_icelandic.txt Diff File
mod - lang/strings_italian.txt Diff File
mod - lang/strings_japanese.txt Diff File
mod - lang/strings_korean.txt Diff File
mod - lang/strings_latvian.txt Diff File
mod - lang/strings_lithuanian.txt Diff File
mod - lang/strings_macedonian.txt Diff File
mod - lang/strings_norwegian_bokmal.txt Diff File
mod - lang/strings_norwegian_nynorsk.txt Diff File
mod - lang/strings_occitan.txt Diff File
mod - lang/strings_polish.txt Diff File
mod - lang/strings_portuguese_brazil.txt Diff File
mod - lang/strings_portuguese_standard.txt Diff File
mod - lang/strings_qqq.txt Diff File
mod - lang/strings_ripoarisch.txt Diff File
mod - lang/strings_romanian.txt Diff File
mod - lang/strings_russian.txt Diff File
mod - lang/strings_serbian.txt Diff File
mod - lang/strings_slovak.txt Diff File
mod - lang/strings_slovene.txt Diff File
mod - lang/strings_spanish.txt Diff File
mod - lang/strings_swedish.txt Diff File
mod - lang/strings_swissgerman.txt Diff File
mod - lang/strings_tagalog.txt Diff File
mod - lang/strings_turkish.txt Diff File
mod - lang/strings_ukrainian.txt Diff File
mod - lang/strings_urdu.txt Diff File
mod - lang/strings_volapuk.txt Diff File
mod - lost_pwd.php Diff File
mod - lost_pwd_page.php Diff File
mod - manage/adm_config_report.php Diff File
mod - manage/adm_config_set.php Diff File
mod - manage/adm_permissions_report.php Diff File
mod - manage/config_email_page.php Diff File
mod - manage/config_work_threshold_page.php Diff File
mod - manage/config_work_threshold_set.php Diff File
mod - manage/config_workflow_page.php Diff File
mod - manage/plugin_page.php Diff File
mod - manage/proj_cat_add.php Diff File
mod - manage/proj_cat_copy.php Diff File
mod - manage/proj_custom_field_copy.php Diff File
mod - manage/proj_user_copy.php Diff File
mod - manage/proj_ver_add.php Diff File
mod - manage/user_update.php Diff File
mod - plugin.php Diff File
mod - plugin_file.php Diff File
mod - plugins/MantisCoreFormatting/MantisCoreFormatting.php Diff File
mod - plugins/MantisGraph/MantisGraph.php Diff File
mod - plugins/XmlImportExport/ImportXml.php Diff File
mod - plugins/XmlImportExport/XmlImportExport.php Diff File
mod - proj_doc_update.php Diff File
mod - return_dynamic_filters.php Diff File
mod - roadmap_page.php Diff File
mod - signup.php Diff File
mod - signup_page.php Diff File
mod - verify.php Diff File
mod - view_filters_page.php Diff File