Commit Graph

4091 Commits

Author SHA1 Message Date
Johannes Meyer ccc2f487f6
Merge pull request #3706 from Icinga/fix/multiline-values-in-ini-files-broken-3705
Fix multiline values in ini files broken
2019-04-05 08:44:46 +02:00
Eric Lippmann 915c7b8fe5
Merge pull request #3504 from Icinga/fix/collapsible-sidebar-issues-3187
Fix collapsible sidebar issues
2019-03-21 09:09:27 +01:00
Jennifer Mourek b3b80fdc31 Make active first-level nav items better distinguishable 2019-03-20 11:07:39 +01:00
Jennifer Mourek 61b0d8aa90 Add icon with first letter of the li if there is no icon set else default to icon-circle 2019-03-20 11:07:39 +01:00
ignasr 9b1f49413d use the correct LDAPS port
refs #3713
2019-03-08 18:49:20 +01:00
Johannes Meyer 769d490631 config: Escape and unescape line breaks in ini values
refs #3705
2019-03-04 12:16:06 +01:00
Eric Lippmann 403c2d3495
Merge pull request #3481 from marianrh/feature/optionally-disable-mysql-server-certificate-validation
Allow disabling MySQL server certificate validation by setting ssl_do_not_verify_server_cert
2019-02-26 10:39:21 +01:00
Eric Lippmann b6e8151582
Merge pull request #3677 from Icinga/fix/escaped-ini-characters-3648
Fix escaped ini characters
2019-02-26 10:03:54 +01:00
Eric Lippmann 57f54b0f76
Merge pull request #3667 from Icinga/bugfix/undefined-offset-100-3589
Format::seconds(): handle negative values as expected
2019-02-26 09:59:24 +01:00
Thomas Gelf a487f83f99 Loader: fix indentation...
...it's too early in the morning, wrong .vimrc on this system - sorry.
2019-02-20 05:48:04 +01:00
Thomas Gelf 07776c54f3 Upload: do not fail on PHP 7.2
fixes #3689
2019-02-20 05:41:23 +01:00
Thomas Gelf 7868216d04 Loader: close clicommands directory after use
fixes #3688
2019-02-20 05:36:08 +01:00
Johannes Meyer ed7ecb32a5 IniParser: Properly unescape special characters in section names and option values
refs #3648

Signed-off-by: Eric Lippmann <eric.lippmann@icinga.com>
2019-02-05 11:30:55 +01:00
Eric Lippmann 9571d1059f Fix URLs in our image helper having multiple params 2019-01-25 09:20:55 +01:00
Alexander A. Klimov c04b2594a6 Format::seconds(): handle negative values as expected
refs #3589
2019-01-17 16:40:27 +01:00
Thomas Gelf 08c879249b Auth: do not ask for unrelated group membership
If a specific User-Backend has been assigned to a Group Backend, and
the User has been authenticated by another User-Backend, then there is
no need to ask the unrelated Groups Backend for membership.
2018-12-18 14:51:13 +01:00
Markus Frosch 4081a85d90 Introduce Icinga\Util\Environment to manage limits
And replace the code in Icinga\File\Pdf with the new helper.
2018-12-05 15:42:48 +01:00
Eric Lippmann 87da1e76cd Respect php.ini limits when exporting to PDF 2018-12-05 15:12:03 +01:00
Markus Frosch a95e645236
Merge pull request #3643 from Icinga/feature/db-oracle-hostname-optional
DbConnection: Make host optional for Oracle connections
2018-12-05 15:09:46 +01:00
Markus Frosch f4f61dff5b vendor: Update dompdf to a fixed version for PHP 7.3
https://github.com/dompdf/dompdf/pull/1854
2018-12-05 14:57:21 +01:00
Markus Frosch ecfaf7cede GridChart: Fix compatibility issues with PHP 7.3 2018-12-05 14:57:21 +01:00
Markus Frosch 87e81e6b3a vendor: Update JShrink to 1.3.1
This fixes mainly problems with PHP 7.3.
2018-12-05 14:57:21 +01:00
Markus Frosch 5f52871b61
Merge pull request #3645 from Icinga/feature/zf1-php73
vendor: Update zf1 for PHP 7.3
2018-12-04 16:47:08 +01:00
Markus Frosch 113a10481b vendor: Update zf1 for PHP 7.3 2018-12-04 16:43:30 +01:00
Markus Frosch 2df8132c46 DbConnection: Make host optional for Oracle connections 2018-12-04 15:50:53 +01:00
Bas Couwenberg 075eb17005 Use continue <N> in case statements to fix ErrorException with PHP 7.3.
```
Fatal error: Uncaught ErrorException: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"?
```
2018-11-23 18:34:56 +01:00
Eric Lippmann 081b90e92f Raise version to 2.6.2 2018-11-20 12:39:21 +01:00
Eric Lippmann d919e23d0b
Merge pull request #3585 from Icinga/feature/enhanced-ldap-logging
Feature/enhanced ldap logging
2018-11-15 11:28:47 +01:00
Eric Lippmann 0c06ec7431
Merge pull request #3558 from Icinga/fix/permission-test-in-hook-has
Fix permission test in Hook::has()
2018-11-15 11:26:07 +01:00
Eric Lippmann 1268c16a7f
Merge pull request #3588 from Icinga/fix/problems-the-world-has-and-ever-will
Fix problems the world has and ever will
2018-11-15 11:25:48 +01:00
Thomas Gelf b4afdf4115 DbConnection: do not fail for MySQL 8
fixes #3611
2018-11-08 11:11:37 +01:00
Michael Friedrich d1fb3b3674 Update URL to https://icinga.com 2018-10-18 11:02:57 +02:00
Markus Frosch 39f5b5e2cd LdapConnection: Ensure port and timeout are numbers 2018-10-16 14:44:01 +02:00
Markus Frosch 3f782460dc LdapConnection: Add timeout setting with a useful default value 2018-10-16 14:35:50 +02:00
Johannes Meyer 86ae8c12df IniParser: Use mode INI_SCANNER_RAW to parse ini files 2018-10-10 09:44:11 +02:00
Johannes Meyer 4e6b936862 helpers/url: Properly escape image urls 2018-10-10 09:44:11 +02:00
Johannes Meyer 77bb1944db Web: Setup the logger earlier in the bootstrap process
Previously only ERROR got logged (to syslog only) up until
setupLogger() was called. This prevented any other message
level from being logged. It's now required to be able to
log in the Auth singleton. It also fixes the problem that
during setupSession() some warnings were never visible
due to the same reason.
2018-10-08 14:03:34 +02:00
Johannes Meyer 2f9037e545 Auth: Log which groups were identified for the user being authenticated 2018-10-08 14:02:26 +02:00
Johannes Meyer d8e3f23342 LdapCapabilities: Log which attributes were discovered 2018-10-08 10:34:27 +02:00
Johannes Meyer 3c69a63ce3 LdapUserGroupBackend: Log what the ambiguity check does 2018-10-08 10:34:27 +02:00
Marius Hein ae469311be Fix uninitialized array and module in Cli\Command 2018-09-24 13:48:22 +02:00
Max Kozlov 65591c829f
Update Cli.php 2018-09-08 01:37:33 +03:00
Max Kozlov a55e32b1a1
Return non-zero on display usage
`Icingacli` should return non-zeno status code when display usage messages
 for example for invalid commands

https://github.com/Icinga/icinga2/issues/6585#issuecomment-418681789

It is good for automation and helps mitigate typing errors
2018-09-05 22:16:25 +03:00
Eric Lippmann 7e4b92b714 Fix permission test in Hook::has()
Before, only the first hook for the given type was tested. If this hook
belonged to a not permitted module, Hook::has() returned false. Though
there may have been other hooks which are permitted.
2018-08-16 17:03:42 +02:00
Oliver Rahner 34eadb7f29
Enable `$currentUser` placeholder in restrictions
implements #3493
2018-08-08 15:15:02 +02:00
Eric Lippmann b3e0b5d587 Raise version to 2.6.1 2018-08-02 12:46:39 +02:00
Eric Lippmann 0f075b034b Respect permissions in Hook::has() 2018-07-26 11:51:23 +02:00
Johannes Meyer c0f99539ff Raise version to v2.6.0 2018-07-19 09:27:11 +02:00
Eric Lippmann dd9e8c8ba9 Revert "Merge pull request #3487 from Icinga/fix/web-bootstrap"
This reverts commit b12b905076, reversing
changes made to c633c86db7.

