This commit is contained in:
2023-04-18 19:41:45 -04:00
parent b5c49bc46f
commit 86ed978098
3 changed files with 17 additions and 4 deletions

View File

@@ -4,7 +4,7 @@ from flask import Flask, render_template, redirect, url_for, request, flash
from flask_migrate import Migrate from flask_migrate import Migrate
from werkzeug.security import generate_password_hash, check_password_hash from werkzeug.security import generate_password_hash, check_password_hash
from flask_login import (LoginManager, login_user, login_required, logout_user, current_user) from flask_login import (LoginManager, login_user, login_required, logout_user, current_user)
from misc import datetime, date, time, currDay, prevDay, ZoneInfo, currVersion, currCommit from misc import datetime, date, time, currDay, prevDay, ZoneInfo, currVersion, currCommit, convDay
from db import (db, Period, Task, Event, User) from db import (db, Period, Task, Event, User)
from sqlalchemy import inspect from sqlalchemy import inspect
from forms import (TaskForm, EventForm, PeriodForm, SignupForm, LoginForm, SettingsForm) from forms import (TaskForm, EventForm, PeriodForm, SignupForm, LoginForm, SettingsForm)
@@ -258,9 +258,14 @@ def newTask():
sourceIP = request.environ.get('HTTP_X_REAL_IP', request.remote_addr) sourceIP = request.environ.get('HTTP_X_REAL_IP', request.remote_addr)
form = TaskForm() form = TaskForm()
if form.validate_on_submit(): if form.validate_on_submit():
if form.expiryDate.data is not None:
expiryDate=convDay(form.expiryDate.data)
else:
expiryDate = None
task = Task(title=form.title.data, task = Task(title=form.title.data,
description=form.description.data, description=form.description.data,
created_timestamp=int(time.time())) created_timestamp=int(time.time()),
expiry_date=expiryDate)
db.session.add(task) db.session.add(task)
db.session.commit() db.session.commit()
logger.info(f'New task added by \'{current_user.userName}\' from {sourceIP}') logger.info(f'New task added by \'{current_user.userName}\' from {sourceIP}')
@@ -276,6 +281,9 @@ def editTask(task_id):
if form.validate_on_submit(): if form.validate_on_submit():
task.title=form.title.data task.title=form.title.data
task.description=form.description.data task.description=form.description.data
if form.expiryDate.data is not None:
expiryDate=convDay(form.expiryDate.data)
task.expiry_date=expiryDate
db.session.commit() db.session.commit()
logger.info(f'Task {task_id} edited by \'{current_user.userName}\' from {sourceIP}') logger.info(f'Task {task_id} edited by \'{current_user.userName}\' from {sourceIP}')
return redirect(f'/task/{task_id}') return redirect(f'/task/{task_id}')

View File

@@ -3,7 +3,7 @@ from db import Task
from flask_wtf import FlaskForm from flask_wtf import FlaskForm
from wtforms import (StringField, DateField, TimeField, TextAreaField, IntegerField, SelectField, BooleanField, from wtforms import (StringField, DateField, TimeField, TextAreaField, IntegerField, SelectField, BooleanField,
RadioField, EmailField, PasswordField) RadioField, EmailField, PasswordField)
from wtforms.validators import InputRequired, Length from wtforms.validators import InputRequired, Length, Optional
from wtforms_sqlalchemy.orm import QuerySelectField from wtforms_sqlalchemy.orm import QuerySelectField
def get_tasks(): def get_tasks():
@@ -12,7 +12,7 @@ class TaskForm(FlaskForm):
title = StringField('Title', validators=[InputRequired(), title = StringField('Title', validators=[InputRequired(),
Length(min=5, max=100)]) Length(min=5, max=100)])
description = TextAreaField('Description', validators=[Length(max=200)]) description = TextAreaField('Description', validators=[Length(max=200)])
expiryDate = DateField('Expiry Date', format='m-%d-%Y') expiryDate = DateField('Expiry Date', format='%Y-%m-%d', validators=[Optional()])
class EventForm(FlaskForm): class EventForm(FlaskForm):
# eventDate = DateField('Date', validators=[InputRequired()], format='m-%d-%Y') # eventDate = DateField('Date', validators=[InputRequired()], format='m-%d-%Y')
# period_num = IntegerField(validators=[InputRequired()]) # period_num = IntegerField(validators=[InputRequired()])

View File

@@ -10,6 +10,11 @@ currDay = currDay.strftime('%m-%d-%Y')
prevDay = datetime.now() + timedelta(days=-1) prevDay = datetime.now() + timedelta(days=-1)
prevDay = prevDay.strftime('%m-%d-%Y') prevDay = prevDay.strftime('%m-%d-%Y')
# Convert date to str format
def convDay(inDate):
outDate = inDate.strftime('%m-%d-%Y')
return outDate
with open('__version__','r') as file: with open('__version__','r') as file:
currVersion = file.read() currVersion = file.read()