クラス
Store
Error codes and corresponding messages
ソース ソース
ファイル: src/Error/Store.php
class Store extends ErrorStore { const WPDB_INTERNAL_ERROR = 'WpdbInternalError'; const NOT_LOGGED_IN = 'NotLoggedIn'; const WISHLIST_ITEM_NOT_FOUND = 'WishlistItemNotFound'; const POST_IN_TRASH = 'PostInTrash'; const ITEM_DELETED = 'ItemDeleted'; const ITEM_SOLD_OUT = 'ItemSoldOut'; const PER_PURCHASE_LIMIT_EXCEEDED = 'PerPurchaseLimitExceeded'; const QUANT_EXCEEDS_STOCK_LIMIT = 'QuantExceedsStockLimit'; const REQUIRED_FIELDS_MISSING = 'RequiredFieldsMissing'; const REQUIRED_OPTIONS_MISSING = 'RequiredOptionsMissing'; const UNSERIALIZATION_ERROR = 'UnserializationError'; const SERIALIZED_ITEM_IS_MALFORMED = 'SerializedItemIsMalformed'; const ITEM_OPTIONS_INVALID = 'ItemOptionsInvalid'; const CONTINUE_CHARGE_REQUIRES_EMPTY_CART = 'ContinueChargeRequiresEmptyCart'; const CART_CONTAINS_CONTINUE_CHARGE = 'CartContainsContinueCharge'; const CANNOT_PROCESS_IN_BATCH_OP = 'CannotProcessInBatchOp'; /** * Declares all `GenericError` objects * * @author Evan D Shaw <evandanielshaw@gmail.com> * @return void */ public function populate() { $defaultError = $this->getErrorCodeMap()[parent::INTERNAL_SERVER_ERROR]; $defaultMessage = $defaultError->message; $this->addError(new GenericError( self::WPDB_INTERNAL_ERROR, $this->getConstantNameByValue(self::WPDB_INTERNAL_ERROR), 500, __('A wpdb method failed during execution. Wpdb most likely had a problem connecting to the database.', 'wcexwl'), $defaultMessage )); $this->addError(new GenericError( self::NOT_LOGGED_IN, $this->getConstantNameByValue(self::NOT_LOGGED_IN), 401, __('You are logged out. Please login and try again.', 'wcexwl'), __('You are logged out. Please login and try again.', 'wcexwl') )); $this->addError(new GenericError( self::WISHLIST_ITEM_NOT_FOUND, $this->getConstantNameByValue(self::WISHLIST_ITEM_NOT_FOUND), 404, function ($id) { // translators: ID of the wishlist item return sprintf(__('A wishlist item with ID 「%d」 does not exist.', 'wcexwl'), $id); }, __('Wishlist item not found. Did you delete it in a different tab?', 'wcexwl') )); $isom = function ($sku) { // translators: SKU of the wishlist item return sprintf(__('%s is sold out.', 'wcexwl'), $sku); }; $this->addError(new GenericError( self::ITEM_SOLD_OUT, $this->getConstantNameByValue(self::ITEM_SOLD_OUT), 400, $isom, $isom )); $perpm = function ($itemRestriction, $sku) { return sprintf( // translators: 1. per purchase limit 2. SKU of the wishlist item __('This article is limited by %1$d at a time for %2$s.', 'wcexwl'), (int)$itemRestriction, $sku ); }; $this->addError(new GenericError( self::PER_PURCHASE_LIMIT_EXCEEDED, $this->getConstantNameByValue(self::PER_PURCHASE_LIMIT_EXCEEDED), 400, $perpm, $perpm )); $qeslm = function ($sku, $checkstock) { // translators: 1. SKU of wishlist item 2. number of stock remaining return sprintf(__('%1$s only has %2$d stock remaining.', 'wcexwl'), $sku, (int)$checkstock); }; $this->addError(new GenericError( self::QUANT_EXCEEDS_STOCK_LIMIT, $this->getConstantNameByValue(self::QUANT_EXCEEDS_STOCK_LIMIT), 400, $qeslm, $qeslm )); $this->addError(new GenericError( self::POST_IN_TRASH, $this->getConstantNameByValue(self::POST_IN_TRASH), 404, function ($id) { // translators: post ID of the item return sprintf(__('The item with post ID 「%d」 has been trashed.', 'wcexwl'), $id); }, function ($sku = '') { // translators: SKU of the item return sprintf(__('%s is no longer for sale.', 'wcexwl'), $sku); } )); $this->addError(new GenericError( self::ITEM_DELETED, $this->getConstantNameByValue(self::ITEM_DELETED), 404, function ($id) { // translators: post ID of the item return sprintf(__('The item with post ID 「%d」 has been deleted.', 'wcexwl'), $id); }, function ($sku = '') { // translators: SKU of the item return sprintf(__('%s is no longer for sale.', 'wcexwl'), $sku); } )); $this->addError(new GenericError( self::REQUIRED_FIELDS_MISSING, $this->getConstantNameByValue(self::REQUIRED_FIELDS_MISSING), 400, function ($field) { return 'The field "' . $field . '" is required.'; }, function ($message) { return $message; } )); $this->addError(new GenericError( self::REQUIRED_OPTIONS_MISSING, $this->getConstantNameByValue(self::REQUIRED_OPTIONS_MISSING), 400, function ($message) { return $message; }, function ($message) { return $message; } )); $this->addError(new GenericError( self::UNSERIALIZATION_ERROR, $this->getConstantNameByValue(self::UNSERIALIZATION_ERROR), 400, function ($serial) { // translators: the string that could not be unserialized return sprintf(__('The following string could not be unserialized: %s', 'wcexwl'), (string)$serial); }, $defaultMessage )); $this->addError(new GenericError( self::SERIALIZED_ITEM_IS_MALFORMED, $this->getConstantNameByValue(self::SERIALIZED_ITEM_IS_MALFORMED), 400, __('The serialized item is missing required fields', 'wcexwl'), $defaultMessage )); $mcallback = function ($sku) { // translators: SKU of the item return sprintf(__('Options have changed for %s. Please add to cart from the item page.', 'wcexwl'), $sku); }; $this->addError(new GenericError( self::ITEM_OPTIONS_INVALID, $this->getConstantNameByValue(self::ITEM_OPTIONS_INVALID), 400, $mcallback, $mcallback )); $this->addError(new GenericError( self::CONTINUE_CHARGE_REQUIRES_EMPTY_CART, $this->getConstantNameByValue(self::CONTINUE_CHARGE_REQUIRES_EMPTY_CART), 409, function ($message) { return $message; }, function ($message) { return $message; } )); $this->addError(new GenericError( self::CART_CONTAINS_CONTINUE_CHARGE, $this->getConstantNameByValue(self::CART_CONTAINS_CONTINUE_CHARGE), 409, function ($message) { return $message; }, function ($message) { return $message; } )); $mcallback = function ($itemname) { // translators: name of the item return sprintf(__('%s cannot be processed in a batch operation.', 'wcexwl'), $itemname); }; $this->addError(new GenericError( self::CANNOT_PROCESS_IN_BATCH_OP, $this->getConstantNameByValue(self::CANNOT_PROCESS_IN_BATCH_OP), 422, $mcallback, $mcallback )); } }
- populate — Declares all GenericError objects