Commit Graph

799 Commits

Author SHA1 Message Date
Eric Lippmann 800173b19f lib: Fix type hint for $router in Module 2015-08-20 16:47:17 +02:00
Eric Lippmann 5d8f091209 lib: Don't alias Zend classes in Module 2015-08-20 16:46:31 +02:00
Eric Lippmann f24449b225 modules: Register controller namesoace in Module::registerWebIntegration()
Else we get an exception when loading modules on the CLI because Zend classes are not autoloaded.

refs #5786
2015-08-20 16:24:12 +02:00
Eric Lippmann 3c812e6d2b Register module controller namespace
refs #5786
2015-08-18 13:02:54 +02:00
Eric Lippmann d267686ef4 Fix PHPDoc in Web to read class loader instead of auto loader
refs #5786
2015-08-18 12:51:46 +02:00
Eric Lippmann cb8fb93ab0 Fix PHPDoc in ApplicationBootstrap to read class loader instead of auto loader
refs #5786
2015-08-18 12:50:46 +02:00
Eric Lippmann fae2e0979a Fix class loading to not rely on the longest namespace match
refs #5786
2015-08-18 10:50:29 +02:00
Eric Lippmann 234dc951d2 Remove the is_dir check from the ClassLoader
refs #5786
2015-08-18 09:32:00 +02:00
Eric Lippmann ac99e54f17 Fix PHPDoc in ClassLoader
refs #5786
2015-08-18 09:27:34 +02:00
Eric Lippmann a382a563d5 Move Loader::__destruct to the bottom of the method list
refs #5786
2015-08-18 09:10:23 +02:00
Eric Lippmann 13fc7e16f2 Rename Loader to ClassLoader
refs #5786
2015-08-18 09:06:58 +02:00
Eric Lippmann b6fdbf055e Remove unnecessary pass by refenrece in the loader
refs #5786
2015-08-17 14:35:35 +02:00
Eric Lippmann 7563a7a0ba Rename Loader::unRegister() to Loader::register() 2015-08-17 14:34:39 +02:00
Eric Lippmann 7252f3237a Introduce a constant for the controller namespace
refs #5786
2015-08-17 13:43:34 +02:00
Eric Lippmann 1e1d4531c6 Register the controller namespace
refs #5786
2015-08-17 13:31:26 +02:00
Eric Lippmann d4de7c0519 lib: Make Loader::registerNamespace() fluent
refs #5786
2015-08-17 13:29:15 +02:00
Eric Lippmann 392eee5a1f Merge branch 'master' into feature/namespaced-controllers-5786
Conflicts:
	library/Icinga/Application/Web.php
2015-08-17 12:59:44 +02:00
Johannes Meyer 282aaa6e5b Load additional static files for modules, really
Since we're only processing the config script upon calling
Module::hasJs/Css() if no module.js or module.css exists,
we need to ensure that it's processed when calling
Module::getJS/CssFiles().

refs #9702
2015-08-10 10:00:02 +02:00
Johannes Meyer 712d545f48 Module: Allow to define additional Javascript files
refs #9702
2015-08-06 15:10:54 +02:00
Johannes Meyer 51aa22d429 Module: Allow to define additional CSS/LESS files
refs #9702
2015-08-06 15:10:33 +02:00
Johannes Meyer 59ef54314a Extend the Web bootstrapper from the EmbeddedWeb bootstrapper
In a embedded web environment we may also need a request and response.

refs #9702
2015-08-06 15:08:41 +02:00
Matthias Jentsch 60675979bc Merge branch 'bugfix/creating-dashlet-with-parentheses-9530'
fixes #9530
2015-08-05 18:22:29 +02:00
Matthias Jentsch f8e2dc850c Drop IniEditor and clean up IniWriter
Replace the ini editor code with a new parser implementation that manipulates a DOM. Do not support capabillities that are no longer needed, like nested configurations, section inheritance, section-less properties.
2015-08-05 18:10:17 +02:00
Alexander Fuhr c3fe14a205 Modules/Manager: Fix that non-existent modules can be disabled
fixes #9374
2015-08-04 14:34:30 +02:00
Johannes Meyer 316a4d8b82 Merge branch 'master' into bugfix/allow-to-configure-how-to-manage-groups-9609 2015-07-30 16:16:04 +02:00
Eric Lippmann 42d698a6b3 lib: Add Web::getResponse()
Use this method for retrieving the response object outside a controller.

