Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F482397
PhutilCalendarEventNode.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
3 KB
Referenced Files
None
Subscribers
None
PhutilCalendarEventNode.php
View Options
<?php
final
class
PhutilCalendarEventNode
extends
PhutilCalendarContainerNode
{
const
NODETYPE
=
'event'
;
private
$uid
;
private
$name
;
private
$description
;
private
$startDateTime
;
private
$endDateTime
;
private
$duration
;
private
$createdDateTime
;
private
$modifiedDateTime
;
private
$organizer
;
private
$attendees
=
array
();
private
$recurrenceRule
;
private
$recurrenceExceptions
=
array
();
private
$recurrenceDates
=
array
();
private
$recurrenceID
;
public
function
setUID
(
$uid
)
{
$this
->
uid
=
$uid
;
return
$this
;
}
public
function
getUID
()
{
return
$this
->
uid
;
}
public
function
setName
(
$name
)
{
$this
->
name
=
$name
;
return
$this
;
}
public
function
getName
()
{
return
$this
->
name
;
}
public
function
setDescription
(
$description
)
{
$this
->
description
=
$description
;
return
$this
;
}
public
function
getDescription
()
{
return
$this
->
description
;
}
public
function
setStartDateTime
(
PhutilCalendarDateTime
$start
)
{
$this
->
startDateTime
=
$start
;
return
$this
;
}
public
function
getStartDateTime
()
{
return
$this
->
startDateTime
;
}
public
function
setEndDateTime
(
PhutilCalendarDateTime
$end
)
{
$this
->
endDateTime
=
$end
;
return
$this
;
}
public
function
getEndDateTime
()
{
$end
=
$this
->
endDateTime
;
if
(
$end
)
{
return
$end
;
}
$start
=
$this
->
getStartDateTime
();
$duration
=
$this
->
getDuration
();
if
(
$start
&&
$duration
)
{
return
id
(
new
PhutilCalendarRelativeDateTime
())
->
setOrigin
(
$start
)
->
setDuration
(
$duration
);
}
// If no end date or duration are specified, the event is instantaneous.
return
$start
;
}
public
function
setDuration
(
PhutilCalendarDuration
$duration
)
{
$this
->
duration
=
$duration
;
return
$this
;
}
public
function
getDuration
()
{
return
$this
->
duration
;
}
public
function
setCreatedDateTime
(
PhutilCalendarDateTime
$created
)
{
$this
->
createdDateTime
=
$created
;
return
$this
;
}
public
function
getCreatedDateTime
()
{
return
$this
->
createdDateTime
;
}
public
function
setModifiedDateTime
(
PhutilCalendarDateTime
$modified
)
{
$this
->
modifiedDateTime
=
$modified
;
return
$this
;
}
public
function
getModifiedDateTime
()
{
return
$this
->
modifiedDateTime
;
}
public
function
setOrganizer
(
PhutilCalendarUserNode
$organizer
)
{
$this
->
organizer
=
$organizer
;
return
$this
;
}
public
function
getOrganizer
()
{
return
$this
->
organizer
;
}
public
function
setAttendees
(
array
$attendees
)
{
assert_instances_of
(
$attendees
,
'PhutilCalendarUserNode'
);
$this
->
attendees
=
$attendees
;
return
$this
;
}
public
function
getAttendees
()
{
return
$this
->
attendees
;
}
public
function
addAttendee
(
PhutilCalendarUserNode
$attendee
)
{
$this
->
attendees
[]
=
$attendee
;
return
$this
;
}
public
function
setRecurrenceRule
(
PhutilCalendarRecurrenceRule
$recurrence_rule
)
{
$this
->
recurrenceRule
=
$recurrence_rule
;
return
$this
;
}
public
function
getRecurrenceRule
()
{
return
$this
->
recurrenceRule
;
}
public
function
setRecurrenceExceptions
(
array
$recurrence_exceptions
)
{
assert_instances_of
(
$recurrence_exceptions
,
'PhutilCalendarDateTime'
);
$this
->
recurrenceExceptions
=
$recurrence_exceptions
;
return
$this
;
}
public
function
getRecurrenceExceptions
()
{
return
$this
->
recurrenceExceptions
;
}
public
function
setRecurrenceDates
(
array
$recurrence_dates
)
{
assert_instances_of
(
$recurrence_dates
,
'PhutilCalendarDateTime'
);
$this
->
recurrenceDates
=
$recurrence_dates
;
return
$this
;
}
public
function
getRecurrenceDates
()
{
return
$this
->
recurrenceDates
;
}
public
function
setRecurrenceID
(
$recurrence_id
)
{
$this
->
recurrenceID
=
$recurrence_id
;
return
$this
;
}
public
function
getRecurrenceID
()
{
return
$this
->
recurrenceID
;
}
}
File Metadata
Details
Attached
Mime Type
text/x-php
Expires
Wed, May 7, 1:48 PM (2 d)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
89406
Default Alt Text
PhutilCalendarEventNode.php (3 KB)
Attached To
Mode
rP Phorge
Attached
Detach File
Event Timeline
Log In to Comment