126 lines
1.9 KiB
Ruby
126 lines
1.9 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
module Errors
|
|
class Base < StandardError
|
|
def status
|
|
500
|
|
end
|
|
|
|
def code
|
|
@code ||= self.class.name.sub("Errors::", "").underscore
|
|
end
|
|
|
|
def locale_code
|
|
code
|
|
end
|
|
|
|
def locale_tag
|
|
@locale_tag ||= "errors.#{locale_code}"
|
|
end
|
|
end
|
|
|
|
class BadRequest < Base
|
|
def status
|
|
400
|
|
end
|
|
end
|
|
|
|
class InvalidBanDuration < BadRequest
|
|
end
|
|
|
|
class Forbidden < Base
|
|
def status
|
|
403
|
|
end
|
|
end
|
|
|
|
class SelfAction < Forbidden
|
|
end
|
|
|
|
class InboxLocked < Forbidden
|
|
end
|
|
|
|
class FollowingSelf < SelfAction
|
|
end
|
|
|
|
class NotFound < Base
|
|
def status
|
|
404
|
|
end
|
|
end
|
|
|
|
class NotAuthorized < Base
|
|
def status
|
|
401
|
|
end
|
|
end
|
|
|
|
class UserNotFound < NotFound
|
|
end
|
|
|
|
# region User Blocking
|
|
class Blocked < Forbidden
|
|
end
|
|
|
|
class OtherBlockedSelf < Blocked
|
|
end
|
|
|
|
class BlockingSelf < SelfAction
|
|
end
|
|
|
|
class AskingOtherBlockedSelf < OtherBlockedSelf
|
|
end
|
|
|
|
class FollowingOtherBlockedSelf < OtherBlockedSelf
|
|
end
|
|
|
|
class SelfBlockedOther < Blocked
|
|
end
|
|
|
|
class AskingSelfBlockedOther < SelfBlockedOther
|
|
end
|
|
|
|
class FollowingSelfBlockedOther < SelfBlockedOther
|
|
end
|
|
|
|
class AnsweringOtherBlockedSelf < OtherBlockedSelf
|
|
end
|
|
|
|
class AnsweringSelfBlockedOther < SelfBlockedOther
|
|
end
|
|
|
|
class CommentingSelfBlockedOther < SelfBlockedOther
|
|
end
|
|
|
|
class CommentingOtherBlockedSelf < OtherBlockedSelf
|
|
end
|
|
|
|
class ReactingSelfBlockedOther < SelfBlockedOther
|
|
def locale_code
|
|
"self_blocked_other"
|
|
end
|
|
end
|
|
|
|
class ReactingOtherBlockedSelf < OtherBlockedSelf
|
|
def locale_code
|
|
"other_blocked_self"
|
|
end
|
|
end
|
|
|
|
class ListingSelfBlockedOther < SelfBlockedOther
|
|
def locale_code
|
|
"self_blocked_other"
|
|
end
|
|
end
|
|
|
|
class ListingOtherBlockedSelf < OtherBlockedSelf
|
|
def locale_code
|
|
"other_blocked_self"
|
|
end
|
|
end
|
|
# endregion
|
|
|
|
class MutingSelf < SelfAction
|
|
end
|
|
end
|