Mercurial > hg > rc1
comparison vendor/sabre/vobject/lib/Component/VTimeZone.php @ 7:430dbd5346f7
vendor sabre as distributed
| author | Charlie Root |
|---|---|
| date | Sat, 13 Jan 2018 09:06:10 -0500 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 6:cec75ba50afc | 7:430dbd5346f7 |
|---|---|
| 1 <?php | |
| 2 | |
| 3 namespace Sabre\VObject\Component; | |
| 4 | |
| 5 use Sabre\VObject; | |
| 6 | |
| 7 /** | |
| 8 * The VTimeZone component | |
| 9 * | |
| 10 * This component adds functionality to a component, specific for VTIMEZONE | |
| 11 * components. | |
| 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 VTimeZone extends VObject\Component { | |
| 18 | |
| 19 /** | |
| 20 * Returns the PHP DateTimeZone for this VTIMEZONE component. | |
| 21 * | |
| 22 * If we can't accurately determine the timezone, this method will return | |
| 23 * UTC. | |
| 24 * | |
| 25 * @return \DateTimeZone | |
| 26 */ | |
| 27 function getTimeZone() { | |
| 28 | |
| 29 return VObject\TimeZoneUtil::getTimeZone((string)$this->TZID, $this->root); | |
| 30 | |
| 31 } | |
| 32 | |
| 33 /** | |
| 34 * A simple list of validation rules. | |
| 35 * | |
| 36 * This is simply a list of properties, and how many times they either | |
| 37 * must or must not appear. | |
| 38 * | |
| 39 * Possible values per property: | |
| 40 * * 0 - Must not appear. | |
| 41 * * 1 - Must appear exactly once. | |
| 42 * * + - Must appear at least once. | |
| 43 * * * - Can appear any number of times. | |
| 44 * | |
| 45 * @var array | |
| 46 */ | |
| 47 function getValidationRules() { | |
| 48 | |
| 49 return array( | |
| 50 'TZID' => 1, | |
| 51 | |
| 52 'LAST-MODIFICATION' => '?', | |
| 53 'TZURL' => '?', | |
| 54 | |
| 55 // At least 1 STANDARD or DAYLIGHT must appear, or more. But both | |
| 56 // cannot appear in the same VTIMEZONE. | |
| 57 // | |
| 58 // The validator is not specific yet to pick this up, so these | |
| 59 // rules are too loose. | |
| 60 'STANDARD' => '*', | |
| 61 'DAYLIGHT' => '*', | |
| 62 ); | |
| 63 | |
| 64 } | |
| 65 | |
| 66 } | |
| 67 |
