Revision: 6381 Author: purodha Date: 2009-02-20 03:20:07 +0000 (Fri, 20 Feb 2009)
Log Message: ----------- (Bug 1877143) Added possibility for adding a replacement at "namespace mismatch" message.
Modified Paths: -------------- trunk/pywikipedia/interwiki.py
Modified: trunk/pywikipedia/interwiki.py =================================================================== --- trunk/pywikipedia/interwiki.py 2009-02-20 02:37:42 UTC (rev 6380) +++ trunk/pywikipedia/interwiki.py 2009-02-20 03:20:07 UTC (rev 6381) @@ -691,12 +691,19 @@ wikipedia.output(u"NOTE: Ignoring link from page %s in namespace %i to page %s in namespace %i because page %s in the correct namespace has already been found." % (self.originPage.aslink(True), self.originPage.namespace(), linkedPage.aslink(True), linkedPage.namespace(), preferredPage.aslink(True))) return True else: - choice = wikipedia.inputChoice('WARNING: %s is in namespace %i, but %s is in namespace %i. Follow it anyway?' % (self.originPage.aslink(True), self.originPage.namespace(), linkedPage.aslink(True), linkedPage.namespace()), ['Yes', 'No', 'give up'], ['y', 'n', 'g']) + choice = wikipedia.inputChoice('WARNING: %s is in namespace %i, but %s is in namespace %i. Follow it anyway?' % (self.originPage.aslink(True), self.originPage.namespace(), linkedPage.aslink(True), linkedPage.namespace()), ['Yes', 'No', 'Add an alternative', 'give up'], ['y', 'n', 'a', 'g']) if choice != 'y': # Fill up foundIn, so that we will not ask again self.foundIn[linkedPage] = [linkingPage] if choice == 'g': self.makeForcedStop(counter) + elif choice == 'a': + newHint = wikipedia.input(u'Give the alternative for language %s, not using a language code:' % linkedPage.site().language()) + if newHint: + alternativePage = wikipedia.Page(linkedPage.site(), newHint) + if alternativePage: + # add the page that was entered by the user + self.addIfNew(alternativePage, counter, None) else: wikipedia.output(u"NOTE: ignoring %s and its interwiki links" % linkedPage.aslink(True)) return True @@ -1384,7 +1391,6 @@ # Keep correct counters self.plus(site)
-# def setPageGenerator(self, pageGenerator, number = None): def setPageGenerator(self, pageGenerator, number = None, until = None): """Add a generator of subjects. Once the list of subjects gets too small, this generator is called to produce more Pages"""