Description
action=PackagePages fails because
Config instance has no attribute 'allowed_actions' * args = ("Config instance has no attribute 'allowed_actions'",)
while debugging I found some more problems. To get this routine principle working look at the patch. I file an other bug report dependend on this changes regarding PageEditor. I am very interested in this routine so I like to help with it if you are interested -- ReimarBauer 2005-11-01 14:07:27
Steps to reproduce
http://moinmoin.wikiwikiweb.de/ParserMarket/Gallery2?action=PackagePages
Details
This Wiki
Workaround
imply this patch
--- PackagePages.py 2005-11-01 12:34:16.000000000 +0100 +++ PackagePages.py.rb 2005-11-01 15:04:43.000000000 +0100 @@ -30,8 +30,7 @@ def allowed(self): """ Check if user is allowed to do this. """ may = self.request.user.may - return (self.__class__.__name__ in self.request.cfg.allowed_actions and - may.write(self.pagename)) + return may.write(self.pagename) def render(self): """ Render action @@ -70,7 +69,7 @@ raise ActionError(self.makeform()) pages = [] - for pagename in unpackLine(pagelist, ","): + for pagename in pagelist.split(","): # RB I think split is right here pagename = self.request.normalizePagename(pagename) if pagename: page = Page(self.request, pagename) @@ -88,7 +87,8 @@ # get directory, and possibly create it attach_dir = Page(self.request, self.page.page_name).getPagePath("attachments", check_create=1) fpath = os.path.join(attach_dir, target).encode(config.charset) - print fpath + #print fpath + if os.path.exists(fpath): raise ActionError(_("Attachment '%(target)s' (remote name '%(filename)s') already exists.") % { 'target': wikiutil.escape(target), 'filename': wikiutil.escape(target)}) @@ -116,6 +116,7 @@ _addLogEntry(self.request, 'ATTNEW', pagename, target) + raise ActionError(_("Created the package %s containing the pages %s.") % (wikiutil.escape(target), wikiutil.escape(pagelist))) def makeform(self, error=""): @@ -131,7 +132,7 @@ d = { 'error': error, 'action': self.__class__.__name__, - 'pagename': wikiutil.escape(self.pagename), + 'pagename': wikiutil.escape(self.pagename), 'package': _('Package pages'), 'cancel': _('Cancel'), 'newname_label': _("Package name"), @@ -151,7 +152,7 @@ <tr> <td class="label"><label>%(list_label)s</label></td> <td class="content"> - <input type="text" name="pagelist" maxlength="80"> + <input type="text" name="pagelist" maxlength="80" value="%(pagename)s"> </td> </tr> <tr> @@ -169,3 +170,5 @@ def execute(pagename, request): """ Glue code for actions """ PackagePages(pagename, request).render() + +
Discussion
See patch
Should this routine in this stage package attachments too?
Plan
- Priority:
- Assigned to:
- Status: fixed using actions_excluded and commented out print, Alexander, please check that split stuff