summaryrefslogtreecommitdiff
path: root/maconomy/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'maconomy/views.py')
-rw-r--r--maconomy/views.py37
1 files changed, 37 insertions, 0 deletions
diff --git a/maconomy/views.py b/maconomy/views.py
new file mode 100644
index 0000000..10e9c06
--- /dev/null
+++ b/maconomy/views.py
@@ -0,0 +1,37 @@
+from maconomy import MissingEmailTemplate, UnsubmittedEmailTemplate, ManagerEmailTemplate, CEOEmailTemplate
+
+class EmployeeEmailView(object):
+ def __init__(self, config):
+ self.missing_template = MissingEmailTemplate()
+ self.unsubmitted_template = UnsubmittedEmailTemplate()
+ self.maconomyurl = config.get("view", "maconomyurl")
+ self.helpurl = config.get("view", "helpurl")
+
+ def render(self,timesheet):
+ if timesheet.is_missing():
+ return self.missing_template.build(
+ maconomyurl=self.maconomyurl,
+ helpurl=self.helpurl)
+ elif not timesheet.is_submitted():
+ return self.unsubmitted_template.build(
+ week=timesheet.week,
+ maconomyurl=self.maconomyurl,
+ helpurl=self.helpurl)
+ else:
+ return None
+
+
+class ManagerEmailView(object):
+ def __init__(self, config):
+ self.maconomyurl = config.get("view", "maconomyurl")
+ self.template = ManagerEmailTemplate()
+
+ def render(self, timesheets):
+ return self.template.build(timesheets, self.maconomyurl)
+
+class CEOEmailView(object):
+ def __init__(self):
+ self.template = CEOEmailTemplate()
+
+ def render(self, timesheets):
+ return self.template.build(timesheets)