{% extends 'base.html' %} {% block content %} {% from '_helpers.jinja' import render_simple_field, render_field %} {% from '_pagination.jinja' import pagination %}
Add a new change detection watch
{{ render_simple_field(form.url, placeholder="https://...", required=true) }} {{ render_simple_field(form.tag, value=active_tag if active_tag else '', placeholder="watch label / tag") }}
{{ render_simple_field(form.watch_submit_button, title="Watch this URL!" ) }} {{ render_simple_field(form.edit_and_watch_submit_button, title="Edit first then Watch") }}
{{ render_simple_field(form.processor, title="Edit first then Watch") }}
Tip: You can also add 'shared' watches. More info
All {% for tag in tags %} {% if tag != "" %} {{ tag }} {% endif %} {% endfor %}
{% set sort_order = request.args.get('order', 'asc') == 'asc' %} {% set sort_attribute = request.args.get('sort', 'last_changed') %} {% set pagination_page = request.args.get('page', 0) %}
{% set link_order = "desc" if sort_order else "asc" %} {% set arrow_span = "" %} {% set sorted_watches = watches|sort(attribute=sort_attribute, reverse=sort_order) %} {% for watch in sorted_watches %} {# WIP for pagination, disabled for now {% if not ( loop.index >= 3 and loop.index <=4) %}{% continue %}{% endif %} --> #} {% endfor %}
# Website Last Checked Last Changed
{{ loop.index }} {% if not watch.paused %} Pause checks {% else %} UnPause checks {% endif %} Mute notifications {{watch.title if watch.title is not none and watch.title|length > 0 else watch.url}} {% if watch.get_fetch_backend == "html_webdriver" or ( watch.get_fetch_backend == "system" and system_default_fetcher == 'html_webdriver' ) %} {% endif %} {%if watch.is_pdf %}{% endif %} {% if watch.last_error is defined and watch.last_error != False %}
{{ watch.last_error }} {% if '403' in watch.last_error %} {% if has_proxies %} Try other proxies/location  {% endif %} Try adding external proxies/locations {% endif %}
{% endif %} {% if watch.last_notification_error is defined and watch.last_notification_error != False %} {% endif %} {% if watch['processor'] == 'text_json_diff' %} {% if watch['has_ldjson_price_data'] and not watch['track_ldjson_price_data'] %}
Embedded price data detected, follow only price data? Yes No
{% endif %} {% if watch['track_ldjson_price_data'] == 'accepted' %} Price {% endif %} {% endif %} {% if watch['processor'] == 'restock_diff' %} {% if watch['last_checked'] %} {% if watch['in_stock'] %} In stock {% else %} Not in stock {% endif %} {% else %} Not yet checked {% endif %} {% endif %} {% if not active_tag %} {{ watch.tag}} {% endif %}
{{watch|format_last_checked_time|safe}} {% if watch.history_n >=2 and watch.last_changed >0 %} {{watch.last_changed|format_timestamp_timeago}} {% else %} Not yet {% endif %} {% if watch.uuid in queued_uuids %}Queued{% else %}Recheck{% endif %} Edit {% if watch.history_n >= 2 %} Diff {% else %} {% if watch.history_n == 1 or (watch.history_n ==0 and watch.error_text_ctime )%} Preview {% endif %} {% endif %}
{# WIP for pagination, disabled for now {{ pagination(sorted_watches,3, pagination_page) }} #}
{% endblock %}