{% extends 'base.html' %} {% block content %} {% from '_helpers.jinja' import render_simple_field, render_field %}
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") }}
Create a shareable link Tip: You can also add 'shared' watches. More info
{% if watches|length >= pagination.per_page %} {{ pagination.info }} {% endif %} {% if search_q %}
Searching "{{search_q}}"
{% endif %}
All {% for tag in tags %} {% if tag != "" %} {{ tag }} {% endif %} {% endfor %}
{% set sort_order = sort_order or 'asc' %} {% set sort_attribute = sort_attribute or 'last_changed' %} {% set pagination_page = request.args.get('page', 0) %}
{% set link_order = "desc" if sort_order == 'asc' else "asc" %} {% set arrow_span = "" %} {% if not watches|length %} {% endif %} {% for watch in (watches|sort(attribute=sort_attribute, reverse=sort_order == 'asc'))|pagination_slice(skip=pagination.skip) %} {% endfor %}
# Website Last Checked Last Changed
No website watches configured, please add a URL in the box above, or import a list.
{{ loop.index+pagination.skip }} {% 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 %}
{{ pagination.links }}
{% endblock %}