1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
# Copyright 2009 Canonical Ltd. This software is licensed under the
# GNU Affero General Public License version 3 (see the file LICENSE).
# pylint: disable-msg=E0211,E0213
"""Sprint Attendance interfaces."""
__metaclass__ = type
__all__ = [
'ISprintAttendance',
]
from zope.interface import (
Attribute,
Interface,
)
from zope.schema import (
Bool,
Choice,
Datetime,
)
from lp import _
from lp.services.fields import PublicPersonChoice
class ISprintAttendance(Interface):
"""An attendance of a person at a sprint."""
attendee = PublicPersonChoice(
title=_('Attendee'), required=True, vocabulary='ValidPersonOrTeam')
attendeeID = Attribute('db attendee value')
sprint = Choice(title=_('The Sprint'), required=True,
vocabulary='Sprint',
description=_("Select the meeting from the list presented above."))
time_starts = Datetime(title=_('From'), required=True,
description=_("The date and time of arrival and "
"availability for sessions during the sprint."))
time_ends = Datetime(title=_('To'), required=True,
description=_("The date and time of your departure. "
"Please ensure the time reflects accurately "
"when you will no longer be available for sessions at this event, to "
"assist those planning the schedule."))
is_physical = Bool(
title=_("How will you be attending?"),
description=_(
"True, you will be physically present, "
"or false, you will be remotely present."),
required=False, readonly=False, default=True)
|