Commit Graph

294 Commits

Author SHA1 Message Date
Eric Lippmann f96974fc79 Modules/Doc: Use Icinga\Web\Menu for the toc
refs #4820
2014-02-11 15:13:18 +01:00
Thomas Gelf 654953d9d6 New menu, still unfinished 2014-02-03 16:03:05 +00:00
Johannes Meyer 85639a3990 Add language selection to general config and preference forms
refs #5533
2014-01-30 13:17:15 +01:00
Johannes Meyer 005c52bb4a Refactor translation cli commands and implement po-file compilation
refs #5533
2014-01-30 10:51:10 +01:00
Eric Lippmann 30d2743c54 Layout: Move benchmark to inline.phtml 2014-01-28 15:31:13 +01:00
Eric Lippmann 59cb1d3cc7 Menu: Fix HTML
refs #3759
2014-01-28 13:34:57 +01:00
Chris Rüll c4a00b8d31 Menu Configuration
Rework the Menu.Ini files and Include a new class to create a menu inside the project
2014-01-28 13:34:57 +01:00
Johannes Meyer 1b5b26c2bb Add window awareness
refs #5510
2014-01-24 14:44:19 +01:00
Alexander Klimov fc1fb60b01 Re-add benchmark helper
Enable benchmark via user preferences

resolves #5508
2014-01-24 12:20:13 +01:00
Alexander Klimov b9c86ac1f5 Change copyright year to 2014 2014-01-24 12:19:18 +01:00
Alexander Klimov db22945f1e Add close button to details
resolves #4925
2014-01-23 17:09:46 +01:00
Eric Lippmann 2242973568 XHR: Force redirect to login if session is expired
resolves #5507
2014-01-23 16:03:47 +01:00
Matthias Jentsch 5d8081ad09 Add support for multiple module installation paths
Read the module paths from the configuration file and add form fields
to edit the path from the web interface.

refs #4607
2014-01-22 18:28:19 +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 85dbd86e5b Change all UserBackends to a lazy connection-behavior
refs #5506
2014-01-22 13:04:11 +01:00
Thomas Gelf 3008527b41 Autocompletion for the BASH
Implemented in a dedicated Icinga Web CLI command, bash config snippet
is therefore pretty compact.

fixes #5520
2014-01-22 11:45:42 +00:00
Thomas Gelf c29e742570 Module configuration script can provide restrictions and permissions
Extended the module, created CLI commands showing available permissions
and restrictions, added a sample configuration.php to the monitoring
module.

refs #4108
2014-01-22 10:26:18 +00: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 984ed0b006 Fix LdapBackendForm unit test
refs #4786
2013-11-13 18:33:34 +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
Matthias Jentsch 59d4baff0b Fix remaining references to DbUserBackend and refresh the documentation.
refs #4786
2013-11-06 13:31:07 +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
Marius Hein 74461e7cb2 Add icons to config forms 2013-10-23 12:25:51 +02:00
Jannis Moßhammer 16124989dd Various style fixes, changed icon size, fixed show/service 2013-10-22 15:58:24 +02:00
Thomas Gelf 724a57e93a Simplified help command, also does autocompletion right now 2013-10-22 13:53:12 +00:00
Jannis Moßhammer 6c8bc91d89 Add login page with own template 2013-10-22 14:33:07 +02:00
Thomas Gelf a25cd80ec0 CLI interface: initial import 2013-10-22 12:26:45 +00:00
Bernd Erk 6d112b56bf Modify top bar and menu style 2013-10-22 14:14:53 +02:00
Jannis Moßhammer f7c0eaa7c4 Fix/Reimplement dashboard
refs #4532
2013-10-22 12:10:12 +02:00
Jannis Moßhammer c4f3e78c02 Fix filter behaviour, fix statusdat filter
refs #4469
2013-10-21 17:04:39 +02:00
Marius Hein 1a73747740 Implement bootstrap datepicker
refs #4929
2013-10-21 11:32:24 +02:00
Marius Hein a49691068e Add datepicker
refs #4929
2013-10-21 10:32:53 +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
Eric Lippmann bb64977a53 Remove search from top bar 2013-10-20 16:34:26 +02:00
Eric Lippmann 36e9cdb549 Monitoring/register: Add status summary to the top bar 2013-10-20 16:08:53 +02:00
Matthias Jentsch 3f48a29c05 Fix problems caused by rebasing
refs #3788
2013-10-18 16:44:03 +02:00
Matthias Jentsch 1d07a766d9 Add form classes to handle the configuration
Add a tri-state form element to handle the configuration flags and add the form
to the controllers

