Browse Source

Merge branch 'fs#161-add-article-titles' into develop

develop
Jonathan Golder 7 years ago
parent
commit
04f591b466
  1. 22
      bots/markpages.py
  2. 15
      lib/redfam.py

22
bots/markpages.py

@ -145,14 +145,10 @@ class MarkPagesBot( CurrentPageBot ): # sets 'current_page' on each treat()
for redfam in self.redfams: for redfam in self.redfams:
# We need the talkpage (and only this) of each existing page # We need the talkpage (and only this) of each existing page
for talkpage in pagegenerators.PageWithTalkPageGenerator( for talkpage in redfam.article_generator(
redfam.article_generator( filter_existing=True,
filter_existing=True, exclude_article_status=["marked"],
exclude_article_status=["marked"] ), talkpages=True ):
return_talk_only=True ):
# Add reference to redfam to talkpages
talkpage.redfam = redfam
yield talkpage yield talkpage
@ -188,14 +184,8 @@ class MarkPagesBot( CurrentPageBot ): # sets 'current_page' on each treat()
# None if change was not accepted by user # None if change was not accepted by user
save_ret = self.put_current( self.new_text, summary=summary ) save_ret = self.put_current( self.new_text, summary=summary )
# Normalize title with anchor (replace spaces in anchor) # Get article as named in db
article = self.current_page.toggleTalkPage().title( article = self.current_page.redarticle
asLink=True, textlink=True)
article = article.strip("[]")
article_parts = article.split("#", 1)
if len(article_parts) == 2:
article_parts[1] = article_parts[1].replace(" ", "_")
article = "#".join(article_parts)
# Status # Status
if add_ret is None or ( add_ret and save_ret ): if add_ret is None or ( add_ret and save_ret ):

15
lib/redfam.py

@ -514,7 +514,8 @@ class RedFamWorker( RedFam ):
def article_generator(self, # noqa def article_generator(self, # noqa
filter_existing=None, filter_redirects=None, filter_existing=None, filter_redirects=None,
exclude_article_status=[], exclude_article_status=[],
onlyinclude_article_status=[] ): onlyinclude_article_status=[],
talkpages=None ):
""" """
Yields pywikibot pageobjects for articles belonging to this redfams Yields pywikibot pageobjects for articles belonging to this redfams
in a generator in a generator
@ -528,6 +529,8 @@ class RedFamWorker( RedFam ):
set to False to get only redirectpages, set to False to get only redirectpages,
unset/None results in not filtering unset/None results in not filtering
@type filter_redirects bool/None @type filter_redirects bool/None
@param talkpages Set to True to get Talkpages instead of article page
@type talkpages bool/None
""" """
@ -591,6 +594,16 @@ class RedFamWorker( RedFam ):
except Break: except Break:
break break
# Toggle talkpage
if talkpages:
page = page.toggleTalkPage()
# Add reference to redfam to pages
page.redfam = self
# Keep article title from db with page object
page.redarticle = article
# Yield filtered pages # Yield filtered pages
yield page yield page

Loading…
Cancel
Save