def get(self, payroll_user=None, week=None): start_date = utils.get_last_monday(datetime.date.today()) end_date = start_date + datetime.timedelta(days=6) if week: start_date = utils.get_last_monday( datetime.date.fromtimestamp(float(week))) end_date = start_date + datetime.timedelta(days=6) records = TimeRecord.get_current_week( payroll_user or self.user.username, start_date) else: records = TimeRecord.get_current_week(payroll_user or self.user.username) if not records: return abort(404) next_date = start_date + datetime.timedelta(days=7) prev_date = start_date - datetime.timedelta(days=7) context = { 'nav': 'payroll', 'user': self.user, 'table_rows': records, 'payroll_username': payroll_user or self.user.username, 'start_date': start_date, 'end_date': end_date, 'prev_timestamp': time.mktime(prev_date.timetuple()), 'next_timestamp': time.mktime(next_date.timetuple()), } return render_template('payroll.html', **context)
def get(self, payroll_user=None, week=None): if self.user is not None: start_date = utils.get_last_monday(datetime.date.today()) end_date = start_date + datetime.timedelta(days=6) if week: start_date = utils.get_last_monday(datetime.date.fromtimestamp(float(week))) end_date = start_date + datetime.timedelta(days=6) records = TimeRecord.get_current_week(payroll_user or self.user.username, start_date) else: records = TimeRecord.get_current_week(payroll_user or self.user.username) if not records: return abort(404) next_date = start_date + datetime.timedelta(days=7) prev_date = start_date - datetime.timedelta(days=7) context = { 'nav': 'payroll', 'user': self.user, 'table_rows': records, 'payroll_username': payroll_user or self.user.username, 'start_date': start_date, 'end_date': end_date, 'prev_timestamp': time.mktime(prev_date.timetuple()), 'next_timestamp': time.mktime(next_date.timetuple()), } return render_template('payroll.html', **context) else: flash("Please log in before accessing the payroll system") return render_template('index.html')
def get(self, payroll_user=None, week=None): # check logged in if not self.user or not self.user.username or not self.user.is_authenticated: return redirect('/logout?byebye=yes') # if a payroll user is specified, the logged in user must be an approver (or it must be thier own account) if payroll_user: payroll_user = crypto.encrypt(payroll_user) if not self.user.is_approver: if not payroll_user == self.user.username: return redirect('/logout?byebye=yes') # sanitize input for week parameter if week: if not utils.sanitize_number_input(week): return redirect('/logout?byebye=yes') start_date = utils.get_last_monday(datetime.date.today()) end_date = start_date + datetime.timedelta(days=6) if week: start_date = utils.get_last_monday(datetime.date.fromtimestamp(float(week))) end_date = start_date + datetime.timedelta(days=6) records = TimeRecord.get_current_week(payroll_user or self.user.username, start_date) else: records = TimeRecord.get_current_week(payroll_user or self.user.username) if not records: return abort(404) next_date = start_date + datetime.timedelta(days=7) prev_date = start_date - datetime.timedelta(days=7) context = { 'user': self.user, 'table_rows': records, 'payroll_username' : payroll_user or self.user.username, 'start_date': start_date, 'end_date': end_date, 'prev_timestamp': time.mktime(prev_date.timetuple()), 'next_timestamp': time.mktime(next_date.timetuple()), } return render_template('payroll.html', **context)