Commit Graph

468 Commits

Author SHA1 Message Date
Johannes Meyer 259a465f97 Show only the most important warning on the login page 2014-11-12 16:23:55 +01:00
Johannes Meyer 2eb9a771c9 Do not check for any config file, just the directory to show the login-warning
refs #7163
2014-11-12 15:58:18 +01:00
Alexander Fuhr 8f6cac6a9e Add translation to preference tab title 2014-11-12 11:10:25 +01:00
Johannes Meyer b26e585837 Fix that the authentication.ini is being used as trigger for the config warning
Should have been the config.ini instead.

refs #7163
2014-11-11 12:42:49 +01:00
Johannes Meyer 8909bd5d59 Show warning on login page even if the configuration directory exists
refs #7163
2014-11-11 10:04:01 +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 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 7b99b74ae1 Prefer Icinga\Application\Config instead of Zend_Config
refs #7147
2014-11-07 13:53:03 +01:00
Eric Lippmann ebd77ee5c1 security: Add actions for creating, updating and removing restrictions
refs #5647
2014-11-06 17:39:20 +01:00
Eric Lippmann d0fc38ce94 security: Add controller for creating, updating and removing permissions
refs #5647
2014-11-04 16:17:54 +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
Eric Lippmann b38e3affb9 Move INI writer classes to the File namespace
fixes #7150
2014-10-31 10:54:53 +01:00
Eric Lippmann 16352fc10c Move Logger to the Application namespace
fixes #7148
2014-10-31 10:27:17 +01:00
Johannes Meyer c1bff9a26e Merge branch 'master' into feature/setup-wizard-7163 2014-10-30 10:38:21 +01:00
Eric Lippmann 2698516005 Auth: Remove setting the not existent layout 'login' when logging out externally authenticated users
fixes #7191
2014-10-29 16:31:17 +01:00
Johannes Meyer 03bbc2e2e6 Use a dedicated method to clear a wizard's session
Simplifies session removal in case a sub-class of Icinga\Web\Wizard
requires special session handling

refs #7163
2014-10-24 13:55:41 +02:00
Johannes Meyer ffc69c378c Fix typo in ConfigController::moduleenableAction() 2014-10-24 13:49:49 +02:00
Johannes Meyer b4a69792d8 Add note to login page when the configuration directory is missing
refs #7163
refs #7409
2014-10-21 16:11:49 +02:00
Eric Lippmann a2e1663e34 index: Don't drop query parameters when redirecting to dashboard 2014-10-20 13:27:33 +02:00
Johannes Meyer c0df55c079 Add progress bar
refs #7163
2014-10-14 16:14:28 +02:00
Johannes Meyer 1cbe2451a8 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	application/forms/Config/Resource/StatusdatResourceForm.php
2014-10-08 16:34:31 +02:00
Johannes Meyer b50c780bcf Let the setup's view scripts be a bit more generic
refs #7163
2014-10-06 16:04:58 +02:00
Eric Lippmann 266936b9b5 Fix that logout of unauthenticated users throws exceptions 2014-10-01 08:13:17 +02:00
Matthias Jentsch 8008387559 Fix typo 2014-09-30 15:59:11 +02:00
Matthias Jentsch 9a57ddcfa6 Fix login redirects when AutologinBackend is used 2014-09-30 15:49:31 +02:00
Johannes Meyer cbadaa78d6 Merge branch 'master' into feature/setup-wizard-7163 2014-09-29 15:35:52 +02:00
Alexander Fuhr f7b7e0283a Translation: another bunch of translatable strings 2014-09-29 15:20:19 +02:00
Johannes Meyer 288ae6885b Show the web wizard, finally
refs #7163
2014-09-29 14:31:43 +02:00
Johannes Meyer 98fbfe68a8 Redirect to /setup if necessary
A user gets now redirected to /setup in case he is not logged in, the token
file exists and no config.ini was found.

refs #7163
2014-09-24 10:46:34 +02:00
Johannes Meyer 83772c6684 Merge branch 'master' into bugfix/rebuild-form-builder-5525 2014-09-09 16:03:22 +02:00
Matthias Jentsch 71f55e388f Only display custom menu renders on XHR requests and not in regular HTML
The main navigation should be rendered without a working backend.

fixes #7143
2014-09-09 15:33:42 +02:00
Matthias Jentsch 157818c8e7 Fix navigation reload
Activate the correct menu item with JavaScript after relaod and don't
 render it on server-side on XHR requests.
2014-09-09 13:57:48 +02:00
Johannes Meyer c947ba3b18 Use the new view script to show INI configuration in case of failures 2014-09-09 09:46:57 +02:00
Matthias Jentsch 545db945da Auto refresh menu
Put the navigation into a container and reload it once every 15 seconds from a distinct menu action. Include the current
path into an URL param to still be able to mark the current menu item as active.

fixes #6955
2014-09-08 15:21:14 +02:00
Johannes Meyer f53519c54d Rename ConfigForm::setConfig() to ConfigForm::setIniConfig()
We do not want to override Zend_Form::setConfig() so this renaming is
required. set*Ini*Config() because ConfigForm::save() utilizes an ini-writer
to persist the configuration to disk.

refs #5525
2014-09-08 13:31:25 +02:00
Alexander Fuhr e8d526fcf9 StaticController: Fix img file inclusion 2014-09-08 12:59: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
Thomas Gelf 5a73f4b3c9 list: ooops 2014-09-05 15:33:34 +02:00
Thomas Gelf b034028ff8 Menu: do not show application log when none exists
Added new functions to the logger to get rid of distributed logging config
"knowledge".

