Commit Graph

558 Commits

Author SHA1 Message Date
Alexander A. Klimov 1e0219f697 Revert "IIS: use 'config' folder within icingaweb root on windows"
This reverts commit 4607a85cf5.
2015-06-12 10:38:11 +02:00
Paul Richards 4607a85cf5 IIS: use 'config' folder within icingaweb root on windows
fixes #8916
2015-06-11 18:10:37 +02:00
Alexander A. Klimov 1bd18c5adb Merge branch 'feature/Show-Icinga-Web-2-s-version-in-the-frontend-9247'
resolves #9247
2015-06-08 12:40:14 +02:00
Alexander A. Klimov 6a914dc25b Merge branch 'bugfix/Show-all-shell-commands-required-to-get-ready-in-the-setup-wizard-8705'
fixes #8705
2015-06-05 18:40:07 +02:00
Alexander A. Klimov 76e748c483 Don't throw any exception
refs #8705
2015-06-05 17:12:32 +02:00
Alexander A. Klimov cbc731034a Don't throw any exception
refs #9247
2015-06-05 10:23:17 +02:00
Alexander A. Klimov 602f0cf755 Move Version to Icinga\Application\
refs #9247
2015-06-05 10:18:24 +02:00
Alexander A. Klimov b842a39650 Implement ::getLinuxDistro()
refs #8705
2015-05-26 18:23:26 +02:00
Johannes Meyer ec556edc65 Merge branch 'master' into feature/user-and-group-management-8826 2015-05-26 09:28:35 +02:00
Eric Lippmann 53ca68903a Merge branch 'bugfix/time-formatting-6778'
fixes #6778
2015-05-22 11:34:43 +02:00
Johannes Meyer 265725447d Merge branch 'master' into feature/user-and-group-management-8826 2015-05-22 10:06:31 +02:00
Eric Lippmann 54577d04bd Merge branch 'master' into bugfix/time-formatting-6778
Conflicts:
	modules/monitoring/application/views/scripts/list/comments.phtml
	modules/monitoring/application/views/scripts/list/hostgroups.phtml
	modules/monitoring/application/views/scripts/process/info.phtml
	modules/monitoring/application/views/scripts/show/components/downtime.phtml
	modules/monitoring/application/views/scripts/show/components/notifications.phtml
	modules/monitoring/public/css/module.less
2015-05-21 14:57:01 +02:00
Marius Hein 0002c0be26 Provide default config name for Module::getConfig() 2015-05-21 14:40:52 +02:00
Eric Lippmann ba258524a8 Don't setup the DateTimeFactory when bootstrapping Icinga Web 2
DateTimeFactory will be removed soon.

refs #6778
2015-05-19 11:23:50 +02:00
Johannes Meyer 0a387573f3 Logger: Fix substitution of exception messages 2015-05-13 10:46:34 +02:00
Johannes Meyer f1f1710f47 Config: Add method getConfigObject to access the internal ConfigObject 2015-05-06 08:07:42 +02:00
Johannes Meyer 5cc7f26728 ConfigObject: Extend ArrayDatasource
This makes it possible to use a ini file as repository!!!1
One thing is missing: Section names are currently ignored and should be
mapped to a virtual column.

