def merch(self): """ Here is the business logic surrounding shirts: - People who kick in enough to get a shirt get an event shirt. - People with staff badges get a configurable number of staff shirts. - Volunteers who meet the requirements get a complementary event shirt (NOT a staff shirt). """ merch = self.donation_swag if self.volunteer_event_shirt_eligible: shirt = c.DONATION_TIERS[c.SHIRT_LEVEL] if self.paid_for_a_shirt: shirt = 'a 2nd ' + shirt if not self.volunteer_event_shirt_earned: shirt += (' (this volunteer must work at least 6 hours or ' 'they will be reported for picking up their shirt)') merch.append(shirt) if self.gets_staff_shirt: staff_shirts = '{} Staff Shirt{}'.format( c.SHIRTS_PER_STAFFER, 's' if c.SHIRTS_PER_STAFFER > 1 else '') if self.shirt_size_marked: staff_shirts += ' [{}]'.format(c.SHIRTS[self.shirt]) merch.append(staff_shirts) if self.staffing: merch.append('Staffer Info Packet') if self.extra_merch: merch.append(self.extra_merch) return comma_and(merch)
def accoutrements(self): stuff = [] \ if not self.ribbon \ else ['a ' + s + ' ribbon' for s in self.ribbon_labels] if c.WRISTBANDS_ENABLED: stuff.append('a {} wristband'.format( c.WRISTBAND_COLORS[self.age_group])) if self.regdesk_info: stuff.append(self.regdesk_info) return (' with ' if stuff else '') + comma_and(stuff)
def required_roles_labels(self): return comma_and([r.name for r in self.required_roles])