Ejemplo n.º 1
0
 /**
  * Returns whether the present edit would, per default,
  * lead to the user watching the page.
  *
  * This uses the user's watchdefault and watchcreations settings
  * and considers whether the entity is already watched by the user.
  *
  * @note Keep in sync with logic in EditPage!
  *
  * @return bool
  */
 private function getWatchDefault()
 {
     // User wants to watch all edits or all creations.
     if ($this->user->getOption('watchdefault') || $this->user->getOption('watchcreations') && $this->isNew()) {
         return true;
     }
     // keep current state
     return !$this->isNew() && $this->entityStore->isWatching($this->user, $this->newEntity->getId());
 }
 /**
  * Save the new version of the given item.
  *
  * @param Item $item
  * @param User $user
  *
  * @return bool
  */
 private function saveChanges(Item $item, User $user)
 {
     $summary = $this->getSummary();
     $itemId = $item->getId();
     $summaryString = $this->summaryFormatter->formatSummary($summary);
     $editEntity = $this->editEntityFactory->newEditEntity($user, $item, true);
     $status = $editEntity->attemptSave($summaryString, EDIT_UPDATE, false, $this->entityStore->isWatching($user, $itemId));
     if (!$status->isOK()) {
         wfDebugLog('UpdateRepo', __FUNCTION__ . ': attemptSave for ' . $itemId->getSerialization() . ' failed: ' . $status->getMessage()->text());
     }
     return $status->isOK();
 }