refs #8826
2015-05-05 15:21:34 +02:00
Johannes Meyer d09ea2845d Merge branch 'master' into feature/user-and-group-management-8826 2015-04-30 15:20:40 +02:00
Alexander A. Klimov 5ba539b7c1 SyslogWriter: replace \n w/ 4 spaces in multiline log messages 2015-04-24 10:28:45 +02:00
Alexander A. Klimov a429617a95 Revert "Log each line of a multiline log message separatly"
This reverts commit 39042ab306.
2015-04-24 10:17:35 +02:00
Alexander A. Klimov 39042ab306 Log each line of a multiline log message separatly
resolves #9000
2015-04-23 17:44:00 +02:00
Alexander A. Klimov 1daecbbca0 Don't use `false === ...' when `! ...' is enough 2015-04-22 17:04:31 +02:00
Alexander A. Klimov 9393d11c0b Display an error message when enabled modules cannot be read because /etc/icingaweb2 is not readable
resolves #9141
2015-04-22 16:44:00 +02:00
Johannes Meyer 7960e911a6 UserGroupBackend: Add support for custom backends to fetch user groups
refs #8826
refs #9122
2015-04-22 09:52:08 +02:00
Johannes Meyer 847c02ed8e UserBackend: Add support for custom authentication backends
refs #8826
refs #8877
2015-04-22 09:28:42 +02:00
Johannes Meyer 33628cbf04 Icinga\Application\Modules\Module: Add missing documentation 2015-04-22 09:06:26 +02:00
Johannes Meyer 8dba5752dc ModuleManager: Improve error messages when en-/disabling modules 2015-04-20 10:09:33 +02:00
Johannes Meyer 36fed03764 Do not log that the logging configuration is invalid on every request
Instead, log those messages *everytime* a subsequent message is being
logged.

refs #8957
2015-04-13 17:11:42 +02:00
Johannes Meyer 67ad575cf5 Set the configured logging level even if the configured logging type is invalid
refs #8957
2015-04-13 17:09:49 +02:00
Alexander Klimov 967a2e82dc Use (only) "@return $this" in fluent interfaces' documentation 2015-04-07 14:24:11 +02:00
Johannes Meyer b0b95ab387 Fix that Icinga\Application\Logger::writesTo* is not functional 2015-04-07 10:31:57 +02:00
Thomas Gelf 63f87da53d Session: reworked to avoid duplicate notifications
* clear session on initialization, store once on shutdown
* less static method calls
* fixes erraneous cli checks
2015-03-13 14:10:27 +01:00
Eric Lippmann c1d5231619 Add priority param to Module::provideSearchUrl()
refs #8668
2015-03-12 17:55:29 +01:00
Eric Lippmann 29d5fd351b Merge branch 'bugfix/logout-external-8626'
fixes #8626
2015-03-12 16:47:49 +01:00
Eric Lippmann 8563d5ed3f PHPDoc: Use @var instead of @type
Becasue of too many kittens PSR-5 backed off of deprecating @var.
So that's the way we go too.
2015-03-12 16:08:47 +01:00
Eric Lippmann 0806ab3ec9 Remove strict equality for $auth->isAuthenticated() 2015-03-11 22:26:03 +01:00
Eric Lippmann 64ad54ebd6 Optimize imports in Web.php 2015-03-11 22:08:28 +01:00
Eric Lippmann a835cad31f Remove a nonsense TODO from Web.php
TODOs for replacing Zend classes are unnecessary.
2015-03-11 22:06:23 +01:00
Eric Lippmann c54648244e Remove newlines from Web.php 2015-03-11 22:05:23 +01:00
Eric Lippmann c47164601a Don't alias Zend_Controller_Action_HelperBroker in Web.php 2015-03-11 22:03:49 +01:00
Eric Lippmann dfa7e20b74 Don't use Icinga\Authentication\Manager twice 2015-03-11 22:01:41 +01:00
Eric Lippmann 9e81370551 Removed unused use ... in Web.php 2015-03-11 22:00:09 +01:00
Eric Lippmann 32ca28bc46 Use @return $this for documenting fluent interfaces 2015-03-11 21:58:41 +01:00
Eric Lippmann ac2522af20 Merge branch 'master' into bugfix/logout-external-8626 2015-03-11 21:55:52 +01:00
Eric Lippmann 7fe4b3d7ab Fix PHPDoc of Web::detectLocale() 2015-03-11 21:55:04 +01:00
Eric Lippmann 29d4ad69b9 Remove // @codeCoverageIgnoreEnd
This is obsolete.
2015-03-11 21:50:41 +01:00
Eric Lippmann d102a61e22 Fix Undefined index: HTTP_ACCEPT_LANGUAGE
fixes #8370
2015-03-11 20:50:05 +01:00
Johannes Meyer 4badbc660b Merge branch 'master' into feature/conditional-requirements-8508 2015-03-09 08:51:03 +01:00
Louis Sautier 083c1a9e6b Fix some spelling errors in comments and messages
fixes #8633

Signed-off-by: Gunnar Beutner <gunnar@beutner.name>
2015-03-08 15:32:22 +01:00
Johannes Meyer f45f00b022 Run a module's configuration script only in case it has been registered
fixes #8601
2015-03-06 13:25:04 +01:00
Johannes Meyer 6e61980dd2 Fix operator precedence when detecting the default locale
fixes #8370
2015-03-04 08:28:30 +01:00
Johannes Meyer 85e6fce867 Rename Platform::zendClassExists() to Platform::classExists() 2015-02-25 13:33:42 +01:00
Johannes Meyer a5514392db Adjust dashboard, output-format and module tabs 2015-02-23 17:03:11 +01:00
Johannes Meyer ca0914644c Use "icingaweb2" instead of "icingaweb" as default syslog prefix 2015-02-12 14:01:59 +01:00
Eric Lippmann 6bae2e0a53 Note that our license is GPL v2 or any later version in our license header instead of pointing to the license's URL 2015-02-04 10:52:27 +01:00
Eric Lippmann 5b4fab0750 Add license header
This time without syntax errors hopefully :)
2015-02-03 16:27:59 +01:00
Eric Lippmann 5fa2e3cfdc Revert "Add license header"
This reverts commit 338d067aba.
2015-02-03 16:16:26 +01:00
Eric Lippmann 338d067aba Add license header
fixes #7788
2015-02-03 15:51:04 +01:00
Alexander Klimov a6cea24934 Platform::zendClassExists(): don't fail if a Zend class file doesn't exist 2015-02-03 12:22:23 +01:00
Johannes Meyer f5a651664c Create the enabledModules directory when necessary only as well
refs #8219
2015-01-30 16:16:12 +01:00
Johannes Meyer 9426a5bd23 Use File::create() in Config::saveIni() to create missing nested directories
refs #8219
2015-01-30 15:43:02 +01:00
Johannes Meyer 63305fdf9a Add Icinga\Application\Config::saveIni()
Simplifies saving INI files. Icinga\File\Ini\IniWriter does already require an
instance of Icinga\Application\Config so it's obvious to give "Config" the
task to initialize the writer.. We do also have a central place to handle
creating missing ancestor directories now.

refs #8219
2015-01-30 09:32:08 +01:00
Johannes Meyer 47b27fcfe4 setup: Look for the authentication.ini instead of the config.ini
The config.ini does not include any settings mandatory to operate
Icinga Web 2, but the authentication.ini does.

refs #8134
2015-01-27 13:34:59 +01:00
Eric Lippmann 7bd42b476f bootstrap: Load setup module in case the setup token exists
The web setup may write the config.ini even if it errors. Thus our bootstrap
has to load the setup module whenever the setup.token exists.
Another approach would to write the config.ini in our web setup at the very end.
2015-01-23 15:27:52 +01:00
Eric Lippmann ac503031a7 Config: Fix PHPDoc for fromIni 2015-01-19 11:43:39 +01:00
Eric Lippmann 87adbacb3b Config: Fix coding style 2015-01-19 11:43:39 +01:00
Eric Lippmann 599cb620d8 Config: Don't throw NotReadableError if the file does not exist 2015-01-19 11:43:39 +01:00
Eric Lippmann b983f1901b modules: Fix that the forms namespace is not registered when the module does not have any library file 2015-01-14 13:24:31 +01:00
Eric Lippmann 58cfb67983 Load setup module when necessary when bootstrapping the CLI
fixes #8146
2014-12-30 09:27:37 +01:00
Eric Lippmann 839523a73f Web: Load setup module if necessary 2014-12-29 14:31:34 +01:00
Eric Lippmann 611d01788f Add setup related utility functions to ApplicationBootstrap.php 2014-12-29 14:29:31 +01:00
Eric Lippmann 7d36a59c67 Use '@return $this' instead of '@return self' for document fluent interfaces in ApplicationBootstrap.php 2014-12-29 14:01:19 +01:00
Eric Lippmann fdd06697b3 Web: Use our own dispatcher
refs #5786
2014-12-18 17:12:11 +01:00
Eric Lippmann 8ec0740005 Merge branch 'master' into feature/packages-4075 2014-12-18 14:02:17 +01:00
Johannes Meyer bca28a5ae2 Display inline pie-charts also in views exported to PDF
fixes #6463
2014-12-15 13:55:20 +01:00
Eric Lippmann 68e460b5d1 Remove unused use in EmbeddedWeb 2014-12-10 09:32:02 +01:00
Eric Lippmann 888fa90fe2 Fix typo in PHPDoc in EmbeddedWeb 2014-12-10 09:31:37 +01:00
Eric Lippmann 2b5fe7baf4 Set default config dir to '/etc/icingaweb2' 2014-12-10 09:30:12 +01:00
Eric Lippmann 916868a051 Revert "Add support for "core" modules and make the setup module such a module"
This reverts commit 8af13f564b.

The setup module must only be loaded when necessary not always.
2014-12-09 16:28:05 +01:00
Eric Lippmann 7d00f68660 Revert "Load core modules also when bootstrapping the CLI"
This reverts commit f12473d34b.

The CLI must not load core modules, i.e. setup.
2014-12-09 16:27:04 +01:00
Johannes Meyer 196b6a4875 Ensure that Zend is loaded when showing status information in the CLI
fixes #7869
2014-12-09 15:38:13 +01:00
Thomas Gelf 09e59ba44a Modules\Module: determine correct config dir 2014-12-03 10:43:27 +01:00
Eric Lippmann a2a97537ce Log: Fix StdoutWriter not using our "new" Logger's interface 2014-12-03 09:38:33 +01:00
Johannes Meyer ebf908b1b5 Make db requirement checks more sensitive
fixes #7837
2014-12-01 15:38:10 +01:00
Eric Lippmann aef81a56d6 Merge branch 'master' into feature/security-gui-5647
Conflicts:
	library/Icinga/Application/Config.php
	library/Icinga/File/Ini/IniWriter.php
	library/Icinga/Web/Form.php
	library/Icinga/Web/Menu.php
2014-11-18 17:08:25 +01:00
Johannes Meyer f007663235 Show the user a senseful error message in case enabledModules is missing
fixes #7205
2014-11-18 16:22:41 +01:00
Johannes Meyer 7621f6642d Adjust usages of Icinga\Application\Config
refs #7147
2014-11-18 13:11:52 +01:00
Johannes Meyer 0c84bf614d Split config functionality into two classes
There is now Icinga\Application\Config as our ini configuration handler and
Icinga\Data\ConfigObject as our general configuration container.

refs #7147
2014-11-18 13:02:56 +01:00
Johannes Meyer 812f9af949 Change modulePath setting to module_path
fixes #7694
2014-11-17 10:10:08 +01:00
Eric Lippmann 6ba4e55277 Throw exception on E_NOTICE
Use of uninitialized values must be detected asap.
2014-11-15 01:20:27 +01:00
Eric Lippmann 52c19b5843 EmbeddedWeb must not load core modules, i.e. setup 2014-11-15 01:04:56 +01:00
Eric Lippmann 2c0122ba9f Fix ApplicationBootstrap::getBootstrapDirectory() when Icinga Web 2 is served using PHP's built-in web server 2014-11-15 01:04:14 +01:00
Eric Lippmann 11bb8dbab0 icingacli web serve: Fix "PHP Notice: Use of undefined constant ICINGA_LIBDIR" 2014-11-14 16:02:17 +01:00
Eric Lippmann 029630308d Load Zend on Web and EmbeddedWeb
refs #7464
2014-11-14 14:07:13 +01:00
Eric Lippmann 37dd2f5dd2 Do not load Zend on the CLI and remove our library from the include path
Adding Icinga Web 2's library to the include is not necessary for getting the Zend_Plugin_Loader working.
2014-11-14 14:04:24 +01:00
Johannes Meyer 586b4f463b Let our module autloader know that we renamed our form namespaces
refs #7553
2014-11-14 11:30:44 +01:00
Johannes Meyer 775c20d9ad Rename namespace Icinga\Form to Icinga\Forms
refs #7553
2014-11-14 10:57:14 +01:00
Eric Lippmann 48a468b888 Add our vendor path to the include path 2014-11-13 19:52:28 +01:00
Eric Lippmann 81b144d057 Fix locale setup
The CLI must not try to use HTTP_ACCEPT_LANGUAGE. Avoided double try-catch blocks.

refs #6073
2014-11-13 18:02:03 +01:00
Eric Lippmann e3c70bec6d Fix timezone setup
The CLI must not try to use our web timezone detection thingy.

refs #6073
2014-11-13 17:07:36 +01:00
Eric Lippmann ac2ec83852 Merge branch 'master' into feature/localization-form-6073
Conflicts:
	library/Icinga/Application/ApplicationBootstrap.php
	test/php/library/Icinga/User/Store/DbStoreTest.php
2014-11-13 17:03:41 +01:00
Eric Lippmann f427577067 Add getVendorDir() in favor of constant ICINGAWEB_VENDORS 2014-11-13 09:38:04 +01:00
Eric Lippmann bfa834fc3b Remove constant ICINGAWEB_APPDIR
We should avoid use of constants.
2014-11-13 09:33:31 +01:00
Eric Lippmann 9c103a9864 Remove constant ICINGAWEB_BASEDIR
We should avoid use of constants.
2014-11-13 09:24:51 +01:00
Eric Lippmann 75475b1684 Rename getBootstrapDirecory() to getBootstrapDirectory() 2014-11-12 17:14:43 +01:00
Eric Lippmann c394cd0bff Use realpath in ApplicationBootstrap::getBootstrapDirecory()
If the CLI is called from source, the base directory is now set to the correct path.
Packagers will have to provide the path to the base directory though.
2014-11-12 17:11:48 +01:00
Johannes Meyer db7954c350 Merge branch 'master' into feature/setup-wizard-7163 2014-11-12 17:05:13 +01:00
Eric Lippmann ec6b56a060 Allow to define Icinga Web 2's base directory while bootstrapping 2014-11-12 15:52:43 +01:00
Eric Lippmann b27d1d0058 Merge branch 'master' into feature/setup-wizard-7163 2014-11-12 14:48:15 +01:00
Eric Lippmann a081db08a4 icingacli: Fix "Notice: Constant ICINGAWEB_BASEDIR already defined" 2014-11-12 14:43:58 +01:00
Eric Lippmann 6089372c42 Do not define ICINGAWEB_BASEDIR in index.php
There's SCRIPT_FILENAME. The constants will be removed shortly.
2014-11-12 14:39:45 +01:00
Eric Lippmann 277765ac72 No longer make ICINGAWEB_APPDIR configureable 2014-11-12 13:18:05 +01:00
Eric Lippmann 11e13582e2 Define the ICINGAWEB_VENDORS contant 2014-11-12 13:17:18 +01:00
Eric Lippmann 8c9465ffbd Fix ICINGAWEB_APPDIR location if the Icinga library is in PHP's include path 2014-11-12 13:06:43 +01:00
Eric Lippmann 877e9101f3 Do not define the constant ICINGAWEB_LIBDIR
This constant should not be needed anywhere.
2014-11-12 12:55:16 +01:00
Alexander Fuhr 533d2207fd Fix `setupTimezone' and `setupInternationalization' for user preferences 2014-11-12 12:16:05 +01:00
Alexander Fuhr 8d120762de Add timezone detection to `setupTimezone' in ApplicationBootstrap 2014-11-12 12:13:46 +01:00
Johannes Meyer 7aae291f69 Merge branch 'master' into feature/setup-wizard-7163 2014-11-12 10:08:28 +01:00
Johannes Meyer c3e28a42fb Remove configuration option for setting the access mode on new files 2014-11-12 09:40:07 +01:00
Thomas Gelf f39301d47f Cli: use STDOUT as the default logger
fixes #7636
2014-11-11 19:43:22 +01:00
Thomas Gelf f347a74982 Logger\StdoutWriter: initial implementation
This log writer writes to STDOUT and uses ANSI colors on real terminals

fixes #7636
2014-11-11 19:40:59 +01:00
Thomas Gelf 629118b590 LogWriter: setting config must not be abstract
Storing the given config makes sense as default action, no need to
abstract the constructor per default.

refs #7636
2014-11-11 19:39:15 +01:00
Johannes Meyer a6af51f402 Fix that Config::fromSection cannot return the actual value
refs #7147
2014-11-11 15:51:54 +01:00
Johannes Meyer f12473d34b Load core modules also when bootstrapping the CLI
refs #7163
2014-11-11 10:00:28 +01:00
Johannes Meyer 9d292269b1 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	application/forms/Config/Resource/LdapResourceForm.php
	test/php/application/forms/Config/Authentication/LdapBackendFormTest.php
2014-11-11 09:44:11 +01:00
Johannes Meyer 8af13f564b Add support for "core" modules and make the setup module such a module
refs #7163
2014-11-10 17:34:49 +01:00
Johannes Meyer 21ed823da7 Adjust namespace declarations
refs #7163
2014-11-10 16:31:40 +01:00
Johannes Meyer 8f212018ec Move the setup wizard code to a dedicated module
refs #7163
2014-11-10 15:11:44 +01:00
Johannes Meyer 79493592bb Do not use Installer anywhere.
"It's setup."

refs #7163
2014-11-10 10:30:52 +01:00
Johannes Meyer f85ddeb215 Do not hardcode the php username dummy in Icinga\Application\Platform
refs #7163
2014-11-07 14:40:28 +01:00
Johannes Meyer eadc7d8415 Remove the POSIX requirement
refs #7163
2014-11-07 14:39:34 +01:00
Johannes Meyer 9a5d01b3fd Check the mysql or pgsql extension instead of just pdo, really 2014-11-07 14:31:20 +01:00
Johannes Meyer 7b99b74ae1 Prefer Icinga\Application\Config instead of Zend_Config
refs #7147
2014-11-07 13:53:03 +01:00
Johannes Meyer 268569114c Fix that an error is thrown when reading INI files without trailing newlines 2014-11-07 13:38:35 +01:00
Johannes Meyer 4537b2932e Fix that current(), key(), etc does not work with Config objects 2014-11-07 13:37:09 +01:00
Johannes Meyer 83f386f92a Do not extend Zend_Config in Icinga\Application\Config
refs #7147
fixes #7580
2014-11-06 15:41:31 +01:00
Alexander Fuhr 2e24c53224 Merge branch 'master' into feature/localization-form-6073
Conflicts:
	application/forms/Config/GeneralForm.php
	application/forms/Preference/GeneralForm.php
	library/Icinga/Application/Web.php
2014-11-05 13:27:45 +01:00
Johannes Meyer 5a169ee656 Fix "PreservingIniWriter not found"
The class was renamed a few commits ago to "IniWriter"
2014-11-04 14:35:57 +01:00
Johannes Meyer 170ded6510 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	library/Icinga/Authentication/Backend/LdapUserBackend.php
	library/Icinga/File/Ini/IniWriter.php
2014-11-04 14:22:53 +01:00
Johannes Meyer 581935c26f Fix database setup and add support for the new schema
refs #7163
2014-11-04 13:51:15 +01:00
Eric Lippmann 45d3005f3c Throw exceptions on PHP warnings
Sometimes we miss PHP warnings because our layout overlays them.
2014-11-04 13:20:41 +01:00
Eric Lippmann e5091ec835 Fix Modules\Manager::getLoadedModules() PHPDoc 2014-10-31 11:22:27 +01:00
Eric Lippmann 0124a33037 Add method Config::isEmpty() 2014-10-31 11:20:17 +01:00
Eric Lippmann 16352fc10c Move Logger to the Application namespace
fixes #7148
2014-10-31 10:27:17 +01:00
Johannes Meyer 9365e3ca94 Remove the setup token from disk upon completion of the wizard
refs #7163
2014-10-30 10:36:02 +01:00
Johannes Meyer 504853961b Add temporary requirement for the DOM php module
Should be removed once dompdf isn't shipped with Icinga Web 2 anymore

refs #7163
refs #6172
2014-10-29 16:25:25 +01:00
Johannes Meyer c8e323e8a7 Improve requirment checks
refs #7163
2014-10-29 16:24:31 +01:00
Johannes Meyer 4d8842db09 Return a dummy PHP username in case the POSIX module is not available 2014-10-29 16:22:41 +01:00
Johannes Meyer 81e06fe570 Do not show a requirement for Zend_Db_Adaper_*
refs #7163
refs #7464
2014-10-29 15:49:14 +01:00
Johannes Meyer 47d9426a1f Use a hardcoded path where to look for modules
refs #7163
2014-10-29 15:43:08 +01:00