refs #3500
2018-07-18 15:29:55 +02:00
Eric Lippmann 121bd545d1
Merge pull request #3530 from Icinga/feature/enforce-a-named-identity-for-audit-logs
AuditHook: Enforce a named identity and allow to pass a explicit time
2018-07-18 15:27:45 +02:00
Johannes Meyer f28f7150fc AuditHook: Enforce a named identity and allow to pass a explicit time 2018-07-18 14:45:00 +02:00
Eric Lippmann 7d47875241 Introduce PdfexportHook 2018-07-18 14:22:18 +02:00
Marian Rainer-Harbach 5e40405a12 Allow disabling MySQL server certificate validation by setting ssl_do_not_verify_server_cert
Signed-off-by: Eric Lippmann <eric.lippmann@icinga.com>
2018-07-16 11:41:13 +02:00
Eric Lippmann 67929064cc
Merge pull request #3526 from Icinga/fix/some-xss-vulnerabilities
Fix some XSS vulnerabilities
2018-07-16 09:58:23 +02:00
Eric Lippmann 11f1a287ab
Merge pull request #3519 from Icinga/fix/mysql-ssl-connection-error-brings-up-no-explanation-3249
Pdo\Abstract: Properly handle incomplete error messages
2018-07-16 09:56:26 +02:00
Johannes Meyer 84622bf27b Fix some XSS vulnerabilities
Only a real issue with <= IE9 as other browsers properly escape
urls prior transmission.

Signed-off-by: Eric Lippmann <eric.lippmann@icinga.com>
2018-07-16 09:53:30 +02:00
Johannes Meyer bf5c6a56b3 Revert "Fix some XSS vulnerabilities"
Accidentally pushed. Should re-enter with #3521.
2018-07-11 16:37:39 +02:00
Johannes Meyer b97933a146 Fix some XSS vulnerabilities
Only a real issue with <= IE9 as other browsers properly escape
urls prior transmission.
2018-07-11 13:10:57 +02:00
Johannes Meyer 44bfdd3986 Pdo\Abstract: Properly handle incomplete error messages
fixes #3249
2018-07-10 14:54:28 +02:00
Eric Lippmann 6cddd6beed
Merge pull request #3508 from Icinga/fix/filter-entries-are-deleted-when-pushing-enter-3454
FilterEditor: Add a hidden submit button to the start of the form's m…
2018-07-10 09:28:35 +02:00
Eric Lippmann b88c6b0a6e
Merge pull request #3516 from Icinga/feature/application-state-hook
Application state hook
2018-07-10 09:14:26 +02:00
Eric Lippmann 47405127d0 Add config to hide/show pplication state messages
refs #2835
2018-07-09 16:28:28 +02:00
Eric Lippmann d18d05ccee Introduce ApplicationStateHook
refs #2835
2018-07-09 16:28:25 +02:00
Eric Lippmann 303637df3c
Merge pull request #3452 from Icinga/feature/drop-php-lt-56-support
Drop support for PHP < 5.6
2018-07-09 09:18:18 +02:00
Johannes Meyer 6e6251604b FilterEditor: Add a hidden submit button to the start of the form's markup
When pushing enter our JS mimics what a browser would do. And that is
pushing the first submit button found in the form. Without this, that's
a delete button of the first logical junction. (the root condition)

fixes #3454
2018-07-06 10:41:49 +02:00
Eric Lippmann 189b519135
Merge pull request #3486 from Icinga/fix/request-parses-json-without-respecting-content-type-3484
Fix that Request parses json without respecting content type
2018-07-05 13:19:27 +02:00
Johannes Meyer 1f677e64f6 ActionController: Force HTTP redirects in method redirectHttp()
That's what its name implies, right? The counterpart is redirectXhr(),
which does still its job. redirectNow() on the other hand is for the
lazy people.
2018-07-04 14:44:03 +02:00
Johannes Meyer 8cbff87af1 Request: Parse the POST body only as JSON if it's really JSON
refs #3484
2018-07-04 11:09:11 +02:00
Johannes Meyer 842e5603a1 Request: Introduce method extractMediaType
refs #3484
2018-07-04 11:09:11 +02:00
Eric Lippmann 8990d6f46e Drop support for PHP < 5.6 2018-07-03 13:11:36 +02:00
Eric Lippmann d6c4df7a5d Use password_hash and password_verify 2018-07-03 13:08:06 +02:00
Eric Lippmann faaff42096 Revert "Introduce PasswordHelper for safer passwords"
This reverts commit f57277aa96.

Since we're dropping PHP support for versions lower than 5.6 this class is no longer necessary.
2018-07-03 13:08:06 +02:00
Eric Lippmann 966148e8f0
Merge pull request #3463 from kobmaki/feature/Allow-to-interface-with-sqlite-databases-3381
Support SQLite resources
2018-06-28 11:42:00 +02:00
Eric Lippmann 0433dc4166 Bootstrap modules at last
We initialize modules before we set up the user backend and other
singletons. But modules may access those in order to check the
permissions of the authenticated user for example. With this fix,
modules are loaded once all other bootstrap tasks have been completed.

refs #3470
2018-06-27 09:52:00 +02:00
Uwe Ebel 4b5cf47cce Introduce SQLite resource type
refs #3381

Signed-off-by: Eric Lippmann <eric.lippmann@icinga.com>
2018-06-27 09:40:22 +02:00
Eric Lippmann c633c86db7
Merge pull request #3480 from Icinga/fix/revert-persistent-db-connections
No longer support persistent database connections
2018-06-27 09:36:37 +02:00
Eric Lippmann fdd791974d Update Parsedown 2018-06-25 16:07:47 +02:00
Eric Lippmann 66132c330a Update JShrink 2018-06-25 16:05:36 +02:00
Eric Lippmann 46907735fe Update HTMLPurifier 2018-06-25 16:04:10 +02:00
Eric Lippmann e55ac3e4a2 Update dompdf deps 2018-06-25 16:01:06 +02:00
Eric Lippmann 4d42c043e4 Remove traces of persistent db connections 2018-06-22 15:36:46 +02:00
Eric Lippmann af35794006 Revert "lib/db: Allow to configure persistent connections"
This reverts commit 4763b6b20a.
2018-06-22 14:43:32 +02:00
Eric Lippmann 6f1d8668a0 Fix line exceeds 120 characters 2018-06-22 11:04:48 +02:00
Alexander A. Klimov ee60a8df99 Don't let AutoRefreshForm handle API requests
refs #2749
2018-06-22 11:03:07 +02:00
Alexander A. Klimov 235e75d054 Form: handle API requests as expected
refs #2749
2018-06-22 11:03:07 +02:00
Alexander A. Klimov 880a0a254f DateTimePicker: support *nix timestamps
refs #2749
2018-06-22 11:03:07 +02:00
Alexander A. Klimov a444b8adf5 Request: support JSON as POST data format
refs #2749
2018-06-22 11:03:07 +02:00
Alexander A. Klimov 73473a3bb9 Fix tests
refs #2635
2018-06-22 09:57:10 +02:00
Alexander A. Klimov 906c1668a4 Split Json::encode() into Json::encode() and Json::sanitize()
refs #2635
2018-06-21 16:01:53 +02:00
Alexander A. Klimov 02b60633ff Auto-sanitize only in the monitoring module
refs #2635
2018-06-20 18:05:12 +02:00
Alexander A. Klimov 1a94a21263 Prefer Json::encode() over json_encode()
refs #2635
2018-06-20 18:05:11 +02:00
Alexander A. Klimov 9219cea776 Json::encode(): auto-sanitize bad UTF-8 strings
refs #2635
2018-06-20 18:05:11 +02:00
Johannes Meyer 3f66bd7437 Auth: Log login/logout activities to the audit log
refs #2563
2018-06-08 14:21:15 +02:00
Johannes Meyer 9da9f1237d Introduce class Icinga\Application\Hook\AuditHook
refs #2584
2018-06-08 14:21:15 +02:00
Eric Lippmann 96303f53f8
Merge pull request #3213 from Icinga/feature/drop-php-5-3-support
Drop PHP 5.3 support
2018-05-08 03:03:36 -04:00
Eric Lippmann 4bea67e756
Merge pull request #3315 from Icinga/bugfix/php-7-2-support-3185
Don't call session_start() after ini_set()
2018-05-07 05:44:52 -04:00
Alexander A. Klimov fc1f6e13ab Drop PHP 5.3 support 2018-05-07 11:36:54 +02:00
Eric Lippmann 60295f3407
Merge pull request #3443 from Icinga/fix/search-over-customvars-results-in-sql-error-2508
Fix search over customvars results in sql error 2508
2018-05-07 04:18:22 -04:00
Johannes Meyer cbc77cb7b2 Web: Implement method getMenu() using Icinga\Web\Menu and deprecate it
refs #2338
2018-04-30 10:30:58 +02:00
Johannes Meyer 71cb682832 Re-introduce class Icinga\Web\Menu
refs #2338
2018-04-30 10:24:57 +02:00
Johannes Meyer c3b19996f8 DbConnection: Introduce method getConfig()
refs #2508
2018-04-27 15:30:04 +02:00
Johannes Meyer 1b15048636 Drop obsolete Icinga\Web\Menu classes
refs #2338
2018-04-27 14:28:20 +02:00
Johannes Meyer 571b34c8cd Drop obsolete class Icinga\Web\Menu\BadgeMenuItemRenderer
refs #2338
2018-04-27 14:11:03 +02:00
Johannes Meyer 059088c089 Drop obsolete class Icinga\Web\Menu\SummaryMenuItemRenderer
refs #2338
2018-04-27 14:10:35 +02:00
Johannes Meyer d71982e333 Drop obsolete class Icinga\Web\Menu\PermittedMenuItemFilter
refs #2338
2018-04-27 14:10:00 +02:00
Johannes Meyer 1c4ebda037 Drop obsolete class Icinga\Web\MenuRenderer
refs #2338
2018-04-27 14:04:49 +02:00
Johannes Meyer 096fdfc887 Version.php: Raise version to 2.5.3 2018-04-27 10:23:36 +02:00
Johannes Meyer 23e508ac27 Version.php: Raise version to 2.5.2 2018-04-25 13:02:47 +02:00
Johannes Meyer b14b61d37a Platform: Also check for the sqlsrv extension when checking MSSQL support
refs #3320
2018-04-24 15:56:29 +02:00
Johannes Meyer 24128e0cc3 DbConnection: Automatically choose sqlsrv as driver..
..if available and none is explicitly set.