fixes #7062
fixes #7098
2014-09-05 15:31:30 +02:00
Thomas Gelf d48f0ec453 static/gravatar: fetch smaller images 2014-09-05 12:00:29 +02:00
Johannes Meyer fc72ddfbc8 Adjust Preferences/GeneralForm to use handleRequest() &. Co.
refs #5525
2014-09-05 10:21:24 +02:00
Thomas Gelf 0f7f2f2d8b SearchDashboard: rename ::load() to ::search()
Function signature didn't match parent factory function

fixes #7081
2014-09-04 19:35:31 +02:00
Alexander Klimov 36a3c36c1b Rename Icinga\Protocol\File\Reader to ...\File\FileReader 2014-09-04 16:37:24 +02:00
Alexander Fuhr 1eacde0233 Implement modules self provided search configuration
refs #6495
2014-09-04 16:31:10 +02:00
Alexander Klimov f4b820aa57 Application log: don't use Icinga\Application\Config to get the log file name
refs #7060
2014-09-03 13:40:53 +02:00
Thomas Gelf 8577940e1e StaticController: cache gravatar images
fixes #7061
2014-09-02 16:31:38 +02:00
Johannes Meyer 5464321a1b ConfigController: Remove obsolete functionality 2014-09-02 16:25:03 +02:00
Johannes Meyer 1ba3df310c Remove BaseConfigController, User\Message and Widget\AlertMesageBox
refs #6758
2014-09-02 16:25:03 +02:00
Johannes Meyer 2d86e6ba3b Rename ResourceForm and make it use handleRequest() & Co.
refs #5525
2014-09-02 16:25:03 +02:00
Johannes Meyer deebb64869 Adjust Icinga\Form\Config\General* to use handleRequest() & Co.
refs #5525
2014-09-01 16:16:56 +02:00
Johannes Meyer 0e63e36ec0 Move Icinga\Form\Config\ConfirmRemovalForm to Icinga\Form
This is a generic form not necessarily being used just for configuration
purposes.

refs #5525
2014-09-01 15:11:09 +02:00
Marius Hein 751d2e6d11 ErrorController: Log exception and stacktrace
refe #5896
2014-09-01 10:00:04 +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 ae35650c7e Adjust authentication backend forms to suit.. some form implementation
refs #5525
2014-08-29 15:16:13 +02:00
Marius Hein 436a4d2965 ResourceConfig: Chance createResouce to create
Not useful everywhere. Changed on the best suitable places.

refs #5514
2014-08-28 12:14:55 +02:00
Alexander Fuhr 66062c87b6 Remove unused use Zend_Config 2014-08-28 10:55:06 +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
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
Marius Hein 88698cb05d Hook/TopBar: Rework interface for monitoring top bar
refs #6929
2014-08-27 11:31:48 +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 Fuhr af0cf48197 Add self provided configuration for dashlets
refs #6639
2014-08-26 10:34:35 +02:00
Johannes Meyer 7b221e2aba It should not be a form's responsibility how its submit button should look..
...in case it's a standard button. No need to be DRY here.

refs #5525
2014-08-22 15:20:54 +02:00
Johannes Meyer 403f745488 Remove obsolete loggingAction
refs #6933
2014-08-22 12:34:33 +02:00
Alexander Fuhr 20cead67a6 Merge branch 'master' into bugfix/modules-menu-provider-6639 2014-08-22 11:44:10 +02:00
Alexander Fuhr f757f69bd1 Change Menu load from config ini files to self provided configuration
refs #6639
2014-08-22 11:10:17 +02:00
Johannes Meyer bc05d2ee64 Merge LoggingForm into GeneralForm
fixes #6933
2014-08-22 11:05:20 +02:00
Thomas Gelf af97db31d7 StaticController: fix gravatar sample img header 2014-08-21 19:10:53 +02:00
Johannes Meyer bb7972aa39 Merge branch 'master' into bugfix/rebuild-form-builder-5525
Conflicts:
	application/controllers/AuthenticationController.php
	application/controllers/ConfigController.php
	application/forms/Authentication/LoginForm.php
	application/forms/Preference/GeneralForm.php
	modules/monitoring/application/controllers/ChartController.php
2014-08-20 13:13:50 +02:00
Thomas Gelf 736113c80c AuthenticationController: show friendlier hints...
...while not disclosing sensitive information. More to come once we
have our setup wizard.

fixes #6534
2014-08-19 18:55:58 +02:00
Alexander Fuhr 2f54ff4797 Fix the unrelated tabs
resolves #6934
2014-08-19 13:18:52 +02:00
Alexander Fuhr c69af6c5d2 Move "modules" to "System" menu
resolves #6934
2014-08-19 11:14:18 +02:00
Thomas Gelf f67d273bbd AuthenticationController: handle redirect parameter
This is a form field instead of a get parameter right now.

fixes #6584
2014-08-19 10:14:46 +02:00
Thomas Gelf 5a6b5172e6 Menu: ignore special params when comparing URLs
This fixes issues on login with dashboard != dashboard?renderLayout
and similar

refs #6699
2014-08-19 10:06:14 +02:00
Johannes Meyer e6bcda260d Redirect after a new resource has been created successfully
refs #5525
2014-08-12 10:42:28 +02:00
Johannes Meyer eea43e9a60 Adjust Icinga\Form\Dashboard\AddUrlForm to suit the new form interface
refs #5525
2014-08-12 09:49:27 +02:00
Marius Hein e2c761a7aa AutoLogin/Logout: Remove own session namespace
Store data in the user and implement interface to left
backends store remote information.

