Commit graph

640 commits

Author SHA1 Message Date
Pēteris Caune
5cd874f1de
Fix duplicate HTML element ids in the "Update timeout" modal 2023-12-06 16:34:28 +02:00
Pēteris Caune
461b7ec751
Move "Update timeout" modal's CSS to a separate file 2023-12-06 16:33:50 +02:00
Pēteris Caune
d65f41d192
Add support for systemd's OnCalendar schedules
(work-in-progress)

cc: #919
2023-12-06 15:42:57 +02:00
Pēteris Caune
96823a7f90
Add logging for failed webauthn key registrations 2023-11-17 16:06:39 +02:00
Pēteris Caune
decd1d4b87
Improve TOTP auto-submit code
* Listen to "input" event only, don't need "keyup"
* Add form double-submit protection
* Rewrite in plain JS (the page no longer loads jQuery)
2023-11-17 11:00:41 +02:00
Pēteris Caune
7c8dbec62e
Fix webauthn registration failure on Firefox < 119 with Ed25519 keys 2023-11-15 15:58:32 +02:00
Pēteris Caune
ee62dc174c
Implement audo-submit in TOTP entry screen. Fixes #905 2023-11-13 15:20:23 +02:00
Pēteris Caune
336e71e52f
Update Matrix onboarding instructions 2023-11-13 13:03:36 +02:00
Pēteris Caune
c18d2ea1dd
Update logging configuration to write logs to database 2023-11-01 09:34:45 +02:00
Pēteris Caune
7900eb55b8
Remove a few more files that I missed 2023-10-19 14:58:39 +03:00
Pēteris Caune
a308997b3a
Remove most of the hc.payments stuff
Why remove:

* For self-hosters, payment-related features are unused and dead weight
* For SaaS (any would-be Healthchecks.io competitors), the existing
  payment handling logic is not very useful either, as it would need to
  be heavily modified to match their business model, pricing, chosen
  payment gateway
* For the hosted service (Healthchecks.io), the up-to-date billing code
  lives in a private fork of this repo. Maintenance is easier if this
  repo does not have an older, diverging version of the same
  functionality

A few payment-related bits are staying at least for time being:

* the "USE_PAYMENTS" setting
* the hc.payments.models.Subscription model
* tiny stubs for the "Pricing" and "Billing" pages

They are used in various places in the code and templates,
and I think ripping them out in one go would be too disruptive.
2023-10-19 14:17:44 +03:00
Pēteris Caune
37caa94ff5
Improve channel rendering in the group form
* Use the custom-styled checkbox
* Use PNG instead of icon font for channel kind logos
* Show channel's description the same way as in the channels list
  (using a reusable template, templates/front/channel_description.html)
2023-10-12 14:37:00 +03:00
Pēteris Caune
2276fcff60
Rename my_checks -> checks; my_checks_desktop -> checks_table 2023-10-12 11:48:42 +03:00
Pēteris Caune
4fc6ff5c26
Tweak CSS in the group form, make sure channel's name is preloaded 2023-10-06 17:06:41 +03:00
Florian Apolloner
7057f6d3a5
Notification groups. Fixes #894 (#901)
* MVP for notification groups.

* Addressed review comments.

* Push notification group to the front.

* Updated icons.

* Reduce code duplication.

* Show groups at the top.

* Add label to group forms.

* Add checkboxes for integration selection.

* CSS for checkboxes.