refs #9660
2015-07-30 13:47:54 +02:00
Eric Lippmann ce2a196c4a lib/Web: Set up request before setting up the user
refs #9660
2015-07-29 17:22:10 +02:00
Eric Lippmann db48a944e3 lib: Introduce Web::getRequest()
Basic auth will need the request before we set up the front controller.

refs #9660
2015-07-29 16:27:48 +02:00
Johannes Meyer 13edbf901d UserBackend: Implement interface ConfigAwareFactory
refs #9609
2015-07-29 13:44:26 +02:00
Eric Lippmann 07849e0fea lib: Rename Authentication/Manager to Authentication/Auth
refs #9660
2015-07-28 17:08:55 +02:00
Eric Lippmann 7cfc78558d Merge branch 'master' into feature/secure-modules-9644
Conflicts:
	library/Icinga/Exception/IcingaException.php
2015-07-28 13:42:02 +02:00
Johannes Meyer 982e226db0 IcingaException: Add utility method to format exceptions as one-liner 2015-07-24 16:19:20 +02:00
Eric Lippmann 149a974a44 Fix coding style in Module.php
refs #9644
2015-07-24 15:06:25 +02:00
Eric Lippmann 519d025de5 Allow to get permissions and restrictions from unloaded modules
refs #9644
2015-07-24 14:24:48 +02:00
Eric Lippmann 444fdadf13 Allow to get unloaded modules via Manager::getModule()
refs #9644
2015-07-24 14:23:48 +02:00
Eric Lippmann ec1ddd82b3 Move Module::__construct to the top of the function list
refs #9664
2015-07-24 14:19:17 +02:00
Eric Lippmann 5dcc307e87 Add namespace for module permissions to the module manager
refs #9644
2015-07-22 14:59:35 +02:00
Paul Richards aac5d49eed IIS: use 'config' folder within icingaweb root instead of '/etc/icingaweb2' on Windows
Signed-off-by: Alexander A. Klimov <alexander.klimov@netways.de>
with the following changes:

Make use of Platform::isWindows()
Call ::setupAutoloader() before that

fixes #8916
2015-06-12 14:46:00 +02:00
Paul Richards edd8f5738f Windows: Fix webrouter on IIS
Signed-off-by: Alexander A. Klimov <alexander.klimov@netways.de>
with the following changes:

Remove unneeded whitespace

