Commit Graph

61 Commits

Author SHA1 Message Date
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
Jannis Moßhammer e2b98a4138 Fix broken login form
The login form was broken, as it used the old form api (disableCSRFToken
instead of setTokenDisabled and isValid instead of isPostAndValid)

refs #4459
2013-07-26 10:34:45 +02:00
Marius Hein e9c9c9de87 Command masks: Fix lazy initialization of forms
refs #4355
2013-07-23 14:47:40 +02:00
Marius Hein d5b8a850ea Forms: New form system
Move new form parts arround and add new LoginForm.

refs #4355
2013-07-23 14:46:26 +02:00
Johannes Meyer b351cf61a7 Refactor Form-builder [WIP]
Refactor Form-builder so that it is an abstract extension class of
Zend_Form.

refs #4355
2013-07-23 14:46:25 +02:00
Eric Lippmann 51755209b6 Adapt usage of config class
refs #4354
2013-07-12 15:43:23 +02:00
Eric Lippmann 2c6f8a8441 Add ImgAction to StaticController 2013-07-12 13:45:11 +02:00
Marius Hein 6be510b05e License writer
Update license headers

refs #4262
2013-07-03 14:17:49 +02:00