refs #3320
2018-04-24 15:50:12 +02:00
Johannes Meyer c566c8bfde
Merge pull request #3400 from Icinga/bugfix/mssql-detection
Platform: Also consider dblib when checking for MSSQL support
2018-04-24 15:46:45 +02:00
Johannes Meyer b76e6e7597 RepositoryQuery: Actually return self in method peekAhead and not the parent 2018-04-24 09:26:45 +02:00
Alexander A. Klimov 1280137eae Merge branch 'bugfix/form-number-inclusive-range' 2018-04-12 14:32:38 +02:00
Alexander A. Klimov 5cf51a70c8 Numeric input: validate inclusive ranges 2018-04-12 14:25:10 +02:00
Johannes Meyer 5f24fffe7d
Merge pull request #3412 from Icinga/bugfix/filter-editor-expand-upon-auto-refresh-2964
Preserve collapsed FilterEditor subtrees across auto-refreshes
2018-04-06 14:55:19 +02:00
Alexander A. Klimov 41b105136d Preserve collapsed FilterEditor subtrees across auto-refreshes
refs #2964
2018-04-06 13:54:51 +02:00
Johannes Meyer 72f0e809ae Pane: Add setter for $name
refs #2901
2018-04-06 11:08:20 +02:00
Johannes Meyer f522311cec
Merge pull request #3406 from Icinga/bugfix/filter-editor-new-elements-2900
FilterEditor: save changes on element addition
2018-04-05 12:12:59 +02:00
Alexander A. Klimov 15bc83ec14 IniParser::parseIniFile(): parse as ::parseIni() would do
refs #3357
2018-04-04 13:58:19 +02:00
Alexander A. Klimov b5dde96746 FilterEditor: save changes on element addition
refs #2900
2018-04-04 12:20:52 +02:00
Johannes Meyer ecd2320a23 AuthenticationHook: Remove superflous empty line at EOF
Travis complains about this in every PR created after this was introduced..
2018-04-04 11:22:23 +02:00
Alexander A. Klimov 4bf64cb131 Merge branch 'fix/ldap-group-membership-regression'
fixes #3324
2018-04-03 13:58:33 +02:00
Davide Bizzarri 8b5fe61996 Add AuthenticationHook
Created AuthenticationHook class with two main methods: onLogin and
onLogout that are called after login and before logout.
2018-03-28 16:18:31 +02:00
Markus Frosch 123a0b8196 Platform: Correct detecting MSSQL Support
PDO Implementation of zf1 builds on module mssql OR pdo_dblib, while dblib is preferred.

Newer implementations would support pdo_sqlsrv, but that is not available with ZF1.
2018-03-27 11:35:26 +02:00
Eric Lippmann 4a000d0098 Revert "Merge branch 'bugfix/domain-aware-auth-non-domain-ldap-group-backend-3250'"
This reverts commit 5cb7deda20, reversing
changes made to 02391e648b.

The change must be reverted because it makes it impossible to load groups
if domain aware auth is not enabled and the authenticated user specifies a domain.

refs #3324
2018-03-19 13:10:47 +01:00
Alexander A. Klimov 4477f33b31 Fix interference between two similar namespaces 2018-03-01 14:01:57 +01:00
lippserd f3404c24e5
Merge pull request #3340 from Icinga/bugfix/php-fatal-errors-2216
Unify the look of fatal and non-fatal errors
2018-02-21 09:26:21 +01:00
lippserd 133da1ef91
Merge pull request #3342 from Icinga/bugfix/pdf-export-broken-3338
Pdf: correct DOMPDF directory
2018-02-21 09:25:06 +01:00
Alexander A. Klimov 2355224b05 IcingaException::getConfidentialTraceAsString(): respect functions which don't take args "by definition" 2018-02-13 12:46:06 +01:00
Alexander A. Klimov 8e9d385a18 Unify the look of fatal and non-fatal errors
refs #2216
2018-02-07 10:45:20 +01:00
Alexander A. Klimov cf4af5180a Pdf: correct DOMPDF directory
refs #3338
2018-02-05 17:56:42 +01:00
Alexander A. Klimov 276d4f7e67 IcingaException::getConfidentialTraceAsString(): don't fail on internal functions
refs #3318
2018-01-25 14:20:41 +01:00
Alexander A. Klimov dadd2c80f6 Don't call session_start() after ini_set()
refs #3185
2018-01-24 17:38:20 +01:00
Alexander A. Klimov 72ec132f25 Correct interfaces to conform to PHP 7.2+ 2018-01-24 11:50:10 +01:00
Alexander A. Klimov cf9307fcc4 Donut: conform to PHP 5.3 2018-01-24 11:07:37 +01:00
Alexander A. Klimov 7f5962dfae FilterQueryString: fix typo 2018-01-24 10:31:57 +01:00
Alexander A. Klimov 7ae6e537d1 TemporaryLocalFileStorage::__destruct(): handle symlinks as expected 2018-01-24 10:28:58 +01:00
Eric Lippmann 56d28a6c14 Prepare release version 2.5.1 2018-01-22 13:47:41 +01:00
Alexander A. Klimov ff6fbdf5f2 Censor arguments in stack traces
refs #2810
2018-01-22 10:28:47 +01:00
Alexander A. Klimov 7106de5aa2 DbUserGroupBackend: implement Inspectable
refs #3233
2018-01-19 16:31:24 +01:00
Alexander A. Klimov 7227e10824 LdapUserGroupBackend: implement Inspectable
refs #3233
2018-01-19 16:31:24 +01:00
Johannes Meyer e59fa13786 Announcements: Render HTML in announcment messages
refs #2641
2018-01-19 16:12:53 +01:00
Johannes Meyer 3b9d8697ed Introduce class Icinga\Web\Helper\HtmlPurifier
refs #2641
2018-01-19 16:12:53 +01:00
lippserd d25e7b84eb
Merge pull request #3291 from Icinga/bugfix/ini-parser-hides-file-location-3252
IniParser: include the file location in parsing exceptions
2018-01-19 13:22:28 +01:00
Alexander A. Klimov 5616e9d508 IniParser: include the file location in parsing exceptions
refs #3252
2018-01-19 09:47:15 +01:00
lippserd 00eeab5883
Merge pull request #3283 from Icinga/bugfix/icinga-repository-retrievegeneralizedtime-rfc4517-2816
Icinga\Repository::retrieveGeneralizedTime(): comply w/ RFC4517
2018-01-18 16:15:21 +01:00
Alexander A. Klimov 5ce491d57a Icinga\Repository::retrieveGeneralizedTime(): outsource logic
refs #2816
2018-01-18 15:25:21 +01:00
lippserd 226cc2c810
Merge pull request #3274 from Icinga/bugfix/inner-donut-labels-firefox-3226
Donut: place HTML tags outside <svg>
2018-01-18 10:15:49 +01:00
lippserd 362a5b1721
Merge pull request #3271 from Icinga/bugfix/fix-internalurlvalidator
InternalUrlValidator: prevent circumvention by URLs on the same VHost
2018-01-18 09:58:32 +01:00
Alexander A. Klimov fbffc42b96 Icinga\Repository::retrieveGeneralizedTime(): comply w/ RFC4517
refs #2816
2018-01-17 18:14:18 +01:00
Alexander A. Klimov 0ad153a223 Tactical overview: always show the problems amount
refs #3226
2018-01-17 15:01:02 +01:00
lippserd 0abff5f643
Merge pull request #3268 from Icinga/bugfix/bad-url-makes-dashboard-unusable-2804
Don't fail to render the whole dashboard in case of a broken dashlet
2018-01-17 14:20:40 +01:00
Alexander A. Klimov 5f441f3ad1 Don't fail to render the whole dashboard in case of a broken dashlet 2018-01-17 13:48:14 +01:00
lippserd c18038f166
Merge pull request #3261 from Icinga/bugfix/icingacli-no-setup-module-2705
Make icingacli working without the setup module
2018-01-17 11:58:50 +01:00
lippserd ddfafb27f6
Merge pull request #3256 from Icinga/bugfix/multi-domain-support-broken-3232
Make multi-domain authn working w/ upper-case domains in user names
2018-01-17 11:57:48 +01:00
Alexander A. Klimov 4f706d9423 Donut: place HTML tags outside <svg>
refs #3226
2018-01-16 17:58:35 +01:00
Alexander A. Klimov c2f74d49cb InternalUrlValidator: prevent circumvention by URLs on the same VHost 2018-01-16 15:40:08 +01:00
Johannes Meyer 9ea916c5c6 Repository: Fix that legacy sort rules are ignored
refs #2765
2018-01-16 12:59:42 +01:00
Johannes Meyer ce4ae47805 LdapConnection: Respect a query's offset not only for ordered results
refs #2765
2018-01-16 12:59:42 +01:00
Johannes Meyer 37f22518bb LdapConnection: Respect query limits also for paged queries
refs #2765
2018-01-16 12:59:42 +01:00
Alexander A. Klimov 2282e1aa4f LdapConnection: respect a query's limit as expected
refs #2765
2018-01-16 12:59:42 +01:00
Alexander A. Klimov 8cbd506459 Make icingacli working without the setup module
This enables users to install only the icingacli package