fixes #6461
2014-07-30 12:35:55 +02:00
Alexander Klimov e07f2a2b0d Show an error message if a ConfigurationError is thrown 2014-07-29 12:25:48 +02:00
Marius Hein 8b9d446d2e Autologin: Remove deprecated autologin methods
Remove methods from manager because autologin
is now handled with special backends (AutoLoginBackend).

The session is used to store the status about a remote
user authentication to send a 401 header to the client
upon logout.

refs #6461
2014-07-29 10:48:57 +02:00
Alexander Klimov 644b3a1628 Make it possible to remove an authentication backend
refs #6434
2014-07-25 14:49:05 +02:00
Alexander Klimov c06db7495b Merge remote-tracking branch 'origin/bugfix/rebuild-form-builder-5525' into bugfix/autologin-backend-form-6434 2014-07-25 10:57:08 +02:00
Alexander Klimov 50de21e437 Make it possible to edit an authentication backend
refs #6434
2014-07-25 10:29:33 +02:00
Alexander Klimov af898cc2b3 Prefer switch rather than if - elseif 2014-07-24 17:35:26 +02:00
Johannes Meyer c3731fa79e Adjust removeresource-action to suit the new resource form interface
refs #5525
2014-07-24 16:17:30 +02:00
Alexander Klimov 1902b4f10f Make it possible to create an authentication backend of type autologin
refs #6434
2014-07-24 15:50:01 +02:00
Johannes Meyer 0964316df4 Adjust editresource-action to suit the new resource form interface
refs #5525
2014-07-24 12:37:33 +02:00
Johannes Meyer fd912daa3d Adjust createresource-action to suit the updated resource form interface
refs #5525
2014-07-23 16:39:54 +02:00
Johannes Meyer c8d61f78e7 Fix the config/resource-action's html markup 2014-07-23 12:55:43 +02:00
Johannes Meyer 9cdd891866 Drop ReorderForm and handle its logic in the controller and view instead
refs #5525
2014-07-23 12:35:39 +02:00
Johannes Meyer a73e2ee654 Adjust general config form to suit the new form builder implementation
refs #5525
2014-07-21 14:33:52 +02:00
Johannes Meyer a9f0b95e51 Adjust preferences form to suit the new form builder implementation
refs #5525
2014-07-21 10:20:04 +02:00
Johannes Meyer 7157b11f97 Adjust LoggingForm to suit the "final" form builder implementation
refs #5525
2014-07-18 10:29:23 +02:00
Johannes Meyer 5da14d3fc5 Adjust LoginForm to suit the "final" form builder implementation
refs #5525
2014-07-18 10:23:04 +02:00
Johannes Meyer 1de2d0c14f Merge branch 'master' into bugfix/rebuild-form-builder-5525
Conflicts:
	application/forms/Authentication/LoginForm.php
	library/Icinga/Test/BaseTestCase.php
	library/Icinga/Web/Form.php
	library/Icinga/Web/Form/Decorator/BootstrapForm.php
2014-07-17 13:15:42 +02:00
Johannes Meyer 3105c2059e Remove license headers from all files
refs #6309
2014-07-15 13:43:52 +02:00
Johannes Meyer d22363d365 Fix error messages not being displayed in the preferences configuration 2014-07-10 13:43:49 +02:00
Johannes Meyer 6690410c42 Adjust Icinga\Form\Config\LoggingForm to suit the new form builder
refs #5525
2014-07-10 11:16:31 +02:00
Johannes Meyer 630b36e706 Adjust Icinga\Form\Authentication\LoginForm to suit the new form builder
refs #5525
2014-07-10 11:15:46 +02:00
Johannes Meyer e21b4243ca Fix error message when no authentication method available
The error handling for configuration files has slightly changed (non
existent files are treated as empty) so the authentication chain handling
needed to be adjusted as well.

fixes #6268
2014-07-09 12:53:25 +02:00
Johannes Meyer 82d2f5ac9b Revert "Merge branch 'feature/install-wizard-6136'"
This reverts commit 88d4262e7c, reversing
changes made to 6fae333048.

Conflicts:

	application/controllers/InstallController.php
	library/Icinga/Web/Controller/ActionController.php
2014-07-07 15:09:03 +02:00
Johannes Meyer 143a1e44fe Add a HTML renderer for Icinga\Web\Menu
The menu was being rendered through recursive partials before. The
overhead this fact implicates is not as efficient as standard recursion
so there is now a special renderer for Icinga\Web\Menu utilizing
the RecursiveIteratorIterator

refs #6153
2014-07-03 15:46:46 +02:00
Johannes Meyer f2e5d8afa5 Remove @codeCoverageIgnoreStart/-Stop annotations
refs #6091
2014-06-30 13:58:37 +02:00
Thomas Gelf 3020273b36 ConfigController: re-add devtools action
I accidentally removed it. Don't care about this right now, this is
just a playground.
2014-06-25 20:31:44 +02:00
Thomas Gelf 2b23b259fa ConfigController: notification text fixes
NB: We still have to translate them
2014-06-25 10:50:31 +02:00
Thomas Gelf 2746b5ff9f ConfigController: switch over to new config tabs
Module configuration now takes place in module detail view and does no
longer pollute our config tabs. Modules are now able to provide a bunch
of own config tabs, we don't really care what they use them for.
2014-06-24 21:31:59 +02:00
Thomas Gelf f7d2bdbc78 ConfigController: notifications before redirection
That's how they reach the browser in a nice way
2014-06-24 21:11:48 +02:00
Thomas Gelf 3576263559 config/devtools: playground for developer tools
This is nothing but a prototype right now but could become pretty
useful. We want to allow our users to control most of our developer
tools without deep knowledge about Icinga Web internals.

