Sha256: b686ca34d12e3a110169de90d73cbf222f84e29cd9120077b5ef66cf664c2574

Contents?: true

Size: 652 Bytes

Versions: 1

Compression:

Stored size: 652 Bytes

Contents

# frozen_string_literal: true

require "active_model"

module Auther
  module Presenter
    # Adapter for presenting an account within a view.
    class Account
      include ActiveModel::Validations

      attr_accessor :name, :login, :password

      validates :name, :login, :password, presence: true

      def initialize name: "", login: "", password: ""
        @name = name
        @login = login
        @password = password
      end

      def error? key
        errors.key? key
      end

      def error_message key
        return "" unless error?(key)

        "#{key.capitalize} #{errors.messages[key].first}"
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
auther-10.0.0 app/presenters/auther/account.rb