summaryrefslogtreecommitdiff
path: root/service/pixelated
diff options
context:
space:
mode:
authorVictor Shyba <victor.shyba@gmail.com>2014-10-17 17:03:14 -0300
committerVictor Shyba <victor.shyba@gmail.com>2014-10-17 17:03:14 -0300
commit209729cbc97bf989cb9cb149c74d5cb2c1adc3b8 (patch)
treed0a00e97726b9f29bebf46b6ba25423d212530f2 /service/pixelated
parent880bba5dd4cb370809c7a949719f015cae3126fa (diff)
bulk mark as read #114
Diffstat (limited to 'service/pixelated')
-rw-r--r--service/pixelated/config/app_factory.py1
-rw-r--r--service/pixelated/controllers/mails_controller.py7
2 files changed, 8 insertions, 0 deletions
diff --git a/service/pixelated/config/app_factory.py b/service/pixelated/config/app_factory.py
index 6c9c07fe..ed752118 100644
--- a/service/pixelated/config/app_factory.py
+++ b/service/pixelated/config/app_factory.py
@@ -36,6 +36,7 @@ def _setup_routes(app, home_controller, mails_controller, tags_controller, featu
app.add_url_rule('/mail/<mail_id>/read', methods=['POST'], view_func=mails_controller.mark_mail_as_read)
app.add_url_rule('/mail/<mail_id>/unread', methods=['POST'], view_func=mails_controller.mark_mail_as_unread)
app.add_url_rule('/mails/unread', methods=['POST'], view_func=mails_controller.mark_many_mail_unread)
+ app.add_url_rule('/mails/read', methods=['POST'], view_func=mails_controller.mark_many_mail_read)
app.add_url_rule('/mail/<mail_id>', methods=['GET'], view_func=mails_controller.mail)
app.add_url_rule('/mail/<mail_id>', methods=['DELETE'], view_func=mails_controller.delete_mail)
app.add_url_rule('/mails', methods=['DELETE'], view_func=mails_controller.delete_mails)
diff --git a/service/pixelated/controllers/mails_controller.py b/service/pixelated/controllers/mails_controller.py
index b850d24d..ba8cbba1 100644
--- a/service/pixelated/controllers/mails_controller.py
+++ b/service/pixelated/controllers/mails_controller.py
@@ -65,6 +65,13 @@ class MailsController:
self._search_engine.index_mail(mail)
return ""
+ def mark_many_mail_read(self):
+ idents = json.loads(request.form['idents'])
+ for ident in idents:
+ mail = self._mail_service.mark_as_read(ident)
+ self._search_engine.index_mail(mail)
+ return ""
+
def delete_mail(self, mail_id):
trashed_mail = self._mail_service.delete_mail(mail_id)
self._search_engine.index_mail(trashed_mail)