Added a bit of style to edit.html

Added buy capability to view with dialog

Added additional properties to Item (url and imageurl); NEEDS TESTING

Made delete items work properly
This commit is contained in:
Jurn Wubben 2025-05-20 18:22:02 +02:00
parent 3ba6099976
commit 05c40d0148
9 changed files with 222 additions and 82 deletions

View file

@ -1,30 +1,65 @@
from typing import Any
from flask_wtf import FlaskForm
from wtforms import StringField, SubmitField, IntegerField, HiddenField
from wtforms import (
StringField,
SubmitField,
IntegerField,
HiddenField,
FloatField,
URLField,
)
from wtforms.validators import DataRequired
class NewWishlist(FlaskForm):
title = StringField("Title:", validators=[DataRequired()])
description = StringField("Description:", validators=[DataRequired()])
submit = SubmitField("Submit")
title = StringField("Title:", validators=[DataRequired()])
description = StringField("Description:", validators=[DataRequired()])
submit = SubmitField("Submit")
# Each submit needs a different page fot it to work on the same page.
class DeleteWishlist(FlaskForm):
wl_del_submit = SubmitField("Delete wishlist")
wl_del_submit = SubmitField("Delete wishlist")
class EditWishlistInfo(FlaskForm):
title = StringField("Title:", validators=[DataRequired()])
description = StringField("Description:", validators=[DataRequired()])
wl_edit_submit = SubmitField("Submit")
title = StringField("Title", validators=[DataRequired()])
description = StringField("Description", validators=[DataRequired()])
wl_edit_submit = SubmitField("Submit")
class ResetWishlistUrls(FlaskForm):
wl_reset_submit = SubmitField("Reset urls")
wl_reset_submit = SubmitField("Reset urls")
class NewItem(FlaskForm):
title = StringField("Title:", validators=[DataRequired()])
description = StringField("Description:", validators=[DataRequired()])
price = IntegerField("Price:", validators=[DataRequired()])
it_new_submit = SubmitField("Submit")
title = StringField("Title", validators=[DataRequired()])
description = StringField("Description", validators=[DataRequired()])
price = FloatField("Price", validators=[DataRequired()])
url = URLField("Url", validators=[DataRequired()])
image = URLField("Image url", validators=[DataRequired()])
it_new_submit = SubmitField("Submit")
class CheckItem(FlaskForm):
num = HiddenField()
class DeleteItem(FlaskForm):
index = HiddenField()
it_del_submit = SubmitField("Delete item")
index = HiddenField()
it_del_submit = SubmitField("Delete item")
def parseHiddenIndex(field: HiddenField, array: list[Any]) -> int | None:
try:
if field.data == None or field.data == "":
raise ValueError()
index = int(field.data)
if index > len(array):
raise ValueError()
return index - 1
except ValueError:
return None