Sha256: 5a80397d6f72a6172781c3a437cc00a5ebdc59011b069265d0de93982e4a9626

Contents?: true

Size: 917 Bytes

Versions: 15

Compression:

Stored size: 917 Bytes

Contents

# Default implementation of User.  This class is intended to be modified by extensions (ex. spree_auth_devise)
module Spree
  class LegacyUser < ActiveRecord::Base
    self.table_name = 'spree_users'
    attr_accessible :email, :password, :password_confirmation

    has_many :orders, foreign_key: :user_id
    belongs_to :ship_address, class_name: 'Spree::Address'
    belongs_to :bill_address, class_name: 'Spree::Address'

    scope :registered

    before_destroy :check_completed_orders

    class DestroyWithOrdersError < StandardError; end

    def anonymous?
      false
    end

    # Creates an anonymous user
    def self.anonymous!
      create
    end

    def has_spree_role?(role)
      true
    end

    attr_accessor :password
    attr_accessor :password_confirmation

    private

      def check_completed_orders
        raise DestroyWithOrdersError if orders.complete.present?
      end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
spree_core-2.0.13 app/models/spree/legacy_user.rb
spree_core-2.0.12 app/models/spree/legacy_user.rb
spree_core-2.0.11 app/models/spree/legacy_user.rb
spree_core-2.0.10 app/models/spree/legacy_user.rb
spree_core-2.0.9 app/models/spree/legacy_user.rb
spree_core-2.0.8 app/models/spree/legacy_user.rb
spree_core-2.0.7 app/models/spree/legacy_user.rb
spree_core-2.0.6 app/models/spree/legacy_user.rb
spree_core-2.0.5 app/models/spree/legacy_user.rb
spree_core-2.0.4 app/models/spree/legacy_user.rb
spree_core-2.0.3 app/models/spree/legacy_user.rb
spree_core-2.0.2 app/models/spree/legacy_user.rb
spree_core-2.0.1 app/models/spree/legacy_user.rb
spree_core-2.0.0 app/models/spree/legacy_user.rb
spree_core-2.0.0.rc1 app/models/spree/legacy_user.rb