list of files

This commit is contained in:
crunk 2024-11-16 10:32:31 +01:00
parent 9e888c1d59
commit 1548d03ef3
2 changed files with 30 additions and 5 deletions

View File

@ -8,18 +8,17 @@
body {
background-image: url({{ url_for('static', filename='content/glit_background.gif')}});
}
#uploadform{
.box {
background: #f9f871;
margin: auto;
padding: 1em;
width: 30em;
min-height: 5em;
}
</style>
</head>
<body>
<form method="POST" enctype="multipart/form-data" id="uploadform">
<form method="POST" enctype="multipart/form-data" id="uploadform" class="box">
{{ imageuploadform.csrf_token }}
<fieldset class="fileupload-field">
<legend>Upload an image here</legend>
@ -31,4 +30,11 @@
</fieldset>
{{ imageuploadform.submit }}
</form>
<div class="box">
<ol>
{% for uploaded_file in uploaded_files %}
<li><a href="{{uploaded_file}}">{{uploaded_file}}</a></li>
{% endfor %}
</ol>
</div>
</body>

View File

@ -14,11 +14,18 @@ ALLOWED_FILES = ["jpg", "png", "gif", "webp"]
# don't config these lines
APP.config["SECRET_KEY"] = os.urandom(24)
class ImageUploadForm(FlaskForm):
"""Image upload form."""
image = FileField(
"image:",
validators=[FileAllowed(ALLOWED_FILES, f"Images only, please use any of the following file extensions: {(", ").join(ALLOWED_FILES)}")],
validators=[
FileAllowed(
ALLOWED_FILES,
f"Images only, please use any of the following file extensions: {(", ").join(ALLOWED_FILES)}",
)
],
)
submit = SubmitField("Submit")
@ -32,10 +39,22 @@ def saveimage(image):
def index():
"""Upload route, a page to upload an image"""
imageuploadform = ImageUploadForm()
uploaded_files = sorted(
[
os.path.join(APP.config["IMAGE_FOLDER"], file)
for file in os.listdir(APP.config["IMAGE_FOLDER"])
],
key=os.path.getctime,
)
print(uploaded_files)
if request.method == "POST":
if imageuploadform.validate_on_submit():
saveimage(imageuploadform.image.data)
return render_template("upload.html", imageuploadform=imageuploadform)
return render_template(
"upload.html",
imageuploadform=imageuploadform,
uploaded_files=uploaded_files
)
if __name__ == "__main__":