diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/commands/response_error.hpp | 25 | ||||
| -rw-r--r-- | src/localization/line_id.cpp | 2 | ||||
| -rw-r--r-- | src/localization/line_id.hpp | 1 |
3 files changed, 20 insertions, 8 deletions
diff --git a/src/commands/response_error.hpp b/src/commands/response_error.hpp index b57deea..e91a4fd 100644 --- a/src/commands/response_error.hpp +++ b/src/commands/response_error.hpp @@ -22,7 +22,9 @@ namespace bot { SOMETHING_WENT_WRONG, EXTERNAL_API_ERROR, - INSUFFICIENT_RIGHTS + INSUFFICIENT_RIGHTS, + + ILLEGAL_COMMAND }; template <ResponseError T, class Enable = void> @@ -79,9 +81,10 @@ namespace bot { }; template <ResponseError T> - class ResponseException< - T, typename std::enable_if<T == SOMETHING_WENT_WRONG || - T == INSUFFICIENT_RIGHTS>::type> + class ResponseException<T, + typename std::enable_if<T == SOMETHING_WENT_WRONG || + T == INSUFFICIENT_RIGHTS || + T == ILLEGAL_COMMAND>::type> : public std::exception { public: ResponseException(const command::Request &request, @@ -89,10 +92,16 @@ namespace bot { : request(request), localizator(localizator), error(T) { loc::LineId line_id; - if (this->error == INSUFFICIENT_RIGHTS) { - line_id = loc::LineId::ErrorInsufficientRights; - } else { - line_id = loc::LineId::ErrorSomethingWentWrong; + switch (this->error) { + case INSUFFICIENT_RIGHTS: + line_id = loc::LineId::ErrorInsufficientRights; + break; + case ILLEGAL_COMMAND: + line_id = loc::LineId::ErrorIllegalCommand; + break; + default: + line_id = loc::LineId::ErrorSomethingWentWrong; + break; } this->line = diff --git a/src/localization/line_id.cpp b/src/localization/line_id.cpp index 82441fc..4e84b16 100644 --- a/src/localization/line_id.cpp +++ b/src/localization/line_id.cpp @@ -46,6 +46,8 @@ namespace bot { return LineId::ErrorSomethingWentWrong; } else if (str == "error.insufficient_rights") { return LineId::ErrorInsufficientRights; + } else if (str == "error.illegal_command") { + return LineId::ErrorIllegalCommand; } else if (str == "event.on") { diff --git a/src/localization/line_id.hpp b/src/localization/line_id.hpp index e820559..25ab255 100644 --- a/src/localization/line_id.hpp +++ b/src/localization/line_id.hpp @@ -25,6 +25,7 @@ namespace bot { ErrorSomethingWentWrong, ErrorExternalAPIError, ErrorInsufficientRights, + ErrorIllegalCommand, PingResponse, |