fixes #8914
2015-06-12 14:05:40 +02:00
Alexander A. Klimov 7ea6eeb20d Revert "Don't use /etc/icingaweb2 as config path on Windows"
This reverts commit 48870bb7e2.
2015-06-12 13:29:36 +02:00
Alexander A. Klimov 48870bb7e2 Don't use /etc/icingaweb2 as config path on Windows
fixes #8916
2015-06-12 11:57:44 +02:00
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
Johannes Meyer ec6948dddf Fix that the ModulePage does not provide a wizard's requirement info
refs #7163
2014-10-29 11:38:21 +01:00
Johannes Meyer 32006420c5 Fix WelcomePage
There were some grammar- and layout-errors
as well as information missing :(
2014-10-29 11:36:03 +01:00
Johannes Meyer dbf5512252 Drop Icinga\Application\Installation and introduce Icinga\Installation
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer a899070606 Move MakeDirStep to Icinga\Web\Setup
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer dd6b045183 Fix that the ModulePage cant find modules when being asked for
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer 98acc24869 Create configuration sub directories as part of the setup wizard
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer 1fd4a301c4 Pass the wizard title to the summary page to be able to reuse the page
Module wizards can now use the SummaryPage as well if they want to.

refs #7163
2014-10-29 08:38:58 +01:00
Johannes Meyer 3206ded18c Pass the entire page data to the ModulePage
As module wizards might require some configuration values aggregated by
the main application wizard we pass the entire page data to each wizard as
if the data were aggregated by a module wizard itself.

refs #7163
2014-10-29 08:38:58 +01:00
Matthias Jentsch 2e8c0cffe6 Check privileges of database user accounts before continuing with the setup
Implement owner and privilege checks for postgresql, and fix some errors in
existing MySQL privilege checks.

resolves #7389
2014-10-27 15:08:52 +01:00
Johannes Meyer 2f83976f50 Add ModulePage
refs #7163
2014-10-24 17:10:17 +02:00
Johannes Meyer 1bd5868a88 Fix access of an array key which does not exist in some circumstances
refs #7163
2014-10-24 13:57:30 +02:00
Johannes Meyer a8dd9c933d Add the possibility for modules to provide a setup wizard
refs #7163
2014-10-24 13:52:26 +02:00
Johannes Meyer 64e6886c9c Make it possible to pass the module paths directly to the module manager 2014-10-24 13:51:23 +02:00
Johannes Meyer d90d6fe6a9 Improve summary page layout a bit
refs #7163
2014-10-23 15:16:25 +02:00
Johannes Meyer a6cbde54c5 Move summary HTML generation from the view script to each install step
refs #7163
2014-10-23 15:15:59 +02:00
Johannes Meyer 216c072024 Implement installation routines modularly
This allows us to "merge" module installation
routines with our main installer routines.

refs #7163
2014-10-23 11:41:16 +02:00
Johannes Meyer f5c4708ae2 Add a default file mode for new configuration files
The file mode which can be configured in the general configuration is now
used when creating new configuration files with the PreservingIniWriter.
2014-10-21 17:02:21 +02:00
Johannes Meyer e72f2cac24 Fix that page information gets deleted when navigating back
refs #7163
2014-10-17 15:42:06 +02:00
Johannes Meyer 24b6274f01 Fix logging configuration installation
refs #7163
refs #6933
2014-10-17 13:05:56 +02:00
Johannes Meyer 9f127be1dc Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	application/forms/Config/General/LoggingConfigForm.php
2014-10-17 13:04:59 +02:00
Johannes Meyer a54c81b2a7 Adjust button labels only in WebSetup::addButtons(), not in view scripts
refs #7163
2014-10-17 11:20:20 +02:00
Eric Lippmann 6c59c22044 Bootstrap: Remove logging configuration directives which do not override defaults 2014-10-16 15:59:56 +02:00
Eric Lippmann 6dfefb0e73 CLI: Fix logging setup 2014-10-16 15:59:35 +02:00
Eric Lippmann 985154d3d8 Throw an ErrorException on E_STRICT errors 2014-10-16 15:51:18 +02:00
Johannes Meyer d73423ceee Style summary page
Dropped also the layout logic as it was too generic.

refs #7163
2014-10-16 14:52:26 +02:00
Johannes Meyer 45e179d939 Fix that `type' is missing for installed ldap authentication backends
refs #7163
2014-10-15 10:44:08 +02:00
Johannes Meyer 13678bb33e Add useful @todo hint
refs #7163
2014-10-13 09:35:00 +02:00
Johannes Meyer 52016d81b9 Consider `root_dn' and `base_dn' when installing config files
refs #7163
2014-10-13 09:34:22 +02:00
Johannes Meyer ca6eca6b67 Quote database names, usernames and passwords when setting up the db
refs #7163
2014-10-09 16:02:18 +02:00
Johannes Meyer 78b130a4f3 Fix that the LDAP discovery page is shown for non-LDAP authentication
refs #7163
2014-10-09 15:05:21 +02:00
Johannes Meyer 169a646a1a Fix that LDAP discovery suggestions are not populated
I've broke this when re-commiting the changes made by Matthias and fixed
this by populating dependent pages directly in WebSetup::setupPage.

refs #7163
2014-10-09 10:47:45 +02:00
Matthias Jentsch e29a568bff Add LDAP discovery pages
refs #7163
2014-10-09 10:20:07 +02:00
Johannes Meyer 7c202dd8fa Improve the db-summary text and db-creation/-resource step handling
refs #7163
2014-10-08 15:36:26 +02:00
Johannes Meyer 8fa8642917 Do not show the db-creation step when the db-resource step was skipped
refs #7163
2014-10-08 15:35:12 +02:00
Johannes Meyer 89ae05899b Query a particular login name and create database logins using the DbTool
refs #7163
2014-10-08 15:33:51 +02:00
Johannes Meyer baa6abdb00 Relax schema check
Checking one table for its existence is more than enough. Creating a diff
implies conditional CREATE TABLE instructions and the like, what we want
to avoid.

refs #7163
2014-10-08 11:24:05 +02:00
Johannes Meyer 393191ced1 Add admin creation routine
refs #7163
2014-10-08 10:26:12 +02:00
Johannes Meyer abc34a5f1a Add database setup routines
refs #7163
2014-10-07 17:08:50 +02:00
Johannes Meyer 7da11b83f5 Fix that the database is displayed instead of the login in the db summary
refs #7163
2014-10-07 17:06:51 +02:00
Johannes Meyer 1136a09741 Wrap report message registration in a specific method
refs #7163
2014-10-07 17:05:55 +02:00
Johannes Meyer 627a19a2a9 Fix warning "references should be passed by variable" 2014-10-07 15:57:00 +02:00
Johannes Meyer 04ff2e271a Drop dependent page data more earlier
Not only the "setup_authentication_backend" page depends on the auth
type but also the "setup_admin_account" page, so just drop both entries
once a new auth type gets submitted.

refs #7163
2014-10-06 16:52:19 +02:00
Johannes Meyer ad7965228c Add install routines for all INI files
This is just a quick&dirty implementation. Once we know how modules are
being processed/installed this needs to be revisited.

refs #7163
2014-10-06 16:49:29 +02:00
Johannes Meyer ac255eeda0 Change form name of GeneralConfigPage to "setup_general_config"
Used to be "setup_application_config".

refs #7163
2014-10-06 13:52:32 +02:00
Johannes Meyer 9cbd7e945d Do not permit the user to give equal names to multiple resources
refs #7163
2014-10-06 09:43:50 +02:00
Johannes Meyer b4a1364a92 Add summary report
refs #7163
2014-10-06 09:30:51 +02:00
Johannes Meyer f29705fc59 Add summary page
refs #7163
2014-10-02 17:11:00 +02:00
Johannes Meyer 0f302bfc0a Fix form population in case the user navigates backwards to make changes
refs #7163
2014-10-02 17:08:55 +02:00
Johannes Meyer 4f52da95ac Drop page data when skipping a page that was displayed before
refs #7163
2014-10-02 16:35:41 +02:00
Johannes Meyer 464fefa578 Fix exception in case the database access credentials are invalid
refs #7163
2014-10-01 15:44:43 +02:00
Johannes Meyer 08d259eccf Add database creation page
refs #7163
2014-10-01 09:16:53 +02:00
Johannes Meyer c78b016d74 Remove boiler plate code 2014-09-30 10:26:10 +02:00
Johannes Meyer cbadaa78d6 Merge branch 'master' into feature/setup-wizard-7163 2014-09-29 15:35:52 +02:00
Johannes Meyer 28d16a8961 Add web setup
Page config and dependency handling is implemented and works like a
charm. Though there is one known bug that occurs when navigating back,
taking changes and moving onward to a page that needs to update its
state due to the changes while adding some elements that have similar
names as the ones shown before. This is only an issue with hidden elements.

refs #7163
2014-09-29 14:30:34 +02:00
Johannes Meyer 2d24828230 Add web installer
Logic is still missing and follows later.

refs #7163
2014-09-29 14:23:42 +02:00
Johannes Meyer 5b3d549e5c Add some more platform related calls
refs #7163
2014-09-29 11:21:56 +02:00
Alexander Fuhr c8a24f72b8 Introduce getValue() in Preferences and fix the loading of values 2014-09-26 14:15:50 +02:00
Eric Lippmann c13823d406 bootstrap: Fix error reporting level not including E_STRICT 2014-09-19 13:19:24 +02:00
Eric Lippmann c51b05296e Merge branch 'master' into bugfix/commands-6593 2014-09-19 13:18:47 +02:00
Alexander Fuhr b38ef9c0bd Implement plural and context based translation functionality
refs #6982
2014-09-16 15:19:23 +02:00
Alexander Fuhr e2b5e05f21 Implement plural translation (testing) 2014-09-15 14:11:42 +02:00
Alexander Fuhr 583fd46f15 Experimental Plural Translation Implementation
Personal BACKUP
2014-09-11 18:04:10 +02:00
Johannes Meyer 83772c6684 Merge branch 'master' into bugfix/rebuild-form-builder-5525 2014-09-09 16:03:22 +02:00
Alexander Fuhr 7386ae5ef5 Update Module img_ route to get image subfolders 2014-09-08 11:31:05 +02:00
Johannes Meyer ae9e5a40cc Merge branch 'master' into bugfix/rebuild-form-builder-5525
Conflicts:
	application/forms/Preference/GeneralForm.php
2014-09-08 08:46:53 +02:00
Marius Hein a300877878 Time detection: Add receiever to bootstrap method
refs #6078
2014-09-05 15:24:13 +02:00
Alexander Fuhr 1eacde0233 Implement modules self provided search configuration
refs #6495
2014-09-04 16:31:10 +02:00
Thomas Gelf b60b811335 ApplicationBootstrap: list "core" translations
Just to make application fit module capabilities. We might find a better
place for both later on.

refs #7054
2014-09-02 16:51:17 +02:00
Thomas Gelf 4cef333add Modules\Module: implement listLocales
fixes #7054
2014-09-02 16:28:27 +02:00
Thomas Gelf 62c0f0be03 Web\Session: implement lazy loading
fixes #7055
2014-09-02 13:23:15 +02:00
Alexander Fuhr bb0e1dc105 Revert "Fixes unaccepted behavior in module configuration"
This reverts commit 236d384bab.
2014-09-02 10:23:41 +02:00
Marius Hein 6b6826f737 Bug7043Test: Fix test to run without ini configuration
fixes #7043
2014-09-01 15:53:32 +02:00
Johannes Meyer fb5685bac3 Merge branch 'master' into bugfix/rebuild-form-builder-5525
Conflicts:
	application/forms/Config/Authentication/BaseBackendForm.php
	application/forms/Config/Authentication/DbBackendForm.php
	application/forms/Config/Authentication/LdapBackendForm.php
	application/forms/Config/Authentication/ReorderForm.php
	application/forms/Config/LoggingForm.php
	application/forms/Config/ResourceForm.php
	application/forms/Preference/GeneralForm.php
	library/Icinga/Application/Config.php
	library/Icinga/Web/Form.php
	modules/monitoring/application/controllers/ConfigController.php
	modules/monitoring/application/forms/Config/Backend/CreateBackendForm.php
	modules/monitoring/application/forms/Config/Instance/CreateInstanceForm.php
	modules/monitoring/application/forms/Config/Instance/EditInstanceForm.php
	modules/monitoring/application/forms/Config/SecurityForm.php
2014-08-29 16:05:56 +02:00
Johannes Meyer e020dd3541 Icinga\App..\Config: Rename __construct to fromIni and add setConfigPath
Prior to this change it was not possible to create an instance of Config
without passing a config file.
2014-08-29 12:23:48 +02:00
Marius Hein e345aa257a Platform: Drop *Available function
Create a function extensionLoaded and change usages.

refs #5514
2014-08-28 12:14:55 +02:00
Marius Hein 35d11bd145 Class doc for Platform
refs #5514
2014-08-28 12:14:54 +02:00
Marius Hein 22e17e9901 ResourceFactory: Move available function to platform
refs #5514
2014-08-28 12:14:54 +02:00
Alexander Klimov 45638b218c Throw IcingaException rather than Exception
fixes #7014
2014-08-27 16:03:15 +02:00
Alexander Klimov 7ff51caed0 Remove leading backslashes from the targets of use statements
- use \Exception;
+ use Exception;
2014-08-27 15:51:49 +02:00
Alexander Fuhr 236d384bab Fixes unaccepted behavior in module configuration
fixes #7011
2014-08-27 14:57:08 +02:00
Eric Lippmann 1dea19504f Revert "Remove leading backslashes from the targets of use statements"
This reverts commit 87a5967501.

At least 'modules/doc/run.php' issues a warning about "The use statement with non-compound name 'Zend_Controller_Router_Route' has no effect"
2014-08-27 12:24:11 +02:00
Alexander Klimov 87a5967501 Remove leading backslashes from the targets of use statements
- use \Exception;
+ use Exception;
2014-08-27 11:16:44 +02:00
Alexander Klimov 1f7d4cb61b Merge branch 'master' into bugfix/exceptions-with-printf-params-6931 2014-08-26 11:24:33 +02:00
Alexander Klimov a2011b1665 SystemPermissionException: extend IcingaException
refs #6931
2014-08-26 11:21:57 +02:00
Alexander Klimov febb2d1ae2 ProgrammingError: extend IcingaException
refs #6931
2014-08-26 11:15:19 +02:00
Alexander Fuhr 42e2b34356 Implement self provided configuration for dashboard/dashlets in modules
refs #6639
2014-08-26 10:34:36 +02:00
Alexander Klimov 6c9947326d NotReadableError: extend IcingaException
refs #6931
2014-08-25 12:38:34 +02:00
Alexander Klimov 9c5878cbbe ConfigurationError: extend IcingaException
refs #6931
2014-08-22 11:46:11 +02:00
Alexander Fuhr 20cead67a6 Merge branch 'master' into bugfix/modules-menu-provider-6639 2014-08-22 11:44:10 +02:00
Alexander Fuhr 1886569174 Implement Module self provided configuration for menus
refs #6639
2014-08-22 11:35:42 +02:00
Thomas Gelf 09412d03b6 Benchmark: hide timestamp on HTML output
Wastes space and is mostly useless, absolut and relative expired time
gives more than enough information.
2014-08-22 09:34:43 +02:00
Alexander Klimov 8733238a6e Loader::registerNamespace(): correct exception message 2014-08-21 12:40:41 +02:00
Eric Lippmann e005333806 Merge branch 'master' into feature/display-documentation-4820 2014-07-22 12:25:58 +02:00
Johannes Meyer eb977b7a55 Fix wrong variable assignment causing preferred languages not being set 2014-07-16 15:17:14 +02:00
Johannes Meyer 3105c2059e Remove license headers from all files
refs #6309
2014-07-15 13:43:52 +02:00
Eric Lippmann 906c132dc0 Merge branch 'master' into feature/display-documentation-4820 2014-07-11 16:05:09 +02:00
Eric Lippmann 545a153490 Merge branch 'master' into bugfix/test-fix-6542 2014-07-02 10:57:08 +02:00
Eric Lippmann db5c6631d9 Merge branch 'master' into feature/display-documentation-4820
Conflicts:
	modules/doc/library/Doc/Controller.php
2014-07-01 12:42:55 +02:00
Johannes Meyer 7eb0f3c472 Remove @codingStandardsIgnoreStart/-Stop annotations
refs #6091
2014-06-30 13:59:58 +02:00
Johannes Meyer f2e5d8afa5 Remove @codeCoverageIgnoreStart/-Stop annotations
refs #6091
2014-06-30 13:58:37 +02:00
Alexander Klimov 7ab984106a Replace Exception with Icinga\Exception\ProgrammingError in Icinga\Application\Loader
refs #6542
2014-06-27 15:20:56 +02:00
Johannes Meyer 7f99be73fd Adjust usages of Icinga\Util\File to suit the new interface introduced earlier 2014-06-26 15:57:14 +02:00
Johannes Meyer 77bb64bd2c Update web bootstrapping to suit the new localization procedure
Icinga\Application\Web::setupInternationalization now sets up the locale
from the current session first, if any, and falls back to the one from the
user's preferences, if any.

refs #6073
2014-06-25 14:34:45 +02:00
Johannes Meyer 2fc793096a Use the preferred language sent by the browser, not the configured one
refs #6074
2014-06-25 12:15:41 +02:00
Alexander Klimov 53de3686a8 Bootstrap: Only replace config dir with its canonicalised absolute pathname when the dir exists 2014-06-25 11:59:09 +02:00
Alexander Klimov a18058e185 lib: Assume relative path for Config::resolvePath() 2014-06-25 11:59:09 +02:00
Alexander Klimov ebca81b040 Revert "Make preferences INI path NOT be configurable"
This reverts commit f2693613d1.
2014-06-25 11:59:08 +02:00
Alexander Klimov fdf74c5e18 Revert "Make preferences INI path NOT be configurable"
This reverts commit 219869607d.
2014-06-25 11:59:08 +02:00
Thomas Gelf 13ef06c700 Modules\Module: modules should register config tabs
This allows modules to register their config tabs and provides a
convenient way to fetch a modules fully instanced config tabs.
2014-06-24 20:47:03 +02:00
Alexander Klimov 219869607d Make preferences INI path NOT be configurable
fixes #6567
2014-06-24 18:29:28 +02:00
Alexander Klimov f2693613d1 Make preferences INI path NOT be configurable
refs #6567
2014-06-24 18:00:40 +02:00
Alexander Klimov 3e31ff65a4 Prefer dirname rather than pathinfo 2014-06-24 15:57:13 +02:00
Alexander Klimov 6daccae30e Optimize IcingaConfig::resolvePath 2014-06-24 15:45:19 +02:00
Alexander Klimov 6e4bf73c36 Compute config file paths properly
fixes #6564
fixes #6534
2014-06-24 14:54:31 +02:00
Alexander Klimov 9bab7c0323 Signal that resolvePath doesn't support Windows
refs #6564
2014-06-24 13:22:43 +02:00
Alexander Klimov ff87588d96 Don't let config path seem absolute where it isn't
refs #6534
2014-06-24 10:12:07 +02:00
Johannes Meyer c563479888 Use Icinga\Util\File instead of fopen 2014-06-23 15:02:06 +02:00
Thomas Gelf 7d6fd45466 Application\Web: use same request everywhere 2014-06-22 14:13:00 +02:00
Thomas Gelf b7fc0b67a8 Web/controllers: use own Request/Response objects
* introduces Icinga\Web\Response
* uses ModuleActionController where necessary
* no module translationDomain voodoo in base ActionController
2014-06-22 13:49:21 +02:00
Thomas Gelf 559457f730 Bootstrap/timezone: do not enforce config
The current way forces people running a correctly configured PHP
to configure timezone once again in Icinga Web. We want LESS config,
so this tries to fix this.
2014-06-20 12:54:37 +02:00
Thomas Gelf d2ccc68214 Merge remote-tracking branch 'origin/master' into feature/query-interfaces-6018
Conflicts:
	modules/monitoring/application/controllers/ListController.php
2014-06-17 09:47:14 +00:00
Eric Lippmann 25a73ea3a1 Merge branch 'master' into feature/display-documentation-4820 2014-06-13 17:29:41 +02:00
Thomas Gelf 44a7aa6adb JS/IE8: deliver legacy jQuery for IE8
This patch makes IcingaWeb deliver a legacy jQuery version for IE8
as it is no longer supported in jQuery 2.x. JS for IE8 will not be
delivered minified to ease troubleshooting on that buggy platform.

fixes #5866
refs #6417
2014-06-12 17:33:28 +00:00
Johannes Meyer 159d765f14 Fix that calling ActionController::translate() throws an exception
Translating strings must not throw an exception
even if the given domain is not valid.

fixes #6432
2014-06-11 13:39:22 +02:00
Eric Lippmann 160a75403d Merge branch 'master' into feature/display-documentation-4820
Conflicts:
	modules/doc/library/Doc/DocParser.php
2014-06-06 14:25:13 +02:00
Thomas Gelf 1fbca25d99 Data\DataArray: use SimpleQuery and new interfaces
Removed ArrayQuery implementation as SimpleQuery is enough here.
Renamed the Datasource class to ArrayDatasource.

refs #6418
2014-06-06 06:21:35 +00:00
Thomas Gelf 8df26bb5f5 bootstrapping: add a dispatchModule() shortcut
This allows to easily jump into a specific modules CLI controllers.

refs #6411
2014-06-04 23:39:12 +00:00
Thomas Gelf eadb6cb518 bootstrapping: allow to retrieve a modules base...
...directory if it has been loaded but neither enabled nor installed.

refs #6411
2014-06-04 22:59:48 +00:00
Thomas Gelf 0e6aecbd43 bootstrapping: allow to load modules neither...
...enabled nor installed by passing their base directory. In favour
of this parameter I dropped the possibility to inject a Module class
for testing purposes. There is no such test and I see no point in
doing so.

refs #6411
2014-06-04 22:57:50 +00:00
Thomas Gelf e076d2d1d6 bootstrapping: create only one CLI loader instance
This used to work fine as long as you didn't try to interfere from
outside to influence the cli loader. The instance returned by
cliLoader() was not the same as used internally once dispatching the
CLI command.

refs #6411
2014-06-04 22:52:38 +00:00
Thomas Gelf a221afd933 bootstrapping: autoloader exceptions should not...
...require to be autoloaded.

refs #6411
2014-06-04 22:50:08 +00:00
Thomas Gelf 602b448505 bootstrapping: only web should depend on forms
This fixes the problem that CLI scripts or other applications without
an application directory would badly fail because of missing web forms.

refs #6411
2014-06-04 22:46:16 +00:00
Thomas Gelf bdc3423d4e packaging/config: allow to override APPDIR
It is now possible to either define ICINGAWEB_APPDIR in an Environment
variable or to define it as a PHP constant before bootstrapping.

fixes #6400
2014-06-04 21:22:29 +00:00
Thomas Gelf 55880cb5a3 packaging/config: rename ICINGA_APPDIR
Renamed ICINGA_APPDIR to ICINGAWEB_APPDIR for consistency. This way
it fits ICINGAWEB_CONFIGDIR.

refs #6400
2014-06-04 21:11:27 +00:00
Thomas Gelf e992f152bb packaging/configuration: get rid of _ENV
We should use _SERVER for our settings as it works fine on CLI and
for web servers.

refs #6400
2014-06-04 21:08:49 +00:00
Marius Hein 29f593a357 Authentication: Add backend to handle external authentication
Drop external auth configuration from config.ini and move
implementation into a single backend provider named
'autologin'. This provider can strip realm names from
username with a custom regexp.

fixes #6081
2014-06-03 17:59:22 +02:00
Marius Hein a0459d0172 ExternalAuthentication: Move authenticationMode to config.ini
fixes #6214
2014-06-03 15:26:15 +02:00
Marius Hein 160a95e32d Bootstrap/Web: Only load authentication.ini if needed
fixes #6238
2014-06-03 14:16:01 +02:00
Marius Hein 79fb8b1e0d Config: Remove base path subsitution
Test for leading slash and prepend base path to allow
absolute configuration files.

fixes #5556
2014-06-02 14:54:31 +02:00
Eric Lippmann c12c4a9e4c Modules: Call `Module::registerWebIntegration()' after including the run script
Routes added via a module's run script were not respected since
`Module::registerRoutes()' is called from `Module::registerWebIntegration()'.

refs #6303
2014-05-28 13:29:02 +02:00
Eric Lippmann b58ec5f445 Add Module::addRoute() to add a route to the route chain
refs #6303
2014-05-27 15:11:33 +02:00
Thomas Gelf 8a770007ff Modules\Module: provide a lighter header sample
We should get rid of the current way of copying license snippets to
every single file. This is a first example of how a lighter header
could look like. I'd add a short slogan to the title and place a
copy of the license to icinga.org, so our links could point there
instead of gnu.org.

refs #6309
2014-05-26 14:17:46 +00:00
Thomas Gelf 7c68d0a30f Modules\Module: clean up phpdoc blocks 2014-05-26 14:14:34 +00:00
Thomas Gelf 5b87d6238b Modules\Module: improve provided metadata
refs #4095
2014-05-26 14:11:43 +00:00
Eric Lippmann 6ff5a986dd Modules: Don't call `FrontController::getRoute()' twice
refs #6303
2014-05-26 13:08:47 +02:00
Thomas Gelf 24f2ae607f Pdf/Charts: add initial chart support to PDFs
Problem: TCPDF had SVG support, dompdf hasn't. This patch adds a
first rudimentary PNG conversion and a sample implementation making
use of such.
2014-05-20 22:48:06 +00:00
Thomas Gelf 78bc2b4ec7 Modules\Manager: no warning for duplicate modules
Formerly we logged a warning if a module was found in multiple module
paths. This is pointless, because as soon as you got a default module
installed by your distribution and "upgraded" it via your web frontend
this "error" will be the default. Logging at debug level right now.
2014-05-20 22:39:32 +00:00
Johannes Meyer c711e3405d Fix cli default log configuration and js-loader debug message 2014-05-05 16:17:21 +02:00
Johannes Meyer 98ca15d1fb Mark less important or non-testable code as skipped for code coverage
refs #6011
2014-04-28 14:06:41 +02:00
Johannes Meyer 891d36dbd7 Make DateTimeFactory expecting a string instead of a DateTimeZone 2014-04-28 14:06:39 +02:00
Michael Friedrich f510130797 Look for ICINGAWEB_CONFIGDIR in $_ENV too.
Refs #5638
2014-04-23 11:23:29 +02:00
Thomas Gelf fa3e7f9fc2 Module list should not throw Exceptions if no config is present 2014-04-17 21:16:51 +00:00
Thomas Gelf 0d6aeb3877 Make CLI logging robust against missing config 2014-04-17 21:09:30 +00:00
Thomas Gelf 3f9bc5dea6 Use no space in syslog application name 2014-04-17 21:04:15 +00:00
Thomas Gelf f04d765365 Fix routing for static content with internal webserver 2014-04-17 20:59:37 +00:00
Thomas Gelf 6f9c187d47 Default configDir in App bootstrap related to last commit 2014-04-17 17:01:23 +00:00
Thomas Gelf 5fdec39475 More consistent default config dir handling, less configuration 2014-04-17 16:59:10 +00:00
Thomas Gelf 3b20833495 Cosmetic web router changes 2014-04-17 16:47:01 +00:00
Johannes Meyer a844d33735 Do not create alias mock for Icinga\Application\Icinga
refs #4639
2014-04-14 08:31:46 +02:00