mirror of
https://github.com/dgtlmoon/changedetection.io.git
synced 2025-12-03 06:42:34 +00:00
Some work around diff viewing
This commit is contained in:
@@ -695,7 +695,7 @@ def changedetection_app(config=None, datastore_o=None):
|
||||
@app.route("/diff/<string:uuid>", methods=['GET'])
|
||||
@login_required
|
||||
def diff_history_page(uuid):
|
||||
|
||||
from changedetectionio import content_fetcher
|
||||
# More for testing, possible to return the first/only
|
||||
if uuid == 'first':
|
||||
uuid = list(datastore.data['watching'].keys()).pop()
|
||||
@@ -734,7 +734,13 @@ def changedetection_app(config=None, datastore_o=None):
|
||||
with open(previous_file, 'r') as f:
|
||||
previous_version_file_contents = f.read()
|
||||
|
||||
output = render_template("diff.html", watch_a=watch,
|
||||
if ('content-type' in watch and content_fetcher.supported_binary_type(watch['content-type'])):
|
||||
template = "diff-image.html"
|
||||
else:
|
||||
template = "diff.html"
|
||||
|
||||
output = render_template(template,
|
||||
watch_a=watch,
|
||||
newest=newest_version_file_contents,
|
||||
previous=previous_version_file_contents,
|
||||
extra_stylesheets=extra_stylesheets,
|
||||
@@ -751,6 +757,7 @@ def changedetection_app(config=None, datastore_o=None):
|
||||
@app.route("/preview/<string:uuid>", methods=['GET'])
|
||||
@login_required
|
||||
def preview_page(uuid):
|
||||
from changedetectionio import content_fetcher
|
||||
|
||||
# More for testing, possible to return the first/only
|
||||
if uuid == 'first':
|
||||
@@ -765,14 +772,25 @@ def changedetection_app(config=None, datastore_o=None):
|
||||
return redirect(url_for('index'))
|
||||
|
||||
newest = list(watch['history'].keys())[-1]
|
||||
with open(watch['history'][newest], 'r') as f:
|
||||
content = f.readlines()
|
||||
fname = watch['history'][newest]
|
||||
|
||||
if ('content-type' in watch and content_fetcher.supported_binary_type(watch['content-type'])):
|
||||
template = "preview-image.html"
|
||||
content = fname
|
||||
else:
|
||||
template = "preview.html"
|
||||
try:
|
||||
with open(fname, 'r') as f:
|
||||
content = f.read()
|
||||
except:
|
||||
content = "Cant read {}".format(fname)
|
||||
|
||||
output = render_template("preview.html",
|
||||
content=content,
|
||||
extra_stylesheets=extra_stylesheets,
|
||||
current_diff_url=watch['url'],
|
||||
uuid=uuid)
|
||||
uuid=uuid,
|
||||
watch=watch)
|
||||
return output
|
||||
|
||||
@app.route("/settings/notification-logs", methods=['GET'])
|
||||
|
||||
33
changedetectionio/templates/diff-image.html
Normal file
33
changedetectionio/templates/diff-image.html
Normal file
@@ -0,0 +1,33 @@
|
||||
{% extends 'base.html' %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<div id="settings">
|
||||
<h1>Differences</h1>
|
||||
<form class="pure-form " action="" method="GET">
|
||||
<fieldset>
|
||||
{% if versions|length >= 1 %}
|
||||
<label for="diff-version">Compare newest (<span id="current-v-date"></span>) with</label>
|
||||
<select id="diff-version" name="previous_version">
|
||||
{% for version in versions %}
|
||||
<option value="{{version}}" {% if version== current_previous_version %} selected="" {% endif %}>
|
||||
{{version}}
|
||||
</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
<button type="submit" class="pure-button pure-button-primary">Go</button>
|
||||
{% endif %}
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="diff-ui">
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<script type="text/javascript" src="{{url_for('static_content', group='js', filename='diff.js')}}"></script>
|
||||
|
||||
|
||||
{% endblock %}
|
||||
13
changedetectionio/templates/preview-image.html
Normal file
13
changedetectionio/templates/preview-image.html
Normal file
@@ -0,0 +1,13 @@
|
||||
{% extends 'base.html' %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<div id="settings">
|
||||
<h1>Current</h1>
|
||||
</div>
|
||||
|
||||
<div id="diff-ui">
|
||||
image goes here
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
@@ -11,7 +11,7 @@
|
||||
<tbody>
|
||||
<tr>
|
||||
<td id="diff-col">
|
||||
<span id="result">{% for row in content %}{{row}}{% endfor %}</span>
|
||||
<span id="result">{{content}}</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
||||
Reference in New Issue
Block a user