/** * @see SiteLinkStore::saveLinksOfItem * * @param Item $item * * @return bool */ public function saveLinksOfItem(Item $item) { $itemId = $item->getId(); $this->deleteLinksOfItem($itemId); foreach ($item->getSiteLinks() as $siteLink) { $this->indexByLink($itemId, $siteLink); $this->indexByItemId($itemId, $siteLink); } return true; }
/** * Builds and returns the HTML representing a WikibaseEntity's site-links. * * @since 0.1 * * @param Item $item the entity to render * * @return string HTML */ protected function getHtmlForSiteLinks(Item $item) { return $this->siteLinksView->getHtml($item->getSiteLinks(), $item->getId(), $this->siteLinkGroups); }
/** * @see SiteLinkLookup::getConflictsForItem * * The items in the return array are arrays with the following elements: * - integer itemId * - string siteId * - string sitePage * * @param Item $item * * @return array */ public function getSiteLinkConflictsForItem(Item $item) { $conflicts = array(); foreach ($item->getSiteLinks() as $link) { $page = $link->getPageName(); $site = $link->getSiteId(); if ($page === 'DUPE') { //NOTE: some tests may rely on these exact values! $conflicts[] = array('itemId' => 666, 'siteId' => $site, 'sitePage' => $page); } } return $conflicts; }
/** * @dataProvider simpleSiteLinksProvider */ public function testGetSiteLinks() { $siteLinks = func_get_args(); $item = new Item(); foreach ($siteLinks as $siteLink) { $item->getSiteLinkList()->addSiteLink($siteLink); } $this->assertInternalType('array', $item->getSiteLinks()); $this->assertEquals($siteLinks, $item->getSiteLinks()); }