added admin routes/code to allow a scan now and a forced scan
This commit is contained in:
22
files.py
22
files.py
@@ -186,7 +186,29 @@ def file_list():
|
||||
def files():
|
||||
return render_template("files.html", page_title='View Files', file_data=filedata, alert=st.GetAlert(), message=st.GetMessage() )
|
||||
|
||||
################################################################################
|
||||
# /files/scannow -> allows us to force a check for new files
|
||||
################################################################################
|
||||
@app.route("/files/scannow", methods=["GET"])
|
||||
def scannow():
|
||||
filedata.GenerateFileData()
|
||||
return render_template("base.html", page_title='Forced look for new items', file_data=filedata, alert="success", message="Scanned for new files" )
|
||||
|
||||
################################################################################
|
||||
# /files/forcescan -> deletes old data in DB, and does a brand new scan
|
||||
################################################################################
|
||||
@app.route("/files/forcescan", methods=["GET"])
|
||||
def forcescan():
|
||||
Files.query.delete()
|
||||
Settings.query.all()[0].last_import_date=0
|
||||
db.session.commit()
|
||||
filedata.GenerateFileData()
|
||||
return render_template("base.html", page_title='Forced look for new items', file_data=filedata, alert="success", message="Forced remove and recreation of all file data" )
|
||||
|
||||
################################################################################
|
||||
# /static -> returns the contents of any file referenced inside /static.
|
||||
# we create/use symlinks in static/ to reference the images to show
|
||||
################################################################################
|
||||
@app.route("/static/<filename>")
|
||||
def custom_static(filename):
|
||||
return send_from_directory("static/", filename)
|
||||
|
||||
@@ -43,6 +43,7 @@ class SettingsForm(FlaskForm):
|
||||
@app.route("/settings", methods=["GET", "POST"])
|
||||
def settings():
|
||||
form = SettingsForm(request.form)
|
||||
page_title='Settings'
|
||||
if request.method == 'POST' and form.validate():
|
||||
try:
|
||||
# HACK, I don't really need an id here, but sqlalchemy get weird
|
||||
@@ -59,11 +60,9 @@ def settings():
|
||||
except SQLAlchemyError as e:
|
||||
st.SetAlert( "danger" )
|
||||
st.SetMessage( "<b>Failed to modify Setting:</b> {}".format(e.orig) )
|
||||
page_title='Show Settings'
|
||||
return render_template("settings.html", form=form, page_title=page_title, alert=st.GetAlert(), message=st.GetMessage() )
|
||||
else:
|
||||
tmp_sets = Settings.query.all()
|
||||
sets = settings_schema.dump( tmp_sets )
|
||||
form = SettingsForm(obj=tmp_sets[0])
|
||||
page_title='Show Settings'
|
||||
return render_template("settings.html", form=form, page_title = page_title, alert=st.GetAlert(), message=st.GetMessage() )
|
||||
|
||||
@@ -52,7 +52,9 @@
|
||||
<div class="nav-item dropdown">
|
||||
<a class="nav-item dropdown nav-link dropdown-toggle" href="#" id="AdminMenu" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Admin</a>
|
||||
<div class="dropdown-menu" aria-labelledby="AdminMenu">
|
||||
<a class="dropdown-item" href="{{url_for('settings')}}">Settings</a>
|
||||
<a class="dropdown-item" href="{{url_for('settings')}}">Edit Settings</a>
|
||||
<a class="dropdown-item" href="{{url_for('scannow')}}">Scan now (for new files)</a>
|
||||
<a class="dropdown-item" href="{{url_for('forcescan')}}">Force Scan (delete data & rebuild)</a>
|
||||
</div class="dropdow-menu">
|
||||
</div class="nav-item dropdown">
|
||||
</div clas="navbar-nav">
|
||||
|
||||
Reference in New Issue
Block a user