This first prototype allows allows one to toggle the JS UI debug
window.
2014-06-24 20:50:02 +02:00
Thomas Gelf b7b99cfd67 Widget\AlertMessageBox: fix broken widget
This widget is pretty useless as the error view script can to it's
job. Interestingly nobody missed it, even the render() call was wrong.

I guess we will remove this soon, but for now it's fixed. Looks ugly,
but works.
2014-06-24 20:30:41 +02:00
Thomas Gelf a1acd52ad9 SearchController: disable autorefresh
Makes no sense as search dashlets refresh themselves.

refs #6536
2014-06-23 10:50:55 +02:00
Thomas Gelf 3fc1205175 AuthenticationController: use Auth() helper function 2014-06-22 20:08:55 +02:00
Thomas Gelf 23ed744747 params/_render: replace it everywhere
Cleaning up controllers and JS, using headers only and respecting
history.
2014-06-22 20:07:44 +02:00
Thomas Gelf 78193137f0 config/modules: show metadata, improve usability
Well... I didn't want to commit this before creating single-button
forms for enabling/disabling modules. However part of this accidentally
made it through, so let's finish it.

Still some work to do, but it already looks far better like this.

refs #4095
2014-06-21 02:27:27 +02:00
Thomas Gelf 216c2ca770 Autorefresh: should work also on initial page load
fixes #6296
2014-06-21 01:54:32 +02:00
Thomas Gelf 9411dec5d0 StaticController: improve cache headers
Apache does automagic stuff if we don't care (e.g. pragma). Playing
around with ETags, not happy yet.
2014-06-20 14:53:38 +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 7215ba4f59 Autologin: Do not require a bogus password in the source code 2014-06-11 15:46:58 +02:00
Eric Lippmann a5e9d6cf0d auth: increase backends tried counter AFTER skipping autologin backends 2014-06-06 09:33:29 +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
Marius Hein 20b43a92f1 Dashboard: Better implementation of handling errors
refs #6412
2014-06-05 16:07:40 +02:00
Marius Hein 151f058286 Dashboard: Display error message on failure
When no (default) configuration is available for dashboards
application dies not very gracefully. Display error message
and guid the user to the solution is a better way.

fixes #6412
2014-06-05 15:20:54 +02: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
Eric Lippmann 086e2b6197 Auth: Log and notify user about authentication backend errors
refs #5685
2014-06-02 15:47:21 +02:00
Eric Lippmann ede403977a Auth: Get password from form only once
Before, the user's password was retrieved for every authentication
backend tried for authentication.
2014-06-02 14:04:45 +02:00
Thomas Gelf f7c5119424 Search: split result and search hint
There was an ugly if/else in the view script, this patch creates two
of them and adds friendlier search suggestions.
2014-05-28 11:13:41 +00:00
Thomas Gelf cfa0251dbf Translation: another bunch of translatable strings
refs #6339
2014-05-27 21:47:13 +00:00
Thomas Gelf 358b2582bc ErrorController: show valid title for exceptions
Multiline strings are not considered being a valid title. This patch
strips all but the first line from the exception message when setting
the title attribute.
2014-05-20 13:40:52 +00:00
Johannes Meyer 1637a19c23 Fix multistep form creation
refs #6136
2014-05-14 12:53:44 +02:00
Johannes Meyer 429e09aae2 Multistep pages should not have random generated names
refs #6136
2014-05-14 12:53:44 +02:00
Johannes Meyer 88e451402f Redirect to /install when the setup.token exists but no config.ini
refs #6136
2014-05-14 12:53:44 +02:00
Johannes Meyer 4cf5fe6fdd Add multistep form
refs #6136
2014-05-14 12:53:44 +02:00
Johannes Meyer e1230eb8ae Add style and view scripts for first prototype
refs #6136
2014-05-14 12:53:44 +02:00
Johannes Meyer 4cf3044a53 Rename Icinga\Logger\Writer\StreamWriter to FileWriter
refs #6038
2014-04-30 11:59:22 +02:00
Johannes Meyer a5faa8bf25 Fix ResourceForm
refs #6038
2014-04-30 10:16:20 +02:00
Johannes Meyer e2ba172a8e Make dashboard components using the ini writer class
fixes #5524
2014-04-29 11:30:53 +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 3d44c45eb8 Rename EditResourceForm to ResourceForm
refs #6011
2014-04-28 14:06:38 +02:00
Johannes Meyer aaa6a56146 Refactor authentication config form tests and fix auth backend validation
refs #6011
fixes #5712
2014-04-28 14:06:38 +02:00
Thomas Gelf 4a6fe006d8 Show exception message in title 2014-04-17 16:21:48 +00:00
Johannes Meyer 82ca774331 Re-enable setting the current configuration when showing icingaweb/config
fixes #5972
2014-04-08 15:18:14 +02:00
Alexander Klimov cdf1a0b683 Write more class documentation 2014-04-02 13:47:02 +02:00
Alexander Klimov 241fda1196 Small cleanup 2014-04-02 13:47:02 +02:00
Alexander Klimov d38e879d69 Sort application log DESC
resolves #4514
2014-04-02 13:47:02 +02:00
Alexander Klimov e2bfc06d6c Moved application log from monitoring module
refs #4514
2014-04-02 13:47:02 +02:00
Johannes Meyer bafa8cc032 Fix authentication error handling 2014-03-28 14:45:03 +01:00
Thomas Gelf 90665a2711 Re-render page when en/disabling modules and trigger client-side CSS reload 2014-03-26 07:58:57 +00:00
Thomas Gelf ad0432f3be Do not search with empty search string, add servicegroups 2014-03-25 12:30:05 +00:00
Thomas Gelf 440b1cf730 Re-enable search result autorefresh as it should work fine right now 2014-03-25 12:14:26 +00:00
Thomas Gelf f612610fa7 Friendlier error controller, special handling for 404 with disabled module 2014-03-25 12:10:02 +00:00
Thomas Gelf 08c66afec2 Basic styling for 'Add to dashboard' 2014-03-10 01:40:23 +01:00
Thomas Gelf cdc717b88f No search autorefresh unless fixed 2014-03-09 01:56:05 +01:00
Thomas Gelf d729d9381d Temporarily remove 'plus' link from dashboard 2014-03-08 21:39:12 +01:00
Thomas Gelf 13f827a0ef Cleanup preferences, add them to the menu 2014-03-07 17:03:43 +00:00
Thomas Gelf 95189fbf46 Fix layout re-rendering after login (thank you, automerge) 2014-03-06 11:07:24 +00:00
Thomas Gelf 635cdcbbc5 autorefresh even for search results, nicer headers 2014-03-04 13:25:58 +00:00
Thomas Gelf 915a024030 _render handled in IndexController. Does this make any sense? 2014-03-04 13:24:53 +00:00
Thomas Gelf 3daf46097d Less hacky dashboard activation 2014-03-04 13:22:39 +00:00
Thomas Gelf c58f79c161 One more automerge issue 2014-03-04 12:45:22 +00:00
Thomas Gelf 57caacb93f Merge branch 'feature/fanzzzy-5481' into feature/master-1
Conflicts:
	application/controllers/AuthenticationController.php
	application/controllers/ErrorController.php
	application/views/scripts/authentication/login.phtml
	library/Icinga/Application/ApplicationBootstrap.php
	library/Icinga/Web/Controller/ActionController.php
	library/Icinga/Web/Hook.php
	library/Icinga/Web/Widget/Dashboard.php
