Revision: 6460
Author: nicdumz
Date: 2009-03-01 09:19:24 +0000 (Sun, 01 Mar 2009)
Log Message:
-----------
* Bugfix for Page.delete : Site.delete doesn't exist -> Site.deletepage
* Tweaking error handling in delete methods to catch NoUsername exceptions in Page and not
in Site, to be able to implement mark support in Page itself.
Modified Paths:
--------------
branches/rewrite/pywikibot/page.py
branches/rewrite/pywikibot/site.py
Modified: branches/rewrite/pywikibot/page.py
===================================================================
--- branches/rewrite/pywikibot/page.py 2009-03-01 09:16:30 UTC (rev 6459)
+++ branches/rewrite/pywikibot/page.py 2009-03-01 09:19:24 UTC (rev 6460)
@@ -963,6 +963,7 @@
speedy-deletion request on the page instead.
"""
+ # TODO: add support for mark
if reason is None:
pywikibot.output(u'Deleting %s.' % (self.title(asLink=True)))
reason = pywikibot.input(u'Please enter a reason for the deletion:')
@@ -977,7 +978,13 @@
answer = 'y'
self.site()._noDeletePrompt = True
if answer in ['y', 'Y']:
- return self.site().delete(self, reason, mark=mark)
+ try:
+ return self.site().deletepage(self, reason)
+ except pywikibot.NoUsername, e:
+ if mark:
+ raise NotImplementedError("marking pages for deletions is not
yet available.")
+ raise e
+
def loadDeletedRevisions(self):
"""Retrieve all deleted revisions for this Page from
Special/Undelete.
Modified: branches/rewrite/pywikibot/site.py
===================================================================
--- branches/rewrite/pywikibot/site.py 2009-03-01 09:16:30 UTC (rev 6459)
+++ branches/rewrite/pywikibot/site.py 2009-03-01 09:19:24 UTC (rev 6460)
@@ -2420,11 +2420,11 @@
"""
try:
self.login(sysop=True)
- except pywikibot.Error, e:
- raise Error("delete: Unable to login as sysop (%s)"
+ except pywikibot.NoUsername, e:
+ raise NoUsername("delete: Unable to login as sysop (%s)"
% e.__class__.__name__)
if not self.logged_in(sysop=True):
- raise Error("delete: Unable to login as sysop")
+ raise NoUsername("delete: Unable to login as sysop")
token = self.token("delete")
req = api.Request(site=self, action="delete", token=token,
title=page.title(withSection=False),
Show replies by date