1846 Commits
Author SHA1 Message Date
Weblate 2996ab79f5 Update translation files
Updated by "Squash Git commits" hook in Weblate.

Translation: Cacti/thold
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
2026-10-21 14:18:17 -05:00
WeblateandDaniel Nylander ca57b63a58 Translated using Weblate (Swedish)
Currently translated at 100.0% (896 of 896 strings)

Co-authored-by: Daniel Nylander <daniel@danielnylander.se>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/sv/
Translation: Cacti/thold
2026-10-21 14:18:17 -05:00
Weblate 305e79a425 Update translation files
Updated by "Squash Git commits" hook in Weblate.

Translation: Cacti/thold
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
2026-10-20 11:22:15 -05:00
WeblateandDaniel Nylander 2b52a6020f Translated using Weblate (Swedish)
Currently translated at 100.0% (896 of 896 strings)

Co-authored-by: Daniel Nylander <daniel@danielnylander.se>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/sv/
Translation: Cacti/thold
2026-10-20 11:22:15 -05:00
Weblate 3290dbe132 Update translation files
Updated by "Squash Git commits" hook in Weblate.

Translation: Cacti/thold
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
2026-10-20 05:18:16 -05:00
WeblateandDaniel Nylander 76d4b64a73 Translated using Weblate (Swedish)
Currently translated at 100.0% (896 of 896 strings)

