當前位置: 首頁>>代碼示例>>PHP>>正文


PHP WatchedItem::getLinkTarget方法代碼示例

本文整理匯總了PHP中WatchedItem::getLinkTarget方法的典型用法代碼示例。如果您正苦於以下問題:PHP WatchedItem::getLinkTarget方法的具體用法?PHP WatchedItem::getLinkTarget怎麽用?PHP WatchedItem::getLinkTarget使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在WatchedItem的用法示例。


在下文中一共展示了WatchedItem::getLinkTarget方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: testConstruction

 /**
  * @dataProvider provideUserTitleTimestamp
  */
 public function testConstruction($user, LinkTarget $linkTarget, $notifTimestamp)
 {
     $item = new WatchedItem($user, $linkTarget, $notifTimestamp);
     $this->assertSame($user, $item->getUser());
     $this->assertSame($linkTarget, $item->getLinkTarget());
     $this->assertSame($notifTimestamp, $item->getNotificationTimestamp());
     // The below tests the internal WatchedItem::getTitle method
     $this->assertInstanceOf('Title', $item->getTitle());
     $this->assertSame($linkTarget->getDBkey(), $item->getTitle()->getDBkey());
     $this->assertSame($linkTarget->getFragment(), $item->getTitle()->getFragment());
     $this->assertSame($linkTarget->getNamespace(), $item->getTitle()->getNamespace());
     $this->assertSame($linkTarget->getText(), $item->getTitle()->getText());
 }
開發者ID:paladox,項目名稱:mediawiki,代碼行數:16,代碼來源:WatchedItemUnitTest.php

示例2: cache

 private function cache(WatchedItem $item)
 {
     $user = $item->getUser();
     $target = $item->getLinkTarget();
     $key = $this->getCacheKey($user, $target);
     $this->cache->set($key, $item);
     $this->cacheIndex[$target->getNamespace()][$target->getDBkey()][$user->getId()] = $key;
     $this->stats->increment('WatchedItemStore.cache');
 }
開發者ID:paladox,項目名稱:mediawiki,代碼行數:9,代碼來源:WatchedItemStore.php

