crunk
6 months ago
38 changed files with 1379 additions and 1386 deletions
@ -1,23 +1,23 @@ |
|||||
def deploy(): |
def deploy(): |
||||
"""Run deployment of database.""" |
"""Run deployment of database.""" |
||||
from flask_migrate import init, migrate, stamp, upgrade |
from flask_migrate import init, migrate, stamp, upgrade |
||||
|
|
||||
from app import create_app, db |
from app import create_app, db |
||||
from models.distribusi_model import Distribusis # noqa: F401 |
from models.distribusi_model import Distribusis # noqa: F401 |
||||
from models.distribusi_file_model import DistribusiFiles # noqa: F401 |
from models.distribusi_file_model import DistribusiFiles # noqa: F401 |
||||
|
|
||||
# This model is required for flask_migrate to make the table |
# This model is required for flask_migrate to make the table |
||||
from models.user_model import User # noqa: F401 |
from models.user_model import User # noqa: F401 |
||||
|
|
||||
app = create_app() |
app = create_app() |
||||
app.app_context().push() |
app.app_context().push() |
||||
db.create_all() |
db.create_all() |
||||
|
|
||||
# migrate database to latest revision |
# migrate database to latest revision |
||||
init() |
init() |
||||
stamp() |
stamp() |
||||
migrate() |
migrate() |
||||
upgrade() |
upgrade() |
||||
|
|
||||
|
|
||||
deploy() |
deploy() |
||||
|
@ -1,85 +1,85 @@ |
|||||
from flask_wtf import FlaskForm |
from flask_wtf import FlaskForm |
||||
from flask_wtf.file import FileAllowed, FileField, FileRequired, FileSize |
from flask_wtf.file import FileAllowed, FileField, FileRequired, FileSize |
||||
from wtforms import ( |
from wtforms import ( |
||||
SelectField, |
SelectField, |
||||
StringField, |
StringField, |
||||
SubmitField, |
SubmitField, |
||||
validators, |
validators, |
||||
) |
) |
||||
from wtforms.validators import ( |
from wtforms.validators import ( |
||||
DataRequired, |
DataRequired, |
||||
Length, |
Length, |
||||
ValidationError, |
ValidationError, |
||||
) |
) |
||||
|
|
||||
from app import settings |
from app import settings |
||||
|
|
||||
|
|
||||
class UploadForm(FlaskForm): |
class UploadForm(FlaskForm): |
||||
"""File upload class for a new site in distribusi-verse""" |
"""File upload class for a new site in distribusi-verse""" |
||||
|
|
||||
def distribusiname(form, field): |
def distribusiname(form, field): |
||||
if field.data.lower() == "new": |
if field.data.lower() == "new": |
||||
raise ValidationError("Name has to be unique and not just new.") |
raise ValidationError("Name has to be unique and not just new.") |
||||
|
|
||||
def category_choices(): |
def category_choices(): |
||||
APP = settings() |
APP = settings() |
||||
config_categories = APP.config["categories"] |
config_categories = APP.config["categories"] |
||||
categories = [] |
categories = [] |
||||
for config_category in config_categories: |
for config_category in config_categories: |
||||
categories.append((config_category, config_category)) |
categories.append((config_category, config_category)) |
||||
return categories |
return categories |
||||
|
|
||||
def year_choices(): |
def year_choices(): |
||||
APP = settings() |
APP = settings() |
||||
start_time = APP.config["start_time"] |
start_time = APP.config["start_time"] |
||||
end_time = APP.config["end_time"] |
end_time = APP.config["end_time"] |
||||
year_range = range(start_time.year, end_time.year, 1) |
year_range = range(start_time.year, end_time.year, 1) |
||||
year_choices = [] |
year_choices = [] |
||||
for year in year_range: |
for year in year_range: |
||||
year_choices.append((str(year), str(year))) |
year_choices.append((str(year), str(year))) |
||||
return year_choices |
return year_choices |
||||
|
|
||||
sitename = StringField( |
sitename = StringField( |
||||
"Name of your archive section:", |
"Name of your archive section:", |
||||
validators=[ |
validators=[ |
||||
validators.InputRequired(), |
validators.InputRequired(), |
||||
Length(2, 100), |
Length(2, 100), |
||||
distribusiname, |
distribusiname, |
||||
], |
], |
||||
) |
) |
||||
year = SelectField( |
year = SelectField( |
||||
"Year:", |
"Year:", |
||||
validate_choice=True, |
validate_choice=True, |
||||
coerce=str, |
coerce=str, |
||||
choices=year_choices, |
choices=year_choices, |
||||
option_widget=None, |
option_widget=None, |
||||
validators=[DataRequired()], |
validators=[DataRequired()], |
||||
) |
) |
||||
category = SelectField( |
category = SelectField( |
||||
"Category:", |
"Category:", |
||||
validate_choice=True, |
validate_choice=True, |
||||
coerce=str, |
coerce=str, |
||||
choices=category_choices, |
choices=category_choices, |
||||
option_widget=None, |
option_widget=None, |
||||
validators=[DataRequired()], |
validators=[DataRequired()], |
||||
) |
) |
||||
|
|
||||
tags = StringField( |
tags = StringField( |
||||
"Add search tags, seperated by commas. No need for the '#' sign:", |
"Add search tags, seperated by commas. No need for the '#' sign:", |
||||
validators=[validators.InputRequired(), Length(3, 500)], |
validators=[validators.InputRequired(), Length(3, 500)], |
||||
) |
) |
||||
|
|
||||
zipfile = FileField( |
zipfile = FileField( |
||||
"Upload your zip file with content here:", |
"Upload your zip file with content here:", |
||||
validators=[ |
validators=[ |
||||
FileAllowed(["zip"], "Zip archives only!"), |
FileAllowed(["zip"], "Zip archives only!"), |
||||
FileRequired(), |
FileRequired(), |
||||
FileSize( |
FileSize( |
||||
max_size=1073741824, |
max_size=1073741824, |
||||
message="Zipfile size must be smaller than 100MB", |
message="Zipfile size must be smaller than 100MB", |
||||
), |
), |
||||
], |
], |
||||
) |
) |
||||
|
|
||||
submit = SubmitField("Upload") |
submit = SubmitField("Upload") |
||||
|
Loading…
Reference in new issue