当前位置: 首页>>代码示例>>PHP>>正文


PHP Revision::getVisibility方法代码示例

本文整理汇总了PHP中Revision::getVisibility方法的典型用法代码示例。如果您正苦于以下问题:PHP Revision::getVisibility方法的具体用法?PHP Revision::getVisibility怎么用?PHP Revision::getVisibility使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Revision的用法示例。


在下文中一共展示了Revision::getVisibility方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: getRevDeleteLink

 /**
  * Get a revision-deletion link, or disabled link, or nothing, depending
  * on user permissions & the settings on the revision.
  *
  * Will use forward-compatible revision ID in the Special:RevDelete link
  * if possible, otherwise the timestamp-based ID which may break after
  * undeletion.
  *
  * @param User $user
  * @param Revision $rev
  * @param Revision $title
  * @return string HTML fragment
  */
 public static function getRevDeleteLink(User $user, Revision $rev, Title $title)
 {
     $canHide = $user->isAllowed('deleterevision');
     if (!$canHide && !($rev->getVisibility() && $user->isAllowed('deletedhistory'))) {
         return '';
     }
     if (!$rev->userCan(Revision::DELETED_RESTRICTED, $user)) {
         return Linker::revDeleteLinkDisabled($canHide);
         // revision was hidden from sysops
     } else {
         if ($rev->getId()) {
             // RevDelete links using revision ID are stable across
             // page deletion and undeletion; use when possible.
             $query = array('type' => 'revision', 'target' => $title->getPrefixedDBkey(), 'ids' => $rev->getId());
         } else {
             // Older deleted entries didn't save a revision ID.
             // We have to refer to these by timestamp, ick!
             $query = array('type' => 'archive', 'target' => $title->getPrefixedDBkey(), 'ids' => $rev->getTimestamp());
         }
         return Linker::revDeleteLink($query, $rev->isDeleted(Revision::DELETED_RESTRICTED), $canHide);
     }
 }
开发者ID:h4ck3rm1k3,项目名称:mediawiki,代码行数:35,代码来源:Linker.php

示例2: onContributionsLineEnding

 /**
  * @brief Adjusting Special:Contributions
  *
  * @param ContribsPager $contribsPager
  * @param String $ret string passed to wgOutput
  * @param Object $row Std Object with values from database table
  *
  * @return true
  */
 public function onContributionsLineEnding(&$contribsPager, &$ret, $row)
 {
     wfProfileIn(__METHOD__);
     $app = F::app();
     if (isset($row->page_namespace) && in_array(MWNamespace::getSubject($row->page_namespace), $app->wg->WallNS)) {
         $topmarktext = '';
         $rev = new Revision($row);
         $page = $rev->getTitle();
         $page->resetArticleId($row->rev_page);
         $skin = $app->wg->User->getSkin();
         $wfMsgOptsBase = $this->getMessageOptions(null, $row, true);
         $isThread = $wfMsgOptsBase['isThread'];
         $isNew = $wfMsgOptsBase['isNew'];
         $wfMsgOptsBase['createdAt'] = Xml::element('a', array('href' => $wfMsgOptsBase['articleUrl']), $app->wg->Lang->timeanddate($app->wf->Timestamp(TS_MW, $row->rev_timestamp), true));
         if ($isNew) {
             $wfMsgOptsBase['DiffLink'] = $app->wf->Msg('diff');
         } else {
             $query = array('diff' => 'prev', 'oldid' => $row->rev_id);
             $wfMsgOptsBase['DiffLink'] = Xml::element('a', array('href' => $rev->getTitle()->getLocalUrl($query)), $app->wf->Msg('diff'));
         }
         $wallMessage = F::build('WallMessage', array($page));
         $historyLink = $wallMessage->getMessagePageUrl(true) . '?action=history';
         $wfMsgOptsBase['historyLink'] = Xml::element('a', array('href' => $historyLink), $app->wf->Msg('hist'));
         // Don't show useless link to people who cannot hide revisions
         $canHide = $app->wg->User->isAllowed('deleterevision');
         if ($canHide || $rev->getVisibility() && $app->wg->User->isAllowed('deletedhistory')) {
             if (!$rev->userCan(Revision::DELETED_RESTRICTED)) {
                 $del = $skin->revDeleteLinkDisabled($canHide);
                 // revision was hidden from sysops
             } else {
                 $query = array('type' => 'revision', 'target' => $page->getPrefixedDbkey(), 'ids' => $rev->getId());
                 $del = $skin->revDeleteLink($query, $rev->isDeleted(Revision::DELETED_RESTRICTED), $canHide);
             }
             $del .= ' ';
         } else {
             $del = '';
         }
         $ret = $del;
         if (wfRunHooks('WallContributionsLine', array(MWNamespace::getSubject($row->page_namespace), $wallMessage, $wfMsgOptsBase, &$ret))) {
             $wfMsgOpts = array($wfMsgOptsBase['articleUrl'], $wfMsgOptsBase['articleTitleTxt'], $wfMsgOptsBase['wallPageUrl'], $wfMsgOptsBase['wallPageName'], $wfMsgOptsBase['createdAt'], $wfMsgOptsBase['DiffLink'], $wfMsgOptsBase['historyLink']);
             if ($isThread && $isNew) {
                 $wfMsgOpts[7] = Xml::element('strong', array(), wfMsg('newpageletter') . ' ');
             } else {
                 $wfMsgOpts[7] = '';
             }
             $ret .= $app->wf->Msg('wall-contributions-wall-line', $wfMsgOpts);
         }
         if (!$isNew) {
             $summary = $rev->getComment();
             if (empty($summary)) {
                 $msg = $app->wf->MsgForContent($this->getMessagePrefix($row->page_namespace) . '-edit');
             } else {
                 $msg = $app->wf->MsgForContent('wall-recentchanges-summary', $summary);
             }
             $ret .= ' ' . Xml::openElement('span', array('class' => 'comment')) . $msg . Xml::closeElement('span');
         }
     }
     wfProfileOut(__METHOD__);
     return true;
 }
