Removed acts-as-statemachine. Replaces User.find_ordergroup with ActiveRecord-Association 'has_one :ordergroup'.
This commit is contained in:
parent
ec402ffa7b
commit
e16bebd042
10 changed files with 33 additions and 47 deletions
|
|
@ -40,13 +40,7 @@ class Group < ActiveRecord::Base
|
|||
|
||||
# Returns all NONmembers and a checks for possible multiple Ordergroup-Memberships
|
||||
def non_members
|
||||
nonMembers = Array.new
|
||||
for user in User.find(:all, :order => "nick")
|
||||
unless self.users.include?(user) || ( self.is_a?(Ordergroup) && user.find_ordergroup )
|
||||
nonMembers << user
|
||||
end
|
||||
end
|
||||
return nonMembers
|
||||
User.all(:order => 'nick').reject { |u| users.include?(u) }
|
||||
end
|
||||
|
||||
# Check before destroy a group, if this is the last group with admin role
|
||||
|
|
@ -56,11 +50,6 @@ class Group < ActiveRecord::Base
|
|||
end
|
||||
end
|
||||
|
||||
# get all groups, which are NOT Ordergroups
|
||||
def self.workgroups
|
||||
Workgroup.all
|
||||
end
|
||||
|
||||
protected
|
||||
|
||||
# validates uniqueness of the Group.name. Checks groups and ordergroups
|
||||
|
|
|
|||
|
|
@ -42,7 +42,10 @@ class Ordergroup < Group
|
|||
validates_numericality_of :account_balance, :message => 'ist keine gültige Zahl'
|
||||
|
||||
attr_accessible :actual_size, :account_updated
|
||||
|
||||
|
||||
def non_members
|
||||
User.all(:order => 'nick').reject { |u| (users.include?(u) || u.ordergroup) }
|
||||
end
|
||||
|
||||
def value_of_open_orders(exclude = nil)
|
||||
group_orders.open.reject{|go| go == exclude}.collect(&:price).sum
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ require 'digest/sha1'
|
|||
class User < ActiveRecord::Base
|
||||
has_many :memberships, :dependent => :destroy
|
||||
has_many :groups, :through => :memberships
|
||||
has_many :ordergroups, :through => :memberships, :source => :group
|
||||
has_one :ordergroup, :through => :memberships, :source => :group
|
||||
has_many :assignments, :dependent => :destroy
|
||||
has_many :tasks, :through => :assignments
|
||||
has_many :send_messages, :class_name => "Message", :foreign_key => "sender_id"
|
||||
|
|
@ -147,13 +147,7 @@ class User < ActiveRecord::Base
|
|||
groups.detect {|group| group.role_orders?}
|
||||
end
|
||||
|
||||
# Returns the user's Ordergroup or nil if none found.
|
||||
def find_ordergroup
|
||||
ordergroups.first
|
||||
end
|
||||
|
||||
def ordergroup_name
|
||||
ordergroup = find_ordergroup
|
||||
ordergroup ? ordergroup.name : "keine Bestellgruppe"
|
||||
end
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue