Cambio en la previzualizacion

Ahora se enruta a una distinta vista dependiendo de como deberia
mostrarse la previzualizacion del archivo, esto se decide segun el tipo
que tenga asignado
This commit is contained in:
Daniel Cortes
2019-03-12 19:03:49 -03:00
parent cf041bdded
commit bd81946da3
5 changed files with 42 additions and 21 deletions

View File

@@ -136,22 +136,32 @@ def preview_file(file_id):
categories = Category.query.all()
file_types = FileType.query.all()
if file.type.name == 'Code':
try:
content = open(_get_path_in_upload(file.filename), 'r').read()
except IOError:
flash('Error: file is binary, can\'t be displayed')
content = 'Error'
else:
content = ''
if (file.private == 1 and g.user is not None) or (file.private == 0):
return render_template(
'files/preview.html',
file=file,
categories=categories,
file_types=file_types,
content=content)
if file.type.name == 'Code':
try:
content = open(_get_path_in_upload(file.filename), 'r').read()
except IOError:
flash('Error: file is binary, can\'t be displayed')
content = 'Error'
return render_template(
'files/preview/code.html',
file=file,
categories=categories,
file_types=file_types,
content=content)
elif file.type.name == 'Image':
return render_template(
'files/preview/image.html',
file=file,
categories=categories,
file_types=file_types)
else:
return render_template(
'files/preview/default.html',
file=file,
categories=categories,
file_types=file_types)
return abort(404)
@@ -211,7 +221,7 @@ def retype(file_id):
file.file_type_id = new_type.id
db.session.commit()
return redirect(url_for('files.preview_file', id=file.id))
return redirect(url_for('files.preview_file', file_id=file.id))
@bp.route('/delete/<int:file_id>', methods=['POST'])

View File

@@ -14,11 +14,7 @@
</h4>
</div>
{% if file.type.name == 'Image' %}
<img class="preview" src="{{ url_for('files.uploaded_file', filename=file.filename) }}">
{% elif file.type.name == 'Code' %}
<pre><code>{{content}}</code></pre>
{% endif %}
{% block preview %}{% endblock %}
{% if g.user %}
<form action="{{ url_for('files.rename_file', file_id=file.id) }}" method="post">

View File

@@ -0,0 +1,5 @@
{% extends 'files/preview/base.html' %}
{% block preview %}
<pre><code>{{ content }}</code></pre>
{% endblock %}

View File

@@ -0,0 +1,5 @@
{% extends 'files/preview/base.html' %}
{% block preview %}
<p>No preview available</p>
{% endblock %}

View File

@@ -0,0 +1,5 @@
{% extends 'files/preview/base.html' %}
{% block preview %}
<img class="preview" src="{{ url_for('files.uploaded_file', filename=file.filename) }}">
{% endblock %}