WIP distribusi descriptions through front matter markdown

This commit is contained in:
crunk 2024-06-14 23:11:05 +02:00
parent 681c34e05e
commit 94efe6ad83
3 changed files with 40 additions and 7 deletions

View File

@ -4,6 +4,7 @@ from wtforms import (
SelectField,
StringField,
SubmitField,
TextAreaField,
validators,
)
from wtforms.validators import (
@ -11,6 +12,7 @@ from wtforms.validators import (
Length,
ValidationError,
)
from wtforms.widgets import TextArea
from app import settings
@ -48,6 +50,24 @@ class UploadForm(FlaskForm):
distribusiname,
],
)
description = StringField(
"Description of this distribusi:",
validators=[
Length(10, 4096),
],
widget=TextArea(),
)
mdfile = FileField(
"Alternatively upload a markdown file with a description:",
validators=[
FileAllowed(["md"], "markdown only"),
FileRequired(),
FileSize(
max_size=10485760,
message="markdown file size should be smaller than 10MB",
),
],
)
year = SelectField(
"Year:",
validate_choice=True,
@ -77,7 +97,7 @@ class UploadForm(FlaskForm):
FileRequired(),
FileSize(
max_size=1073741824,
message="Zipfile size must be smaller than 100MB",
message="Zipfile size must be smaller than 1024MB",
),
],
)

View File

@ -10,6 +10,20 @@
<div class="error">{{ message }}</div>
{% endfor %}
</fieldset>
<fieldset class="required">
{{ uploadform.description.label }}
{{ uploadform.description }}
{% for message in uploadform.description.errors %}
<div class="error">{{ message }}</div>
{% endfor %}
</fieldset>
<fieldset class="required">
{{ uploadform.mdfile.label }}
{{ uploadform.mdfile }}
{% for message in uploadform.mdfile.errors %}
<div class="error">{{ message }}</div>
{% endfor %}
</fieldset>
<fieldset class="required">
{{ uploadform.year.label }}
<div class="selector-style">

View File

@ -31,15 +31,10 @@ input[type=text], input[type=password], input[type=file] {
border: 1px solid #E0B0FF;
}
div#upload form {
padding-right: 15%;
}
.workflow{
margin-top: 1em;
padding: 0.5em;
padding-left: auto;
padding-right: auto;
width: 31em;
background-color:#fdfdfd;
text-decoration: none;
@ -69,7 +64,11 @@ div#upload form {
#distribusi-index {
padding-left: 1em;
}
textarea#description {
width: 100%;
height: 15em;
resize: none;
}
div#buttons{
position: fixed;
top: 0.5em;