Commit graph

49 commits

Author SHA1 Message Date
Alexander A. Klimov
3c8ed68cc6 Upgrade license from GPLv2 to GPLv2+
This was easy because only README.md and doc/01-About.md were redacted manually, everything else via:
git ls-files -z |xargs -0 perl -pi -e 's/Icinga GmbH \| GPLv2/Icinga GmbH | GPLv2+/'

This is legal because we have only merged PRs with label:cla/signed or made by Icinga staff:
https://github.com/Icinga/icingadb-web/pulls?page=1&q=is%3Apr+is%3Aclosed+-label%3Acla%2Fsigned+-author%3Anilmerg

This has no risk for us in people distributing their own version under GPLv3 only.
After all, we won't take their patches anyway, unless they sign our CLA.

This is the cleanest solution for having e.g. these in one address space:

* Icinga Web, GPLv2+
* K8s Web, AGPLv3
* Thirdparty, some LGPLv3 and Apache-2.0

Apropos, K8s Web is even v3-licensed on purpose, to have a stronger protection against cloud ops.
2025-11-21 13:31:24 +01:00
Johannes Meyer
5e982dad40
Merge commit from fork
* Auth: Add method `assertColumnRestrictions`

* ObjectSuggestions: Do not suggest protected variables

`assertColumnRestrictions` does not allow to use them
anymore, hence we should not suggest them in searches
as well to not to let the user run into an error by
accepting a suggestion. Though, when fetching values
as well, we still have to obfuscate, otherwise protected
vars won't show up in details anymore.

* Introduce Icinga\Module\Icingadb\Common\Model

Must be used as base for all models, to ensure
column restrictions are asserted on filters.

