-
Notifications
You must be signed in to change notification settings - Fork 0
/
FullCalendarEvent.php
55 lines (53 loc) · 1.32 KB
/
FullCalendarEvent.php
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
51
52
53
54
55
<?php
class FullCalendarEvent extends Object
{
private static $Allowed = array('id', 'title', 'allDay', 'start',
'end', 'url', 'className', 'editable',
'color', 'backgroundColor', 'borderColor', 'textColor');
private $Properties;
/**
* put your comment there...
*
* @param string|array $title If string, then will set the title, if array will pass in array to event
* @param timestamp $start Start of event
* @param timestamp $end End of event
* @return FullCalendarEvent
*/
function __construct($title, $start, $end=null)
{
if(is_array($title))
$this->Properties = $title;
else
{
$this->Properties = array();
$this->Title = $title;
$this->Start = $start;
if($end)
{
$this->End = $end;
$this->AllDay = false;
}
}
}
private function SetProperty($property, $value)
{
$this->Properties[$property] = $value;
return $value;
}
public function GetProperties() {return $this->Properties;}
function __get($name)
{
$prop = strtolower($name);
if(in_array($prop, self::$Allowed))
return isset($this->Properties[$prop])?$this->Properties[$prop]:null;
return parent::__get($name);
}
function __set($name, $value)
{
$prop = lcfirst($name);
if(in_array($prop, self::$Allowed))
return $this->SetProperty($prop, $value);
return parent::__set($name, $value);
}
}
?>