From 5c328781283a59ec8906263aeb052436f412747f Mon Sep 17 00:00:00 2001 From: Bryan Tong Minh <bryan.tongminh@gmail.com> Date: Sun, 17 Feb 2008 19:54:28 +0000 Subject: [PATCH] Add cmtitle compatibility --- mwclient/compatibility.py | 9 ++++++++- mwclient/listing.py | 7 +++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/mwclient/compatibility.py b/mwclient/compatibility.py index 4bd7625..ded741a 100644 --- a/mwclient/compatibility.py +++ b/mwclient/compatibility.py @@ -22,4 +22,11 @@ def iiprop(post_112): if post_112: return 'timestamp|user|comment|url|size|sha1|metadata' else: - return 'timestamp|user|comment|url|size|sha1' \ No newline at end of file + return 'timestamp|user|comment|url|size|sha1' + +def cmtitle(page, new_format, prefix = ''): + if new_format: + return prefix + 'title', page.name + else: + return prefix + 'category', page.strip_namespace(page.name) + \ No newline at end of file diff --git a/mwclient/listing.py b/mwclient/listing.py index 32480e8..f3a9b2a 100644 --- a/mwclient/listing.py +++ b/mwclient/listing.py @@ -119,7 +119,9 @@ class GeneratorList(List): class Category(page.Page, GeneratorList): def __init__(self, site, name, info = None, namespace = None): page.Page.__init__(self, site, name, info) - kwargs = {'gcmcategory': self.strip_namespace(self.name)} + kwargs = {} + kwargs.update((compatibility.cmtitle(self, self.site.require( + 1, 12, raise_error = False), prefix = 'gcm'), )) if namespace: kwargs['gcmnamespace'] = namespace GeneratorList.__init__(self, site, 'categorymembers', 'cm', **kwargs) def __repr__(self): @@ -128,7 +130,8 @@ class Category(page.Page, GeneratorList): dir = 'asc', start = None, end = None, generator = True): prefix = self.get_prefix('cm', generator) kwargs = dict(self.generate_kwargs(prefix, prop = prop, namespace = namespace, - sort = sort, dir = dir, start = start, end = end)) + sort = sort, dir = dir, start = start, end = end, *(compatibility.cmtitle( + self, self.site.require(1, 12, raise_error = False)), ))) return self.get_list(generator)(self.site, 'categorymembers', 'cm', **kwargs) class PageList(GeneratorList): -- GitLab