refs #3788
2013-10-18 16:44:02 +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
Eric Lippmann f8938b34a4 Add yet hidden hostgroup summary w/ hostgroup overview rendered to detail
refs #4186
refs #4184
2013-10-15 15:13:49 +02:00
Eric Lippmann af7db257fe Menu: Add iconClass config
refs #4824
2013-10-14 13:30:02 +02:00
Marius Hein c02c18b23f Add logo and remove old struct survivors
refs #4824
2013-10-14 13:28:16 +02:00
Marius Hein 3975bb1364 Add user icon to topbar
refs #4824
2013-10-14 13:02:41 +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
Marius Hein ff0760e507 MainDetail: Fix doc strings
refs #4611
2013-09-24 12:51:54 +02:00
Jannis Moßhammer 3e195501ac Fixed issues with click targets
refs #4611
2013-09-23 13:56:59 +02:00
Jannis Moßhammer b4000d34fb CS: Fixed styles, add codingStandardsIgnore for helper
refs #4611
2013-09-23 13:56:59 +02:00
Jannis Moßhammer 6d26240d6d Add Main detail state to url, renderhelper, container tests
-   The ActionController is now able to render a seperate detail view
-   All list scripts select the currently active row from the detail view with
    the 'active' class
-   Autosubmit is now again attached to the onchange attribute (to prevent issues
    when js can't load correctly)
-   Logout is now recognized and causes a page refresh (will be made more generic)
-   Add history mock for testing url changes
-   Update all grids to implement the app/mainDetailGrid component

refs #4611
2013-09-23 13:56:57 +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 35fd9fd391 CS: Remove whitespaces at end of line
find application/ library/ test/ modules/ -name *.php | xargs sed -i 's/\s\+$//'
2013-09-04 18:27:16 +02:00
Johannes Meyer e0620aa04e Fix DateTimePicker not respecting user preferences
refs #4675
2013-09-04 18:08:00 +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
Eric Lippmann 6afeaac6b2 Make 'ini' in descriptions uppercase, add comment to index.php about date_default_timezone_set
refs #4529
2013-09-04 14:56:55 +02:00
Jannis Moßhammer 95bc8a2f4f Add NullStore as preference fallback
refs #4529
2013-09-04 14:27:37 +02:00
Eric Lippmann 092c5780ea CS: Fix violations for overdue files
refs #4586
2013-09-04 11:21:12 +02:00
Jannis Moßhammer a0e63a1320 Fix error message and move validation in own DateTimeValidator
refs #4581
refs #4632
2013-09-04 11:06:36 +02:00
Johannes Meyer 4d040fd761 Adjust command forms and tests
Made those command forms using the DateTimePicker
element compatible with its new validation.

refs #4581
2013-09-04 11:06:36 +02:00
Johannes Meyer 14b56151aa Move configuration and preference handling to Form base class
Moved setConfiguration, setUserPreferences and getUserPreferences
to our Form base class due to some redundancies.

refs #4581
2013-09-04 11:06:24 +02:00
Johannes Meyer 23f0962da1 Adjust command forms and tests
Made those command forms using the DateTimePicker
element compatible with its new validation.

refs #4581
2013-09-03 09:27:02 +02:00
Johannes Meyer 1a003f8c8b Move configuration and preference handling to Form base class
Moved setConfiguration, setUserPreferences and getUserPreferences
to our Form base class due to some redundancies.

refs #4581
2013-09-03 09:27:02 +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 439fade88d Simplify SystemPermissionException
refs #4606
2013-09-02 12:52:51 +02:00
Jannis Moßhammer c5fde2324e Generalize form handling in Icinga\Web Form & Tests
configForm.js is now form.js and applied on all forms,
the autosubmit is now a special attribute for input fields,
so the PHP code doesn't create JS snippets anymore

refs #4622
2013-09-02 10:59:05 +02:00
Jannis Moßhammer 978b3519f6 Add configform js component (will be renamed later)
refs #4622
2013-09-02 10:59:05 +02:00
Jannis Moßhammer feab57e790 Fix old constructor syntax being called in DbBackendForm
refs #4641
2013-08-30 16:28:13 +02:00
Marius Hein 7c8252a983 Rename class Credentials to Credential
refs #4641
2013-08-30 12:50:57 +02:00
Johannes Meyer cb8bf4cba7 GeneralForm: Code fixes
Made that the user's last configuration is
previewed in case the input is invalid.

refs #4609
2013-08-29 15:08:31 +02:00
Johannes Meyer 29068269dc Config/GeneralForm: Doc fixes
refs #4609
2013-08-29 15:08:31 +02:00
Johannes Meyer bf5849a769 Fix GeneralForm tests
refs #4609
2013-08-29 15:08:31 +02:00
Johannes Meyer 74241258f5 Preview example date/time results in configuration views
refs #4609
2013-08-29 15:08:30 +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 0f36cfce62 Fix frontend tests, give forms names
refs #4491
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 4e41ce5cdc Add logic validation for database authentication backends
refs #4546
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
Johannes Meyer 4c79b3d179 Fix use of non-initialised variable 2013-08-28 08:57:46 +02:00
Johannes Meyer 13e4efa221 Make use of the helptext decorator if suitable
Refactored some uses of the form element Note so that
each one is properly attached to its input element.

refs #4566
2013-08-28 08:57:46 +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
Marius Hein 2f610b70ac Fix icon identifer and capitalization
refs #4550
refs #4584
2013-08-23 10:58:58 +02:00
Jannis Moßhammer 895976550c Fix templates, capitalization and icons in php files
refs #4550
refs #4584
2013-08-23 10:28:48 +02:00
Jannis Moßhammer 015a914aab Fix template code style, use Bootstrap 3, remove icons
- Icons have now the {{XY_ICON}} format
- custom classes are removed
- A few typos are fixed
- Capitalization

refs #4550
refs #4621
refs #4584
2013-08-23 10:28:48 +02:00
Jannis Moßhammer 872fa2ac6c HTML Style fixes and class removals
refs #4550
2013-08-23 10:28:47 +02:00
Jannis Moßhammer bff45a1eb2 Template cleanup and validation part 1
refs #4550
2013-08-23 10:27:16 +02:00
Jannis Moßhammer dc2aad75d1 Modify application templates for proper bootstrap usage
refs #4550
2013-08-23 10:27:16 +02:00
Jannis Moßhammer 1378ca9844 Remove and reorganize stylesheets, add boostrap 3
refs #4550
2013-08-23 10:27:16 +02:00
Eric Lippmann cd2ae0450a Config: Hint that moduleFolder directive is currently not in use
refs #3776
2013-08-21 14:22:31 +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 21e560cb3b Capitalize Forms
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 17c1e5a449 Add tests, move BaseFormTest away from modules/monitoring
refs #3777
2013-08-21 14:18:53 +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
Marius Hein 497e184eeb Fix home link to module configuration
refs #4516
2013-08-21 09:44:01 +02:00
Jannis Moßhammer d7358c65be Remove QUrl and QLink, add Href
refs #4516
2013-08-21 09:44:01 +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 41f5499bba Nav: Remove global search since it's not working
refs #4583
2013-08-20 15:14:57 +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 2c217d1d06 Framework/DateTime: No longer use the Unix timestamp format since this ignores the time zone
refs #4440
2013-08-12 16:43:10 +02:00
Eric Lippmann 5cb9c67443 Framework: Fix Form's docstrings
refs #4440
2013-08-12 16:43:09 +02:00
Eric Lippmann a82d750d6a Framework: Use the DateTime Unix timestamp format in the DateFormat helper
refs #4440
2013-08-12 16:43:09 +02:00
Eric Lippmann 5c98acd36c Framework: Add doctrings to DateFormat view helper
refs #4424
2013-08-12 16:43:09 +02:00
Eric Lippmann da7f619804 Framework: Implement DateFormat view helper
Support date, time and datetime formatting based on format strings
set either by the user or via config.ini. The view helper
FormDateTime uses the new helper already

refs #4440
refs #4424
2013-08-12 16:43:09 +02:00
Johannes Meyer 94ea09b552 Remove Date and Time form elements
Drops the Date and Time form element as they are redundant.

refs #4440
2013-08-12 16:43:08 +02:00
Eric Lippmann c0e3712e1b Framework/Elements: Implement DateTime form element
refs #4440
2013-08-12 16:42:51 +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 9ba3c90931 Rename dashboard folder to work on non case-insensitive fs
refs #4192
2013-08-07 17:44:40 +02:00
Jannis Moßhammer 19764485bc Add untracked files
refs #4192
2013-08-07 17:44:40 +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
Matthias Jentsch 56e47fd084 Add an ini writer for configuration files
Add an ini writer that respects the file structure and the comments that may be
already present in the config file. Move Application/Config.php into
Config/Config.php.

refs #4352
2013-08-07 15:58:42 +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
Jannis Moßhammer 5c3eb1d796 Style fixes and addParam test
refs #4381
2013-08-02 13:14:56 +02:00
Jannis Moßhammer 50ca1aec1a Refactor URL class and test
The constructor of the class is now private, instantiation happens
with Url::fromRequest and Url::fromPath. Also updated all occurences
of Url and fixed the Qlink helper to not overwrite the baseUrl with null
values

refs #4381
2013-08-02 13:14:55 +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