2014-03-04 09:42:25 +00:00
Eric Lippmann 07d04628cf Merge branch 'feature/installation-and-configuration-cleanup-5638'
Conflicts:
	config/config.ini.in
	library/Icinga/Application/ApplicationBootstrap.php
	library/Icinga/Application/Cli.php
	library/Icinga/Application/EmbeddedWeb.php
	library/Icinga/Application/Logger.php
	library/Icinga/Application/Modules/Manager.php
	library/Icinga/Application/Web.php
	library/Icinga/Authentication/Backend/DbUserBackend.php
	library/Icinga/Authentication/Manager.php
	library/Icinga/User/Preferences/IniStore.php
	test/php/library/Icinga/Application/LoggerTest.php
2014-03-03 19:03:39 +01:00
Eric Lippmann 7bf888a554 Vagrant: Add monitoring module config 2014-03-03 18:16:07 +01:00
Eric Lippmann 39c80dccaf Decouple authentication backend creation from Icinga\Authentication\Manager
Add authentication backend type msldap with default values for user_class
and user_name_attribute. Backend type ldap now logs an error when user_class
and user_name_attribute ist not configured. Rename membership.ini to
memberships.ini since all our INI configuration files are in the plurar
where it makes sense. The AuthenticationController now handles
authentication

refs #5685
refs #5638
fixes #5218
2014-03-03 17:21:17 +01:00
Matthias Jentsch a8f765fa3b Add extern authentication
Provide a new settings authenticationMode and delegate the
authentication handling to the webserver when the external authentication mode
is set. Add a new view 'logout' that will be shown after logout from external
authentication as the regular redirect to login is not possible.

refs #5405
2014-02-26 18:08:48 +01:00
Johannes Meyer 3555e66018 Make IcingaWeb using the new log wrapper
refs #5683
2014-02-26 11:19:52 +01:00
Thomas Gelf ddc10c948f Add new global search to menu 2014-02-25 10:56:58 +00:00
Thomas Gelf bef3f70992 Temporary ugly active-tab fix for config controller 2014-02-25 10:23:36 +00:00
Thomas Gelf 0bc65d97cb Gravatar sample implementation. This is ugly, NEVER use it in production 2014-02-21 14:05:28 +00:00
Thomas Gelf 75b12ddaab Replaced 'Add ...' with a plus in dashboard, shall be a dropdown 2014-02-21 14:03:48 +00:00
Thomas Gelf be9c0723ce Error controller needs no authentication 2014-02-21 14:03:48 +00:00
Thomas Gelf 39b3af4b51 We no longer need a dedicated layout for login 2014-02-21 14:03:48 +00:00
Markus Frosch 971a87c608 Fixed executable flags on normal files.
Refs #5040
2014-02-18 09:42:13 +01:00
Eric Lippmann 69a482d106 Auth: Connect only when a authentication backend is used. Fix log in error messages
refs #5506
refs #5638
fixes #4931
2014-02-18 09:33:33 +01:00
Eric Lippmann 35fc451115 Rework save preferences 2014-02-17 14:11:55 +01:00
Thomas Gelf 585b3aa506 Workaround for default tab issue on Dashboard, should be fixed elsewhere 2014-02-14 14:09:10 +00:00
Thomas Gelf e00e5c9824 Security warning for an issue in the StaticController - still unfixed 2014-02-14 14:08:23 +00:00
Eric Lippmann b9357af893 The ErrorController must not require authentication 2014-02-14 12:12:46 +01:00
Eric Lippmann 68086f1b79 Fix PHP Warning: The use statement with non-compound name 'Exception' has no effect 2014-02-12 16:59:53 +01:00
Matthias Jentsch 342a9375de Move pdf.css into different directory to prevent it from being loaded during
regular requests.

