split utils, added manual tests
This commit is contained in:
37
code/app.py
37
code/app.py
@@ -10,8 +10,7 @@ from werkzeug.utils import secure_filename
|
||||
import zipfile
|
||||
from multiprocessing import Process
|
||||
from revprox import ReverseProxied
|
||||
from utils.utils import *
|
||||
from utils.crypt import *
|
||||
from utils import *
|
||||
|
||||
|
||||
__FLEES_VERSION__ = "20181124.0"
|
||||
@@ -162,9 +161,10 @@ def upload_join_splitted(name, token):
|
||||
return "Invalid partial filename %s -> %s\n"%( request.form['filename'], filename), 400
|
||||
if not len(parts) == part_existed + 1:
|
||||
return "Parts missing\n", 400
|
||||
secure_name = secure_filename(request.form['filename'])
|
||||
target_name = os.path.join(
|
||||
share['path'],
|
||||
request.form['filename']
|
||||
secure_name
|
||||
)
|
||||
if get_or_none('overwrite', share) == False:
|
||||
if os.path.exists(target_name):
|
||||
@@ -174,7 +174,7 @@ def upload_join_splitted(name, token):
|
||||
begin = uploadJoiner(target_name, parts)
|
||||
except:
|
||||
return "Joining failed\n", 400
|
||||
download_url = get_download_url(share, request.form['filename'], token)
|
||||
download_url = get_download_url(share, secure_name, token)
|
||||
return "Joining started\n%s\n"%( download_url, ), 200
|
||||
|
||||
|
||||
@@ -365,15 +365,7 @@ def file_direct(name, token, filename):
|
||||
allow_direct = get_or_none('direct_links', share) if get_or_none('pass_hash', share) else False
|
||||
if not allow_direct:
|
||||
return "-1", 403
|
||||
token = get_direct_token(share, filename)
|
||||
# url_for returns extra level of /../path if proxying with nginx
|
||||
return "/".join((
|
||||
app.config['PUBLIC_URL'],
|
||||
'direct',
|
||||
name,
|
||||
token,
|
||||
path2url(filename)
|
||||
)), 200
|
||||
return get_download_url(share, filename, token), 200
|
||||
|
||||
|
||||
@app.route('/file/ls/<name>/<token>', methods=['GET'])
|
||||
@@ -936,25 +928,6 @@ def zip_clean():
|
||||
os.remove(os.path.join(app.config['ZIP_FOLDER'],file))
|
||||
|
||||
|
||||
def get_download_url(share, file, token):
|
||||
direct = get_or_none('direct_links', share, False)
|
||||
if direct:
|
||||
return "/".join((
|
||||
app.config['PUBLIC_URL'],
|
||||
'direct',
|
||||
share['name'],
|
||||
get_direct_token(share, file),
|
||||
path2url(file)
|
||||
))
|
||||
else:
|
||||
return "/".join((
|
||||
app.config['PUBLIC_URL'],
|
||||
'download',
|
||||
share['name'],
|
||||
token,
|
||||
path2url(file)
|
||||
))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
zip_clean()
|
||||
|
||||
Reference in New Issue
Block a user