7
|
1 <?php
|
|
2
|
|
3 namespace Sabre\VObject\Property\ICalendar;
|
|
4
|
|
5 use
|
|
6 Sabre\VObject\Property\Text;
|
|
7
|
|
8 /**
|
|
9 * CalAddress property
|
|
10 *
|
|
11 * This object encodes CAL-ADDRESS values, as defined in rfc5545
|
|
12 *
|
|
13 * @copyright Copyright (C) 2011-2015 fruux GmbH (https://fruux.com/).
|
|
14 * @author Evert Pot (http://evertpot.com/)
|
|
15 * @license http://sabre.io/license/ Modified BSD License
|
|
16 */
|
|
17 class CalAddress extends Text {
|
|
18
|
|
19 /**
|
|
20 * In case this is a multi-value property. This string will be used as a
|
|
21 * delimiter.
|
|
22 *
|
|
23 * @var string|null
|
|
24 */
|
|
25 public $delimiter = null;
|
|
26
|
|
27 /**
|
|
28 * Returns the type of value.
|
|
29 *
|
|
30 * This corresponds to the VALUE= parameter. Every property also has a
|
|
31 * 'default' valueType.
|
|
32 *
|
|
33 * @return string
|
|
34 */
|
|
35 public function getValueType() {
|
|
36
|
|
37 return 'CAL-ADDRESS';
|
|
38
|
|
39 }
|
|
40
|
|
41 /**
|
|
42 * This returns a normalized form of the value.
|
|
43 *
|
|
44 * This is primarily used right now to turn mixed-cased schemes in user
|
|
45 * uris to lower-case.
|
|
46 *
|
|
47 * Evolution in particular tends to encode mailto: as MAILTO:.
|
|
48 *
|
|
49 * @return string
|
|
50 */
|
|
51 public function getNormalizedValue() {
|
|
52
|
|
53 $input = $this->getValue();
|
|
54 if (!strpos($input, ':')) {
|
|
55 return $input;
|
|
56 }
|
|
57 list($schema, $everythingElse) = explode(':', $input, 2);
|
|
58 return strtolower($schema) . ':' . $everythingElse;
|
|
59
|
|
60 }
|
|
61 }
|