display script API on the page
This commit is contained in:
18
code/app.py
18
code/app.py
@@ -19,6 +19,7 @@ app = Flask(__name__)
|
||||
app.config.from_object(__name__)
|
||||
# Read config from json !
|
||||
config_values = json.load(open(os.getenv('FLEES_CONFIG'),'rt'))
|
||||
app.config['PUBLIC_URL'] = config_values['public_url']
|
||||
app.config['SITE_NAME'] = config_values['site_name']
|
||||
app.config['UPLOAD_FOLDER'] = config_values['data_folder']
|
||||
app.config['SHARES_FILE'] = config_values['shares_file']
|
||||
@@ -81,6 +82,8 @@ def authenticate(name):
|
||||
if request.method == 'POST':
|
||||
user_password = request.form['password'].encode('utf-8')
|
||||
session[name] = password_hash(user_password, app.secret_key)
|
||||
if name + 'Token' in session:
|
||||
del session[name + 'Token']
|
||||
return redirect(url_for('list_view',name=name))
|
||||
|
||||
|
||||
@@ -262,6 +265,7 @@ def list_view(name, token = None):
|
||||
return share
|
||||
if token != None and 'pass_hash' in share:
|
||||
session[name] = share['pass_hash']
|
||||
session[name + 'Token'] = token
|
||||
return redirect(url_for('list_view',name=name))
|
||||
|
||||
files = []
|
||||
@@ -275,6 +279,11 @@ def list_view(name, token = None):
|
||||
allow_direct = get_or_none('direct_links', share) if get_or_none('pass_hash', share) else False
|
||||
upload = get_or_none('upload', share)
|
||||
overwrite = get_or_none('overwrite', share)
|
||||
if name + 'Token' in session:
|
||||
used_token = session[name + 'Token']
|
||||
else:
|
||||
used_token = '[TOKEN]'
|
||||
script_api = [get_script_url(app.config['PUBLIC_URL'], share, x, used_token) for x in ('client', 'download', 'upload_split')]
|
||||
if not upload:
|
||||
overwrite = False
|
||||
return render_template(
|
||||
@@ -287,7 +296,8 @@ def list_view(name, token = None):
|
||||
overwrite = overwrite,
|
||||
direct = allow_direct,
|
||||
expire = get_or_none('expire', share),
|
||||
description = get_or_none('description', share, "")
|
||||
description = get_or_none('description', share, ""),
|
||||
script_api = script_api
|
||||
)
|
||||
|
||||
|
||||
@@ -295,6 +305,8 @@ def list_view(name, token = None):
|
||||
def logout(name):
|
||||
if name in session:
|
||||
del session[name]
|
||||
if name + 'Token' in session:
|
||||
del session[name + 'Token']
|
||||
return render_template(
|
||||
"logout.html",
|
||||
name = name
|
||||
@@ -600,9 +612,11 @@ def get_share(name, require_auth = True, token = None):
|
||||
return (False, 'Share has expired')
|
||||
authenticated = "no-pass"
|
||||
if not token == None:
|
||||
require_auth = False
|
||||
if has_token(token, share):
|
||||
require_auth = False
|
||||
authenticated = "token"
|
||||
else:
|
||||
authenticated = False
|
||||
if require_auth:
|
||||
if 'pass_hash' in share:
|
||||
authenticated = False
|
||||
|
||||
Reference in New Issue
Block a user