示例#1
0
 /**
  * @since 0.3
  *
  * @param Page $page
  * @param UndeleteOptions|null $options
  *
  * @return bool
  */
 public function restore(Page $page, UndeleteOptions $options = null)
 {
     $this->api->postRequest(new SimpleRequest('undelete', $this->getUndeleteParams($page->getTitle(), $options)));
     return true;
 }
示例#2
0
 /**
  * @since 0.3
  *
  * @param Page $page
  * @param array $extraParams
  *
  * @return bool
  */
 public function restore(Page $page, array $extraParams = [])
 {
     $this->api->postRequest(new SimpleRequest('undelete', $this->getUndeleteParams($page->getTitle(), $extraParams)));
     return true;
 }
示例#3
0
 /**
  * @param Page $page
  * @param DumpQuery $query
  *
  * @return bool
  */
 private function matchPage(Page $page, DumpQuery $query)
 {
     //Check namespaces
     if (count($query->getNamespaceFilters()) !== 0 && !in_array($page->getTitle()->getNs(), $query->getNamespaceFilters())) {
         return false;
     }
     //Check Title
     foreach ($query->getTitleFilters(DumpQuery::TYPE_CONTAINS) as $regex) {
         if (!preg_match($regex, $page->getTitle()->getTitle())) {
             return false;
         }
     }
     foreach ($query->getTitleFilters(DumpQuery::TYPE_MISSING) as $regex) {
         if (preg_match($regex, $page->getTitle()->getTitle())) {
             return false;
         }
     }
     //Check Text
     foreach ($query->getTextFilters(DumpQuery::TYPE_CONTAINS) as $regex) {
         if (!preg_match($regex, $page->getRevisions()->getLatest()->getContent())) {
             return false;
         }
     }
     foreach ($query->getTextFilters(DumpQuery::TYPE_MISSING) as $regex) {
         if (preg_match($regex, $page->getRevisions()->getLatest()->getContent())) {
             return false;
         }
     }
     return true;
 }