bazarr/views/settingsnotifications.html

80 lines
3.4 KiB
HTML

<div class="ui dividing header">Notifications settings</div>
<div class="twelve wide column">
<div class="ui info message">
<p>Thanks to caronc for his work on <a href="https://github.com/caronc/apprise" target="_blank">apprise</a>,
which is based the notifications system.</p>
</div>
<div class="ui info message">
<p>Please follow instructions on his <a href="https://github.com/caronc/apprise/wiki" target="_blank">Wiki</a>
to configure your notification providers.</p>
</div>
<div class="ui grid">
{% for notifier in settings_notifier %}
<div class="middle aligned row">
<div class="right aligned four wide column">
<label>{{ notifier['name'] }}</label>
</div>
<div class="one wide column">
<div id="settings_notifier_{{ notifier['name'] }}_enabled"
class="notifier_enabled ui toggle checkbox"
data-notifier-url-div="settings_notifier_{{ notifier['name'] }}_url_div"
data-enabled={{ notifier['enabled'] }}>
<input name="settings_notifier_{{ notifier['name'] }}_enabled" type="checkbox">
<label></label>
</div>
</div>
<div class="eight wide column">
<div class='field'>
<div id="settings_notifier_{{ notifier['name'] }}_url_div" class="ui fluid input">
<input name="settings_notifier_{{ notifier['name'] }}_url" type="text"
value="{{ notifier['url'] if notifier['url'] != None else '' }}">
<div class="test_notification ui blue button" data-notification="{{ notifier['url'] }}">Test
Notification
</div>
</div>
</div>
</div>
</div>
{% endfor %}
</div>
</div>
{% macro settings_notifications() %}
<script>
$('.test_notification').on('click', function () {
const url_field = $(this).prev().val();
const url_protocol = url_field.split(':')[0];
const url_string = url_field.split('://')[1];
$.ajax({
url: "{{base_url}}test_notification/" + url_protocol + "/" + encodeURIComponent(url_string),
beforeSend: function () {
$('#loader').addClass('active');
},
complete: function () {
$('#loader').removeClass('active');
},
cache: false
});
});
$('.notifier_enabled').each(function () {
if ($(this).data("enabled") === 1) {
$(this).checkbox('check');
$('[id=\"' + $(this).data("notifier-url-div") + '\"]').removeClass('disabled');
} else {
$(this).checkbox('uncheck');
$('[id=\"' + $(this).data("notifier-url-div") + '\"]').addClass('disabled');
}
});
$('.notifier_enabled').on('change', function () {
if ($(this).checkbox('is checked')) {
$('[id=\"' + $(this).data("notifier-url-div") + '\"]').removeClass('disabled');
} else {
$('[id=\"' + $(this).data("notifier-url-div") + '\"]').addClass('disabled');
}
});
</script>
{% endmacro %}