Path: blob/master/src/infrastructure/export/engine/PhabricatorSpacesExportEngineExtension.php
12242 views
<?php12final class PhabricatorSpacesExportEngineExtension3extends PhabricatorExportEngineExtension {45const EXTENSIONKEY = 'spaces';67public function supportsObject($object) {8$viewer = $this->getViewer();910if (!PhabricatorSpacesNamespaceQuery::getViewerSpacesExist($viewer)) {11return false;12}1314return ($object instanceof PhabricatorSpacesInterface);15}1617public function newExportFields() {18return array(19id(new PhabricatorPHIDExportField())20->setKey('spacePHID')21->setLabel(pht('Space PHID')),22id(new PhabricatorStringExportField())23->setKey('space')24->setLabel(pht('Space')),25);26}2728public function newExportData(array $objects) {29$viewer = $this->getViewer();3031$space_phids = array();32foreach ($objects as $object) {33$space_phids[] = PhabricatorSpacesNamespaceQuery::getObjectSpacePHID(34$object);35}36$handles = $viewer->loadHandles($space_phids);3738$map = array();39foreach ($objects as $object) {40$space_phid = PhabricatorSpacesNamespaceQuery::getObjectSpacePHID(41$object);4243$map[] = array(44'spacePHID' => $space_phid,45'space' => $handles[$space_phid]->getName(),46);47}4849return $map;50}5152}535455