* Utilize `Icinga\Module\Icingadb\Common\Model` where applicable
2025-10-16 08:42:51 +02:00
Johannes Meyer
0148f4f510 db: Use an alias for *_customvar through tables
fixes #1162
2025-07-14 15:47:45 +02:00
Sukhwinder Dhillon
844a54a418 Host|Service: Add missing relation unreachable_parent
- Remove obsolete property php-doc
2025-07-07 11:59:27 +02:00
Sukhwinder Dhillon
e26db03e19 Deprecate Icingadb\Model\Behavior\BoolCast and use \ipl\Orm\Behavior\BoolCast instead 2025-06-11 14:25:56 +02:00
Sukhwinder Dhillon
0b5a34b4e1 Models: Register the to 1 relations first to display them first in the search suggestions 2025-06-11 11:34:37 +02:00
Markus Opolka
87ba9195ef Fix typo in Model/Host and Model/Service 2025-04-01 11:53:33 +02:00
Johannes Meyer
e749094431 Host|Service: Rename affected_children to total_children 2025-03-06 14:50:23 +01:00
Sukhwinder Dhillon
dd744395c7 Keep compatibility with Icinga DB mysql v6 & pgsql v4 2025-01-14 13:13:25 +01:00
Johannes Meyer
ffd51260d7 Keep compatibility with Icinga DB v5 2024-12-18 16:27:06 +01:00
Johannes Meyer
e96f2a4dfc add-some-mssing-reltions 2024-11-14 15:46:11 +01:00
raviks789
e22bd1bde8
Show root problem list for objects with problem and are part of dependency 2024-10-31 09:46:49 +01:00
raviks789
2012b29e14 Indicate the number of affected children by a particular parent 2024-10-08 16:30:04 +02:00
Johannes Meyer
56180b4ae8 db: Cleanup parent/child relations in matching models
The previous relations didn't work as expected.
Now, filtering with `child.host.name` or
`parent.service.name` works fine.
2024-10-08 16:30:04 +02:00
Johannes Meyer
07071c0d13 db: Add dependency relations to Service model 2024-10-08 16:30:04 +02:00
Sukhwinder Dhillon
89c0bb0686 Models: Add property type hints so that phpstan can scan correctly 2024-03-13 16:34:21 +01:00
Sukhwinder Dhillon
2e7d7b9129 CheckStatistics: Show TimePeriod name if available 2023-06-15 15:25:25 +02:00
Sukhwinder Dhillon
f675d539f2
Enhance global search (#756)
* Controllers: Remove not required method call `handleSearchRequest()`

These controller do not support global search

* Models: Add `display_name` to default search columns

* Controller: Add ´$additionaColumns` param to method handleSearchRequest() and prepareSearchFilter()

* TacticalController: Remove superfluous override of method `prepareSearchFilter()`
2023-05-30 15:26:00 +02:00
Johannes Meyer
c84f85c5df Service: Implement default for property customvars 2022-08-17 15:46:27 +02:00
Johannes Meyer
10577631b3 Enhance column labels 2022-07-11 17:31:53 +02:00
Yonas Habteab
1795a73a29 Adjust the usage of the changed columns everywhere 2022-06-10 09:23:05 +02:00
Yonas Habteab
5fc6c4f357 Model: Add _name suffix to columns referring to name 2022-06-10 09:23:05 +02:00
Johannes Meyer
e2298540ca Also cast is_volatile to bool in models Host and Service 2022-06-09 16:26:27 +02:00
Johannes Meyer
462af082d7 Introduce Icinga\Module\Icingadb\Model\Vars 2022-06-09 15:16:34 +02:00
Johannes Meyer
47332faffa Model: Rename getMetaData into getColumnDefinitions 2022-06-09 13:24:41 +02:00
Eric Lippmann
d0d9a5edc0 Drop Binary behavior
Now part of ipl-orm.
2022-05-24 16:04:23 +02:00
Eric Lippmann
c859ec3a0d Add Binary behavior for binary columns 2022-05-24 16:04:23 +02:00
Johannes Meyer
1a73126938 Model: Implement createDefaults where applicable 2022-05-23 15:51:51 +02:00
Yonas Habteab
71722e4929 Fix some primary key irregularities 2022-04-14 16:38:25 +02:00
Johannes Meyer
8276cc7ace Auth: Allow user and usergroup filters in restrictions 2021-10-04 12:53:13 +02:00
Yonas Habteab
72ae2cc2f6 Implement Host/Service mutateVarsProperty() 2021-10-01 15:30:06 +02:00
Johannes Meyer
3c579b29fe Host|Service: Fix icon_image relation definition 2021-07-13 16:01:44 +02:00
Johannes Meyer
9192ae57f2 Model: Define missing vars relation for some models 2021-01-14 11:17:08 +01:00
Johannes Meyer
f17a0e833e Service: Implement getMetaData() 2021-01-14 11:12:11 +01:00
Johannes Meyer
5e441c93a0 Add license note to every file 2020-03-13 10:36:24 +01:00
Johannes Meyer
dac625e329 Service: Remove superflous semicolon 2020-01-17 16:40:26 +01:00
Eric Lippmann
6d5c4e1fc3 Service: Use LEFT JOIN for notifications 2020-01-08 09:54:37 +01:00
Eric Lippmann
c620fed954 Service: Use LEFT JOIN for downtimes 2020-01-08 09:54:37 +01:00
Eric Lippmann
882b7dae66 Service: Use LEFT JOIN for comments 2020-01-08 09:54:37 +01:00
Eric Lippmann
e82d7bcab6 Service: Join notes_url using id only
The service join from notes_url is done with id only too.
2020-01-08 09:29:35 +01:00
Eric Lippmann
2b056e5143 Service: Join action_url using id only
The service join from action_url is done with id only too.
2020-01-08 09:29:35 +01:00
Eric Lippmann
071fb30440 Service: Use and adjust getDefaultSort() in favor of removed getSortRules() 2019-12-11 16:13:55 +01:00
Johannes Meyer
f0aa99064f Model: Drop now obsolete checksum columns 2019-12-04 13:43:16 +01:00
Johannes Meyer
e698f52229 Model: Use correct fk for service_customvar and add missing history relations 2019-12-03 09:55:48 +01:00
Johannes Meyer
cac4fd2908 Model: Adjust BelongsToMany::setThrough() usages
So they'll use `BelongsToMany::through()` now
2019-11-19 14:22:17 +01:00
Johannes Meyer
dc93ecf413 Service: Rename relation customvar_flat to vars 2019-11-06 15:35:14 +01:00
Johannes Meyer
82ec8687d6 Model: Fix relations between hostgroup <-> hostgroup_member <-> service 2019-11-05 16:09:13 +01:00
Eric Lippmann
77b4930098 Rename to Icingadb 2019-11-05 01:07:30 +01:00
Eric Lippmann
10f58fb4a0 Rename library/Eagle to library/Icingadb 2019-11-05 01:06:28 +01:00
Renamed from library/Eagle/Model/Service.php (Browse further)