refs #5644
2014-02-12 15:44:02 +01:00
Thomas Gelf f6692ba436 We should catch all Exceptions when showing errors on the login screen 2014-02-12 12:57:17 +00:00
Matthias Jentsch 80488644d4 Add pdf export functions
refs #4356
2014-02-12 12:09:33 +01:00
Marius Hein 1a6d1a20fb Fix: Simplify TopBar hook
refs #5597
2014-02-12 09:58:59 +01:00
Marius Hein 51188daa45 Implenent TopBar hook and status summary as hook in monitoring
refs #5597
2014-02-11 17:12:17 +01:00
Eric Lippmann f96974fc79 Modules/Doc: Use Icinga\Web\Menu for the toc
refs #4820
2014-02-11 15:13:18 +01:00
Alexander Klimov fc1fb60b01 Re-add benchmark helper
Enable benchmark via user preferences

resolves #5508
2014-01-24 12:20:13 +01:00
Eric Lippmann 2242973568 XHR: Force redirect to login if session is expired
resolves #5507
2014-01-23 16:03:47 +01:00
Thomas Gelf 81b47cf861 Useless use of return 2014-01-22 14:55:58 +00:00
Eric Lippmann 4473008d65 Show error message and stack trace on exceptions
refs #5507
2014-01-22 14:57:54 +01:00
Matthias Jentsch cd0194e20f Fetch and clean user messages lazily, to ensure that only shown messages are removed
This will make the code of the ConfigController way easier, as messages can be
send from everywhere and there is no need to consider consquences of
redirections.

refs #5100
2013-11-26 10:41:51 +01:00
Matthias Jentsch 2a0add3ec3 Fix messages in ConfigController
Store messages in the current user session to be able to fetch messages from
other controllers, so that the use can be redirected back to the index, instead
of staying in the original action

refs #5100
2013-11-20 19:10:38 +01:00
Matthias Jentsch 941ce6d68e Fix bug that caused ajax-request to override values written to the session
Authentication/Session.php and its Subclasses do not have a open/closed -state
anymore. Read will refresh the session, write will always write the changes,
and opening/closing will be handled internally.

refs #5101
2013-11-20 12:01:40 +01:00
Matthias Jentsch d65bd33205 Add configuration for resources
Add views and controller to handle resource configuration. Add form to edit
several resource types at once.

refs #4786
2013-11-13 18:12:00 +01:00
Matthias Jentsch 2cf154310b Add controller to handle resource configuration
Add the controller, forms and views to handle the resource configuration.

refs #4786
2013-11-06 19:02:30 +01:00
Eric Lippmann ca1d50ae53 Rename Icinga 2 Web to Icinga Web 2 2013-10-23 15:11:06 +02:00
Jannis Moßhammer 1a95e48deb Fix row style, add dashboard as default route 2013-10-23 14:20:32 +02:00
Jannis Moßhammer 6c8bc91d89 Add login page with own template 2013-10-22 14:33:07 +02:00
Jannis Moßhammer c4f3e78c02 Fix filter behaviour, fix statusdat filter
refs #4469
2013-10-21 17:04:39 +02:00
Matthias Jentsch 6062d5f716 Add the html-anchor from the url to the login redirection
Change the Url class to support html anchors and add JavaScript to
fetch the anchor from the URL, as it is regularly not send to the
server.

refs #4833
2013-10-20 16:31:56 +02:00
Jannis Moßhammer 4a95ba3468 Change url handling to detail on hashtag, add service filter
The url is now
http://%mainUrl%#%anchor%!detail=%detailUrl%
which allows us to better support IE and prevents
the detail url from appearing on the server side.

refs #4868
2013-10-17 19:55:00 +02:00
Jannis Moßhammer d33cec78de Semantic search implementation
- Only implemented for hosts as an example
- URL behaviour still has to be normalized

refs #4469
2013-10-17 19:52:52 +02:00
Jannis Moßhammer dac61eda19 Implement Filter to IDO Sql parser
refs #4469
2013-10-17 19:52:25 +02:00
Jannis Moßhammer 24da98be83 Implement base filter library and tests
refs #4469
2013-10-17 19:52:25 +02:00
Marius Hein cc8ecf262f Reorganized styles
refs #4895
2013-10-16 14:49:03 +02:00
Marius Hein 460e0fe242 Implement on-the-fly less compilation
refs #4892
2013-10-16 12:00:09 +02:00
Matthias Jentsch ec2ffcabdf Add redirection to AuthenticationController
refs #4670
2013-10-04 15:43:02 +02:00
Marius Hein e7696bec89 CS: Fixes for controllers: Static, Action, List and Show
refs #4611
2013-09-24 12:52:00 +02:00
Jannis Moßhammer 62e98ccbd7 Remove different caching headers for development
This has the reason that it's better to add a cache-buster via
requirejs, so only the main.js module must be modified in development
mode and we avoid an ugly bug in recent Chrome versions that prevents
<script> nodes from being correctly loaded in some cases (aborted
requests)