* Added tests for group notify.
2023-10-06 17:02:41 +03:00
Pēteris Caune
633e612b59
Increase bottom margin for modal windows to work around Safari issue
cc: #899
2023-10-04 10:22:53 +03:00
Pēteris Caune
f7af738c76
Add monthly uptime percentage display in Check Details page
Fixes: #773
2023-09-27 13:44:35 +03:00
Pēteris Caune
a3965fcae5
Add last notify date in channel admin 2023-07-12 08:51:54 +03:00
Pēteris Caune
39682d900f
Update screenshots in docs to show the slug field 2023-07-07 10:22:35 +03:00
Pēteris Caune
fc1db22ec7
Fix JS error in the login page when REGISTRATION_OPEN=False 2023-07-02 15:29:41 +03:00
Viktor Szépe
dedb17feb9
Fix JS name and remove references to .map files (#854) 2023-07-02 15:25:04 +03:00
Pēteris Caune
dba356c5d4
For cron checks, change default display timezone to check's timezone
In the "Details" and "Log" pages Healthchecks displays a list
of events (incoming pings and sent alerts). At the top of the
events list is a two- or three-way selector for selecting
the timezone for formatting event dates and times. The selector
options are "UTC", check's configured timezone, and "Browser's
time zone". The "Browser's time zone" used to be default, initial
selection for all checks.

With this change, for checks that use cron schedule, the default
selected timezone will be the check's configured timezone.
The "Browser's time zone" option is of course still there and the
user can switch to it to see dates and times in their local time.

Rationale: I semi-regularly get support requests about unexpected
or missing alerts, where the problem boil downs to a timezone
mismatch between the client and the Healthchecks server. Sometimes
the confusion seems to be caused by the user seeing ping arrival
times in  their local time zone, comparing them to their cron
expression, and not realizing their server may be using a different
timezone. By switching the default display timezone to the check's
configured timezone, I hope users will be more likely to notice
discrepancies between ping arrival times, the cron schedule,
and their local clock.

For checks using simple schedules (timeout and grace), we still
default to browser's timezone for display.
2023-06-29 12:12:54 +03:00
Pēteris Caune
931876a737
Upgrade selectize.js to v0.15.2, fix CSS issues
Fixed CSS issues:

* In the tag input element, when entering a new tag,
  the "Add ..." item was missing padding. Padding added.
* In the timezone selects the caret was hidden, so it was
  hard to discover that timezone options can be filtered by typing.
  Caret in timezone selects is now visible and blinking.
2023-06-28 11:42:00 +03:00
Pēteris Caune
928f82e220
Add "Your account is currently over its check limit" notice 2023-06-16 15:00:33 +03:00
Pēteris Caune
9172e8de62
Add API v3 docs 2023-06-15 10:22:49 +03:00
Pēteris Caune
ebcb060ece
Update slug validation rules to disallow uppercase 2023-06-15 09:05:26 +03:00
Pēteris Caune
002bc9b083
Decouple check's name from slug, allow users to set hand-picked slugs 2023-06-14 15:06:37 +03:00
Pēteris Caune
98c0917b69
Fix dl/dt/dd CSS for the "Pinging API" page on mobile screens 2023-06-07 15:45:08 +03:00
Pēteris Caune
0f8c459987
Improve Rocket.Chat notification template
* Move the text field outside of the attachment object
* Rename "username" to "alias"
* Rename "icon_url" to "avatar"
* Remove unused, Slack-specific fields
* Add "Last Ping Body" field with a link to view full body

cc: #463
2023-06-03 09:58:34 +03:00
Pēteris Caune
eb7dfe5c63
Add Rocket.Chat integration
cc: #463
2023-05-30 12:30:29 +03:00
Pēteris Caune
554f6cba68
Replace bootstrap-select with the native <select> element 2023-05-26 13:44:24 +03:00
Pēteris Caune
4314e21b61
Switch from bootstrap-select to selectize in pushover and ntfy forms 2023-05-26 13:06:34 +03:00
Pēteris Caune
b065bb02c1
Fix outline on focused select.selectpicker 2023-05-26 11:29:02 +03:00
Pēteris Caune
cd0404d257
In the "Add/Edit Webhook" form, replace selectpicker with regular select 2023-05-26 11:25:23 +03:00
Pēteris Caune
7144f780bf
Fix select dropdown in Chrome and dark mode
The form controls with the .form-control CSS class have
background: transparent (as defined in Bootstrap's variables.less).

On Chrome, in dark mode, this causes <select> dropdowns to have
light text on light background. As a workaround, we set the
select.form-control background in base.css to the same color as panel
background.
2023-05-26 10:22:51 +03:00
Pēteris Caune
d0216a861c
Fix the checks list to preserve filters when changing sort order
Fixes: #828
2023-05-09 10:14:30 +03:00
Pēteris Caune
c3b80b06cf
Add Profile.deletion_scheduled_deleted field and UI banner when it's set 2023-04-28 15:03:04 +03:00
Pēteris Caune
c0a5bedb0c
Tweak wording and CSS in Cron Expression Cheatsheet 2023-04-27 11:37:57 +03:00
Pēteris Caune
80b6aa89ea
Add cron expression tester and samples in the cron cheatsheet page 2023-04-04 13:54:24 +03:00
Pēteris Caune
312c53c2b3
Fix check name wrapping in the "Assign Checks to Integration" dialog 2023-03-10 14:55:53 +02:00
Pēteris Caune
a779ffd365
Tweak the positioning of the project switcher 2023-03-10 13:27:11 +02:00
Pēteris Caune
4d552efd67
Improve styling of the project switcher 2023-03-10 11:50:41 +02:00
Pēteris Caune
bad4b9adbf
Add a "Switch Project" menu in top navigation 2023-03-10 10:36:09 +02:00
Pēteris Caune
0e2d2154c8
Make API docs fit better on mobile screens 2023-03-08 09:29:43 +02:00
Pēteris Caune
a8170a6e6c
Fix typo 2023-02-25 10:36:48 +02:00
Pēteris Caune
16d94f642d
Add tiny drop shadow to buttons
For primary buttons, the drop shadow is green-tinted.
For red buttons, the shadow is red-tinted.
2023-02-21 11:10:51 +02:00
Pēteris Caune
97703f10cf
Tweak :active and :focus button styles
Make the darkening effect less pronounced. Unfortunately this
requires changing bootstrap's .less files.
2023-02-21 11:08:40 +02:00
Pēteris Caune
fe54cbe049
Make radio and checkbox borders brighter in dark mode 2023-02-21 11:04:43 +02:00
Pēteris Caune
e2e289da2a
Add form double submit protection when registering a WebAuthn key 2023-02-20 11:05:55 +02:00
Pēteris Caune
b62faf5bd0
Clean up promise chaining in signup.js 2023-02-15 09:41:15 +02:00