Path: blob/master/src/applications/calendar/storage/PhabricatorCalendarExternalInvitee.php
12253 views
<?php12final class PhabricatorCalendarExternalInvitee3extends PhabricatorCalendarDAO4implements PhabricatorPolicyInterface {56protected $name;7protected $nameIndex;8protected $uri;9protected $parameters = array();10protected $sourcePHID;1112public static function initializeNewCalendarEventInvitee(13PhabricatorUser $actor, $event) {14return id(new PhabricatorCalendarEventInvitee())15->setInviterPHID($actor->getPHID())16->setStatus(PhabricatorCalendarEventInvitee::STATUS_INVITED)17->setEventPHID($event->getPHID());18}1920protected function getConfiguration() {21return array(22self::CONFIG_AUX_PHID => true,23self::CONFIG_SERIALIZATION => array(24'parameters' => self::SERIALIZATION_JSON,25),26self::CONFIG_COLUMN_SCHEMA => array(27'name' => 'text',28'nameIndex' => 'bytes12',29'uri' => 'text',30),31self::CONFIG_KEY_SCHEMA => array(32'key_name' => array(33'columns' => array('nameIndex'),34'unique' => true,35),36),37) + parent::getConfiguration();38}3940public function getPHIDType() {41return PhabricatorCalendarExternalInviteePHIDType::TYPECONST;42}4344public function save() {45$this->nameIndex = PhabricatorHash::digestForIndex($this->getName());46return parent::save();47}484950/* -( PhabricatorPolicyInterface )----------------------------------------- */515253public function getCapabilities() {54return array(55PhabricatorPolicyCapability::CAN_VIEW,56);57}5859public function getPolicy($capability) {60switch ($capability) {61case PhabricatorPolicyCapability::CAN_VIEW:62return PhabricatorPolicies::getMostOpenPolicy();63}64}6566public function hasAutomaticCapability($capability, PhabricatorUser $viewer) {67return false;68}6970}717273