refs #4611 (not really, but kind of)
2013-09-23 13:55:49 +02:00
Eric Lippmann a5908c9553 CS: Replace multiple empty lines with one
find application/ library/Icinga/ test/ modules/ -name *.php | xargs sed -i '/^$/N;/^\n$/D'
2013-09-04 18:36:10 +02:00
Eric Lippmann 05d08fb0b8 Fix Bootstrap typed wrong
refs #4601
2013-09-04 17:12:44 +02:00
Jannis Moßhammer 57e66c247a Add sort widget, change js path from module to app, small style fixes
refs #4601
2013-09-04 15:22:00 +02:00
Jannis Moßhammer 9f923b4940 Fix pagination and remove ModuleController, rename handlesAuth
This commit introduces the following changes:
- Count is now performed after joins are added to the selection query,
  therefore returning the correct number
- MonitoringControllerTest now needn't to mock ModuleActionController (which is now removed)
- handlesAuthentication is now requiresAuthentication
- Redirection to login is now directly handled in the ActionController constructor,
  so we don't need to overwrite the preDispatch method

refs #4589
refs #4591
refs #4572
2013-09-02 18:42:05 +02:00
Marius Hein b6eb19ce6a Module enable/disable: Better error messages
refs #4604
2013-09-02 12:52:51 +02:00
Marius Hein 7c8252a983 Rename class Credentials to Credential
refs #4641
2013-08-30 12:50:57 +02:00
Jannis Moßhammer 2c97ab26a4 Code style, Form tests and bugfixes
This commit summarizes the bugfixes made in this branch. As the frontend the fixes required a lot of stuff to be fixed afterwards and #4602 was used as a larger example regression test, this affects a few tickets:

- (Bug 4491) Frontend tests will hang randomly: CasperJS now operates on the installed version, so this shouldn't happen anymore
- (Bug 4602) Configuration Interface - Authentication: Backends moved when pushing enter: The authentication interface is reworked and does not persist a state over pages
- (Bug 4605) /tmp should not be the default log path: Now it is the application relative var/log path
- (Bug 4606) Configuration: Show message that changes were saved successfully: Implemented and tested with casperjs
- (Bug 4641) Installation/Testing fix configure/make: This has been reworked
- (Bug 4642) Allow Application placeholder in config: This was required for implementimg 4605
- (Bug 4643) Application doesn't work with older Zend Versions: A fallback __call has been implemented for this

refs #4491
refs #4602
refs #4605
refs #4606
refs #4641
refs #4642
refs #4643
2013-08-29 11:48:33 +02:00
Jannis Moßhammer d0ac97f335 Configure fixes, regression test for 4606
The configure routine still has to be improved, right now unused
authentication backends are commented out

refs #4491
refs #4606
refs #4640
2013-08-29 11:48:32 +02:00
Jannis Moßhammer 17e6402aa9 Split up authentication form, logic connectivity check
refs #4606
refs #4622
refs #4602
refs #4546
2013-08-29 11:48:29 +02:00
Jannis Moßhammer 81b41326cc Update frontend tests, add loginpage test
the runner now supports --host, --port, --path, --user and --pass for
icingaweb access and doesn't spawn any servers by itself.

Also a login test has been added. Other tests are removed as they don't
apply anymore.

refs #4491
2013-08-29 11:47:10 +02:00
Matthias Jentsch aba98afd3f Change used ini writer to PreservingIniWriter to preserve configuration comments
refs #4610
2013-08-27 18:28:21 +02:00
Marius Hein afc302d45c Bootstrap: Safe application start
Log exceptions and inform user if something goes wrong.

refs #4625
refs #4592
2013-08-23 17:28:13 +02:00
Eric Lippmann edb06ea8ea CS: Fix viloations for touched files in branch feature/backend-configuration-ui-3776
refs #3776
2013-08-21 14:22:31 +02:00
Jannis Moßhammer dbdfd09796 Fix Preferences writing empty values
refs #4525
2013-08-21 14:22:30 +02:00
Jannis Moßhammer 9cd4c2f856 Fix codestyle, add basic tests
refs #4525
2013-08-21 14:22:30 +02:00
Jannis Moßhammer a6ff6ecadd Fix Codestyle/PHPDoc, fix configPath being Overwritten
Also removed possibility to disable debugging as there's no use case for this

refs #4525
refs #4598
2013-08-21 14:22:30 +02:00
Jannis Moßhammer 49d92d0c33 Implement user preferences form
refs #4525
2013-08-21 14:22:30 +02:00
Jannis Moßhammer 972bc9853e Configuration interfaces for logging, authentication and general configuration
- Added HelpText decorator
- Added Time and DateFormatValidator
- Added tests

refs #3777
2013-08-21 14:22:30 +02:00
Jannis Moßhammer c705f5d475 Implement Authentication form
- Allow creation of authentication providers
- Allow modification of authentication providers
- Allow reordering of authentication providers

