progress or shit, don't feel like devlogging

This commit is contained in:
Jurn Wubben 2025-06-24 09:45:17 +02:00
parent 5dafe72895
commit fe5f1e7ecd
11 changed files with 208 additions and 144 deletions

View file

@ -24,8 +24,8 @@ class DeleteWishlist(FlaskForm):
class EditWishlistInfo(FlaskForm): class EditWishlistInfo(FlaskForm):
title = StringField("Title", validators=[DataRequired()]) title = StringField("Title")
description = TextAreaField("Description", validators=[DataRequired()]) description = TextAreaField("Description")
wl_edit_submit = SubmitField("Submit") wl_edit_submit = SubmitField("Submit")

63
app/templates/base.html Normal file
View file

@ -0,0 +1,63 @@
<!doctype html>
<html lang="en">
<head>
{% block head %}
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Wishthat</title>
<link
href="https://cdn.jsdelivr.net/npm/daisyui@5"
rel="stylesheet"
type="text/css"
/>
<script src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"></script>
{% endblock head %}
</head>
<body class="m-0 p-0 w-full h-screen bg-base-200 flex flex-col">
<nav class="w-full p-2 flex-none">
<div class="navbar bg-base-100 shadow-sm rounded-md">
<div class="navbar-start">
<div class="dropdown">
<div tabindex="0" role="button" class="btn btn-ghost lg:hidden">
<svg
xmlns="http://www.w3.org/2000/svg"
class="h-5 w-5"
fill="none"
viewBox="0 0 24 24"
stroke="currentColor"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M4 6h16M4 12h8m-8 6h16"
/>
</svg>
</div>
<ul
tabindex="0"
class="menu menu-sm dropdown-content bg-base-100 rounded-box z-1 mt-3 w-52 p-2 shadow"
>
<li><a></a></li>
<li>
<a>Parent</a>
<ul class="p-2">
<li><a>Submenu 1</a></li>
<li><a>Submenu 2</a></li>
</ul>
</li>
<li><a>Item 3</a></li>
</ul>
</div>
<a class="btn btn-ghost text-xl" href="/">wishthat</a>
</div>
<div class="navbar-end">
<a class="btn btn-soft btn-success hidden lg:inline-flex" href="/new">New wishlist</a>
</div>
</div>
</nav>
{% block content %}
{% endblock content %}
</body>
</html>

View file

@ -1,5 +1,8 @@
{% set cpath = url_for("edit", id=wishlist.editId) %} {% set cpath = url_for("edit", id=wishlist.editId) %}
<main> {% extends "base.html" %}
{% block content %}
<main class="bg-base-100">
<h1>Edit '{{wishlist.title}}'</h1> <h1>Edit '{{wishlist.title}}'</h1>
<sub>Manage your wishlist details and items</sub> <sub>Manage your wishlist details and items</sub>
<br> <br>
@ -80,9 +83,9 @@
form label { text-align:right; } form label { text-align:right; }
form label:after { content: ":"; } form label:after { content: ":"; }
</style> </style>
</main> </main>
<script> <script>
const $q = (...i) => document.querySelector(...i); const $q = (...i) => document.querySelector(...i);
const title = $q("#it_new_title") const title = $q("#it_new_title")
const price = $q("#price") const price = $q("#price")
@ -118,4 +121,5 @@
image.value = json.image; image.value = json.image;
price.value = json.price; price.value = json.price;
}) })
</script> </script>
{% endblock content %}

View file

@ -1,2 +0,0 @@
</body>
</html>

View file

@ -1,11 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Wishthat</title>
<link href="https://cdn.jsdelivr.net/npm/daisyui@5" rel="stylesheet" type="text/css" />
<script src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"></script>
</head>
<body class="m-0 p-0 w-full h-screen bg-base-200">

View file

@ -0,0 +1 @@
{% extends "base.html" %}

View file

@ -1,6 +1,8 @@
{% include 'header.html' %} {% extends "base.html" %}
<main class="w-full h-screen flex justify-center items-end md:items-center"> {% block content %}
<main class="w-full flex-grow flex justify-center items-end md:items-center">
<form action="{{ url_for("new") }}" method="POST" class="border-2 border-base-300 w-full md:w-md p-6 m-4 rounded-lg shadow-lg bg-base-100"> <form action="{{ url_for("new") }}" method="POST" class="border-2 border-base-300 w-full md:w-md p-6 m-4 rounded-lg shadow-lg bg-base-100">
{{ form.hidden_tag() }} {{ form.hidden_tag() }}
@ -13,8 +15,8 @@
{{ form.description(class="w-full textarea validator mt-1 mb-2", placeholder="Wishlist Description") }} {{ form.description(class="w-full textarea validator mt-1 mb-2", placeholder="Wishlist Description") }}
<div class="validator-hint">Please make sure that both inputs are filled.</div> <div class="validator-hint">Please make sure that both inputs are filled.</div>
{{ form.submit(class="btn btn-soft w-full") }} {{ form.submit(class="btn btn-soft btn-success w-full") }}
</form> </form>
</main> </main>
{% include 'footer.html' %} {% endblock content %}

View file

@ -1,4 +1,6 @@
{% include 'header.html' %} {% extends "base.html" %}
{% block content %}
<dialog class="modal modal-bottom md:modal-middle" open> <dialog class="modal modal-bottom md:modal-middle" open>
<div class="modal-box"> <div class="modal-box">
@ -11,4 +13,4 @@
</div> </div>
</dialog> </dialog>
{% include 'footer.html' %} {% endblock content %}

View file

@ -1,4 +1,6 @@
{% include 'header.html' %} {% extends "base.html" %}
{% block content %}
<h1>{{wishlist.title}}</h1> <h1>{{wishlist.title}}</h1>
<sub>{{wishlist.description}}</sub> <sub>{{wishlist.description}}</sub>
@ -57,4 +59,4 @@
</script> </script>
{% include 'footer.html' %} {% endblock content %}

View file

@ -13,14 +13,12 @@ from app.forms import (
) )
from app.models import Wishlist, Item from app.models import Wishlist, Item
from uuid import UUID, uuid4 as uuid from uuid import UUID, uuid4 as uuid
from json import JSONEncoder
from app.scrapers import scrapeSite from app.scrapers import scrapeSite
@app.route("/") @app.route("/")
def index(): def index():
return "hello" return render_template("index.html")
@app.route("/new", methods=["GET", "POST"]) @app.route("/new", methods=["GET", "POST"])
@ -67,7 +65,12 @@ def edit(id: str):
return redirect(url_for("index")) return redirect(url_for("index"))
elif form_wl_editinfo.validate_on_submit() and form_wl_editinfo.wl_edit_submit.data: elif form_wl_editinfo.validate_on_submit() and form_wl_editinfo.wl_edit_submit.data:
if form_wl_editinfo.title.data != "" and form_wl_editinfo.title.data != None:
wishlist.title = str(form_wl_editinfo.title.data) wishlist.title = str(form_wl_editinfo.title.data)
if (
form_wl_editinfo.description.data != ""
and form_wl_editinfo.description.data != None
):
wishlist.description = str(form_wl_editinfo.description.data) wishlist.description = str(form_wl_editinfo.description.data)
db.session.commit() db.session.commit()

Binary file not shown.