common.py 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. # -*- coding: utf-8 -*-
  2. from datetime import date
  3. from django.contrib.admin.models import LogEntry
  4. from django.contrib.auth.models import User
  5. class custom_date(date):
  6. day_names = ("Понедельник","Вторник","Среда","Четверг","Пятница","Суббота","Воскресенье")
  7. day_colors = ("FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF","#FFE4E1", "#FFE4E1")
  8. @property
  9. def weekday_name(self):
  10. return self.day_names[self.weekday()]
  11. @property
  12. def weekday_color(self):
  13. return self.day_colors[self.weekday()]
  14. @property
  15. def date_dd_mm_yy(self):
  16. return self.strftime('%d/%m/%Y')
  17. @property
  18. def is_weekend(self):
  19. return self.weekday() >= 5
  20. def log_view_call(fn):
  21. '''
  22. Wrapper for views log
  23. '''
  24. def wrapper(*args, **kwargs):
  25. log_entry = {}
  26. request = args[0]
  27. log_entry['user'] = User.objects.get(username = request.META['USER'])
  28. log_entry['object_repr'] = fn.__name__
  29. log_entry['action_flag'] = 5
  30. entry = LogEntry(**log_entry)
  31. entry.save()
  32. return fn(*args, **kwargs)
  33. return wrapper