当前位置: 首页>>代码示例>>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;未经允许,请勿转载。