refs #3777
2013-08-21 14:18:54 +02:00
Jannis Moßhammer 5a768ccaa9 Start authentication form
refs #3777
2013-08-21 14:18:54 +02:00
Jannis Moßhammer 9ddc03d571 Implement General configuration form
Missing:
- Logical validation (check for writable paths)
- DB Resource selection (see #4503)

refs #3777
2013-08-21 14:18:53 +02:00
Jannis Moßhammer 26a5018d16 Add Forms and conditional hidden
refs #3777
2013-08-21 14:18:53 +02:00
Matthias Jentsch 6aca723f6d Add logging for component requests when the module does not exist
refs #4456
2013-08-21 09:40:32 +02:00
Matthias Jentsch 7353797147 Add server-side logging when not existing components are required and fix code style issues
refs #4456
2013-08-21 09:40:32 +02:00
Matthias Jentsch 52c66893ab Add new component loader to load frontend-components
Add a component loader that finds components by searching for elements with the
"data-icinga-component" attribute and loads the corresponding JavaScript file
from the backend to render the component.

refs #4456
2013-08-21 09:40:31 +02:00
Eric Lippmann aff2398c81 Application/Controllers: Follow our Coding Standards
refs #4512
2013-08-16 15:08:28 +02:00
Jannis Moßhammer b28c7f2f4c Refactor test, tabs and controller
- Remove unused methods,
- Code style
- Documentation for widgets
- Tabextensions instead of hardcoded tab actions
- Add tests for tabs
- Add missing phpdoc for touched files
- Fix tests

refs #4512
refs #4541
refs #4540
2013-08-16 15:08:28 +02:00
Jannis Moßhammer 392e568bf8 Code style fixes: License header, phpdoc tags, psr-2 compliance
refs #4530
2013-08-14 16:08:15 +02:00
Jannis Moßhammer be29b8ff8f Make ConfigController and PreferenceController extensible by convention
- Rename ConfigurationController to ConfigController
- ConfigController and PreferenceController are now subclasses of
  BaseConfigController and BasePreferenceController
- Module and Application Config/Preference Tabs are detected via
  the ControllerTabCollector
- Moved Controller classes to Icinga/Web/Controller (this is why
  so many files are modified)

refs #4530
2013-08-14 16:08:15 +02:00
Eric Lippmann 93ae6d6811 Framework: mv Icinga\Config\Config to Icinga\Application\Config
refs #4543
2013-08-12 15:02:25 +02:00
Jannis Moßhammer 886da7d0cb Fix codestyle, change wrong 'dashboard' parameter to pane causing pane switching to fail
- Fixed concatenation
- Added license header where missing
- Fixed the index controller fetching the wrong parameter ('dashboard' instead of 'pane')

 refs #4192
2013-08-08 17:42:34 +02:00
Jannis Moßhammer 6e68826da6 Fix PSR compliance of code
refs #4192
2013-08-07 18:10:39 +02:00
Jannis Moßhammer 2a2966fc56 Fix Config.php relocation, fix header.phtml crashing due to old tab rendering
refs #4192
2013-08-07 17:51:52 +02:00
Jannis Moßhammer 488310df37 Fix style and docstrings, exception when removing the last tab
refs #4192
2013-08-07 17:45:09 +02:00
Jannis Moßhammer 2b25757e20 Add documentation, add errorhandling and sizing
The optional width/height parameter can be set in the ini to change the dashboard components
size, documentation has been added and in the error case a message with the configuration is shown

refs #4192
2013-08-07 17:44:30 +02:00
Jannis Moßhammer f8bb478f0e Update dashboard implementation
fix javascript naming (icinga-url to icingaurl), fix add form, add remove
button, code style changes

refs #4192
2013-08-07 17:43:37 +02:00
Jannis Moßhammer b3e0d5e8ce Remove AbstractWidget and make Widget an interface
As Widget's already denote an abstract concept, the name
'AbstractWidget' is redundant. Also this class didn't do anything except
fetching a view via a singleton (which is now injected into the render method)
and bypassing the PHP class properties by creating a 'properties' array which is
filled with magic getters and setters (which now are simply php class properties)

Further changes:
- toString is removed, as this incorporated a lot of
   application logic which would cause unrecoverable
   errors when throwing exceptions
- renderToHtml is now just render and the view dependency must be
   passed, as a widget shouldn't be responsible for getting
   view instance (this means that <?= $this->tabs ?> is now
   <?= $this->tabs->render($this); ?> in the templates
- Controllers don't have $this->widget anymore as Widgets are
   directly instanciated with their class, allowing better code completion
   and avoiding hidden dependencies, also Widget::create is now removed
   in favor of direct instanciation.

refs #4192
2013-08-07 17:41:43 +02:00
Eric Lippmann 290c8c5225 CC: Add newline to end of file where missing
Following command was used:
    $ find application/ library/Icinga/ modules/ -name *.php | xargs sed -i -e :a -e '/./,$!d;/^\n*$/{$d;N;};/\n$/ba;$a\'
2013-08-07 10:27:50 +02:00
Johannes Meyer f5162189dd Implement dynamic form elements
Rename "isPostAndValid" to "isSubmittedAndValid" and refactor it.
Add possibility for specific form elements to auto-submit their form.

refs #4439
2013-08-06 15:03:25 +02:00
Marius Hein 15999eb880 Change _forward to redirect() to keep url history updates
refs #4382
2013-08-06 13:39:10 +02:00
Johannes Meyer 98e7ab02db Implement dynamic form elements
Rename "isPostAndValid" to "isSubmittedAndValid" and refactor it.
Add possibility for specific form elements to auto-submit their form.

refs #4439
2013-08-06 11:09:42 +02:00
Matthias Jentsch e47954b471 dd downtime overview
Add the downtime overview view, add the downtimes controller action, fix issues
with the the DowntimeQuery and add the new fields to the DowntimeView. Fix
issues in the ShowController that occur due to the changes in the DowntimeQuery.

refs #4188
2013-08-02 14:48:16 +02:00
Marius Hein 5ade338632 Fix wrong getter after renaming
refs #4066
2013-07-30 14:06:46 +02:00