Module: UCB::LDAP::AffiliationMethods
- Included in:
- Person
- Defined in:
- lib/person/affiliation_methods.rb
Instance Method Summary collapse
- #affiliate? ⇒ Boolean
- #affiliate_academic_case_tracking? ⇒ Boolean
- #affiliate_advcon_alumnus? ⇒ Boolean
- #affiliate_advcon_attendee? ⇒ Boolean
- #affiliate_advcon_caa_member? ⇒ Boolean
- #affiliate_advcon_friend? ⇒ Boolean
- #affiliate_advcon_i_house_resident? ⇒ Boolean
- #affiliate_advcon_student? ⇒ Boolean
- #affiliate_advcon_trustee? ⇒ Boolean
-
#affiliate_aws_only? ⇒ Boolean
Determine if the persone is an AFFILIATE #.
- #affiliate_billing_only? ⇒ Boolean
- #affiliate_committee_member? ⇒ Boolean
- #affiliate_concurrent_enrollment? ⇒ Boolean
- #affiliate_consultant? ⇒ Boolean
- #affiliate_contractor? ⇒ Boolean
- #affiliate_departmental? ⇒ Boolean
- #affiliate_directory_only? ⇒ Boolean
- #affiliate_emeritus? ⇒ Boolean
- #affiliate_expiration_date ⇒ Object
- #affiliate_expired? ⇒ Boolean
- #affiliate_hhmi_researcher? ⇒ Boolean
- #affiliate_lbl_doe_postdoc? ⇒ Boolean
- #affiliate_lbl_op_staff? ⇒ Boolean
- #affiliate_maintenance? ⇒ Boolean
- #affiliate_staff_affiliate? ⇒ Boolean
- #affiliate_staff_retiree? ⇒ Boolean
- #affiliate_temp_agency? ⇒ Boolean
- #affiliate_test? ⇒ Boolean
-
#affiliate_visiting? ⇒ Boolean
Note: there are actually 2 types of visting affiliaties, visiting student and visiting scholars.
- #affiliate_volunteer? ⇒ Boolean
-
#affiliations ⇒ Object
Returns an
Array
of Person’s affiliations. - #employee? ⇒ Boolean
- #employee_academic? ⇒ Boolean
- #employee_expiration_date ⇒ Object
- #employee_expired? ⇒ Boolean
-
#employee_staff? ⇒ Boolean
Returns
true
if entry has the “staff” affiliation. -
#has_affiliation?(affiliation) ⇒ Boolean
Returns
true
if entry’s affiliations contain affiliation. -
#has_affiliation_of_type?(affiliation_type) ⇒ Boolean
Returns
true
if Person’s affiliations contain at least one affiliation of a particular type. -
#student? ⇒ Boolean
Returns
true
if entry has a studend affiliation and is not expired. - #student_expiration_date ⇒ Object
-
#student_expired? ⇒ Boolean
Returns
true
if is an expired student. - #student_not_registered? ⇒ Boolean
- #student_registered? ⇒ Boolean
Instance Method Details
#affiliate? ⇒ Boolean
202 203 204 |
# File 'lib/person/affiliation_methods.rb', line 202 def affiliate? has_affiliation_of_type?(:affiliate) && !affiliate_expired? end |
#affiliate_academic_case_tracking? ⇒ Boolean
158 159 160 |
# File 'lib/person/affiliation_methods.rb', line 158 def affiliate_academic_case_tracking? has_affiliation? 'AFFILIATE-TYPE-ACADEMIC CASE TRACKING' end |
#affiliate_advcon_alumnus? ⇒ Boolean
178 179 180 |
# File 'lib/person/affiliation_methods.rb', line 178 def affiliate_advcon_alumnus? has_affiliation? 'AFFILIATE-TYPE-ADVCON-ALUMNUS' end |
#affiliate_advcon_attendee? ⇒ Boolean
194 195 196 |
# File 'lib/person/affiliation_methods.rb', line 194 def affiliate_advcon_attendee? has_affiliation? 'AFFILIATE-TYPE-ADVCON-ATTENDEE' end |
#affiliate_advcon_caa_member? ⇒ Boolean
182 183 184 |
# File 'lib/person/affiliation_methods.rb', line 182 def affiliate_advcon_caa_member? has_affiliation? 'AFFILIATE-TYPE-ADVCON-CAA-MEMBER' end |
#affiliate_advcon_friend? ⇒ Boolean
174 175 176 |
# File 'lib/person/affiliation_methods.rb', line 174 def affiliate_advcon_friend? has_affiliation? 'AFFILIATE-TYPE-ADVCON-FRIEND' end |
#affiliate_advcon_i_house_resident? ⇒ Boolean
186 187 188 |
# File 'lib/person/affiliation_methods.rb', line 186 def affiliate_advcon_i_house_resident? has_affiliation? 'AFFILIATE-TYPE-ADVCON-I-HOUSE-RESIDENT' end |
#affiliate_advcon_student? ⇒ Boolean
190 191 192 |
# File 'lib/person/affiliation_methods.rb', line 190 def affiliate_advcon_student? has_affiliation? 'AFFILIATE-TYPE-ADVCON-STUDENT' end |
#affiliate_advcon_trustee? ⇒ Boolean
170 171 172 |
# File 'lib/person/affiliation_methods.rb', line 170 def affiliate_advcon_trustee? has_affiliation? 'AFFILIATE-TYPE-ADVCON-TRUSTEE' end |
#affiliate_aws_only? ⇒ Boolean
Determine if the persone is an AFFILIATE #
88 89 90 |
# File 'lib/person/affiliation_methods.rb', line 88 def affiliate_aws_only? has_affiliation? 'AFFILIATE-TYPE-AWS ONLY' end |
#affiliate_billing_only? ⇒ Boolean
166 167 168 |
# File 'lib/person/affiliation_methods.rb', line 166 def affiliate_billing_only? has_affiliation? 'AFFILIATE-TYPE-BILLING ONLY' end |
#affiliate_committee_member? ⇒ Boolean
122 123 124 |
# File 'lib/person/affiliation_methods.rb', line 122 def affiliate_committee_member? has_affiliation? 'AFFILIATE-TYPE-COMMITTEE MEMBER' end |
#affiliate_concurrent_enrollment? ⇒ Boolean
138 139 140 |
# File 'lib/person/affiliation_methods.rb', line 138 def affiliate_concurrent_enrollment? has_affiliation? 'AFFILIATE-TYPE-CONCURR ENROLL' end |
#affiliate_consultant? ⇒ Boolean
126 127 128 |
# File 'lib/person/affiliation_methods.rb', line 126 def affiliate_consultant? has_affiliation? 'AFFILIATE-TYPE-CONSULTANT' end |
#affiliate_contractor? ⇒ Boolean
110 111 112 |
# File 'lib/person/affiliation_methods.rb', line 110 def affiliate_contractor? has_affiliation? 'AFFILIATE-TYPE-CONTRACTOR' end |
#affiliate_departmental? ⇒ Boolean
146 147 148 |
# File 'lib/person/affiliation_methods.rb', line 146 def affiliate_departmental? has_affiliation? 'AFFILIATE-TYPE-DEPARTMENTAL' end |
#affiliate_directory_only? ⇒ Boolean
100 101 102 |
# File 'lib/person/affiliation_methods.rb', line 100 def affiliate_directory_only? has_affiliation? 'AFFILIATE-TYPE-DIRECTORY ONLY' end |
#affiliate_emeritus? ⇒ Boolean
96 97 98 |
# File 'lib/person/affiliation_methods.rb', line 96 def affiliate_emeritus? has_affiliation? 'AFFILIATE-TYPE-EMERITUS' end |
#affiliate_expiration_date ⇒ Object
206 207 208 |
# File 'lib/person/affiliation_methods.rb', line 206 def affiliate_expiration_date Date.parse(berkeleyEduAffExpDate.to_s) end |
#affiliate_expired? ⇒ Boolean
198 199 200 |
# File 'lib/person/affiliation_methods.rb', line 198 def affiliate_expired? has_affiliation? 'AFFILIATE-STATUS-EXPIRED' end |
#affiliate_hhmi_researcher? ⇒ Boolean
134 135 136 |
# File 'lib/person/affiliation_methods.rb', line 134 def affiliate_hhmi_researcher? has_affiliation? 'AFFILIATE-TYPE-HHMI RESEARCHER' end |
#affiliate_lbl_doe_postdoc? ⇒ Boolean
114 115 116 |
# File 'lib/person/affiliation_methods.rb', line 114 def affiliate_lbl_doe_postdoc? has_affiliation? 'AFFILIATE-TYPE-LBL/DOE POSTDOC' end |
#affiliate_lbl_op_staff? ⇒ Boolean
118 119 120 |
# File 'lib/person/affiliation_methods.rb', line 118 def affiliate_lbl_op_staff? has_affiliation? 'AFFILIATE-TYPE-LBLOP STAFF' end |
#affiliate_maintenance? ⇒ Boolean
162 163 164 |
# File 'lib/person/affiliation_methods.rb', line 162 def affiliate_maintenance? has_affiliation? 'AFFILIATE-TYPE-MAINTENANCE' end |
#affiliate_staff_affiliate? ⇒ Boolean
154 155 156 |
# File 'lib/person/affiliation_methods.rb', line 154 def affiliate_staff_affiliate? has_affiliation? 'AFFILIATE-TYPE-STAFF-AFFILIATE' end |
#affiliate_staff_retiree? ⇒ Boolean
92 93 94 |
# File 'lib/person/affiliation_methods.rb', line 92 def affiliate_staff_retiree? has_affiliation? 'AFFILIATE-TYPE-STAFF RETIREE' end |
#affiliate_temp_agency? ⇒ Boolean
142 143 144 |
# File 'lib/person/affiliation_methods.rb', line 142 def affiliate_temp_agency? has_affiliation? 'AFFILIATE-TYPE-TEMP AGENCY' end |
#affiliate_test? ⇒ Boolean
150 151 152 |
# File 'lib/person/affiliation_methods.rb', line 150 def affiliate_test? has_affiliation? 'AFFILIATE-TYPE-TEST' end |
#affiliate_visiting? ⇒ Boolean
Note: there are actually 2 types of visting affiliaties, visiting student and visiting scholars. But for now we will generalize.
106 107 108 |
# File 'lib/person/affiliation_methods.rb', line 106 def affiliate_visiting? has_affiliation? 'AFFILIATE-TYPE-VISITING' end |
#affiliate_volunteer? ⇒ Boolean
130 131 132 |
# File 'lib/person/affiliation_methods.rb', line 130 def affiliate_volunteer? has_affiliation? 'AFFILIATE-TYPE-VOLUNTEER' end |
#affiliations ⇒ Object
Returns an Array
of Person’s affiliations.
7 8 9 |
# File 'lib/person/affiliation_methods.rb', line 7 def affiliations @affiliations ||= berkeleyEduAffiliations.map { |a| a.upcase } end |
#employee? ⇒ Boolean
51 52 53 |
# File 'lib/person/affiliation_methods.rb', line 51 def employee? has_affiliation_of_type?(:employee) && !employee_expired? end |
#employee_academic? ⇒ Boolean
39 40 41 |
# File 'lib/person/affiliation_methods.rb', line 39 def employee_academic? has_affiliation? 'EMPLOYEE-TYPE-ACADEMIC' end |
#employee_expiration_date ⇒ Object
47 48 49 |
# File 'lib/person/affiliation_methods.rb', line 47 def employee_expiration_date Date.parse(berkeleyEduEmpExpDate.to_s) end |
#employee_expired? ⇒ Boolean
43 44 45 |
# File 'lib/person/affiliation_methods.rb', line 43 def employee_expired? has_affiliation? 'EMPLOYEE-STATUS-EXPIRED' end |
#employee_staff? ⇒ Boolean
Returns true
if entry has the “staff” affiliation.
35 36 37 |
# File 'lib/person/affiliation_methods.rb', line 35 def employee_staff? has_affiliation? 'EMPLOYEE-TYPE-STAFF' end |
#has_affiliation?(affiliation) ⇒ Boolean
Returns true
if entry’s affiliations contain affiliation.
Case-insensitive.
14 15 16 |
# File 'lib/person/affiliation_methods.rb', line 14 def has_affiliation?(affiliation) affiliations.include?(affiliation.upcase) end |
#has_affiliation_of_type?(affiliation_type) ⇒ Boolean
Returns true
if Person’s affiliations contain at least one affiliation of a particular type.
p = Person.find_by_uid ...
p.affiliations #=> ['EMPLOYEE-TYPE-STAFF']
p.has_affiliation_of_type?(:employee) #=> true
p.has_affiliation_of_type?(:student) #=> false
24 25 26 27 |
# File 'lib/person/affiliation_methods.rb', line 24 def has_affiliation_of_type?(affiliation_type) aff_type_string = affiliation_type.to_s.upcase affiliations.find{|a| a =~ /^#{aff_type_string}-TYPE-/} ? true : false end |
#student? ⇒ Boolean
Returns true
if entry has a studend affiliation and is not expired.
79 80 81 |
# File 'lib/person/affiliation_methods.rb', line 79 def student? has_affiliation_of_type?(:student) && !student_expired? end |
#student_expiration_date ⇒ Object
65 66 67 |
# File 'lib/person/affiliation_methods.rb', line 65 def student_expiration_date Date.parse(berkeleyEduStuExpDate.to_s) end |
#student_expired? ⇒ Boolean
Returns true
if is an expired student.
61 62 63 |
# File 'lib/person/affiliation_methods.rb', line 61 def student_expired? has_affiliation? 'STUDENT-STATUS-EXPIRED' end |
#student_not_registered? ⇒ Boolean
73 74 75 |
# File 'lib/person/affiliation_methods.rb', line 73 def student_not_registered? has_affiliation? 'STUDENT-TYPE-NOT REGISTERED' end |
#student_registered? ⇒ Boolean
69 70 71 |
# File 'lib/person/affiliation_methods.rb', line 69 def student_registered? has_affiliation? 'STUDENT-TYPE-REGISTERED' end |