Class: Organization

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/organization.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.date_format(date) ⇒ Object

Date change


153
154
155
156
# File 'app/models/organization.rb', line 153

def self.date_format(date)
  change_date = date.strftime('%m/%d/%Y')
  return change_date
end

.mt2w_accessObject


121
122
123
# File 'app/models/organization.rb', line 121

def self.mt2w_access
  where(:myt2w_access => true)
end

Instance Method Details

#complete_addressObject


136
137
138
# File 'app/models/organization.rb', line 136

def complete_address
  "#{address}, #{city}, #{state}, #{country}"
end

#get_employeesObject


143
144
145
146
147
148
149
150
# File 'app/models/organization.rb', line 143

def get_employees
  employees = []
  employee_roles = [:employee]
  employee_roles.each do |role|
    self.users.with_role(role).each{ |user| employees << user }
  end
  employees
end

#get_idles(date, start_time, end_time) ⇒ Object

Functions for MT2W


86
87
88
89
90
91
92
93
# File 'app/models/organization.rb', line 86

def get_idles(date, start_time, end_time)
  idles = []
  users.each do |user|
    idles << user if user.idle?(date, start_time, end_time)
  end

  idles
end

#get_managersObject


139
140
141
# File 'app/models/organization.rb', line 139

def get_managers
  self.users.with_role(:manager)
end

#get_role(org_id) ⇒ Object


181
182
183
184
185
186
187
# File 'app/models/organization.rb', line 181

def get_role(org_id)
  member =  self.member.where(:organization_id => org_id).first
  if member.present?
    role = member.roles.first
    return member.roles.first
  end
end

#get_vendor_userObject


158
159
160
161
162
163
164
165
166
167
# File 'app/models/organization.rb', line 158

def get_vendor_user
  vendors = []
  self.member.each do |x|
    if (x.roles[0].name == 'vendor')
      vendors << x.user
    end
  end
  vendors.sort!
  
end

#manageable_users(manager) ⇒ manageable users list

Parameters:

  • manager (Object)

Returns:

  • (manageable users list)

96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
# File 'app/models/organization.rb', line 96

def manageable_users(manager)
  result = []
  users = []
  unless self.show_disabled_users
    self.users.all.each do |user|
      if user.member.find_by_organization_id(self.id).disabled.nil? or user.member.find_by_organization_id(self.id).disabled === false
        users << user
      end
    end
  else
    users = self.users
  end
  
  unless manager.get_role_name(self.id) == 'employee'
    if self.show_owner 
      users.each{|user| result << user}
    else
      users.each{|user| result << user if user.get_role_name(self.id) != 'owner'}
    end
  else
    users.each{|user| result << user if user.get_role_name(self.id) == 'employee'}
  end
  result
end

#managers(exclude = nil) ⇒ Object

Functions for TMA


53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# File 'app/models/organization.rb', line 53

def managers(exclude = nil)
  all_managers = Array.new
  
  
  self.users.each do |user|
    user.member.each do|mem|
      if mem.has_role? :manager, self or 
          mem.has_role? :owner, self then
        if exclude then
          all_managers.push user if user.id != exclude.id
        else
          all_managers.push user
        end
      end
    end
  end
 
  return all_managers
end

#push_notification_user(type, source, summary, notifier, org_users, organization) ⇒ Object


74
75
76
77
78
79
80
81
82
83
# File 'app/models/organization.rb', line 74

def push_notification_user(type , source , summary, notifier, org_users , organization )
  Notification.create_and_send_notification(
    :type => type,
    :source => source,
    :summary => summary,
    :notifier => notifier,
    :managers => org_users,
    :organizationID => organization.id
  )
end

#schedule_users(manager, org_id) ⇒ Object


125
126
127
128
129
130
131
132
133
134
# File 'app/models/organization.rb', line 125

def schedule_users(manager, org_id)
  result = []
  users = self.users.enable
  if !self.show_owner
    users.each{|user| result << user.id if user.get_role_name(org_id) != 'owner'}  
  else
    users.each{|user| result << user.id}
  end
  User.where(id: result)
end

#vendor_searchObject


169
170
171
172
173
174
175
176
177
178
179
# File 'app/models/organization.rb', line 169

def vendor_search
  array = []
  user = @organization.users
  user.each do |u|
    if u.get_role_name(@organization.id) == 'vendor'
      array << u
    end
  end
  @arrayobj = array.collect { |u| u.id }
  return @arrayobj
end