Co-authored-by: Daniel Nylander <daniel@danielnylander.se>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/sv/
Translation: Cacti/thold
2026-10-20 05:18:16 -05:00
Thomas Vincent d4917d36c0 ci: pin the database image and install locked shared test dependencies (#857)
* ci: pin fixtures and install locked shared test dependencies

Signed-off-by: Thomas Vincent <thomasvincent@gmail.com>

* ci: fetch shared tooling through a pinned sparse checkout

Signed-off-by: Thomas Vincent <thomasvincent@gmail.com>

* docs(changelog): list CI hardening as a dev entry

Signed-off-by: Thomas Vincent <thomasvincent@gmail.com>

* ci: check out the Cacti branch head instead of a pinned commit

Signed-off-by: Thomas Vincent <thomasvincent@gmail.com>

---------

Signed-off-by: Thomas Vincent <thomasvincent@gmail.com>
2026-10-19 09:49:52 -04:00
Weblate 755004394d Update translation files
Updated by "Squash Git commits" hook in Weblate.

Translation: Cacti/thold
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
2026-10-19 04:25:58 -05:00
WeblateandDaniel Nylander 62c17ba0a7 Translated using Weblate (Swedish)
Currently translated at 100.0% (896 of 896 strings)

Co-authored-by: Daniel Nylander <daniel@danielnylander.se>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/sv/
Translation: Cacti/thold
2026-10-19 04:25:58 -05:00
Weblate f85f6fbd63 Update translation files
Updated by "Squash Git commits" hook in Weblate.

Translation: Cacti/thold
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
2026-10-19 04:18:54 -05:00
WeblateandDaniel Nylander 4631aea248 Translated using Weblate (Swedish)
Currently translated at 100.0% (896 of 896 strings)

Co-authored-by: Daniel Nylander <daniel@danielnylander.se>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/sv/
Translation: Cacti/thold
2026-10-19 04:18:54 -05:00
dependabot[bot] 2668d0ba7c ci(deps): bump the github-actions group with 2 updates (#860)
Bumps the github-actions group with 2 updates: [shivammathur/setup-php](https://github.com/shivammathur/setup-php) and [actions/upload-artifact](https://github.com/actions/upload-artifact).


Updates `shivammathur/setup-php` from 2.37.2 to 2.40.0
- [Release notes](https://github.com/shivammathur/setup-php/releases)
- [Commits](https://github.com/shivammathur/setup-php/compare/f3e473d116dcccaddc5834248c87452386958240...eb7c497e18156a6bbabfef1d3a82760b9eda3962)

Updates `actions/upload-artifact` from 7.0.1 to 7.0.2
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/043fb46d1a93c77aae656e7c1c64a875d1fc6a0a...cf430e030ddbb5b0abf93d22962f4752f3646cd9)

---
updated-dependencies:
- dependency-name: shivammathur/setup-php
  dependency-version: 2.40.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: actions/upload-artifact
  dependency-version: 7.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-10-16 21:07:20 -04:00
TheWitnessandCopilot 2c7593c990 Guard maint maintenance-window checks against a missing maint functions file (#859)
* Guard maint maintenance-window checks against a missing maint functions file

#858 corrected the maint functions include path but left three
plugin_maint_check_cacti_host() calls guarded only by
api_plugin_is_enabled('maint'). When maint is enabled but its functions
file cannot be included (the include block now logs and continues rather
than fataling), those calls hit an undefined function and fatal the poll.

Add a function_exists('plugin_maint_check_cacti_host') guard to all three
call sites (thold_check_threshold() and both the recovering- and down-device
loops in thold_update_host_status()) so a missing maint include degrades
gracefully, matching the guard other plugins use.

Cover both maintenance-gated notification branches with a new
MaintCheckGuardTest; add an html_split_string() test stub so the
recovering-device path can be driven in the isolated unit process.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Let unexpected errors fail the maint-guard tests

Drop the broad catch(Throwable) in the host-status test helper. A device
inside a maintenance window is logged and the loop continues without the
downstream notification work, so the call returns on its own; removing the
catch means an unexpected error (such as a removed guard fataling on an
undefined maint function) now fails the test instead of being swallowed.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-15 13:51:47 -04:00
Petr MacekandTheWitness dd2abc92cd fix incorrect maint include (#858)
* fix include

* return back deleted file

* Fix maint include guard: test file_exists on path, not require_once return

file_exists() was wrapping require_once(), so the first require ran unconditionally and its integer return (1) was passed to file_exists(), which fell through to require the non-existent includes/functions.php and fatalled. Test the path strings directly.

* Cover maint include fallback and error branches

The maint-include lookup in thold_check_threshold() and thold_update_host_status() gained an includes/functions.php fallback and an error-log branch, but the suite only exercised the plugin-root path. Add MaintIncludeResolutionTest driving all three outcomes for both functions, with cacti-root fixtures for the includes/ layout and the missing-plugin case, so patch coverage of the changed lines reaches 100%.

---------

Co-authored-by: TheWitness <thewitness@cacti.net>
2026-10-15 10:24:36 -04:00
Weblate 0929150560 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate 755d7b51b7 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate 880dd0f3f6 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate 2b0c03f1c4 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate d2cc8c28cb Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate 68f2949fab Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate f1d2fcbee2 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate 534d19dd28 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate 4467f55a6c Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate bb4d58b5da Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate dc9134efdc Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate 9b5152a850 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate 0c5b234af8 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate 920c879d96 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate 354360ec4e Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate e257bcefc2 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate 22623f4551 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate c7fe2fd360 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate dcafbe747e Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate c302615828 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate 52b7df41a1 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:06 -05:00
Weblate 10fa009840 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:05 -05:00
Weblate 6b6d5bdd4f Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-13 11:39:05 -05:00
10c93541dd issue: shorten thold VRULE graph drilldown button title (#855)
* issue: shorten thold VRULE graph drilldown button title

The graph action menu now renders each drilldown button's title as a visible label, so 'Toggle Threshold VRULES %s' reads as an overlong menu entry. Shorten it to 'Toggle VRULES %s', add a unit test exercising thold_graph_button()'s VRULE branch (with the two missing request-var stubs it needs) so the changed line stays covered, and regenerate locales/po/cacti.pot.

* Update copyright notice in TholdGraphButtonTest.php

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Fix Last-Translator entry in cacti.pot

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* test: cover the VRULEs-enabled 'Off' title branch for patch coverage

---------

Co-authored-by: TheWitness <1439914+TheWitness@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-10-13 12:38:48 -04:00
Thomas Vincent 2de8e1c7eb fix(import): log the current template error instead of a stale success (#856)
Signed-off-by: Thomas Vincent <thomasvincent@gmail.com>
2026-10-13 09:13:39 -04:00
TheWitness 6bbfb58492 Fit status pills to label text and toggle-clear the status filter on second click (#854)
The status pills were being clipped to a fixed width because the single-class theme rules (e.g. .deviceUpFull width:14%, padding:3px) outranked the equal-specificity .thold-pill shape rule, so long labels such as 'Not Monitored' overflowed the coloured pill on the Device Status page. Element-qualify the selector (span.thold-pill) so the shape rule wins and the pill hugs its label in every theme.

Also make a second click on an already-selected status pill clear that filter (reset the Status select to All, value -1) instead of re-applying the same value. Applied to all three thold_graph.php sub-tabs (Thresholds, Device Status, Threshold Log) and the matching Thresholds console page (thold.php).
2026-10-09 09:32:34 -04:00
Weblate 8f582e48c4 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-08 19:40:53 -05:00
Weblate 1fab432bd8 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-08 19:40:53 -05:00
Weblate dca9143647 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-08 19:40:53 -05:00
Weblate 6b0e3d36ac Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-08 19:40:53 -05:00
Weblate 69c9d764f7 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-08 19:40:53 -05:00
Weblate d0a7cfe9ce Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-08 19:40:53 -05:00
Weblate 64d324d788 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-08 19:40:53 -05:00
Weblate f1cb8fc7c0 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-08 19:40:53 -05:00
Weblate a1c9cab732 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-08 19:40:53 -05:00
Weblate 5bc529abbc Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <noreply@weblate.org>
Translate-URL: https://translate.cacti.net/projects/cacti/thold/
Translation: Cacti/thold
2026-10-08 19:40:53 -05:00