refs #2705
2018-01-16 12:21:42 +01:00
lippserd 705f3a49d9
Merge pull request #3180 from Icinga/feature/url-static-self
Url: prefer static over self
2018-01-16 10:52:25 +01:00
Alexander A. Klimov 8c7ccce4a7 Make multi-domain authn working w/ upper-case domains in user names
refs #3232
2018-01-16 10:36:22 +01:00
lippserd c1497cf1c5
Merge pull request #3143 from Icinga/bugfix/inactive-module-config-tabs-2977
Hide inactive modules' config tabs
2018-01-16 09:18:49 +01:00
Alexander A. Klimov 5cb7deda20 Merge branch 'bugfix/domain-aware-auth-non-domain-ldap-group-backend-3250'
fixes #3250
fixes #3251
2018-01-15 11:20:45 +01:00
Paolo Schiro c806099e1b Avoid including domain users in a group not belonging to a domain
Signed-off-by: Alexander A. Klimov <alexander.klimov@icinga.com>

refs #3250
2018-01-15 11:19:35 +01:00
Alexander A. Klimov a1709a0670 Fix unneccessary log message
refs #3189
2017-12-19 15:58:25 +01:00
Alexander A. Klimov a5e75554ad Don't require module.less
refs #3149
2017-12-15 11:58:54 +01:00
Alexander A. Klimov 02decd957a php-svg-lib: fix missing files 2017-12-15 11:31:40 +01:00
lippserd 89da30f05f
Merge pull request #3209 from Icinga/bugfix/warnings-for-php-7-1-3208
PhpSession: conform to PHP 7.1
2017-12-15 09:22:22 +01:00
Alexander A. Klimov 7e2761b277 php-svg-lib: fix interface compatibility 2017-12-14 15:12:35 +01:00
Alexander A. Klimov 4ce4ad1074 Upgrade php-svg-lib to v0.3 2017-12-14 15:12:35 +01:00
Alexander A. Klimov 788272fad7 PhpSession: conform to PHP 7.1
refs #3208
2017-12-13 13:38:51 +01:00
Alexander A. Klimov 9acc8ee7a9 Upgrade dompdf to v0.8.2
refs #3202
2017-12-13 11:19:45 +01:00
Alexander A. Klimov 810c02a41f Url: prefer static over self 2017-12-04 10:48:52 +01:00
Eric Lippmann e376b137c7 Prepare release version 2.5.0 2017-11-27 16:18:13 +01:00
lippserd 8f1f8d4471
Merge pull request #3100 from Icinga/feature/expandable-content
Implement persistent "Show more" spoilers
2017-11-27 14:44:15 +01:00
lippserd 0bcbdfe679
Merge pull request #3063 from ss23/migrate_to_bcrypt
Improve Password hashing and validation for DbUserBackend
2017-11-27 14:26:35 +01:00
Alexander A. Klimov 6409bdc074 Implement persistent "Show more" spoilers 2017-11-27 14:18:42 +01:00
Eric Lippmann fb124b37cf Fix float format of donut chart attributes 2017-11-27 13:33:58 +01:00
lippserd 5aa83ea0d9
Merge pull request #3114 from Icinga/feature/support-phar-3113
Modules, Bootstrap: play nice with PHARs
2017-11-27 09:15:34 +01:00
Alexander A. Klimov 6cdad7c5c1 Hide inactive modules' config tabs
refs #2977
2017-11-24 13:40:03 +01:00
Jennifer Mourek d34ea588b1 Tactical overview: Add donut graphs 2017-11-21 23:38:04 +01:00
Eric Lippmann 8ffa110901 Web: Add icons and descriptions for second level menu items 2017-11-21 22:55:45 +01:00
Eric Lippmann b6b87796ed Menu: Link to the navigation dashboard if menu entry has children but no URL 2017-11-21 22:55:45 +01:00
Eric Lippmann e7ca817e81 Make Navigation::findItem() public
We need this method public for the navigation dashbaord.
2017-11-21 22:55:45 +01:00
Eric Lippmann 21dbe4ec47 Only render icons of root navigation items
The upcoming navigation dashboard creates its links from the menu items in configuration.php.
Now, we encourage users to specify icons for second-level menu items but do not want render them in our menu.
2017-11-21 22:55:45 +01:00
Eric Lippmann 3660606ca1 Allow to set a description for navigation items
We will introduce a navigation dashboard for root menu items which do not a have a URL but children.
2017-11-21 22:55:45 +01:00
lippserd a840a6d1f1
Merge pull request #3112 from Icinga/fix/filter-hints-for-ide-3111
Filter: new abstract methode and better IDE hints
2017-11-21 16:50:45 +01:00
lippserd df1e7683c8
Merge pull request #3041 from Icinga/feature/auto-detaching-dom-elements-3039
Implement auto-detaching DOM elements
2017-11-21 16:48:59 +01:00
Markus Frosch 2493cb8d63 Fix incorrect uses of translation around sprintf 2017-11-21 15:47:46 +01:00
Thomas Gelf 6e382093f4 Modules, Bootstrap: play nice with PHARs
fixes #3113
2017-11-21 14:15:41 +01:00
Alexander A. Klimov c7ffb41b02 Implement togglable flyover
refs #3024
2017-11-21 14:05:12 +01:00
Alexander A. Klimov b000c1ae4a Implement auto-detaching DOM elements
refs #3039
2017-11-21 13:17:55 +01:00
Thomas Gelf ccd31f6438 Filter: new abstract methode and better IDE hints
fixes #3111
2017-11-21 12:29:02 +01:00
Alexander A. Klimov 71fe12393d Persist X-Icinga-WindowId across auto-refreshes 2017-11-21 11:30:36 +01:00
Markus Frosch 1aae1eab23 DBUserBackend: Replace internal crypt handling with PasswordHelper
refs #2954
2017-11-21 08:26:24 +01:00
Markus Frosch f57277aa96 Introduce PasswordHelper for safer passwords
refs #2954
2017-11-21 08:26:24 +01:00
lippserd 17718d4863
Merge pull request #3090 from Icinga/feature/configure-the-default-limit-13010
Add user preference for default number of items per page
2017-11-16 20:37:47 +01:00
Alexander A. Klimov cea52a1b4b Implement ApplicationBootstrap::getStorageDir()
refs #2582
2017-11-16 20:26:49 +01:00
lippserd 3d50729847
Merge pull request #3091 from Icinga/fix/disable-stacktraces
Fix that disabled stack straces via user prefs had no effect
2017-11-16 20:23:18 +01:00
Eric Lippmann f495b390da Apply role to all users if the role is defined with users=*
If the users directive contains at least one single asterisk, the role is applied to all users.
So, this supports roles which define users=username, ..., * and users=*