开发者ID:schwarer2006,项目名称:wikia,代码行数:69,代码来源:WallHooksHelper.class.php

示例3: getBits

 public function getBits()
 {
     return $this->revision->getVisibility();
 }
开发者ID:eliagbayani,项目名称:LiteratureEditor,代码行数:4,代码来源:RevDelRevisionItem.php

示例4: notifyCategorization

 /**
  * @param string $timestamp Timestamp of the recent change to occur in TS_MW format
  * @param Title $categoryTitle Title of the category a page is being added to or removed from
  * @param User $user User object of the user that made the change
  * @param string $comment Change summary
  * @param Title $pageTitle Title of the page that is being added or removed
  * @param string $lastTimestamp Parent revision timestamp of this change in TS_MW format
  * @param Revision|null $revision
  *
  * @throws MWException
  */
 private function notifyCategorization($timestamp, Title $categoryTitle, User $user = null, $comment, Title $pageTitle, $lastTimestamp, $revision)
 {
     $deleted = $revision ? $revision->getVisibility() & Revision::SUPPRESSED_USER : 0;
     $newRevId = $revision ? $revision->getId() : 0;
     /**
      * T109700 - Default bot flag to true when there is no corresponding RC entry
      * This means all changes caused by parser functions & Lua on reparse are marked as bot
      * Also in the case no RC entry could be found due to replica DB lag
      */
     $bot = 1;
     $lastRevId = 0;
     $ip = '';
     # If no revision is given, the change was probably triggered by parser functions
     if ($revision !== null) {
         $correspondingRc = $this->revision->getRecentChange();
         if ($correspondingRc === null) {
             $correspondingRc = $this->revision->getRecentChange(Revision::READ_LATEST);
         }
         if ($correspondingRc !== null) {
             $bot = $correspondingRc->getAttribute('rc_bot') ?: 0;
             $ip = $correspondingRc->getAttribute('rc_ip') ?: '';
             $lastRevId = $correspondingRc->getAttribute('rc_last_oldid') ?: 0;
         }
     }
     /** @var RecentChange $rc */
     $rc = call_user_func_array($this->newForCategorizationCallback, [$timestamp, $categoryTitle, $user, $comment, $pageTitle, $lastRevId, $newRevId, $lastTimestamp, $bot, $ip, $deleted]);
     $rc->save();
 }
开发者ID:paladox,项目名称:mediawiki,代码行数:39,代码来源:CategoryMembershipChange.php

示例5: revDeleteLink

 /**
  * Get a revision-deletion link, or disabled link, or nothing, depending
  * on user permissions & the settings on the revision.
  *
  * Will use forward-compatible revision ID in the Special:RevDelete link
  * if possible, otherwise the timestamp-based ID which may break after
  * undeletion.
  *
  * @param Revision $rev
  * @return string HTML fragment
  */
 function revDeleteLink($rev)
 {
     $canHide = $this->getUser()->isAllowed('deleterevision');
     if ($canHide || $rev->getVisibility() && $this->getUser()->isAllowed('deletedhistory')) {
         if (!$rev->userCan(Revision::DELETED_RESTRICTED)) {
             $revdlink = Linker::revDeleteLinkDisabled($canHide);
             // revision was hidden from sysops
         } else {
             if ($rev->getId()) {
                 // RevDelete links using revision ID are stable across
                 // page deletion and undeletion; use when possible.
                 $query = array('type' => 'revision', 'target' => $this->mTargetObj->getPrefixedDBkey(), 'ids' => $rev->getId());
             } else {
                 // Older deleted entries didn't save a revision ID.
                 // We have to refer to these by timestamp, ick!
                 $query = array('type' => 'archive', 'target' => $this->mTargetObj->getPrefixedDBkey(), 'ids' => $rev->getTimestamp());
             }
             return Linker::revDeleteLink($query, $rev->isDeleted(File::DELETED_RESTRICTED), $canHide);
         }
     } else {
         return '';
     }
 }
开发者ID:eFFemeer,项目名称:seizamcore,代码行数:34,代码来源:SpecialUndelete.php


注:本文中的Revision::getVisibility方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。