direct sharing of files
This commit is contained in:
@@ -97,8 +97,11 @@ def list_view(name, password = None):
|
|||||||
"list.html",
|
"list.html",
|
||||||
name = share['name'],
|
name = share['name'],
|
||||||
entries = files,
|
entries = files,
|
||||||
|
password = get_or_none(share,'pass_hash'),
|
||||||
public = get_or_none(share,'public'),
|
public = get_or_none(share,'public'),
|
||||||
upload = get_or_none(share,'upload'),
|
upload = get_or_none(share,'upload'),
|
||||||
|
overwrite = get_or_none(share,'overwrite'),
|
||||||
|
direct = get_or_none(share,'direct_links'),
|
||||||
expire = get_or_none(share,'expire')
|
expire = get_or_none(share,'expire')
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
{% block body %}
|
{% block body %}
|
||||||
authenticate to {{ name|safe }}
|
authenticate to {{ name|safe }}
|
||||||
<form action={{ url_for('authenticate',name=name) }} method=post enctype=multipart/form-data>
|
<form action={{ url_for('authenticate',name=name) }} method=post enctype=multipart/form-data>
|
||||||
<p><input type=password name=password>
|
<p><input type=password name=password autofocus>
|
||||||
<input type=submit value=Login>
|
<input type=submit value=Login>
|
||||||
</form>
|
</form>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|||||||
@@ -6,9 +6,12 @@
|
|||||||
<div id=list_upload>
|
<div id=list_upload>
|
||||||
<form action={{ url_for('upload') }} method=post enctype=multipart/form-data>
|
<form action={{ url_for('upload') }} method=post enctype=multipart/form-data>
|
||||||
<input type=hidden name=name value="{{ name|safe }}" />
|
<input type=hidden name=name value="{{ name|safe }}" />
|
||||||
<input type=file name=file>
|
<input type=file name=file onchange="document.getElementById('list_upload_button').disabled = false;">
|
||||||
<input type=submit value=Upload>
|
<input id="list_upload_button" type=submit value=Upload disabled>
|
||||||
</form>
|
</form>
|
||||||
|
{% if overwrite == false %}
|
||||||
|
Overwriting disabled
|
||||||
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
{% else %}
|
{% else %}
|
||||||
<div id=list_upload>
|
<div id=list_upload>
|
||||||
@@ -47,6 +50,9 @@
|
|||||||
{% for entry in entries %}
|
{% for entry in entries %}
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="{{ url_for('download_file', name = name, filename = entry.name) }}">{{ entry.name }}</a>
|
<td><a href="{{ url_for('download_file', name = name, filename = entry.name) }}">{{ entry.name }}</a>
|
||||||
|
{% if direct %}
|
||||||
|
<a href="{{ url_for('download_file', name = name, password = password, filename = entry.name ) }}" title="Direct share link">❖</a>
|
||||||
|
{% endif %}
|
||||||
<td class=td_right>{{ entry.size|safe }}
|
<td class=td_right>{{ entry.size|safe }}
|
||||||
<td>{{ entry.mtime|safe }}
|
<td>{{ entry.mtime|safe }}
|
||||||
</tr>
|
</tr>
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
upload to {{ name|safe }}
|
upload to {{ name|safe }}
|
||||||
<form action={{ url_for('upload') }} method=post enctype=multipart/form-data>
|
<form action={{ url_for('upload') }} method=post enctype=multipart/form-data>
|
||||||
<input type=hidden name=name value="{{ name|safe }}" />
|
<input type=hidden name=name value="{{ name|safe }}" />
|
||||||
<p><input type=file name=file>
|
<p><input type=file name=file onchange="function() { document.getElementById('upload_button').disabled = false; }">
|
||||||
<input type=submit value=Upload>
|
<input id="upload_button" type=submit value=Upload disabled>
|
||||||
</form>
|
</form>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|||||||
@@ -9,9 +9,14 @@ parser.add_argument('-n','--name', action="store", dest="name", required = True)
|
|||||||
parser.add_argument('-p','--path', action="store", dest="path", required = True,help= "path relative to data folder")
|
parser.add_argument('-p','--path', action="store", dest="path", required = True,help= "path relative to data folder")
|
||||||
parser.add_argument('-P','--public', action="store_true", dest="public", default = False)
|
parser.add_argument('-P','--public', action="store_true", dest="public", default = False)
|
||||||
parser.add_argument('-u','--upload', action="store_true", dest="upload", default = False)
|
parser.add_argument('-u','--upload', action="store_true", dest="upload", default = False)
|
||||||
|
parser.add_argument('-o','--overwrite', action="store_false", dest="overwrite", default = True,
|
||||||
|
help = "Allow file overwrites")
|
||||||
|
parser.add_argument('-d','--direct', action="store_true", dest="direct", default = False,
|
||||||
|
help = "Allow direct file sharing (password hash included in URL)")
|
||||||
parser.add_argument('--pass-plain', action="store", dest="plain", default = False)
|
parser.add_argument('--pass-plain', action="store", dest="plain", default = False)
|
||||||
parser.add_argument('--pass-hashed', action="store", dest="hashed", default = False)
|
parser.add_argument('--pass-hashed', action="store", dest="hashed", default = False)
|
||||||
parser.add_argument('-e','--expire', action="store", dest="expire", default = False, help = "expire date in format 2018-12-24 21:00")
|
parser.add_argument('-e','--expire', action="store", dest="expire", default = False, help = "expire date in format 2018-12-24 21:00")
|
||||||
|
|
||||||
parser.add_argument('-s','--shares', action="store", dest="shares", default = False,
|
parser.add_argument('-s','--shares', action="store", dest="shares", default = False,
|
||||||
help = "Your current shares.json file")
|
help = "Your current shares.json file")
|
||||||
parser.add_argument('-i','--insert', action="store_true", dest="insert", default = False,
|
parser.add_argument('-i','--insert', action="store_true", dest="insert", default = False,
|
||||||
@@ -24,6 +29,8 @@ share = {
|
|||||||
'path': opts.path,
|
'path': opts.path,
|
||||||
'public': opts.public,
|
'public': opts.public,
|
||||||
'upload': opts.upload,
|
'upload': opts.upload,
|
||||||
|
'overwrite': opts.overwrite,
|
||||||
|
'direct_links': opts.direct,
|
||||||
}
|
}
|
||||||
if opts.plain:
|
if opts.plain:
|
||||||
share.update({
|
share.update({
|
||||||
|
|||||||
Reference in New Issue
Block a user