--- a/Allura/allura/controllers/discuss.py
+++ b/Allura/allura/controllers/discuss.py
@@ -202,7 +202,10 @@
file_info = kw.get('file_info', None)
p = self.thread.add_post(**kw)
- p.add_attachment(file_info)
+ if isinstance(file_info, list):
+ map(p.add_attachment, file_info)
+ else:
+ p.add_attachment(file_info)
if self.thread.artifact:
self.thread.artifact.mod_date = datetime.utcnow()
flash('Message posted')
@@ -275,7 +278,10 @@
require_access(self.post, 'moderate')
post_fields = self.W.edit_post.to_python(kw, None)
file_info = post_fields.pop('file_info', None)
- self.post.add_attachment(file_info)
+ if isinstance(file_info, list):
+ map(self.post.add_attachment, file_info)
+ else:
+ self.post.add_attachment(file_info)
for k,v in post_fields.iteritems():
try:
setattr(self.post, k, v)
@@ -320,7 +326,10 @@
require_access(self.thread, 'post')
kw = self.W.edit_post.to_python(kw, None)
p = self.thread.add_post(parent_id=self.post._id, **kw)
- p.add_attachment(file_info)
+ if isinstance(file_info, list):
+ map(p.add_attachment, file_info)
+ else:
+ p.add_attachment(file_info)
redirect(request.referer)
@h.vardec
@@ -355,7 +364,10 @@
@require_post()
def attach(self, file_info=None):
require_access(self.post, 'moderate')
- self.post.add_attachment(file_info)
+ if isinstance(file_info, list):
+ map(self.post.add_attachment, file_info)
+ else:
+ self.post.add_attachment(file_info)
redirect(request.referer)
@expose()