示例3: extractOutputData

 private function extractOutputData(WatchedItem $watchedItem, array $recentChangeInfo)
 {
     /* Determine the title of the page that has been changed. */
     $title = Title::makeTitle($watchedItem->getLinkTarget()->getNamespace(), $watchedItem->getLinkTarget()->getDBkey());
     $user = $this->getUser();
     /* Our output data. */
     $vals = [];
     $type = intval($recentChangeInfo['rc_type']);
     $vals['type'] = RecentChange::parseFromRCType($type);
     $anyHidden = false;
     /* Create a new entry in the result for the title. */
     if ($this->fld_title || $this->fld_ids) {
         // These should already have been filtered out of the query, but just in case.
         if ($type === RC_LOG && $recentChangeInfo['rc_deleted'] & LogPage::DELETED_ACTION) {
             $vals['actionhidden'] = true;
             $anyHidden = true;
         }
         if ($type !== RC_LOG || LogEventsList::userCanBitfield($recentChangeInfo['rc_deleted'], LogPage::DELETED_ACTION, $user)) {
             if ($this->fld_title) {
                 ApiQueryBase::addTitleInfo($vals, $title);
             }
             if ($this->fld_ids) {
                 $vals['pageid'] = intval($recentChangeInfo['rc_cur_id']);
                 $vals['revid'] = intval($recentChangeInfo['rc_this_oldid']);
                 $vals['old_revid'] = intval($recentChangeInfo['rc_last_oldid']);
             }
         }
     }
     /* Add user data and 'anon' flag, if user is anonymous. */
     if ($this->fld_user || $this->fld_userid) {
         if ($recentChangeInfo['rc_deleted'] & Revision::DELETED_USER) {
             $vals['userhidden'] = true;
             $anyHidden = true;
         }
         if (Revision::userCanBitfield($recentChangeInfo['rc_deleted'], Revision::DELETED_USER, $user)) {
             if ($this->fld_userid) {
                 $vals['userid'] = (int) $recentChangeInfo['rc_user'];
                 // for backwards compatibility
                 $vals['user'] = (int) $recentChangeInfo['rc_user'];
             }
             if ($this->fld_user) {
                 $vals['user'] = $recentChangeInfo['rc_user_text'];
             }
             if (!$recentChangeInfo['rc_user']) {
                 $vals['anon'] = true;
             }
         }
     }
     /* Add flags, such as new, minor, bot. */
     if ($this->fld_flags) {
         $vals['bot'] = (bool) $recentChangeInfo['rc_bot'];
         $vals['new'] = $recentChangeInfo['rc_type'] == RC_NEW;
         $vals['minor'] = (bool) $recentChangeInfo['rc_minor'];
     }
     /* Add sizes of each revision. (Only available on 1.10+) */
     if ($this->fld_sizes) {
         $vals['oldlen'] = intval($recentChangeInfo['rc_old_len']);
         $vals['newlen'] = intval($recentChangeInfo['rc_new_len']);
     }
     /* Add the timestamp. */
     if ($this->fld_timestamp) {
         $vals['timestamp'] = wfTimestamp(TS_ISO_8601, $recentChangeInfo['rc_timestamp']);
     }
     if ($this->fld_notificationtimestamp) {
         $vals['notificationtimestamp'] = $watchedItem->getNotificationTimestamp() == null ? '' : wfTimestamp(TS_ISO_8601, $watchedItem->getNotificationTimestamp());
     }
     /* Add edit summary / log summary. */
     if ($this->fld_comment || $this->fld_parsedcomment) {
         if ($recentChangeInfo['rc_deleted'] & Revision::DELETED_COMMENT) {
             $vals['commenthidden'] = true;
             $anyHidden = true;
         }
         if (Revision::userCanBitfield($recentChangeInfo['rc_deleted'], Revision::DELETED_COMMENT, $user)) {
             if ($this->fld_comment && isset($recentChangeInfo['rc_comment'])) {
                 $vals['comment'] = $recentChangeInfo['rc_comment'];
             }
             if ($this->fld_parsedcomment && isset($recentChangeInfo['rc_comment'])) {
                 $vals['parsedcomment'] = Linker::formatComment($recentChangeInfo['rc_comment'], $title);
             }
         }
     }
     /* Add the patrolled flag */
     if ($this->fld_patrol) {
         $vals['patrolled'] = $recentChangeInfo['rc_patrolled'] == 1;
         $vals['unpatrolled'] = ChangesList::isUnpatrolled((object) $recentChangeInfo, $user);
     }
     if ($this->fld_loginfo && $recentChangeInfo['rc_type'] == RC_LOG) {
         if ($recentChangeInfo['rc_deleted'] & LogPage::DELETED_ACTION) {
             $vals['actionhidden'] = true;
             $anyHidden = true;
         }
         if (LogEventsList::userCanBitfield($recentChangeInfo['rc_deleted'], LogPage::DELETED_ACTION, $user)) {
             $vals['logid'] = intval($recentChangeInfo['rc_logid']);
             $vals['logtype'] = $recentChangeInfo['rc_log_type'];
             $vals['logaction'] = $recentChangeInfo['rc_log_action'];
             $vals['logparams'] = LogFormatter::newFromRow($recentChangeInfo)->formatParametersForApi();
         }
     }
     if ($anyHidden && $recentChangeInfo['rc_deleted'] & Revision::DELETED_RESTRICTED) {
         $vals['suppressed'] = true;
//.........這裏部分代碼省略.........
開發者ID:paladox,項目名稱:mediawiki,代碼行數:101,代碼來源:ApiQueryWatchlist.php


注:本文中的WatchedItem::getLinkTarget方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。