|
<?php |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
namespace Eluceo\iCal\Component; |
|
|
|
use Eluceo\iCal\Component; |
|
use Eluceo\iCal\PropertyBag; |
|
|
|
|
|
|
|
|
|
class Alarm extends Component |
|
{ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const ACTION_AUDIO = 'AUDIO'; |
|
const ACTION_DISPLAY = 'DISPLAY'; |
|
const ACTION_EMAIL = 'EMAIL'; |
|
|
|
protected $action; |
|
protected $repeat; |
|
protected $duration; |
|
protected $description; |
|
protected $attendee; |
|
protected $trigger; |
|
|
|
public function getType() |
|
{ |
|
return 'VALARM'; |
|
} |
|
|
|
public function getAction() |
|
{ |
|
return $this->action; |
|
} |
|
|
|
public function getRepeat() |
|
{ |
|
return $this->repeat; |
|
} |
|
|
|
public function getDuration() |
|
{ |
|
return $this->duration; |
|
} |
|
|
|
public function getDescription() |
|
{ |
|
return $this->description; |
|
} |
|
|
|
public function getAttendee() |
|
{ |
|
return $this->attendee; |
|
} |
|
|
|
public function getTrigger() |
|
{ |
|
return $this->trigger; |
|
} |
|
|
|
public function setAction($action) |
|
{ |
|
$this->action = $action; |
|
|
|
return $this; |
|
} |
|
|
|
public function setRepeat($repeat) |
|
{ |
|
$this->repeat = $repeat; |
|
|
|
return $this; |
|
} |
|
|
|
public function setDuration($duration) |
|
{ |
|
$this->duration = $duration; |
|
|
|
return $this; |
|
} |
|
|
|
public function setDescription($description) |
|
{ |
|
$this->description = $description; |
|
|
|
return $this; |
|
} |
|
|
|
public function setAttendee($attendee) |
|
{ |
|
$this->attendee = $attendee; |
|
|
|
return $this; |
|
} |
|
|
|
public function setTrigger($trigger) |
|
{ |
|
$this->trigger = $trigger; |
|
|
|
return $this; |
|
} |
|
|
|
|
|
|
|
|
|
public function buildPropertyBag() |
|
{ |
|
$propertyBag = new PropertyBag(); |
|
|
|
if (null != $this->trigger) { |
|
$propertyBag->set('TRIGGER', $this->trigger); |
|
} |
|
|
|
if (null != $this->action) { |
|
$propertyBag->set('ACTION', $this->action); |
|
} |
|
|
|
if (null != $this->repeat) { |
|
$propertyBag->set('REPEAT', $this->repeat); |
|
} |
|
|
|
if (null != $this->duration) { |
|
$propertyBag->set('DURATION', $this->duration); |
|
} |
|
|
|
if (null != $this->description) { |
|
$propertyBag->set('DESCRIPTION', $this->description); |
|
} |
|
|
|
if (null != $this->attendee) { |
|
$propertyBag->set('ATTENDEE', $this->attendee); |
|
} |
|
|
|
return $propertyBag; |
|
} |
|
} |
|
|