refs #3095
2017-11-16 12:02:41 +01:00
Eric Lippmann af64ca8fc8 Fix that disabled stack straces via user prefs had no effect
Web::setupFrontController() took the user object into account when checking for disabled stacktraces.
But we changed our bootstrap order some time ago so we did not have a user in this method anymore.
Now, Web::setupUser() checks for disabled stacktaces in the user prefs instead.

refs #2595
2017-11-15 17:22:54 +01:00
Alexander A. Klimov bdcb6389d8 Add user preference for default number of items per page
refs #2859

Signed-off-by: Eric Lippmann <eric.lippmann@icinga.com>
2017-11-15 16:56:43 +01:00
Eric Lippmann 73a6750489 Make phpcs and PhpStorm happy w/ intentional switch, case fall-throughs
Unfortunately, PhpStorm does not regonise PSR2 fall-through comments.
On the other hand, phpcs does not support the @noinspection phpdoc comment (/**).
The fix is a mix of PSR2 comments and @noinspection tags in code comments.
2017-11-08 10:25:28 +01:00
Markus Frosch c3ef50978a style: Fix minor styleguide issues for PHPCS 2017-11-08 10:06:45 +01:00
Alexander A. Klimov cbfbb3a162 Handle enabled, but deleted modules properly
refs #2811
2017-11-08 09:48:58 +01:00
Eric Lippmann 1f5f610b04 Add newlines to AnnouncementIniRepository.php 2017-11-07 14:48:46 +01:00
Eric Lippmann 5ec14bdb9d Remove inheritdoc tags in AnnouncementIniRepository.php 2017-11-07 12:50:30 +01:00
lippserd 94922ade25
Merge pull request #3061 from ss23/crypt_fix
Modify authentication function to support alternative algorithms
2017-11-06 11:06:06 +01:00
ss23 c196a7c7c4 Modify authentication function to support alternative algorithms
The existing usage of crypt() was borderline incorrect. This simplified
function will allow hashes of other types (e.g. bcrypt) and thus
mitigate #2954 (use password_hash) until this can be implemented.

The getSalt protected method was also removed as this is no longer
required, though this can be added again in future.
2017-11-06 22:48:42 +13:00
Alexander A. Klimov 2cced5fe13 Implement local file storage 2017-11-06 10:33:54 +01:00
Alexander A. Klimov ee7fa2c48c Merge branch 'bugfix/wizard-ldap-connection-settings-discovery-failure-reasons-are-silented-2865'
fixes #2865
2017-10-26 11:14:51 +02:00
Alexander A. Klimov d13856eb39 Wizard: show LDAP connection settings discovery failure reasons
refs #2865
2017-10-26 10:25:37 +02:00
Johannes Meyer 2e1bac81ff Form: Create the form as part of method `setDefaults'
We don't care anymore about the BC in Zend version 1.12.7.
Hence we'll happily override setDefaults now. Yay!

refs #2998
2017-10-23 15:10:50 +02:00
Johannes Meyer d348d95e5e Revert "Form: Don't prevent disabled elements from getting overwritten.."
This reverts commit eb343009bb.

refs #2998
2017-10-23 15:10:37 +02:00
Markus Frosch f65759ace8 LdapUserGroupBackend: Base ambiguity decision based on isDN
Problem was: When a DN did not contain the same base DN, the check failed

This happens when you have an entry referencing a DN of another domain.
(And this value is tested as a sample)
2017-10-20 15:17:11 +02:00
Markus Frosch 28b1a00d4a LdapUtils: Add isDN function 2017-10-20 15:17:11 +02:00
Alexander A. Klimov c22efa4519 UrlValidator: translate error message 2017-10-20 14:27:33 +02:00
Markus Frosch 414ba16d8a Util/Json: Make encode compatible to PHP < 5.5 2017-10-06 12:42:34 +02:00
Alexander Aleksandrovič Klimov 2510155206 Suggest LDAP backend type based on the discovery (if any) (#2993)
fixes #2991
2017-10-06 11:23:07 +02:00
Alexander A. Klimov f70fc6e98d Fix not working SomeType[string] in code docs
refs #2980
2017-09-29 12:08:14 +02:00
Michael Friedrich ab364e0fc7 Remove unsupported livestatus functionality
Signed-off-by: Eric Lippmann <eric.lippmann@icinga.com>
2017-09-29 10:33:55 +02:00
Eric Lippmann 3790fd0819 Bump version to 2.4.2
(cherry picked from commit 13e86b6320)
Signed-off-by: Eric Lippmann <eric.lippmann@icinga.com>
2017-09-28 14:24:00 +02:00
Eric Lippmann d5de7e9868 Fix that updating INI repositories is impossible 2017-09-28 14:16:13 +02:00
lippserd e276dfc517 Merge pull request #2951 from Icinga/bugfix/monitored-object-detailview-extension-style-2949
Style monitored objects' detailview extensions as expected
2017-09-22 09:21:31 +02:00
Alexander A. Klimov c2ee3bef06 DetailviewExtensionHook: provide the concrete implementation's module
refs #2949
2017-09-20 14:49:08 +02:00
Uwe Ebel 39838f1606 Add database resource type IBM for DB2
It uses the pdo_ibm driver and Zend Adapter Zend_Db_Adapter_Pdo_Ibm.

Signed-off-by: Markus Frosch <markus.frosch@icinga.com>
2017-09-19 14:32:09 +02:00
lippserd 46014558e6 Merge pull request #2946 from Icinga/bugfix/enhance-code-autocompletion-in-ides-2945
Enhance code autocompletion in IDEs
2017-09-08 15:45:25 +02:00
lippserd 0e5313d4d1 Merge pull request #2740 from Icinga/feature/emit-log-messages-in-the-webserver-s-log-11652
Emit log messages to the web server log
2017-09-08 15:43:31 +02:00
Alexander A. Klimov b2ab99fd71 Add log writer PhpWriter
refs #11652
2017-09-08 15:39:31 +02:00
lippserd ade0744701 Merge pull request #2923 from Icinga/bugfix/is-not-a-valid-number
Form/Element/Number: The field should be valid when empty
2017-09-08 15:32:48 +02:00
Johannes Meyer 3190b7dea3 Revert "Web: Allow to configure whether we'll consider Accept-Language or not"
This reverts commit 87505aff7c.
2017-09-08 12:56:09 +02:00
Johannes Meyer 87505aff7c Web: Allow to configure whether we'll consider Accept-Language or not 2017-09-08 11:55:15 +02:00
Alexander A. Klimov 356e194612 Enhance code autocompletion in IDEs
refs #2945
2017-09-07 11:22:46 +02:00
Johannes Meyer beb3326631 StyleSheet/JavaScript: Also include Cache-Control when answering with a 304
Without Cache-Control, the browser may invalidate its cached file and we're
serving the file again on the next request.

refs #2917
2017-08-22 09:33:28 +02:00
Johannes Meyer 6702ccb2a7 FileCache: Ignore compression suffix when checking cache made of multiple files
refs #2917
2017-08-22 09:31:56 +02:00
Johannes Meyer 7b7bfb5a5d FileCache: Use the correct variable when checking a file's modification time
refs #2917
2017-08-22 08:38:13 +02:00
Markus Frosch 1d06d4e3c4 Form/Element/Number: The field should be valid when empty 2017-08-17 13:20:51 +02:00
Markus Frosch 7da7c0f6c7 Config: Fix cached loading of module config
Since the module copied the array to a local variable, the loaded
Config object never got saved to self::$modules
2017-08-11 08:35:34 +02:00
Johannes Meyer 22feb4b3fd User: Allow to unset an email and return $this in all setters
$email is optional in the constructor and so should be when
calling its setter.
2017-07-31 15:21:54 +02:00
Eric Lippmann ab7fa9f925 Add domain part to user groups if the user group backend is reponsible for a domain 2017-07-31 09:03:40 +02:00
lippserd d1debea048 Merge pull request #2856 from Icinga/bugfix/wrong-help-text-in-the-icingacli-2801
Correct CLI help text for modules
2017-07-28 09:19:32 +02:00
Johannes Meyer eb343009bb Form: Don't prevent disabled elements from getting overwritten..
..if someone just utilizes populate() programatically.

refs #2509
2017-07-13 13:53:48 +02:00
Johannes Meyer ed5ba14df2 Form: Register form notifications as custom error messages for API requests
I'd have liked to fix how we transmit validation messages in such cases,
but for compatibilty reasons this has to suffice..
2017-07-13 13:00:24 +02:00
Johannes Meyer 96c96df636 Form: Don't transmit duplicate error messages
Zend_Form::getMessages() already returns custom error messages,
if there are any
2017-07-13 12:59:23 +02:00
Johannes Meyer b93dc06f5b ActionController: Let the repsonse itself set its headers
The only header that is now set by the ActionController is X-Icinga-Title,
all others are delegated to Icinga\Web\Response.
2017-07-13 12:56:03 +02:00
Johannes Meyer 0d52bb421f ActionController: Don't re-enable the layout when just setting XHR layout
In case someone doesn't want the layout, we should not force it, especially
not for XHR requests.
2017-07-12 16:54:52 +02:00
Johannes Meyer 73f254ff32 BaseHttpException: Don't return null in method getHeaders() 2017-07-12 16:54:52 +02:00
Eric Lippmann f25420f458 DbConnection: Fix "Driver does not support setting attributes" for the pdolib extension
fixes #2545
2017-07-11 17:20:25 +02:00
Eric Lippmann a9e6814785 Revert "DbConnection: Fix "Driver does not support setting attributes" for the pdolib extension"
This reverts commit 3e743a8799.

Referenced the wrong issue number.
2017-07-11 17:19:16 +02:00
Eric Lippmann 3e743a8799 DbConnection: Fix "Driver does not support setting attributes" for the pdolib extension
fixes #12640
2017-07-11 17:17:48 +02:00
Eric Lippmann f02d631aa1 DbConnection: Respect port settings for all database types and provide defaults 2017-07-11 17:11:44 +02:00
Eric Lippmann b13c38b65b Auth/Groups: Prefer the domain from the LDAP/MSAD user backend
If a LDAP/MSAD user group backend is linked w/ a user backend, the domain from the user backend is preferred over the domain configured for the user group backend.
2017-07-11 17:09:24 +02:00
Eric Lippmann 4b11afe7d5 Remove unused method LdapUserBackend::setConfig() 2017-07-11 17:08:16 +02:00
Eric Lippmann bd23d008ca Auth: Make sure to set the configured domain on LDAP/MSAD user backends 2017-07-11 17:02:32 +02:00
Eric Lippmann cbde758fc6 Remove unused domain-aware auth related functions from UserBackend
These functions made it into the master branch accidentally.
2017-07-11 17:01:06 +02:00
Eric Lippmann d05a262819 Auth: Protect User::setDomain() from empty strings 2017-07-11 16:56:35 +02:00
Johannes Meyer b397b01966 DbRepository: Avoid to overwrite foreign keys in $aliasTableMap and $aliasColumnMap 2017-07-06 14:10:15 +02:00
Johannes Meyer 375920f761 Use a more sophisticated inheritance and interface structure for HTTP exceptions (#2881)
HttpExceptionInterface now identifies HTTP exceptions, BaseHttpExceptions supersedes
HttpException as new superclass for other more concrete Exceptions and HttpException
is now a generic class to create new HTTP exceptions on the fly.

resolves #2880
2017-07-05 06:26:58 +02:00
Eric Lippmann c0d82fa2cc Rephrase autosumbit tooltips
fixes #1507
2017-07-04 13:59:02 +02:00
Eric Lippmann 53091384cd Remove unused attributes from the date time picker element 2017-07-04 10:32:30 +02:00
Eric Lippmann a5990d4de8 Add date and time form elements 2017-07-03 15:03:26 +02:00
Johannes Meyer f6166b3ab6 ActionController: Allow to control which inline view script to use
This also affects that rerendering the layout does only have any effect
in case of XHR requests and is not overwritten anymore in this case.
Since this property was previously private, this should not break anything.
2017-06-28 11:14:01 +02:00
Johannes Meyer 22223acf1d Controllers: Make all private properties protected
Controllers are neither library stuff nor any vital part that need to be
protected from too adventurous module developers.
2017-06-28 09:51:28 +02:00
Eric Lippmann c554ebb473 Merge pull request #74 from Icinga/feature/travis 2017-06-23 14:45:38 +02:00
Eric Lippmann 686d022987 Merge pull request #2863 from Icinga/feature/domain-support-for-authn-authz-2153 2017-06-21 13:16:36 +02:00
Alexander A. Klimov 9237c3e27d Wizard: make AD discovery working again
refs #2153
2017-06-20 14:46:44 +02:00
Johannes Meyer 46647444c4 Repository: Fix broken conversion rules
The additional layers in $aliasTableMap and $aliasColumnMap required
for DbRepository's join probabilities are now only established there.
2017-06-20 08:32:44 +02:00
Johannes Meyer 8ee6e763a6 ActionController: Ensure to utilize the response to redirect and exit 2017-06-19 09:11:12 +02:00
Markus Frosch b86789ecc5 Util/Json: Support PHP 5.3 2017-06-13 11:07:16 +02:00
Eric Lippmann 53eae8d93e Add limit parameter to StringHelper::trimSplit()
refs #2153
2017-06-12 13:31:07 +02:00
Eric Lippmann cfbd5c500e Make LDAP user group backends domain-aware
refs #2153
2017-06-12 13:31:07 +02:00
Eric Lippmann 0cbec01743 Make auth via LDAP user backends domain-aware
refs #2153
2017-06-12 13:31:07 +02:00
Eric Lippmann 05288e9bea Add interface for user backends which are responsible for a specific domain
refs #2153
2017-06-12 13:31:07 +02:00
Eric Lippmann 8fbde51b5f Throw an exception in User::getDomain() if the user does not have a domain
refs #2153
2017-06-12 13:31:07 +02:00
Eric Lippmann 41acffdc24 Login: set the default domain if necessary
refs #2153
2017-06-12 13:31:07 +02:00
Alexander A. Klimov 8359771271 LdapCapabilities: discover NetBIOS name of an AD
refs #2153
2017-06-12 13:31:07 +02:00
Alexander A. Klimov 2b9e9bf2b3 User: split the username into localpart and domain (if given) 2017-06-12 13:31:07 +02:00
Johannes Meyer df04c0f837 ActionController: Introduce constant DEFAULT_TITLE
Controllers are now allowed to fully customize the page title.
2017-06-09 11:13:37 +02:00
Alexander A. Klimov 0b8e4d4b5c LDAP user backend form: discover and store the LDAP server's domains
refs #2153
2017-06-07 10:19:52 +02:00
Johannes Meyer 91b0e98171 DbRepository: Allow to pass parameter $types to methods insert() and update()
DbConnection does already support this but it got somehow forgotten in this
class.
2017-06-06 09:48:40 +02:00
Johannes Meyer 29f9ff5ce0 DbRepository: Fix that virtual tables are not resolved when issuing statements 2017-06-06 09:33:06 +02:00
Johannes Meyer b8ae738f7f DbRepository: Add support for join probabilities
Finally solves the issue with those nasty column prefixes..
2017-06-06 09:29:05 +02:00
Johannes Meyer 7482a34b45 Repository: Check prefixed aliases earlier when inspecting $aliasTableMap
Avoids false-positives in case an exact match using $columnTableMap is
possible, though $aliasTableMap holds a prefixed entry.
2017-06-06 09:24:56 +02:00
Johannes Meyer fdb31e8d1c DbConnection: Support raw sql expressions in methods insert() and update() 2017-06-06 09:07:52 +02:00
Eric Lippmann 50971ea8e2 Merge pull request #2725 from Icinga/bugfix/browser-timezone-detection-2716
TimezoneDetect: support also negative timezone offsets
2017-06-02 09:32:59 +02:00
Alexander A. Klimov b79c140c43 Correct CLI help text for modules
refs #2801
2017-05-30 17:55:52 +02:00
Johannes Meyer b2d86df660 DbRepository: Fix that virtual tables are not resolved for statement columns 2017-05-30 13:57:58 +02:00
Johannes Meyer 8a890a4a82 ActionController: Allow controllers to customize the login route 2017-05-19 08:39:11 +02:00
Eric Lippmann 68842f00d8 Fix version 2017-05-03 15:12:07 +02:00
Eric Lippmann a028209cbc Merge pull request #2775 from Icinga/feature/iniparser-read-config-files-2766
Use parse_ini_string() where IniParser::parseIni() is not needed
2017-03-28 09:23:53 +02:00
Eric Lippmann 7f42efa1c0 Merge pull request #2778 from Icinga/bugfix/adding-empty-user-backend-fails-2598
DbUserBackend: don't fail at validation if there aren't any active users
2017-03-28 09:14:55 +02:00
Johannes Meyer 73e24302c0 Make running unittests with the icingacli work in package installations
fixes #2787
2017-03-09 11:36:35 +01:00
Alexander A. Klimov f323310174 DbUserBackend: don't fail at validation if there aren't any active users
refs #2598
2017-02-24 15:29:05 +01:00
Alexander A. Klimov 56d71c5cb6 Use parse_ini_string() where IniParser::parseIni() is not needed
refs #2766
2017-02-23 15:45:57 +01:00
Noah Hilverling b0221c5e13 Form: Preserve default if element has attribute 'disabled'
fixes #2509
2017-02-14 10:18:56 +01:00
Eric Lippmann d2341369a9 Merge pull request #2730 from Icinga/bugfix/invalid-icinga-2-api-response-2728
Handle invalid Icinga 2 API response types
2017-02-13 14:44:51 +01:00
Alexander A. Klimov 1e58e15ac7 Test TimezoneDetect
refs #2716
2017-02-10 15:42:02 +01:00
Alexander A. Klimov 96ef0dccf8 Make JSON error handling logic reusable
refs #2728
2017-02-09 19:50:04 +01:00
Alexander A. Klimov 96f0a8c24e FilterEditor: escape values correctly
refs #12330
2017-02-09 17:50:49 +01:00
Alexander A. Klimov e5f462c2fa TimezoneDetect: support also negative timezone offsets
refs #2716
2017-02-08 16:51:19 +01:00
Johannes Meyer 8d3e8b829f LdapConnection: Properly handle multiple hosts if encryption is involved
refs #2645
2017-02-02 13:29:34 +01:00
Johannes Meyer 181e2ef05c Swag: Fix swag (aka a whole bunch of code style issues..) 2017-01-27 14:48:59 +01:00
Eric Lippmann 1da67cfbc0 Merge pull request #2689 from Icinga/fix-icinga-com-2687
Update to icinga.com
2017-01-18 13:25:39 +01:00
Michael Friedrich 08a82daea3 Update to icinga.com
refs #2687
2017-01-18 12:04:43 +01:00
Eric Lippmann 01daa38eae Fix module permissions for hooks
refs #2686
2017-01-17 14:56:13 +01:00
Eric Lippmann 326574ba54 Fix deprecation notes for Module::registerHook() 2017-01-17 12:30:14 +01:00
Thomas Gelf 361bfc5081 Hook: allow all on CLI
fixes #13691
2016-12-19 21:14:32 +01:00
Johannes Meyer 0716f87852 Update german translation 2016-12-13 13:57:27 +01:00
Eric Lippmann 752891ef80 Fix executeable files 2016-12-13 13:49:21 +01:00
Eric Lippmann ff71a395d2 Update version to 2.4.0 2016-12-13 12:34:12 +01:00
Eric Lippmann a78ac6dfab Hide announcements when they have expired
refs #11198
2016-12-13 11:04:56 +01:00
Alexander A. Klimov bb920c37d4 Merge branch 'master' into feature/add-ssl-support-to-mysql-database-resources-11115
refs #11115
2016-12-09 14:12:49 +01:00
Eric Lippmann bcc5b8c1a7 Merge branch 'feature/support-nested-ad-groups-for-roles-12598'
resolves #12598
2016-12-09 10:15:43 +01:00
Alexander A. Klimov e10384770d DbResourceForm: make the encryption selection a checkbox
refs #11115
2016-12-08 17:52:07 +01:00
Eric Lippmann 18ea3286d7 Merge branch 'feature/icingaweb2-vendor-zf1-13461'
resolves #13461
2016-12-08 17:16:01 +01:00
Eric Lippmann 626afbd5ec Merge branch 'bugfix/always-use-the-jquery-find-method-w/-node-context-10704'
fixes #10704
2016-12-08 17:15:02 +01:00
Alexander A. Klimov 0bafc944d3 Conform to code style guidelines
refs #11115
2016-12-08 17:09:00 +01:00
Eric Lippmann 0e69ce4544 Remove obsolete class dropdown from the close-container-control 2016-12-08 16:55:33 +01:00
Alexander A. Klimov dce6b4eb08 Merge branch 'master' into feature/add-ssl-support-to-mysql-database-resources-11115 2016-12-08 16:50:41 +01:00
Eric Lippmann fed0fc9608 Merge branch 'feature/fold-and-unfold-filter-by-click-12634'
resolves #12634
2016-12-08 14:30:55 +01:00
Eric Lippmann a4513ba5cf Replace Zend w/ icingaweb2-vendor-zf1
refs #13461
2016-12-08 14:20:36 +01:00
Eric Lippmann 5661dfa63c Harden import of vendor JavaSript libs
fixes #12328
2016-12-08 10:40:22 +01:00
Eric Lippmann b3bc1b6f81 Let the SummaryNavigationItemRenderer show the worst state
fixes #11185
2016-12-08 10:40:22 +01:00
Alexander A. Klimov 8c2b6ae665 Conform to coding guidelines
refs #12634
2016-12-07 18:33:26 +01:00
Alexander A. Klimov 69c8ed471b FilterEditor: add possibility to fold and unfold filter by click
refs #12634

Signed-off-by: Alexander A. Klimov <alexander.klimov@icinga.com>
2016-12-07 18:26:45 +01:00
Alexander A. Klimov 648f088564 Conform to coding guidelines
refs #12598
2016-12-07 17:45:50 +01:00
Rune Darrud 59f1a70d5e Add support for nested AD groups resolved from the user
This will make sure that nested groups also work with roles.

Signed-off-by: Alexander A. Klimov <alexander.klimov@icinga.com>

refs #12598
2016-12-07 17:15:59 +01:00
Eric Lippmann 4eb61c2bcf Revert breaking change in Auth::isAuthenticated()
refs #12580
fixes #13281
2016-12-06 12:41:22 +01:00
Alexander A. Klimov 4205eb4cc9 nl2br helper: convert also raw newlines 2016-12-05 13:33:11 +01:00
Eric Lippmann e549c44247 Don't show exception when no announcement has been created
refs #11198
2016-11-29 16:32:30 +01:00
Eric Lippmann 39c7451664 Implement announcements
refs #11198
2016-11-29 15:24:34 +01:00
Eric Lippmann a9461ada54 Only render a menu item when it's not empty
A menu item is not empty when it either has children or a defined URL.
2016-11-28 14:56:17 +01:00
Johannes Meyer 78be71bc92 Merge branch 'bugfix/evaluate-redirect_remote_user-12164'
fixes #12164
2016-11-21 08:53:35 +01:00
Eric Lippmann 3d6e804ff3 Merge branch 'feature/include-check-if-chosen-locale-is-available-11820'
resolves #11820
2016-11-17 11:23:49 +01:00
Eric Lippmann 95cbb61987 Add parameter markAsError to Form::warning() and Form::error()
refs #11820
2016-11-17 11:21:58 +01:00
Eric Lippmann 4891afd646 Add paramater type to ResourceFactory::getResourceConfigs()
This allows to filter resources by type.
2016-11-17 10:14:45 +01:00
Eric Lippmann 39a5b3f64a Refuse to enable modules prefixed w/ icingaweb2-module-
fixes #10870
2016-11-16 16:21:35 +01:00
Eric Lippmann 1cdef234a1 Revert "Module: Drop deprecated method registerHook and arg $key of method provideHook"
This reverts commit f1a1f41192.

It makes absolutely sense to remove depcreated code, but this removal introduces too many problems while not being really necessary.
Some of our modules and modules written by others still rely on the deprecated code. A upgrade of Icinga Web 2 would break many running systems out there.
Before removing this code we should upgrade our modules and notify the authors of other modules about the deprecation.
Further, we should maintain something like a deprecation info file because nobody reads @deprecated tags.
All of the above will not protect us from systems where modules aren't up to date. We also have to implement a mechanism where it is still possible to disable faulty modules.
2016-11-16 16:17:42 +01:00
Eric Lippmann f7e5cd3b71 Check the correct return type in case preg_replace fails in ExternalBackend.php 2016-11-16 14:10:31 +01:00
Johannes Meyer 3a816ce0f7 ExternalBackend: Don't throw an error if it's not possible to clean usernames 2016-11-16 12:04:46 +01:00
Johannes Meyer 0bd00ba3d0 ExternalBackend: Simplify how remote users are identified
refs #12164
2016-11-16 11:55:54 +01:00
Johannes Meyer e75bfbc197 Response: Add ;charset=UTF-8 to the default content type
resolves #13117
2016-11-15 13:30:16 +01:00
Johannes Meyer 7d98025d7d Merge branch 'bugfix/hooks-don-t-respect-module-permissions-12396'
fixes #12396
2016-11-14 09:46:08 +01:00
Johannes Meyer f1a1f41192 Module: Drop deprecated method registerHook and arg $key of method provideHook 2016-11-11 16:15:59 +01:00
Johannes Meyer 5bce7dc9b8 Hook: Check a user's module permission before providing it's hook instances
refs #12396
2016-11-11 16:15:16 +01:00
Alexander A. Klimov 1cd2cfbdc9 Revert "Make hooks respect module permissions"
This reverts commit 4d2e6d2d87.
2016-11-11 11:14:23 +01:00
Johannes Meyer f7a8524dce DbUserGroupBackend: Group by group.id when joining group memberships
Prevents duplicate results in case a group has multiple members.
2016-11-11 09:19:59 +01:00
Johannes Meyer 3a619eb8c7 DbConnection: Don't ignore asterisks when rendering filters
refs #11885
2016-11-11 09:18:53 +01:00
Johannes Meyer 634a69aec9 DbConnection: Explicitly check for NULL when rendering unequal filters
resolves #12852
2016-11-11 09:17:58 +01:00
Eric Lippmann 403e8d6912 Update HTMLPurifier to version 4.8.0 and let the Web 2 rpm depend on it 2016-11-10 16:04:49 +01:00
Eric Lippmann c1d7d7005b Update dompdf to version 0.7.0 and let the Web 2 rpm depend on it 2016-11-10 14:59:18 +01:00
Johannes Meyer 0152a5941d DbQuery: Fix wrong operator precedence when rendering unequal filters
fixes #13107
refs #12852
2016-11-10 13:10:31 +01:00
Alexander A. Klimov 14363e52f4 Revert "Merge branch 'feature/emit-log-messages-in-the-webserver-s-log-11652'"
This reverts commit f27e8c059d.

refs #11652
2016-11-09 11:48:17 +01:00
Johannes Meyer 0ef81a2e0b Response: Use a constant for the default content type
There is already setHeader() to adjust this dynamically.

refs #12161
2016-11-09 11:38:04 +01:00
Eric Lippmann 2b060d9bd4 Challenge API requests only if the controller requires auth
fixes #12580
2016-11-07 10:40:38 +01:00
Alexander A. Klimov d9330486e9 Replace ExternalBackend::getRemoteUserEnvvars() with an attribute
refs #12164
2016-11-04 17:27:36 +01:00
Alexander A. Klimov f27e8c059d Merge branch 'feature/emit-log-messages-in-the-webserver-s-log-11652'
resolves #11652
2016-11-04 17:15:06 +01:00
Alexander A. Klimov 1fd0896a7d Merge branch 'feature/inirepository-should-support-multiple-tables-13034'
resolves #13034
2016-11-04 10:37:44 +01:00
Johannes Meyer ad79e67550 IniRepository: Reduce complexity of method getDataSource
refs #13034
2016-11-04 10:17:37 +01:00
Johannes Meyer c44e164de9 IniRepository: Introduce method createConfig
refs #13034
2016-11-04 10:16:45 +01:00
Johannes Meyer a0db5bea87 IniRepository: Don't call getDataSource over and over again
refs #13034
2016-11-04 10:15:56 +01:00
Johannes Meyer 3c5fe76cc0 IniRepository: Directly pass the key column to method extractSectionName
refs #13034
2016-11-04 10:04:42 +01:00
Johannes Meyer ac3e182f0d IniRepository: Make key column validation in the constructor more readable
refs #13034
2016-11-04 09:59:37 +01:00
Johannes Meyer ca689bc944 IniRepository: Improve documentation of attribute $configs
refs #13034
2016-11-04 09:57:56 +01:00
Johannes Meyer df47026792 Repository: Fix documentation of method getDataSource
refs #13034
2016-11-04 09:56:53 +01:00
Alexander A. Klimov 1f74cee21b Merge branch 'bugfix/hosts-without-services-are-hidden-from-restricted-roles-12852'
fixes #12852
fixes #10537
2016-11-03 19:27:30 +01:00
Alexander A. Klimov bd7851d15c IniRepository: improve initialization of per-table datasources
refs #13034
2016-11-03 18:05:05 +01:00
Alexander A. Klimov 38602379be Repository: allow not to provide a datasource for all tables
refs #13034
2016-11-03 16:12:09 +01:00
Alexander A. Klimov e5b24eb467 IniRepository: fix doc and method order
refs #13034
2016-11-03 16:00:20 +01:00
Alexander A. Klimov fb3f3ed788 IniRepository: add support for per-table datasources
refs #13034
2016-11-03 15:06:37 +01:00
Alexander A. Klimov e655699917 Repository: add support for per-table datasources
refs #13034
2016-11-03 14:35:18 +01:00
Alexander A. Klimov a85d259b0a PhpWriter: replace newlines in the message only if PHP logs to Syslog
refs #11652
2016-11-03 14:06:02 +01:00
Alexander A. Klimov 8952434393 PhpWriter: prefix messages with the app name as in Syslog
refs #11652
2016-11-03 12:35:40 +01:00
Alexander A. Klimov a24999ff7f PhpWriter: throw an exception on logging failure
refs #11652
2016-11-03 12:16:48 +01:00
Alexander A. Klimov ca8e4ea924 Conform to code style guidelines
refs #11652
2016-11-03 12:01:03 +01:00
Johannes Meyer 4a791e6204 IniRepository: Don't fail if there is no trigger to be found 2016-11-02 13:25:37 +01:00
Johannes Meyer 82c7a51050 IniRepository: Don't require a key column before the onInsert trigger
fixes #13005
2016-10-31 08:37:15 +01:00
Johannes Meyer d207dcbd03 Url: Throw ProgrammingError when trying to use Url::from* on the CLI
refs #7051
2016-10-28 11:47:45 +02:00
Johannes Meyer 957ad9361f IniRepository: Add support for triggers 2016-10-27 15:11:21 +02:00
Johannes Meyer f644860529 IniRepository: Fix that method update and delete fail without filter 2016-10-27 15:09:00 +02:00
Alexander A. Klimov 5212b6bab9 IniRepository: don't persist the key column as regular column 2016-10-26 10:27:30 +02:00
Alexander A. Klimov 418a428f1e Merge branch 'feature/allow-to-configure-the-syslog-facility-11214'
resolves #11214
2016-10-24 11:58:21 +02:00
Alexander A. Klimov 00af3d61b7 LoggingConfigForm: provide less Syslog facilities
refs #11214
2016-10-24 10:43:27 +02:00
Alexander A. Klimov 52e6293b96 Allow to configure the Syslog facility
refs #11214
2016-10-21 17:09:22 +02:00
Alexander A. Klimov 4d2e6d2d87 Make hooks respect module permissions
refs #12396
2016-10-20 18:28:19 +02:00
Alexander A. Klimov 7d94c1fddb DbQuery: handle strange NULL comparision results
refs #12852
2016-10-20 15:40:33 +02:00
Noah Hilverling e4324605bc Merge branch 'bugfix/username-and-password-not-being-passed-in-navigation-item-urls-12133'
fixes #12133
2016-10-20 09:30:54 +02:00
Alexander A. Klimov a387f0524f Add log writer PhpWriter
refs #11652
2016-10-19 15:29:51 +02:00
Noah Hilverling 1ff3149636 Url: Add basePath to urlString if url is external or has a username
refs #12133
2016-10-19 09:41:03 +02:00
Noah Hilverling 2fd1a957a8 Url: Add basePath to baseUrl in method getBaseUrl
refs #12133
2016-10-19 09:40:08 +02:00
Noah Hilverling 13827c79e4 Url: Improve documentation of method setHost
refs #12133
2016-10-19 09:35:40 +02:00
Alexander A. Klimov 00880710ed Navigation::fromArray(): pass $name only as string to addItem()
fixes #12923
2016-10-18 18:06:51 +02:00
Noah Hilverling 3b6b0b8d4b Url: Build full urlString instead of path if username is set
refs #12133
2016-10-18 16:19:24 +02:00
Noah Hilverling a952a400ca Url: Add username and password to method getBaseUrl
refs #12133
2016-10-18 16:16:13 +02:00
Noah Hilverling 9fcc39e0ba Url: Add use of method setBasePath in method setBaseUrl
refs #12133
2016-10-18 16:15:14 +02:00
Noah Hilverling 08719b0522 Url: Do not try to set attributes in method fromPath if not needed
refs #12133
2016-10-18 16:13:37 +02:00
Noah Hilverling b4aca4737b Url: Cut of "/" and spaces at the end of basePath in setBasePath
refs #12133
2016-10-18 16:08:34 +02:00