permissions.py 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. # **************************************************************************
  4. # Copyright © 2017 jianglin
  5. # File Name: permissions.py
  6. # Author: jianglin
  7. # Email: xiyang0807@gmail.com
  8. # Created: 2017-03-29 15:53:37 (CST)
  9. # Last Update:星期四 2017-3-30 16:17:48 (CST)
  10. # By:
  11. # Description:
  12. # **************************************************************************
  13. from flask import request
  14. from flask_login import login_required
  15. from forums.permission import (ReplyPermission, RestfulView, TopicPermission,
  16. is_confirmed)
  17. class Edit(RestfulView):
  18. def get(self, topicId):
  19. permission = TopicPermission(topicId)
  20. if not permission.can():
  21. return self.callback()
  22. return True
  23. class TopicList(RestfulView):
  24. @is_confirmed
  25. def post(self):
  26. return True
  27. class Topic(RestfulView):
  28. @is_confirmed
  29. def put(self, topicId):
  30. permission = TopicPermission(topicId)
  31. if not permission.can():
  32. return self.callback()
  33. return True
  34. @is_confirmed
  35. def delete(self, topicId):
  36. permission = TopicPermission(topicId)
  37. if not permission.can():
  38. return self.callback()
  39. return True
  40. class ReplyList(RestfulView):
  41. @is_confirmed
  42. def post(self, topicId):
  43. return True
  44. class Reply(RestfulView):
  45. @is_confirmed
  46. def put(self, replyId):
  47. return True
  48. @is_confirmed
  49. def delete(self, replyId):
  50. return True
  51. class Like(RestfulView):
  52. @is_confirmed
  53. def post(self, replyId):
  54. return True
  55. @is_confirmed
  56. def delete(self, replyId):
  57. return True
  58. topic_list_permission = TopicList()
  59. topic_permission = Topic()
  60. reply_list_permission = ReplyList()
  61. reply_permission = Reply()
  62. like_permission = Like()
  63. edit_permission = Edit()