Commit Graph

1275 Commits

Author SHA1 Message Date
Eric Lippmann e5e3dc9c43 Add interface "Sortable" defining how a result set can be sorted
This interface should be used to ensure that sorting a result set
is standardized among the different query implementations.
2014-04-15 16:07:27 +02:00
Eric Lippmann 3e0d254dfd Implement "Limitable" interface for retrieving just a portion of a result set
Defines how to set a limit count and offset and should be used everywhere
where setting limit and offset is supported.
2014-04-15 15:48:51 +02:00
Eric Lippmann c083747f67 Add "Fetchable" interface for classes providing data retrieval
Classes for retrieving data must implement the Fetchable interface
which defines the usual fetch*() functions.
2014-04-15 15:40:07 +02:00
Eric Lippmann 2cc3823a95 Implement interface "Browsable" for classes providing page turning
This interface is intended to be used everywhere a Zend_Paginator
is returned within our code.
2014-04-15 15:36:13 +02:00
Johannes Meyer 1ed1c0bc3c Remove user auth and backend tests
refs #4639
2014-04-14 11:44:02 +02:00
Johannes Meyer a844d33735 Do not create alias mock for Icinga\Application\Icinga
refs #4639
2014-04-14 08:31:46 +02:00
Johannes Meyer 4c8428423e Convert existing mocks to Mockery-mocks (Part 1)
refs #4639
2014-04-11 17:03:45 +02:00
Johannes Meyer 927772578d We do not want to use "@backupStaticAttributes enabled"
refs #4639
2014-04-11 15:31:29 +02:00
Johannes Meyer 1e69169bab Fix database tests
refs #4639
2014-04-10 11:33:24 +02:00
Johannes Meyer ccae70bc80 Make all tests inherit from BaseTestCase and fix license headers and style
refs #4639
2014-04-10 10:32:50 +02:00
Johannes Meyer 6056327c6d Fix that it's not possible to set non-existing values in a session with setAll()
refs #4639
2014-04-09 16:18:51 +02:00
Johannes Meyer f9324032cb Fix autoloader not ignoring vendor prefixed class names
refs #4639
2014-04-09 14:20:05 +02:00
Marius Hein 7708b9901f Drop BaseTestCase static class loader
refs #4639
2014-04-09 09:27:01 +02:00
Marius Hein 746cc4b5d9 Drop obsolete test cases
refs #4639
2014-04-09 09:26:11 +02:00
Johannes Meyer 3195e6a897 Rewrite preference DbStore
refs #5682
2014-04-08 13:28:45 +02:00
Johannes Meyer a1649a1f22 Refactor PreferencesStore and IniStore
refs #5682
2014-04-07 15:13:28 +02:00
Thomas Gelf a857af60be Intendation 2014-04-07 12:03:53 +00:00
Thomas Gelf 88cdf99934 More code style 2014-04-07 12:03:53 +00:00
Johannes Meyer d109046bc0 Fix that the general and logging form cannot write configuration changes
fixes #5952
2014-04-07 09:27:37 +02:00
Johannes Meyer ea44ae3693 Improve failure handling when setting the locale 2014-04-04 15:34:46 +02:00
Johannes Meyer 8be3ccc527 Make it possible to save the session by its associated session namespaces 2014-04-04 11:13:07 +02:00
Johannes Meyer 98b640f1e0 Fix that removed values/namespaces remain in the session storage
fixes #5934
2014-04-04 11:10:45 +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 2a10f6184a Write class documentation 2014-04-02 13:47:02 +02:00
Alexander Klimov 7c599e206e Make it working
refs #4514
2014-04-02 13:47:01 +02:00
Alexander Klimov 933a851f65 Initial commit
refs #4514
2014-04-02 13:47:01 +02:00
Johannes Meyer ae2d61682f Fix how the timeline processes dates
refs #4190
2014-04-02 10:53:39 +02:00
Johannes Meyer 21b9c1f4af Fix that filters are not preserved on timeline element urls
refs #4190
2014-04-01 14:26:10 +02:00
Johannes Meyer c19791fdd7 Fix brightness calculation in Icinga\Utils\Color 2014-04-01 11:46:44 +02:00
Johannes Meyer 3d658a664c Do not use logarithm base from session if the timeline is not being extended
refs #4190
2014-04-01 11:46:43 +02:00
Johannes Meyer f5e4331d71 Add timeline view script and styles
refs #4190
2014-04-01 11:46:43 +02:00
Johannes Meyer b0709d8cba Revert postDispatch -> preDispatch change in ActionController
refs #4190
2014-04-01 11:44:25 +02:00
Johannes Meyer 862b50264a Fix that the queryfilter parser cannot handle integer values 2014-04-01 11:44:24 +02:00
Johannes Meyer aade2ab7f6 Move timeline classes into the monitoring module
refs #4190
2014-04-01 11:44:24 +02:00
Johannes Meyer 0a146b4bb4 Clientside scrolling implementation [WIP]
refs #4190
2014-04-01 11:44:24 +02:00
Johannes Meyer fd07393e44 Fix event interpolation
refs #4190
2014-04-01 11:44:24 +02:00
Johannes Meyer 9d3935f15b Improve timeline layout
refs #4190
2014-04-01 11:44:24 +02:00
Johannes Meyer 25f4b50ce7 Implement timeline rendering
refs #4190
2014-04-01 11:44:24 +02:00
Johannes Meyer 103d43ea77 Implicitly add an TimeEntry's weight when calling getValue()
refs #4190
2014-04-01 11:44:24 +02:00
Johannes Meyer 34f25c6009 Return timeframes when iterating over TimeRange objects
refs #4190
2014-04-01 11:44:24 +02:00
Johannes Meyer 40f70eb572 Fix license header
refs #4190
2014-04-01 11:44:24 +02:00
Johannes Meyer 86839e757d Add interval selectbox and group legend
refs #4190
2014-04-01 11:44:24 +02:00
Johannes Meyer a589460de3 Make TimeEntry creation more flexible
TimeEntry objects are now created with the fromArray
constructor instead of the default one.

refs #4190
2014-04-01 11:44:23 +02:00
Johannes Meyer b168cf878d Fix type specification in DowntimestarthistoryQuery
refs #4190
2014-04-01 11:44:23 +02:00
Johannes Meyer ba541b402d Add timeline helper classes
#refs 4190
2014-04-01 11:44:23 +02:00
Thomas Gelf 1beb837783 A few little code cleanups 2014-03-31 16:35:28 +00:00
Thomas Gelf 056b8d5395 Coding style 2014-03-31 16:30:27 +00:00
Matthias Jentsch d3c4660c2d Fix colors of svg charts in Firefox 2014-03-31 12:35:39 +02:00
Thomas Gelf 947ad34153 Get web router ready for .htaccess removal 2014-03-28 19:46:58 +00:00
Johannes Meyer bafa8cc032 Fix authentication error handling 2014-03-28 14:45:03 +01:00
Thomas Gelf ade2121302 Router, once again 2014-03-27 20:00:43 +00:00
Thomas Gelf ff6859d1d1 One more router fix 2014-03-27 19:47:11 +00:00
Thomas Gelf fcde513c24 Router fixes for SVG images 2014-03-27 19:39:38 +00:00
Johannes Meyer 3beec6e102 Fix exception thrown during re-routing without parameters 2014-03-27 12:04:10 +01:00
Thomas Gelf 08945257dc Add alias detection to web router script 2014-03-27 09:33:45 +01:00
Thomas Gelf 5c89512e05 New router needs JavaScript and Stylesheet handlers fitting it's needs 2014-03-27 07:32:02 +00:00
Thomas Gelf cb5d90ad41 Simplify pre-bootstrapping web routing 2014-03-27 07:25:53 +00:00
Matthias Jentsch 2360f21b09 Fix InlinePie boundaries and use floats for the PieSlice path coordinates
Use floats as path coordinates in PieSlices, to
avoid that the start and ending position of the arc are at the exact same
position. This would cause buggy behavior, when displaying values like "99,999%".

refs #5863
2014-03-26 17:06:21 +01:00
Matthias Jentsch 15723f088b Include SVG piecharts in perfData helpers
When no JavaScript is available, SVG piecharts will be shown instead of the
jQuery sparklines.

fixes #5865
2014-03-26 14:56:35 +01:00
Thomas Gelf faec625912 Ship module JS files even with minified JS 2014-03-26 09:24:27 +00:00
Thomas Gelf eeaec20873 Add support for server-side triggered CSS reload 2014-03-26 07:58:00 +00:00
Thomas Gelf 87f90b6bdd Replace escaped ampersands in URLs with & for redirects
* NB: Icinga\Web\Url could provide a method for this
2014-03-26 07:56:30 +00:00
Johannes Meyer 18b825a24b Add missing keyword "new" in class SessionNamespace 2014-03-25 13:24:06 +01:00
Johannes Meyer f802b36ca9 Move session class files 2014-03-25 11:13:10 +01:00
Johannes Meyer 9ab53558f0 Add helper to get window-aware session namespaces 2014-03-25 11:13:10 +01:00
Thomas Gelf 9c5eb19af6 Re-add potentially obsolete dynamic Widget properties 2014-03-25 07:23:14 +00:00
Thomas Gelf 01f94c574d Handle window-id requests, allowing us to identify distinct windows 2014-03-21 13:27:44 +00:00
Thomas Gelf fea7e8993b Allow LDAP queries without objectClass filter 2014-03-21 10:31:12 +00:00
Thomas Gelf aed6d74ecd Add recursive delete support to LDAP Connection 2014-03-20 15:46:10 +00:00
Thomas Gelf 12933ee706 Add children count to LDAP root node 2014-03-20 15:45:36 +00:00
Thomas Gelf 292ce6e12b Fix SSH CommandPipe transport. Did anyone ever test this? 2014-03-20 14:05:57 +00:00
Johannes Meyer ea473cf08a Fix sorting of pivot tables 2014-03-20 13:21:28 +01:00
Johannes Meyer bf717654f0 Add more consistency to the servicematrix when switching pages 2014-03-20 11:30:55 +01:00
Thomas Gelf 3059228378 Fix JS support for modules 2014-03-20 09:55:29 +00:00
Michael Friedrich 4ce7ea503f Rename help and documentation to icingacli.
Refs #5802
2014-03-19 17:25:53 +01:00
Johannes Meyer 1604f4728b Fix that the TreeToSqlParser cannot handle partial conjunction nodes 2014-03-19 09:11:25 +01:00
Johannes Meyer e355415164 Fix that queryfilters are being ignored by the parser 2014-03-19 09:11:25 +01:00
Johannes Meyer 617b6822d7 Add pagination support to the servicematrix
refs #4180
2014-03-19 09:11:24 +01:00
Johannes Meyer dbab546f0a Make page/limit params work if either of those is hardcoded 2014-03-19 09:11:24 +01:00
Johannes Meyer eae4cd3b2a Add support for distinct database queries
refs #4180
2014-03-19 09:11:24 +01:00
Johannes Meyer 13b509bf4b Do not display hosts without any services in the servicematrix
refs #4180
2014-03-19 09:11:24 +01:00
Johannes Meyer 0a5c2c5bd7 Make filtering/sorting of the servicematrix work
refs #4180
2014-03-19 09:11:24 +01:00
Johannes Meyer 71f4b6960b Add servicematrix view
refs #4180
2014-03-19 09:11:24 +01:00
Thomas Gelf 58248c34a9 Remove width & height settings from dashboard components 2014-03-17 17:43:45 +00:00
Thomas Gelf 462bb2e4d5 Fix obsolete Logger::warn in Ldap\Connection 2014-03-17 16:18:33 +00:00
Thomas Gelf 7fc47ef961 Increase DB-Connection default timeout, 2 secs are sometimes too harsh 2014-03-17 16:17:55 +00:00
Thomas Gelf ebbd4119c2 New approach for view helpers - register anonymous functions
* May be subject to change
* TODO: Find out how to phpDoc them
* Removed a bunch of "old-style" view helpers
* more to come
2014-03-17 17:14:16 +01:00
Thomas Gelf 757570cdc2 Improve Action Controller postDispatch readability 2014-03-17 17:11:08 +01:00
Thomas Gelf 4466053679 Widgets should inherit common base class
* Get rid of the pass-view-object-around approach
* Remove <i> tags
* Remove PHP_EOL where it doesn't make sense
* Fix small HTML issues
2014-03-17 17:04:09 +01:00
Thomas Gelf e964da9579 URL default encoding should match rules for href's. &nbsp; VS & 2014-03-17 16:59:22 +01:00
Thomas Gelf c76729a821 Fix CLI complaining without log config 2014-03-11 20:45:01 +01:00
Alexander Klimov 7d08636af4 Handle missing config files more intelligent 2014-03-11 15:43:41 +01:00
Thomas Gelf 11c44af35e Remove obsolete requestId 2014-03-09 23:21:27 +01:00
Thomas Gelf ee01b28646 Replace tabs with whitespaces 2014-03-09 21:16:56 +01:00
Thomas Gelf 7449f2565a Make timeUntil behave like timeSince 2014-03-09 21:12:24 +01:00
Michael Friedrich df0dbaad5c Fix null value in timestamp format. 2014-03-09 20:53:38 +01:00
Thomas Gelf 93dc45241a Fix missplaced autosubmit in sort box 2014-03-09 18:02:12 +01:00
Thomas Gelf 4d48f4fb0e Filter form restyle dirty preview 2014-03-09 02:03:06 +01:00
Thomas Gelf e480ed7aad We have no data-icinga-component 2014-03-09 01:59:27 +01:00
Thomas Gelf 796265d304 Widget interface is useless, prepare for removal in favour of AbstractWidget 2014-03-09 01:58:42 +01:00
Thomas Gelf bd7280305a Cast widget render() result when casting to string 2014-03-09 01:57:25 +01:00
Thomas Gelf 0fe493b007 Allow us to have responses with no output not rendered in JS 2014-03-08 12:07:03 +01:00
Thomas Gelf 713bd83aee Font changes to improve chart readability 2014-03-07 23:31:51 +00:00
Thomas Gelf 296d8c7969 Send notifications on site reload and via XHR 2014-03-07 23:15:51 +00:00
Thomas Gelf 4603219677 Undefined variable in Web\Notification 2014-03-07 23:15:16 +00:00
Thomas Gelf 3286dfe202 Style benchmark output 2014-03-07 17:03:43 +00:00
Thomas Gelf d575356df1 Fix PDF image path resolution for Icingaweb in Apache subdirs 2014-03-07 15:15:32 +00:00
Marius Hein c92e1307f6 Fix: Database login
fixes #5706
2014-03-06 14:07:33 +01:00
Alexander Klimov b410ebeed6 Remove unnecessary spaces at end of line 2014-03-06 13:08:11 +01:00
Thomas Gelf 6ed72e1565 Mess with PDF generation code
* Works more or less
* Rewrite image tags on the fly
* Sample header image (still ugly)
* Trying hard to find a way for CORRECT page footers and line numbers
2014-03-06 11:21:11 +00:00
Thomas Gelf 9971030965 Send PDF BEFORE we take care of custom headers 2014-03-06 11:15:28 +00:00
Thomas Gelf 063939b73a We don't die unless we're dead ;) 2014-03-06 11:14:21 +00:00
Thomas Gelf 294d8f87bf Move moduleContainer to a separate function as it will be removed 2014-03-06 11:13:07 +00:00
Thomas Gelf e4540a2cf3 Fix type/HTML error in HistoryColorGrid 2014-03-06 10:07:38 +00:00
Thomas Gelf e930df4c54 Provide a method to generate PDF CSS 2014-03-06 09:21:32 +00:00
Thomas Gelf c5ad14e781 Dashlet title links should not replace the dashlet 2014-03-06 09:20:40 +00:00
Matthias Jentsch 819e7e9806 Implement Widget to display problems as matrix over time
refs #5703
2014-03-05 20:19:09 +01:00
Thomas Gelf af7ca57b41 Clean up JavaScript and CSS loaders, prepare for minimized delivery 2014-03-04 15:15:08 +00:00
Thomas Gelf 127b7ad389 Allow us to find out where /public is to be found 2014-03-04 15:13:13 +00:00
Thomas Gelf b09ea7c690 Sample ticket hook 2014-03-04 12:50:49 +00:00
Thomas Gelf 22e5ca34bc Autorefresh, custom headers and _render in ActionController 2014-03-04 11:37:54 +00:00
Thomas Gelf db8280ef3b New vendor library: JShrink 2014-03-04 11:24:00 +00:00
Thomas Gelf 215d9df111 Add Dashboard::getActivePane() and complain when asking for invalid one 2014-03-04 11:18:28 +00:00
Thomas Gelf 6d3db4732a Whitespace 2014-03-04 11:17:27 +00:00
Thomas Gelf 8c78600841 JS components are gone 2014-03-04 11:15:56 +00:00
Thomas Gelf 76c322901c Prototype for icingacli web serve 2014-03-04 11:13:43 +00:00
Thomas Gelf 0ecf01cae8 Deliver empty preferences unless we configured such 2014-03-04 10:14:20 +00:00
Thomas Gelf c1177b72e7 loadConfig renamed in EmbeddedWeb 2014-03-04 10:14:00 +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
Thomas Gelf 3ac276e652 Quickfix to get master-1 running 2014-03-04 09:31:17 +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 99668e87e5 Refresh session id on Authentication
To prevent session fixation, create a new session id each time authenticate is
called.

refs #5625
2014-02-26 19:23:34 +01:00
Matthias Jentsch b118e9679d When webserver setting is missing regular authentication will be used
Check if the remote user is set and use regular authentication when the key is missing.

refs #5405
2014-02-26 18:08:48 +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 ec308ece93 Remove old log wrapper
refs #5683
2014-02-26 13:49:29 +01:00
Johannes Meyer 1e7c863e3c Add stream writer
refs #5683
2014-02-26 13:47:16 +01:00
Johannes Meyer 3555e66018 Make IcingaWeb using the new log wrapper
refs #5683
2014-02-26 11:19:52 +01:00
Johannes Meyer 05cb0cb87a Add syslog writer
refs #5683
2014-02-26 10:50:06 +01:00
Johannes Meyer 43c18261ea Add new log wrapper
refs #5683
2014-02-26 10:47:02 +01:00
Thomas Gelf 6ebe723f7e Remove obsolete data attributes from filter box, add placeholder 2014-02-25 10:27:11 +00:00
Thomas Gelf 912b3a6478 Remove obsolete form classes 2014-02-25 10:05:14 +00:00
Thomas Gelf 96b7cb279c Quickfix for dompdf woes 2014-02-21 14:05:28 +00:00
Thomas Gelf dfb261a5ca Don't do automagic PDF pagination per default 2014-02-21 14:05:27 +00:00
Thomas Gelf a79df3943a Formatter should fail for invalid data 2014-02-21 14:04:40 +00:00
Thomas Gelf 1b4f055bfa Adjusted tab extensions to fit new URLs 2014-02-21 14:03:49 +00:00
Eric Lippmann 73dc6c3c27 Render "inline" layout if the view parameter is set to "compact" 2014-02-21 14:03:49 +00:00
Eric Lippmann 7033c41503 Fix Fatal error: Can't inherit abstract function Icinga\Web\Widget\Widget::render() 2014-02-21 14:03:49 +00:00
Eric Lippmann 94a900bb5c Remove deprecated code 2014-02-21 14:03:49 +00:00
Thomas Gelf f9f522d599 Re-allow dashboard to render itself 2014-02-21 14:03:49 +00:00
Thomas Gelf cea4923eae Temporarily re-added AbstractWidget, we should discuss this 2014-02-21 14:03:48 +00:00
Thomas Gelf b7de09f6ba Render 'inline' if xhr request, missing use added 2014-02-21 14:03:48 +00:00
Thomas Gelf db19ddca25 Added module container, may be dropped again 2014-02-21 14:03:47 +00:00
Thomas Gelf 6b308986d1 Small syntax changes 2014-02-21 14:03:47 +00:00
Thomas Gelf ac0faa26a8 Started to restructure less compiler:
* Combine all files and compile once
* Allow to collect module less files
* No recursion
2014-02-21 14:03:47 +00:00
Thomas Gelf b6dbfaa6b8 Add image size support to parsedown 2014-02-21 14:03:47 +00:00
Thomas Gelf 62ca46e9cd Re-added widget loader 2014-02-21 14:03:47 +00:00
Thomas Gelf 34316ccbca Lighter tab html, support casting to string 2014-02-21 14:03:47 +00:00
Thomas Gelf 73fdcdef47 use without backslash 2014-02-21 14:03:47 +00:00
Thomas Gelf 445c981d01 Tab extensions use imgs instead of icons 2014-02-21 14:03:47 +00:00
Thomas Gelf 3faf1ec725 Lighter HTML in the dashboard component, handle missing URLs 2014-02-21 14:03:47 +00:00
Thomas Gelf 9e66d22c76 One more TODO: Query-String handling in action controller 2014-02-21 14:03:47 +00:00
Thomas Gelf 69538270f7 Action controller example function: Config() 2014-02-21 14:03:47 +00:00
Thomas Gelf 450670d55e Temporarily ignore logged errors 2014-02-21 14:03:46 +00:00
Johannes Meyer 872da0c699 Remove echo instruction from Icinga\Chart\Palette 2014-02-21 14:20:54 +01:00
Johannes Meyer 68357e9ca2 Fix coding style 2014-02-21 14:07:32 +01:00
Eric Lippmann 25665dec24 Vagrant: Add authentication.ini and resources.ini to /etc/icingaweb
refs #5638
2014-02-21 10:16:16 +01:00
Eric Lippmann 7fa6668b64 Make Icinga Web 2 work without any config file
refs #5638
fixes #5523
2014-02-20 13:53:28 +01:00
Matthias Jentsch 3a10188e81 Move inline chart rendering into separate classes
refs #5679
2014-02-19 18:59:54 +01:00
Matthias Jentsch a2baf4217b Add php script to render dynamic svgs of inline charts
Add a php script to render dynamic SVGs as a fallback and add a widget to draw
inline charts.

refs #5679
2014-02-19 18:29:59 +01:00
Matthias Jentsch c17cd2df34 Fix layout of GridChart
Introduce diagonal layout for x-axis, use bigger fonts and set the bar-rendering
to use a bigger default-width

fixes #5672
2014-02-18 18:44:42 +01:00
Eric Lippmann 8edf421c45 Replace debug log with respecting log priorities
refs #5638
fixes #5522
2014-02-18 14:46:15 +01:00
Eric Lippmann c5f016b220 Fix executable flags on normal files
fixes #5040
2014-02-18 09:49:40 +01: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
Eric Lippmann 08d7edebfc Decouple (automatic) preferences storage from user preferences (WIP)
DbStore, persisting preferences and tests not yet reworked.
2014-02-14 17:28:11 +01:00
Thomas Gelf 9647c37516 Fix LDAP DN concatenation, allow to define a search base 2014-02-14 14:38:52 +00:00
Thomas Gelf 7a02d278ce We don't want others to care about our bootstrap dependencies 2014-02-14 14:12:12 +00:00
Thomas Gelf d63fee064d Make sure DB profiler is disabled per default to avoid memory leaks 2014-02-14 13:51:28 +00:00
Thomas Gelf e115d8e893 Sample module metadata implementation 2014-02-14 13:48:51 +00:00
Thomas Gelf cb923453c9 getCssFilename signature added 2014-02-14 13:42:57 +00:00
Thomas Gelf 6b027a0dc3 Make module CSS (less) filename accessible 2014-02-14 13:41:03 +00:00
Thomas Gelf 3cfa05d420 Static controller parameter must match registered route 2014-02-14 13:40:10 +00:00
Thomas Gelf db6dbdd381 Autoloader should not fail on missing module library directory 2014-02-14 13:38:55 +00:00
Thomas Gelf 7dbede12fb Remove obsolete register script traces 2014-02-14 13:37:45 +00:00
Thomas Gelf c68bce2f3d Embedded "light" web bootstrapping adapted new module loading 2014-02-14 13:22:15 +00:00
Thomas Gelf 6096b23a76 CLI fix for --watch, hide autocomplete documentation 2014-02-14 13:19:56 +00:00
Eric Lippmann 41ffa1d7c2 Fix PHP Fatal error: Class 'Icinga\Authentication\Membership' not found in ManagerTest.php 2014-02-14 12:11:49 +01:00
Eric Lippmann d6768872c7 Revert "Change setup behavior of the AuthenticationManager to a lazy approach"
This reverts commit 226eb4eded.

Conflicts:
	library/Icinga/Authentication/Manager.php

This fix is not appropriate

refs #5506
2014-02-14 11:20:33 +01:00
Eric Lippmann 9cbfe88ea6 Do not exit the application when the logger has errors logged during bootstrap and stop preference loading on every request
Only fatals should exit the application.
Preferences must be loaded only once after login.
2014-02-14 10:56:29 +01:00
Eric Lippmann 3e04122e34 Do not set UTC in index.php
refs #5638
fixes #5530
2014-02-14 10:56:29 +01:00
Eric Lippmann a630a96e01 Do not require ApplicationBootstrap in index.php
refs #5638
fixes #5529
2014-02-14 10:56:29 +01:00
Marius Hein 8a604f1c2c Implement structures for permissions, restrictions and membership
refs #4624
2014-02-12 17:03:18 +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
Matthias Jentsch 58f5602f18 Fix dompdf library directory
refs #4356
2014-02-12 12:36:20 +01:00
Matthias Jentsch 4e5569371f Show only mainDetailGrid in pdf and move css fixes to less-directory
refs #4356
2014-02-12 12:11:49 +01:00
Matthias Jentsch a064ef520d Fix page-break on table rows
The dompdf library messes up the document layout, when page breaks reach over
several sites and will eventually even crash completely. Add a function to
split up tables in different chunks to fix this issue.

refs #4356
2014-02-12 12:11:49 +01:00
Matthias Jentsch db0f61fff1 Convert the opened view to pdf
refs #4356
2014-02-12 12:11:49 +01:00
Matthias Jentsch 124b42c9f1 Remove tcpdf library and use dompdf instead
Remove tcpdf because of improper CSS support and use Dompdf instead, to be able
to generate pdfs that look similar to the html views

refs #4356
2014-02-12 12:11:01 +01: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
Marius Hein 7b55f3a2bd Implement register and run php scripts for modules
refs #5597
2014-02-11 17:12:17 +01:00
Eric Lippmann 1caacbf20f Modules/Doc: Set rel="nofollow" on header links missing a user-specified id
refs #4820
2014-02-11 15:27:42 +01:00
Eric Lippmann 75577cec51 Modules/doc: Replace Michelf/Markdown with Parsedown
refs #4820
2014-02-11 15:09:03 +01:00
Thomas Gelf 89f6bedb10 Afoid flickering on CLI when using --watch 2014-02-07 10:23:29 +00:00
Thomas Gelf 3d636423c8 MenuItem renamed, small fixes
* One less namespace, better naming
* hasItem() added
* throws Exception when trying to access invalid Items
* Automagically creates missing parents when adding named childs
2014-02-03 14:16:17 +00:00
Johannes Meyer 56abc53a2b Properly fix the default locale issue 2014-02-03 12:22:13 +01:00
Johannes Meyer 3aee13cd9b Fix that en_US is used as default locale
Using this locale is not an issue, but it might not be available in a user's environment
2014-02-03 11:05:28 +01:00
Alexander Klimov 06accbd8e2 Make webcolors array look more table-like 2014-01-31 11:15:28 +01: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
Johannes Meyer bd34669357 Refactor i18n implementation
One can now use $this->translate(msg) in a view or controller without the
need to pass the module domain (web&cli). Forms still need to be built
with _t(msg) and _mt(dom, msg).

refs #5533
2014-01-29 16:25:08 +01:00
Johannes Meyer f4a00d24e5 Fix exception when a module has no menu configuration 2014-01-29 12:09:35 +01:00
Johannes Meyer 0b28bd31e5 Fix exception when the password of a valid ldap user is invalid 2014-01-29 10:41:17 +01:00
Eric Lippmann 77f7c9c1a6 Fix menu throwing an exception when a parent menu item does not exist
refs #3759
2014-01-28 14:43:43 +01:00
Eric Lippmann 48f5eebd53 Menu: Fix code compliance
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
Eric Lippmann 71c3fd831f Fix Call to a member function getPreferences() on a non-object when not logged in 2014-01-27 13:22:29 +01:00
Johannes Meyer 1b5b26c2bb Add window awareness
refs #5510
2014-01-24 14:44:19 +01:00
Johannes Meyer 2bf9b96aab Extend functionality of session namespaces and add tests
refs #5510
2014-01-24 14:44:19 +01:00
Johannes Meyer efa23ad422 Allow sessions to be reopened
refs #5510
2014-01-24 14:44:19 +01:00
Johannes Meyer cf778d4609 Implement session namespaces
refs #5510
2014-01-24 14:44:19 +01:00
Johannes Meyer ac0b041523 Remove session handling from the authentication manager
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
Thomas Gelf e0af544c14 Multiple installations paths for all Bootstrappers
No longer instantiating moduleManager twice, now the CLI is also
able to benefit from multiple module installation paths. Modules
lists are now sorted.
2014-01-24 09:48:30 +00: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 bb1c560e22 Splitted module manager setup and module loading in bootstrap code
Allows different implementations (Web, Cli...) to behave differently
without duplicating code
2014-01-22 17:11:26 +00:00
Thomas Gelf 977b360b66 Url::create has been renamed, was still in use in File\Pdf
refs #4356
2014-01-22 15:20:04 +00:00
Thomas Gelf 6ef87f4644 Example showing restriction usage in the monitoring module
fixes #4108
2014-01-22 13:34:39 +00:00
Thomas Gelf 0f565aae6a Added permission handlers and related sample config reader
Please see feature #4108 for sample usage

refs #4108
2014-01-22 13:06:59 +00:00
Eric Lippmann fa861c2c85 Replace Mitchelf/Markdown with Parsedown
fixes #5518
2014-01-22 14:04:55 +01:00
Thomas Gelf 32c897c0c9 Added some benchmark noise to DB queries
We need this to track down current performance issues, refs #5534
2014-01-22 12:36:44 +00:00
Thomas Gelf ad7e4451eb There is no "The" and no "Optional" Data class 2014-01-22 12:34:46 +00:00
Thomas Gelf 2288751aaf Better error message in LDAP connection capability test 2014-01-22 12:30:02 +00:00
Matthias Jentsch 14ff354a76 Merge branch 'master' of git.icinga.org:icingaweb2 2014-01-22 13:08:54 +01:00
Thomas Gelf 5661e41c73 Trace option for CLI commands
Added --trace to show full stack trace if an exception is thrown

fixes #5555
2014-01-22 12:08:20 +00:00
Matthias Jentsch 226eb4eded Change setup behavior of the AuthenticationManager to a lazy approach
The authentication manager should only try to set up all backends when
necessary. Remove the backend setup from the constructor and call it only when it is actually needed.

fixes #5506
2014-01-22 13:04:11 +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 ad56868af5 Fix Stream writer, has been broken with syslog fix 2014-01-22 12:02:25 +00: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 ba5ea18adf CLI should load modules and not enable them
fixes #5527
2014-01-22 11:36:11 +00:00
Thomas Gelf 6e3e9b46a4 Last commit was incomplete
refs #4108
2014-01-22 10:31:24 +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
Thomas Gelf 30208c3a30 Internally rename module registerscript to runScript
We will probably rename the 'register' script itself, as we need to
distinct between setup/configuration-related tasks and tasks that need
to be executed with each single click.

refs #4108
2014-01-22 09:54:59 +00:00
Thomas Gelf aa1a2316cb Avoid syslog-related exceptions
refs #5522
2014-01-22 09:26:45 +00:00
Marius Hein afbe8f0fcb Implement move on LDAP Connection
refs #5202

Conflicts:
	library/Icinga/Protocol/Ldap/Connection.php
2013-12-17 14:32:48 +01:00
Marius Hein f7324e73a3 User class bugfix
refs #5151
2013-11-28 17:31:41 +01:00
Marius Hein 263f09a94c Add email column to extensible features
refs #5151
2013-11-28 17:23:55 +01:00
Marius Hein 93d233f37d Make DbUserBackend extensible
Fix: Swap hmac secret key

refs #5151
2013-11-27 11:10:07 +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
Matthias Jentsch bd38e998d7 Provide a cleaner interface for the Authentication Backends
refs #4786
2013-11-06 14:49:16 +01:00
Matthias Jentsch 59d4baff0b Fix remaining references to DbUserBackend and refresh the documentation.
refs #4786
2013-11-06 13:31:07 +01:00
Matthias Jentsch ad08691362 Extend resources.ini to contain all resources, including ldap
Remove the old calls to DbAdapterFactory and use ResourceFactory instead. Remove
the DbAdapterFactory and fix all unit tests that have been broken due to the changes.
Change the functionality of the ResourceFactory to also handle LdapConnections

resolves #4587
2013-11-06 10:20:15 +01:00
Eric Lippmann 2387380399 Statusdat: Set default cachepath to '/tmp'; disable caching when path is not writable 2013-10-28 12:46:19 +01:00
Eric Lippmann a9086c5388 Redirect to /index after login 2013-10-23 16:02:08 +02: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 8eea09ab53 Add default dashboard, fix componentLoader issue introduced before 2013-10-23 13:06:09 +02:00
Jannis Moßhammer dc5182d4bf CommandHandler now uses Status/HostView, fix sql IN-Query bug 2013-10-23 10:19:55 +02:00
Thomas Gelf 5d3fbd1cdf We need a Livestatus factory 2013-10-22 20:21:03 +00:00
Thomas Gelf e57b75b354 Cleaning up ugly path 2013-10-22 20:20:06 +00:00
Marius Hein bd6c1c7864 Merge branch 'bugfix/installation-fixes-4941'
Important vagrant changes:
    - Drop databases and users for icingaweb
    - Run vagrant provision to apply changes

fixes #4941
2013-10-22 17:55:15 +02:00
Thomas Gelf 92ced41a77 A few new ANSI screen helpers 2013-10-22 15:52:13 +00:00
Marius Hein dd214bbe16 Implement disable flag for authentication backends
refs #4941
2013-10-22 17:50:21 +02:00
Marius Hein b9f03e27b7 Fix backend configuration while installation
refs #4941
2013-10-22 17:50:21 +02:00
Marius Hein 439168ecfb Fix ldap connection port setting
refs #4941
2013-10-22 17:50:21 +02:00
Marius Hein 9ebd2c0478 Fix port for internal db
Fix db factory to use that port

refs #4941
2013-10-22 17:50:20 +02:00
Marius Hein 6017432750 Logger: Same default file names as installes
refs #4941
2013-10-22 17:50:20 +02:00
Thomas Gelf a3099c82f2 CLI parameters override log config, writer is STDERR 2013-10-22 14:15:49 +00:00
Thomas Gelf add8c4094b Do not create STDIN/STDOUT streams 2013-10-22 14:15:49 +00:00
Jannis Moßhammer 16124989dd Various style fixes, changed icon size, fixed show/service 2013-10-22 15:58:24 +02:00
Thomas Gelf 88223acc47 Allow 'false' lookup components, improve help 2013-10-22 13:52:00 +00:00
Thomas Gelf b6ee15a37f Allow access to "route" discovered by CLI Loader 2013-10-22 13:48:25 +00:00
Eric Lippmann 5abac6f2f4 Cli/Screen: Fix strict standard violation 2013-10-22 15:11:08 +02:00
Eric Lippmann 30b37aa1e5 Statusdat/Query::fetchRow: Fix strict standards violation 2013-10-22 15:11:07 +02:00
Thomas Gelf a25cd80ec0 CLI interface: initial import 2013-10-22 12:26:45 +00:00
Thomas Gelf b6e7d5c4c1 NRPE Protocol: shorter timeout, fail-safe disconnect 2013-10-22 12:22:20 +00: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
Eric Lippmann 077c2a078e Modules: Catch and log register.php exceptions 2013-10-20 16:40:57 +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 36e9cdb549 Monitoring/register: Add status summary to the top bar 2013-10-20 16:08:53 +02:00
Jannis Moßhammer 278f975c48 Fix downtime query and schedule downtime 2013-10-20 16:00:56 +02:00
Jannis Moßhammer f3bbf09bae Status.dat query fixes and documentation after rebase
refs #3801
2013-10-20 15:16:44 +02:00
Jannis Moßhammer f350011028 Add Status.dat backend
refs #3801
2013-10-20 15:16:44 +02:00
Marius Hein 53ab6dbbf1 Implement global command toggle form in process view
refs #4918
2013-10-19 15:28:51 +02:00
Marius Hein 73e8d60060 Implement global commands
resolves #4142
2013-10-19 13:25:18 +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 6095a71a8d CS Fixes
refs #4868
2013-10-17 21:40: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 c034a5eff8 Fix tests and a few member access issues
refs #3801
2013-10-17 19:55:00 +02:00
Jannis Moßhammer 44be5e85da Refactoring and Query and IDO code,
the Monitoring/View code was completly dropped in favor of
the DataView implementations, as new Backends otherwise
would require to implement two seperate query logics

refs #3801
2013-10-17 19:54:58 +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 c624921792 Add error handling for less compiler
refs #4892
2013-10-16 15:52:12 +02:00
Marius Hein 6f26df60f3 Apply less mixins
refs #4895
2013-10-16 15:37:44 +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
Marius Hein 7a406b313f Adjusted buttons and a tags
refs #4869
2013-10-15 18:10:36 +02:00
Marius Hein 15f0f1aa59 Status view and icons
refs #4824
2013-10-14 13:27:43 +02:00
Eric Lippmann 1ea5778981 Temporary overwrite front controller's request when dispatching detail (WIP)
refs #4823
2013-10-14 12:57:26 +02:00
Eric Lippmann d479ab3536 Widget/Tab: Allow additional a tag attributes
refs #4823
2013-10-14 12:57:26 +02:00
Eric Lippmann a42668edb8 Fix tests
refs #4663
2013-10-09 09:20:17 +02:00
Eric Lippmann b89d61add3 Monitoring: Refactor data views (WIP)
refs #4663
2013-10-09 09:20:16 +02:00
Matthias Jentsch ec2ffcabdf Add redirection to AuthenticationController
refs #4670
2013-10-04 15:43:02 +02:00
Marius Hein c6838f67a1 Icinga/Chart: Fixes typo, doc, interfaces, inspection warnings
refs #4614
2013-09-25 16:32:28 +02:00
Jannis Moßhammer 7690b0ec7f Add basic tests and meta attributes for graphs
refs #4614
2013-09-25 14:24:26 +02:00
Jannis Moßhammer b78d1a236a Finish graphing library and add documentation
refs #4614
2013-09-25 14:24:26 +02:00
Eric Lippmann 45bf37b085 Add library/Icinga/Chart skeleton
refs #4614
2013-09-25 14:24:26 +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 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
Eric Lippmann 24f64e6d30 Fix conflicts from rebase, using inet_aton with pgsql, PHP strict standards violations, CS compliance
refs #4255
2013-09-17 15:12:18 +02:00
Thomas Gelf c9ce7c53b0 Paginator may be ready for QueryInterface 2013-09-17 10:46:32 +02:00
Thomas Gelf c75a83d1d2 PDF fixes 2013-09-17 10:46:32 +02:00
Thomas Gelf 2ff5455018 First attempt to write a backend-independent Pivot-Table implementation 2013-09-17 10:41:02 +02:00
Thomas Gelf dc34905315 Moved Data\Array to DataArray 2013-09-17 10:36:04 +02:00
Thomas Gelf 1eb0fcdff8 AbstractQuery implements QueryInterface, added addColumn, fixed sort 2013-09-17 10:36:04 +02:00
Thomas Gelf 86945152b4 QueryInterface, initial commit 2013-09-17 10:36:04 +02:00
Thomas Gelf 1d1214b8b9 Implemented conservative count, implemented count 'cache' 2013-09-17 10:36:04 +02:00
Thomas Gelf 0f48d0e2d6 Added fetchColumn, it was missing 2013-09-16 17:02:30 +02:00
Thomas Gelf 103ed266c5 Typo 2013-09-16 17:02:30 +02:00
Thomas Gelf 3908974698 We need to set Db fetchMode as it has previously been done 2013-09-16 17:02:30 +02:00
Thomas Gelf d181e8018b Prefs fail if configDir is not writable 2013-09-16 16:51:54 +02:00
Thomas Gelf 4237e3e53e modules/README triggers pointless warning 2013-09-16 16:38:51 +02:00
root 72df979791 Zend_Db::FETCH_MODE is not available before ZF 1.11 (ZF-6620)
* TODO: Check whether passing 'fetchMode' really works?!
2013-09-16 16:38:50 +02:00
Eric Lippmann f76f5b1c1d Command: Fix docstring for excludeHost
refs #4580
2013-09-16 14:59:45 +02:00
Eric Lippmann 8baa2dec54 Command: Rename getParameters to getArguments
refs #4580
2013-09-16 14:46:18 +02:00
Eric Lippmann a47db3497e Rename BaseCommand to Command
refs #4580
2013-09-16 14:44:59 +02:00
Eric Lippmann bf012fbd7e Remove CommandType interface
Moved BaseCommand from the monitoring module to the application's library.

refs #4580
2013-09-16 14:39:14 +02:00
Johannes Meyer 7045148f93 Adjust submitpassivecheckresult command handling
refs #4580
2013-09-16 13:14:29 +02:00
Johannes Meyer fef8370d5f Adjust reschedulecheck command handling
refs #4580
2013-09-16 13:14:28 +02:00
Johannes Meyer e9dc895b37 Adjust delay notification handling
refs #4580
2013-09-16 13:14:28 +02:00
Johannes Meyer 36424b508b Adjust custom notification handling
refs #4580
2013-09-16 13:14:28 +02:00
Johannes Meyer ba7f455643 Adjust schedule downtime handling (WIP)
refs #4580
2013-09-16 13:14:28 +02:00
Johannes Meyer 8022bf57af Some doc fixes and other improvements
refs #4580
2013-09-16 13:14:28 +02:00
Eric Lippmann cabe2ccbee Widget/Tabs: Show caret 2013-09-05 14:15:29 +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 b5e93afd86 CS: Add newline at end of file
find application/ library/ test/ modules/ -name *.php | xargs sed -i '$a\'
2013-09-04 18:28:35 +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
Eric Lippmann 95e9117325 Fix SortBox not keeping Sort By input after submission 2013-09-04 18:21:10 +02:00
Jannis Moßhammer 7f4e1936f7 Fix trigger downtime default value issing, docstring fixes
refs #4580
2013-09-04 18:08:00 +02:00
Johannes Meyer b74e264f01 Refactor comment command handling
- Refactored Comment class
- Dropped IComment interface
- Added AddCommentCommand class
- Updated CommentForm

refs #4580
2013-09-04 18:08:00 +02:00
Johannes Meyer 9a476f16f4 Re-refactor dispatch process of commands and acknowledgement handling
refs #4580
2013-09-04 18:08:00 +02:00
Johannes Meyer 79eb6588c5 Restructure dispatch process of commands
refs #4580
2013-09-04 18:07:59 +02:00
Eric Lippmann 05d08fb0b8 Fix Bootstrap typed wrong
refs #4601
2013-09-04 17:12:44 +02:00
Jannis Moßhammer b1df9fa67d Readd import in BaseTestCase that got lost during rebase
refs #4601
2013-09-04 15:22:01 +02:00
Jannis Moßhammer d27e34cef8 Codestyle and Test fixes for SortBox
refs #4601
2013-09-04 15:22:00 +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 c9673bfea3 Catch database errors, set fallback tz
The fallback timezone is set in case an error occurs
before setupTimezone() is entered. In this case the user
is presented with an warning about missing timezone settings
if the php.ini doesn't contain timezone information

refs #4529
2013-09-04 14:27:37 +02:00
Jannis Moßhammer 95bc8a2f4f Add NullStore as preference fallback
refs #4529
2013-09-04 14:27:37 +02:00
Eric Lippmann 1b858cbdb4 Monitoring: Fix remaining usages of namespace Monitoring without Icinga\Module prefix
refs #4586
2013-09-04 11:21:12 +02:00
Eric Lippmann 6f383abdd1 Tests: Let the BaseTestCase require db and form libraries once it's being required
Further add function t() and mt() to the global namespace when requiring BaseTestCase

refs #4586
2013-09-04 11:21:12 +02:00
Eric Lippmann 74b9731df5 Remove auto class requirement from BaseTestCase::createForm()
The tests for the respective forms must require the form class.

refs #4586
2013-09-04 11:21:12 +02:00
Eric Lippmann 092c5780ea CS: Fix violations for overdue files
refs #4586
2013-09-04 11:21:12 +02:00
Eric Lippmann 03f081ce33 Module/Autoloader: Register Icinga\Module\<module> namespace
refs #4586
2013-09-04 11:21:11 +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 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 368bd3c9c7 Refactor datetime validation
The DateTimePicker form element needs to know from now on,
how user input can be formatted when validating.

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
Eric Lippmann b09b3676de Rename determineAuthenticationState to requiresLogin
refs #4572
2013-09-02 18:42:05 +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
Jannis Moßhammer aac1d69ed2 Fix count query ignoring joins
Count queries were created before the required columns were added,
so they often returned more values than a resultset really offers

refs #4589
2013-09-02 18:42:05 +02:00
Marius Hein b99b9a7ca8 ModuleManager: Throw module dir exceptions later
This is important for bootstrap to detect configuration
errors.

refs #4604
2013-09-02 12:52:51 +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 18d021d104 Fix logger not testing if it's disabled
refs #4595
2013-09-02 12:16:05 +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
Marius Hein 446da85a88 UserBackend: Fix interface in test
refs #4593
2013-08-30 15:32:06 +02:00
Marius Hein e2e744a424 Fix authentication chain
refs #4593
2013-08-30 14:46:52 +02:00
Marius Hein 845f181001 CS: Fix UserBackend interface
refs #4641
2013-08-30 12:50:57 +02:00
Marius Hein bed759d597 CS: Fix session classes
refs #4641
2013-08-30 12:50:57 +02:00
Marius Hein 7765877318 CS: Fix LdapUserBackend
refs #4641
2013-08-30 12:50:57 +02:00
Marius Hein c77a48ff1f CS: Fix DbUserBackend
refs #4641
2013-08-30 12:50:57 +02:00
Marius Hein 7c8252a983 Rename class Credentials to Credential
refs #4641
2013-08-30 12:50:57 +02:00
Marius Hein 83d20a6175 AuthManager: Fix tests
refs #4641
2013-08-30 12:50:28 +02:00
Marius Hein dfb7238b81 AuthManager: Implement backend chain
refs #4641
refs #4590
refs #4593
2013-08-30 12:50:28 +02:00
Johannes Meyer 28bd27d904 Fix user preference access when not authenticated
refs #4609
2013-08-29 15:08:31 +02:00
Johannes Meyer f4272f482d Apply user defined timezone during bootstrap
refs #4609
refs #4552
2013-08-29 15:08:31 +02:00
Johannes Meyer a82abbe2f6 Fix misplaced/redundant imports
refs #4648
2013-08-29 14:45:02 +02:00
Marius Hein 7be7335bdd Preferences: Fix error messages and convenience configuration
refs #4648
2013-08-29 14:45:02 +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 ec359c76d8 Chmod after file creation
This allows the www-group to edit logs and preferences

refs #4491
2013-08-29 11:48:33 +02:00
Jannis Moßhammer 3d3fa45838 Fix ActionController compatibility with older Zend Versions
refs #4643
2013-08-29 11:48:33 +02:00
Jannis Moßhammer 0b515e39ac Implement {app} placeholder and Icinga\Config::resolvePath()
refs #4642
2013-08-29 11:48:32 +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 4527aaf57a Smaller fixes in phpdoc style
refs #4566
2013-08-28 14:42:31 +02:00
Johannes Meyer 7fab739efd Fix styles in Form.php
refs #4566
2013-08-28 09:08:37 +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
Jannis Moßhammer e3f9d1b6bd Replace "\n" with PHP_EOL
refs #4615
2013-08-27 18:49:30 +02:00
Matthias Jentsch 874b163009 Fix comment padding and some coding-style issues in the test classes
refs #4615
2013-08-27 18:28:21 +02:00
Matthias Jentsch 5b58d5488b Add support for section reordering and formatting options to the PreservingIniWriter
The PreservingIniWriter needs to be aware of the the order of the sections and
update the section declarations in the configuration file when the order has
changed. Therefore add functions to correctly reorder sections.

refs #4615
2013-08-27 18:28:21 +02:00
Marius Hein c5bea04909 BaseTestCase: User response, CS and typo
refs #4608
2013-08-27 10:37:35 +02:00
Marius Hein dc71885eac Fix icinga application forms using BaseTestCase now
refs #4608
2013-08-26 13:25:20 +02:00
Marius Hein 1130376ad6 BaseTest: Create class and tests
refs #4608
2013-08-26 11:15:27 +02:00
Marius Hein 0c69dbf482 CS: Fix for DbAdapter, Auth/Manager and Preferences/DbStore
refs #4596
2013-08-26 11:09:37 +02:00
Matthias Jentsch 49cf62a9dc Fix database related bugs
Fix coding standards in database schemes. Use DbAdapterFactory in all unit
tests instead of creating own adapters. Fix DbUserBackend and DbStore to use
FETCH_OBJ, instead of FETCH_ASSOC, to handle it consistently in the whole
application. Remove unnecessary table columns from the "account" scheme.

refs #4577
refs #4578
refs #4596
refs #4599
refs #4627
2013-08-26 11:09:37 +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 2debc7826b Deactivate group backend initializing
refs #4624
2013-08-23 17:28:12 +02:00
Marius Hein c65f9d51ee Fix static preferences path overwriting configuration path
refs #4598
2013-08-23 17:28:12 +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 dc2aad75d1 Modify application templates for proper bootstrap usage
refs #4550
2013-08-23 10:27:16 +02:00
Eric Lippmann d813ca62c5 Db: Set MySQL server SQL modes to behave closer to ANSI SQL
Was already implemented but someone dropped it accidentally
2013-08-21 14:40:37 +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 8ac914b29a Fix ActionController missing use Icinga\Web\Url
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 83d053965f Implement monitoring instance and backend configuration forms
refs #3776
2013-08-21 14:22:30 +02:00
Jannis Moßhammer 4c5d26fe9a 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 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 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 4810a0d47e Code style and test fixes
refs #3777
2013-08-21 14:22:29 +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 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 dbae055e8e Fix redirector to use relative url
refs #4516
2013-08-21 09:44:01 +02:00
Marius Hein 4cdab8d904 Fix phpcs errors for Icinga\Web\Hook 2013-08-20 19:33:15 +02:00
Marius Hein 0581d9a130 Fix phpcs errors for Icinga\Web\View 2013-08-20 19:26:44 +02:00
Marius Hein df6ccce6f2 Fix phpcs errors 2013-08-20 17:34:47 +02:00
Marius Hein 3a8a3b8f2c Monitoring backend: Change database objects to DbAdapterFactory
refs #4575
2013-08-19 18:29:26 +02:00
Marius Hein 1b94eed945 Remove \Icinga\Backend class
refs #4575
2013-08-19 18:29:26 +02:00
Eric Lippmann 3d3fbb123d Monitoring/Commands: Add help messages to the custom notification form
refs #4524
2013-08-16 17:38:50 +02:00
Eric Lippmann 7dc2f78b63 CS: Fix docstrings in Icinga/Web/Widget/* and Icinga/Web/Controller/ActionController.php
refs #4512
2013-08-16 15:08:28 +02:00
Jannis Moßhammer 0b479e3796 Code style fixes, fix documentation, fix tab parameters not being overwritten
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
Matthias Jentsch e6c57f029d Fix code styling to comply with coding standard
refs #4503
2013-08-15 14:58:08 +02:00
Matthias Jentsch 7f30b587be Change the StoreFactory to work with the DbAdapterFactory and fix code styling
Change the StoreFactory configuration to reference to a resource instead of
defining the whole database. Additionally fix docstrings, fix imports and fix
function calls to comply to coding style standards.

refs #4503
2013-08-15 14:16:34 +02:00
Matthias Jentsch f1040aad60 Add additional functionality and documentation for easier use through developers
Add functions to get information about currently available resources and add
documentation about class usage for developers.
2013-08-14 16:22:58 +02:00
Matthias Jentsch 68deb735c0 Add the DbAdapterFactory to instanciate database adapters using resource names
Create the DbAdapterFactory to instanciate db adapters, add resources.ini to configure resources, change
the authentication Manager to fall back to backends with lower priority in case
of errors, update the current UserBackends to the changed environment. Also
adjust the documentation and existing unit tests.

resolves #4503
2013-08-14 16:22:58 +02:00
Eric Lippmann 6d98b923ca CS: Fix docstrings in Icinga/Application/Modules/Module.php and Manager.php
refs #4530
2013-08-14 16:08:15 +02:00
Jannis Moßhammer d604b01349 Fix missing Icinga\Application\Logger import in module manager
refs #4530
2013-08-14 16:08:15 +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
Eric Lippmann 8c91410680 CS: Fix phpdoc tags indent in Icinga/Application/Modules/Module.php
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
Matthias Jentsch 7c1b11baa4 Fix a bug that causes a warning to be displayed when a section
declaration at line 0 is present
2013-08-14 15:05:10 +02:00
Matthias Jentsch eecbc233b9 Fix behavior of PreservingIniWriter that caused comments at the line end to be deleted
Implement a function to fetch comments at line end and use it to preserve
comments. Change the regular expressions used to parse lines to be more aware
of whitespaces between terms. Add automatic value and comment indentation
to produce cleaner output.
2013-08-14 15:05:10 +02:00
Eric Lippmann 4585bf2555 CC: Add missing docstrings to DateTimeFactory and DateTimePicker
refs #4440
2013-08-12 17:27:23 +02:00
Eric Lippmann bd140f2828 CC: Fix phpcs errors of files changed in feature/datetime-element-4440
refs #4440
2013-08-12 16:43:10 +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 9f22905837 Framework/DateTimePicker: Set element's value to Unix timestamp after the input is considered valid
refs #4440
2013-08-12 16:43:09 +02:00
Eric Lippmann 5cb9c67443 Framework: Fix Form's docstrings
refs #4440
2013-08-12 16:43:09 +02:00
Eric Lippmann e95c604084 Framework: Fix typo in DateTimeFactory::setConfig
refs #4440
2013-08-12 16:43:09 +02:00
Eric Lippmann b4b51b9d46 Framework: Implement time zone aware DateTimeFactory
refs #4440
2013-08-12 16:43:09 +02:00
Eric Lippmann ba00fd39df Framework: Get DateTimePicker's value as timestamp and add input validation
refs #4440
2013-08-12 16:43:09 +02:00
Eric Lippmann 3122a75e73 Framework/User: getTimeZone now returns a DateTimeZone object instead of a string
refs #4440
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
Eric Lippmann 1f10cb3124 Framework: Rename DateTime form element to DateTimePicker
refs #4440
2013-08-12 16:43:08 +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 8af901e9ed Framework/User: Implement getTimezone to retrieve the user's Timezone
refs #4440
2013-08-12 16:42:50 +02:00
Eric Lippmann 9170523afa Application/Bootstrap: Throw Exception if timezone isn't valid
refs #4440
2013-08-12 16:42:50 +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 07717e9119 Fix codestyle
- return self insteead of return $this
- missing licence header in Dimension.php

refs #4192
2013-08-09 10:32:57 +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 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
Matthias Jentsch 57257d1af3 Fix coding standard violations
resolves #4352
2013-08-07 16:19:15 +02:00
Matthias Jentsch 76d7753860 Split up functions in PreservingIniWriter for better readabillity and add better comment handling
Split up the function diffPropertyUpdates into two single functions. Change the
IniEditor to "glue" comments to section declarations.

resolves #4352
2013-08-07 15:58:51 +02:00
Matthias Jentsch c1338898a6 Fix errors in function comments and move IniEditor into single class file
refs #4352
2013-08-07 15:58:51 +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
Matthias Jentsch edebbf93ab Add an IniWriter that preserves the comments in already existing files
Add a function to create diffs between two object, add a
FileEditor to edit files line-by-line and add the class PropertyDiff to
describe a single property change.

refs #4352
2013-08-07 15:56: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
Jannis Moßhammer ff62a82895 Fix dynamic form validation behaviour, fix documentaion, fix correct isValid() call
- When a dynamic form is modified, no validation is performed, but
  the form is being populated with $this->populate.
- changed parent::isValid to $this->isValid, otherwise no custom validation
  logic could be implemented
- Updated documentation
- Fix CSRF protection by removing the time

refs #4439
2013-08-06 15:08:54 +02:00
Johannes Meyer 66592ecabf Enable dynamic form elements
Expire time of the AcknowledgeForm and hours as well as
minutes of the ScheduleDowntimeForm are now dynamic.

refs #4439
2013-08-06 15:06:20 +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 584198f00c Fix hostlist test
refs #4516
2013-08-06 14:06: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 4befc9be94 Merge branch 'feature/preferences-backend-4069'
resolves #4069
2013-08-06 12:04:16 +02:00
Johannes Meyer 5533b632ed Fix code style and make form name non mandatory
refs #4439
2013-08-06 11:11:29 +02:00
Johannes Meyer f26af0eb12 Update command form tests
Update command form tests so that they reflect the new dynamic
functionality and the correct purpose of "isSubmittedAndValid".

refs #4439
2013-08-06 11:11:28 +02:00
Johannes Meyer 8efbe6f613 Move submit and cancel handling
Move submit and cancel handling from ConfirmationForm to Form.

refs #4439
2013-08-06 11:11:28 +02:00
Johannes Meyer fa7379adc7 Enable dynamic form elements
Expire time of the AcknowledgeForm and hours as well as
minutes of the ScheduleDowntimeForm are now dynamic.

refs #4439
2013-08-06 11:09:42 +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
Marius Hein c9c5e6ef3c Send commands: Review fixes
refs #4441
2013-08-06 09:32:27 +02:00
Jannis Moßhammer a58c933a29 Code style and comment fixes
refs #4441
2013-08-06 09:32:27 +02:00
Jannis Moßhammer 7675ea0514 Call commandhandler from commandcontroller actions
The CommandController now implements the calls to the specific
command methods and sends commands to the icinga process

refs #4441
2013-08-06 09:31:13 +02:00
Jannis Moßhammer 1894054929 Implement first commands, fix obsessing state
refs #4441
2013-08-06 09:30:25 +02:00
Jannis Moßhammer 4f1e6ec720 Code style and comment fixes
refs #4441
2013-08-06 09:27:37 +02:00
Jannis Moßhammer b44de95caa Call commandhandler from commandcontroller actions
The CommandController now implements the calls to the specific
command methods and sends commands to the icinga process

refs #4441
2013-08-06 09:27:37 +02:00
Jannis Moßhammer 2091f63c3b Implement first commands, fix obsessing state
refs #4441
2013-08-06 09:27:37 +02:00
Jannis Moßhammer d6bbed3a54 Extract the transport functions from the CommandPipe
- The CommandPipe class now delegates submission of commands to
  the Transport classes (LocalPipe or SecureShell)
- Added SSH options for non-interactive mode
- Refactored tests

refs #4441
2013-08-06 09:27:37 +02:00
Marius Hein 512676ec1a User preferences: Review fixes
refs #4069
2013-08-05 16:56:03 +02:00
Marius Hein 8f1a3b228b User preferences: remove test code
refs #4096
2013-08-05 16:56:03 +02:00
Marius Hein cc9b18376d User preferences: Add doc, fix initial session write
refs #4069
2013-08-05 16:56:03 +02:00
Marius Hein 6112189b0c User preferences: Add database store
refs #4069
2013-08-05 16:56:03 +02:00
Marius Hein f3ed73175b User preferences: Session store and glue to build instance
refs #4069
2013-08-05 16:56:02 +02:00
Marius Hein 6d1f349616 User preferences: Implement interfaces and ini store
refs #4069
2013-08-05 16:56:02 +02:00
Thomas Gelf 06fc3e395e NO_ZERO_IN_DATE is available since MySQL 5.0.2
refs #4255
2013-08-02 15:10:09 +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
Marius Hein a1a8d4c157 Code compliance change and rename refs to User
refs #4066
2013-07-30 14:06:46 +02:00
Marius Hein 8510d57cf8 Prepare user settings api
Rework application bootstrap, move user object to its new location, implement web
request class to handle the user object.

refs #4066
2013-07-30 14:06:46 +02:00
Eric Lippmann 457f9b8f50 Db: Set MySQL server SQL modes to behave closer to ANSI SQL
refs #4413
2013-07-29 18:37:59 +02:00
Thomas Gelf f2c6a66de7 Code cleanup, fixed and extended MySQL SQL_MODE 2013-07-29 13:24:25 +00:00
Matthias Jentsch e51737f42a Fix the installation manual, comments and give the unit-test functions a more
verbose name

refs #3769
2013-07-29 11:42:31 +02:00
Matthias Jentsch 94e9ffc7b3 Fix comments
refs #3769
2013-07-26 15:57:37 +02:00
Jannis Moßhammer 845654b77f Fix strict error on ldap auth-fail, ldap is default auth now
refs #3769
refs #4463
2013-07-26 15:29:13 +02:00
Jannis Moßhammer 306a51271b Change 'user' table to 'account', error handling and docs
Fix installation instructions for postgresql, the user table is now
'account', as user is a keyword in some rdbms, now catching exceptions
and returning auth failed while logging errors

refs #3769
2013-07-26 15:01:52 +02:00
Matthias Jentsch ce95511890 Change default database to "icingaweb" and add installation instructions
Set the default database and user to "icingaweb" in the authentication.ini. Add
instructions about how to set up the databases to authentication.ini.

refs #3769
2013-07-26 13:10:00 +02:00
Matthias Jentsch fd4cbf1c5b Add default login to the authentication database
refs #3772
2013-07-26 13:10:00 +02:00
Matthias Jentsch 2807982f72 Remove crypto-module and use libraries instead
Remove the crypto-module to reduce amount of dependencies and use hash_hmac
with SHA256 instead.

refs #3769
2013-07-26 13:09:59 +02:00
Matthias Jentsch 3ff0c0f02a Adds DbUserBackend to handle the authentication against a sql db.
Users should be able to authenticate against an internal DB without setting up
additional authentication domains.

refs #3769
2013-07-26 13:09:59 +02:00
Jannis Moßhammer 6900507ebc Merge branch 'feature/command-masks-4355' of ssh://git.icinga.org/icinga2-web 2013-07-24 12:49:43 +02:00
Marius Hein 2b3bef457d Command masks: Small PSR fix, drop unused core, fix lazy render
refs #4355
2013-07-24 12:43:26 +02:00
Jannis Moßhammer ddfbf915ed Implement isPostAndValid, fix CSRF in forms, update tests
Form provides isPostAndValid for validation, using the
request for fetching POST data.
The tests are now updated to use the CSRF protection and
are cleaner now

refs #4355
2013-07-24 10:56:41 +02:00
Marius Hein 849eee2cf2 Command masks: Review changes [WIP]
refs #4355
2013-07-23 17:09:06 +02:00
Jannis Mosshammer e8204f4755 Merge branch 'feature/service-detail-view-4181' of ssh://git.icinga.org/icinga2-web
Conflicts:
	library/Icinga/Application/Logger.php
	library/Icinga/Application/Web.php
	library/Icinga/Authentication/Backend/LdapUserBackend.php
	library/Icinga/Authentication/Credentials.php
	library/Icinga/Authentication/Manager.php
	library/Icinga/Authentication/PhpSession.php
	library/Icinga/Authentication/Session.php
	library/Icinga/Authentication/User.php
	library/Icinga/Authentication/UserBackend.php
	library/Icinga/Backend/AbstractBackend.php
	library/Icinga/Backend/DataView/ObjectRemappingView.php
	library/Icinga/Backend/Query.php
	library/Icinga/Backend/Statusdat/DataView/StatusdatHostView.php
	library/Icinga/Backend/Statusdat/HostgroupsummaryQuery.php
	library/Icinga/Backend/Statusdat/HostlistQuery.php
	library/Icinga/Backend/Statusdat/ServicegroupsummaryQuery.php
	library/Icinga/Backend/Statusdat/ServicelistQuery.php
	library/Icinga/Exception/ConfigurationError.php
	library/Icinga/Exception/MissingParameterException.php
	library/Icinga/Exception/NotImplementedError.php
	library/Icinga/Exception/ProgrammingError.php
	library/Icinga/Exception/SystemPermissionException.php
	library/Icinga/Protocol/AbstractQuery.php
	library/Icinga/Protocol/Commandpipe/Acknowledgement.php
	library/Icinga/Protocol/Commandpipe/CommandPipe.php
	library/Icinga/Protocol/Commandpipe/Comment.php
	library/Icinga/Protocol/Commandpipe/Downtime.php
	library/Icinga/Protocol/Commandpipe/Exception/InvalidCommandException.php
	library/Icinga/Protocol/Commandpipe/IComment.php
	library/Icinga/Protocol/Commandpipe/PropertyModifier.php
	library/Icinga/Protocol/Ldap/Connection.php
	library/Icinga/Protocol/Ldap/Exception.php
	library/Icinga/Protocol/Ldap/LdapUtils.php
	library/Icinga/Protocol/Ldap/Node.php
	library/Icinga/Protocol/Ldap/Query.php
	library/Icinga/Protocol/Ldap/Root.php
	library/Icinga/Protocol/Statusdat/Exception/ParsingException.php
	library/Icinga/Protocol/Statusdat/IReader.php
	library/Icinga/Protocol/Statusdat/ObjectContainer.php
	library/Icinga/Protocol/Statusdat/Parser.php
	library/Icinga/Protocol/Statusdat/Query.php
	library/Icinga/Protocol/Statusdat/Query/Expression.php
	library/Icinga/Protocol/Statusdat/Query/Group.php
	library/Icinga/Protocol/Statusdat/Query/IQueryPart.php
	library/Icinga/Protocol/Statusdat/Reader.php
	library/Icinga/Protocol/Statusdat/RuntimeStateContainer.php
	library/Icinga/Protocol/Statusdat/View/AccessorStrategy.php
	library/Icinga/Web/ActionController.php
	library/Icinga/Web/Form.php
	library/Icinga/Web/Hook/Configuration/ConfigurationTab.php
	library/Icinga/Web/Hook/Configuration/ConfigurationTabBuilder.php
	library/Icinga/Web/Hook/Configuration/ConfigurationTabInterface.php
	library/Icinga/Web/Hook/Grapher.php
	library/Icinga/Web/Hook/Toptray.php
	library/Icinga/Web/ModuleActionController.php
	library/Icinga/Web/Notification.php
	library/Icinga/Web/Paginator/Adapter/QueryAdapter.php
	library/Icinga/Web/Paginator/ScrollingStyle/SlidingWithBorder.php
	library/Icinga/Web/Widget.php
	modules/monitoring/application/views/helpers/MonitoringCommands.php
	modules/monitoring/application/views/helpers/MonitoringFlags.php
	modules/monitoring/application/views/helpers/MonitoringProperties.php
	modules/monitoring/application/views/scripts/show/components/comments.phtml
	modules/monitoring/application/views/scripts/show/components/downtime.phtml
	modules/monitoring/application/views/scripts/show/components/flags.phtml
	modules/monitoring/application/views/scripts/show/components/properties.phtml
	modules/monitoring/application/views/scripts/show/header.phtml
	modules/monitoring/application/views/scripts/show/host.phtml
	modules/monitoring/application/views/scripts/show/service.phtml
	modules/monitoring/library/Monitoring/Backend/AbstractBackend.php
	modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimeQuery.php
	modules/monitoring/library/Monitoring/Backend/Ido/Query/StatusQuery.php
	modules/monitoring/library/Monitoring/Backend/Statusdat.php
	modules/monitoring/library/Monitoring/Backend/Statusdat/Criteria/Order.php
	modules/monitoring/library/Monitoring/Backend/Statusdat/DataView/StatusdatServiceView.php
	modules/monitoring/library/Monitoring/Backend/Statusdat/Query/GroupsummaryQuery.php
	modules/monitoring/library/Monitoring/Backend/Statusdat/Query/Query.php
	modules/monitoring/library/Monitoring/Command/Meta.php
	modules/monitoring/library/Monitoring/View/DowntimeView.php
	modules/monitoring/test/php/application/views/helpers/MonitoringCommandsTest.php
	modules/monitoring/test/php/application/views/helpers/MonitoringPropertiesTest.php
	modules/monitoring/test/php/library/Command/MetaTest.php
2013-07-23 16:33:07 +02:00
Marius Hein 89e7fa6b2d Command masks: Add validator and change validation flow
refs #4355
2013-07-23 14:47:40 +02:00
Marius Hein e9c9c9de87 Command masks: Fix lazy initialization of forms
refs #4355
2013-07-23 14:47:40 +02:00
Marius Hein 03f4a8eceb Command masks: Implement missing forms [WIP]
Fixes phpcs issues, missing features, fix controller using
new config interface.

refs #4355
2013-07-23 14:47:40 +02:00
Marius Hein 0de38c25eb Command masks: Refactor and implement masks
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
Marius Hein dc878de275 Forms: Move class to the right place
Drop some methods we do not need anymore (all model related).

refs #4355
2013-07-23 14:46:25 +02:00
Marius Hein 2469e3652c Forms: Drop old form class 2013-07-23 14:46:25 +02:00
Marius Hein 576124a827 Forms: Move Icinga\Form to Icinga\Web\Form 2013-07-23 14:46:25 +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
Johannes Meyer 56b8b398c2 Add Number functionality to Icinga\Form\SendCommand 2013-07-23 14:46:25 +02:00
Johannes Meyer 087e4dfe90 Add choice functionality to Icinga\Form\SendCommand 2013-07-23 14:46:25 +02:00
Johannes Meyer 23e15e3f54 Add textbox functionality to Icinga\Form\SendCommand 2013-07-23 14:46:25 +02:00
Johannes Meyer 4b8643dc56 Add a date and time form-element.
Added a date and time form-element which are implemented based on the
new "date" and "time" input-types introduced with html5. If those are not
available two bootstrap javascript-modules will be enabled.

refs #4355
2013-07-23 14:46:24 +02:00
Johannes Meyer 15ab7f188a Implement schedule host/service check action
Refactored existing schedule action and fixed selectCommandTargets.

refs #4355
2013-07-23 14:46:24 +02:00
Johannes Meyer aa241865b4 Replace custom formNote element with the one from Zend
Replaced custom form element "Note" as
Zend already provides such an element.
2013-07-23 14:46:24 +02:00
Johannes Meyer abda65f4bd Refactor command controller and implement restart action.
Refactored existing command controller so that it reflects the
correct coding style, rewritten the icinga restart command and
added a very simple form for it.

refs #4355
2013-07-23 14:46:24 +02:00
Marius Hein 8d3ff94696 Remove php strict errors
refs #4448
2013-07-23 12:18:27 +02:00
Jannis Moßhammer a0839ea0da Add service detail view
refs #4181
2013-07-22 16:03:36 +02:00
Jannis Moßhammer dac9b7be4b Fix mixedPagination property typo, Statusloader libraries missing and getter for Abstractquery
refs #4178
2013-07-19 17:48:24 +02:00
Jannis Moßhammer 5e4adcfea2 Add Service overview and fixes for Statusdat
The service overview required a few fixes for issues that
occured because the StatusDat Query class now inherits from
Data/AbstractQuery.

refs #4178
2013-07-19 17:45:51 +02:00
Jannis Moßhammer 5827cb37cb Fix statusdat tests and implementation
After moving StatusDat to monitoring/Backends and changing the
inheritance to Library/Icinga/Data, a few changes must be reflected in the tests:
- Move tests to monitoring module
- Change $this->backend references in StatusDat Queries to $this->ds
- Added LibraryLoader to ease requiring of libaries (to be discussed)

refs #4417
refs #4179
2013-07-19 11:36:05 +02:00
Jannis Moßhammer cea7cdbcaf Move Statusdat to backend, remove old backend from library
Except for statusdat, the library/Icinga/Backend classes were unused

refs #4417
refs #4179
2013-07-18 17:20:12 +02:00
Jannis Moßhammer c1860e7d5d Merge branch 'master' of ssh://git.icinga.org/icinga2-web into feature/host-overview--4179
Conflicts:
	modules/monitoring/application/controllers/ListController.php
	modules/monitoring/application/controllers/ShowController.php
	modules/monitoring/library/Monitoring/Backend/AbstractBackend.php
2013-07-15 13:52:26 +02:00
Jannis Moßhammer e83526be08 Make form folder optional
When the form folder didn't exist, an exception was thrown that
froze the frontend without any error message. Now it is tested
whether the form folder in a module is available and only registered
in the auotoloader if so.

refs #4407
2013-07-15 13:37:43 +02:00
Jannis Moßhammer 705127a95e Make sql-queries more standard compliant
The connection now uses ONLY_FULL_GROUP_BY when connecting and
also forces ANSI SQL, this is reflected in the query codebase.
Also the comment count fields are added in this commit.

refs #4179
2013-07-15 13:21:48 +02:00
Marius Hein 5489c2fa2e Update license header
refs #4407
2013-07-15 12:26:10 +02:00
Marius Hein 6742696e09 Autoloader: Rename module namespace 2013-07-15 12:16:14 +02:00
Marius Hein e049d8f3c4 Autoload: Fix test before rename namespaces
Drop builder test, it is not needed anymore. Skip all notification
tests. Test includes bootstrapping and throw errors with ldap auth.

refs #4407
2013-07-15 11:20:12 +02:00
Marius Hein e27c73fe15 Autoloader: Move builder to new location [WIP]
refs #4407
2013-07-15 11:07:22 +02:00
Marius Hein 316893ad2c Add new autoloader implementation
New namespace implementation created to load application code
like forms with this autoloader. Consumpting services can register
their own, multiple namespaces. Overlapping namespaces matched
by closest name.

refs #4407
2013-07-12 16:11:03 +02:00
Eric Lippmann 2fffb892d3 Enable registerMenuEntries for modules since this works now
refs #4354
2013-07-12 15:44:55 +02:00
Eric Lippmann 51755209b6 Adapt usage of config class
refs #4354
2013-07-12 15:43:23 +02:00
Eric Lippmann 8c6f2a07ae Remove magic retrieval of configuration files
This change leads to expected exceptions when bootstrapping the
application since the \Icinga\Application\Config class was
refactored but its usage not.

refs #4354
refs #4353
2013-07-12 15:41:35 +02:00
Eric Lippmann 297b621bf6 Add view helper url 2013-07-12 14:45:25 +02:00
Eric Lippmann ca09dc084d Add Icinga\Web\ViewStream.php 2013-07-12 14:35:14 +02:00
Eric Lippmann d871b3c287 Update the monitoring module 2013-07-12 14:33:17 +02:00
Eric Lippmann be3193a0d7 Update LDAP and Livestatus protocol 2013-07-12 13:41:48 +02:00
Eric Lippmann e66d17dbf8 Use class Url in mixedPagination.phtml 2013-07-12 13:40:21 +02:00
Eric Lippmann df1e595604 Make retrieval of module config static 2013-07-12 12:11:59 +02:00
Eric Lippmann 78cbeadff2 Add remove and without functions to Url class
refs #4381
2013-07-12 12:06:30 +02:00
Eric Lippmann 7a075ca52a Add link to csv output to tabs
There is currently no controller implementing this output type
but the monitoring module will provide that.
2013-07-12 12:02:51 +02:00
Eric Lippmann 58ce815361 Rename Pdf/File to File/Pdf and adapt usage in the ActionController 2013-07-12 11:58:58 +02:00
Eric Lippmann 63a8854f40 Notification: Add todo that we do not want singleton usage of this class 2013-07-12 11:53:05 +02:00
Marius Hein 6be510b05e License writer
Update license headers

refs #4262
2013-07-03 14:17:49 +02:00
Eric Lippmann a90a19eb60 Fix Icinga\web\Hook
refs #4301
2013-06-28 11:17:39 +02:00
Eric Lippmann 7579aeaf07 Replace Hook::all with Hook::get 2013-06-28 09:34:44 +02:00
Eric Lippmann 903c9db8a6 Add date/time helpers to class Icinga\Util\Format
refs #4301
2013-06-28 09:19:43 +02:00
Eric Lippmann d1253f8136 Add static function get to class Hook
refs #4301
2013-06-28 09:19:43 +02:00
Eric Lippmann 6eade9c023 Fix use of already replaced class Icinga\Web\Session
refs #4301
2013-06-28 09:13:08 +02:00
Marius Hein 543285017b Extensible configuration system
PSR fixes

refs #4300
2013-06-27 16:10:54 +02:00
Marius Hein 1ede8df2af Extensible configuration system
Add configuration tab builder parts to register
free configuration tab items

refs #4300
2013-06-27 16:10:54 +02:00
Marius Hein b403721c11 Extensible configuration system
Add object registration for hooks.

refs #4300
2013-06-27 16:10:54 +02:00
Jannis Moßhammer 934163dd04 Add PHP Documentation to Authentication
Documented all currently existing classes underneath the
Authentication package

refs #4350
2013-06-27 15:24:22 +02:00
Marius Hein f22ae52768 System settings
Add new configuration controller for the configuration
controllers later.

refs #4299
2013-06-27 12:45:18 +02:00
Eric Lippmann 46abb8a36e Add library/Icinga/Web/Widget from the incubator
refs #4301
2013-06-27 12:04:13 +02:00
Marius Hein 72bb02d390 Module administration
Rebase fix ldap auth for testing issue.

refs #4092
2013-06-26 16:48:07 +02:00
Jannis Moßhammer d1f4e9831a Fix empty module folder causing errors, fix var naming
Fix a wrongly named class causing ClassNotFound issues,
also added additional checks for empty module folder and
added en moduleFolder directive to configure module location

refs #4092
2013-06-26 16:41:07 +02:00
Jannis Moßhammer 81bbee7e24 Add clearstatcache and tests for ModuleManager
Added the clearstatcache call before enabling or disabling modules,
as this prevents a 'File exists' error that occurs sometimes on
symlink creation (even when the folder is empty). Also added tests
for teh moduleManager

refs #4092
2013-06-26 16:39:55 +02:00
Jannis Moßhammer 8b84de934a Move ModuleController from incubator
The Notification dependency is removed and uses exceptions now,
otherwise it's mostly the same like in the incubator

refs #4092
2013-06-26 16:39:55 +02:00
Jannis Moßhammer d94d89e1cf Add javascript autoloading
the js/modules/%modulename%/%file% is now mapped to the module
path (if existing). To prevent name clashing, the modules folder
has been renamed to components.
2013-06-26 16:37:12 +02:00
Jannis Moßhammer 3490469727 Add clearstatcache and tests for ModuleManager
Added the clearstatcache call before enabling or disabling modules,
as this prevents a 'File exists' error that occurs sometimes on
symlink creation (even when the folder is empty). Also added tests
for teh moduleManager

refs #4092
2013-06-26 16:36:36 +02:00
Jannis Moßhammer 4f2fb49555 Move ModuleController from incubator
The Notification dependency is removed and uses exceptions now,
otherwise it's mostly the same like in the incubator

refs #4092
2013-06-26 16:36:36 +02:00
Jannis Moßhammer 5c167563fa Add SystemPermissionException
This exception should be fired when the OS restricts the web user
from executing certain actions. Also the template for errors has
been modified so it displays the action and the target that
was prevented.

refs #4092
2013-06-26 16:36:14 +02:00
Marius Hein a1327a384c Fix Authentication workflow
Fix ldap backends to use Credentials to work with. Fix
some tests to use include right files.

refs #4340
2013-06-25 12:24:52 +02:00
Jannis Moßhammer 8192c19424 Fix Authentication workflow
- The authentication controller now uses the Authentication/Manager class,
also there were some issues in the Session creation, this has been removed
from the Bootstrap now, as the Controller must decide how to open a session
(read-only or read/write).
- The tests reflect a few chagnes, as the move from the CSRF token generation
to the Formbuilder.
- Notificaiton now doesn't use Zend Session

refs #4340
2013-06-25 11:54:42 +02:00
Marius Hein 8d1038e622 Refactor and test \Icinga\Web\Form
Fix inspection issues, added some other code for testing to
have more coverage, fix test for QLink view helper.

refs #4302
refs #4341
2013-06-25 09:43:55 +02:00
Jannis Moßhammer 5cddbd1162 Add Form\Builder
The builder class allows to create forms and bind them to
models. The tests are currently failing because of the zend
pluginloader, this must be evaluated

refs #4302
2013-06-24 18:48:32 +02:00
Marius Hein c905b1f490 Test and move bootstrapping/web code to source tree
Move code from incubator to web. Only files needed to show
welcome moved.

refs #4249
2013-06-17 08:49:27 +02:00
Marius Hein 5e14f828ba Evaluate, Test and Move the items und library/Icinga/Web to the source tree
Fix PSR compliance.

refs #4256
2013-06-13 11:59:48 +02:00
Marius Hein 56844306c3 Evaluate, Test and Move the items und library/Icinga/Web to the source tree
Add test for Icinga_Web_Paginator_ScrollingStyle_SlidingWithBorder

refs #4256
2013-06-13 11:59:48 +02:00
Marius Hein 9657ba565e Evaluate, Test and Move the items und library/Icinga/Web to the source tree
Add test for paginator/QueryAdapter

refs #4256
2013-06-13 11:59:48 +02:00
Marius Hein f19934ef39 Evaluate, Test and Move the items und library/Icinga/Web to the source tree
Drop cookie class because implemented in auth

refs #4256
2013-06-13 11:59:48 +02:00
Marius Hein ee6d95b496 Evaluate, Test and Move the items und library/Icinga/Web to the source tree
Drop class Cookie because no implementation is made

refs #4256
2013-06-13 11:59:48 +02:00
Marius Hein c98be3ef73 Evaluate, Test and Move the items und library/Icinga/Web to the source tree
Add test for Widget.

refs #4256
2013-06-13 11:59:47 +02:00
Marius Hein ccd5564a37 Evaluate, Test and Move the items und library/Icinga/Web to the source tree
Modify test for hook, add test for notification

refs #4256
2013-06-13 11:59:47 +02:00
Marius Hein ed53ab6c9d Refactor Authentication Code
Fix PSR, fix testing

refs #4265
2013-06-11 13:53:42 +02:00
Marius Hein 8797d3e095 Refactor Authentication Code
Drop empty files

refs #4256
2013-06-11 13:35:53 +02:00
Jannis Moßhammer 2fb6cd5b50 Moved refs to Authentication/Auth to Authentication/Manager
refs #4265
2013-06-11 13:33:16 +02:00
Jannis Moßhammer 3199f21f29 Added License header, removed deprecated or empty files
refs #4265
2013-06-11 13:33:16 +02:00
Jannis Moßhammer da43813de9 Update Backendpath for Authentication
Backends are now located in the Icinga/Authentication/Backend folder

refs #4265
2013-06-11 13:33:16 +02:00
Jannis Moßhammer e325ad3417 Add LdapUserBackend and (skipping) test
The test is skipped due to the tight coupling of the Ldap Protocol
Backend to the rest of the application, this has to be addressed
as soon as the Connection is cleaned up

refs #4265
refs #4250
2013-06-11 13:33:15 +02:00
Jannis Moßhammer 70e8562814 Add PhpSession with tests
PhpSession handles file based sessions as supported by PHP

refs #4265
refs #4250
2013-06-11 13:32:33 +02:00
Jannis Moßhammer db61cfafe1 Update and test Auth/Manager implementation
- remove Storable inheritance from User and make it a plain DAO
- remove Authorization methods from User

refs #4265
refs #4250
2013-06-11 13:32:33 +02:00
Jannis Moßhammer 06b7b9ee2e Add Auth/Manager.php, currently without tests
The Auth Manager class incorporates the functionality of the
Backend.php and Auth.php class and handles authentication. The
authorization parts from the Auth.php (hasPermission(), etc.) have
been removed and will be added to the user class

refs #4265
2013-06-11 13:27:53 +02:00
Jannis Moßhammer 9206b30254 Add basic, untested skeleton for Session and PHPSession
As we decided to remove Zend_Session due to locking issues,
we have to implement our session handling here. This is
the basic, untested code which will be tested in the next step

refs #4265
2013-06-11 13:27:53 +02:00
Jannis Moßhammer d1f6668fe7 Add library from incubator and teststubs
This commit only contains the untested libaries from the incubator
and autogenerated teststubs and is the basis for writing the tests

refs #4250
2013-06-11 13:23:59 +02:00
Jannis Moßhammer ea2ad1f8c0 Merge branch 'master' of ssh://git.icinga.org/icinga2-web into bugfix/psr-compliance-4246 2013-06-10 16:46:18 +02:00
Jannis Moßhammer f898e2e367 Fix broken files in Statusdat Expression handler
The function tokens in the Expression handler didn't
work after they were rewritten, as the rewrite was
missing in certain files. This is fixed now

refs #4246
2013-06-10 16:44:58 +02:00
Eric Lippmann 0098053187 Remove empty files from the Icinga library
refs #4257
2013-06-07 15:46:33 +02:00
Jannis Moßhammer 54ccb9b12a Move libraries from incubator to working tree for evaluation
Add all untested files from incubator's library/Icinga to working
tree library/Icinga

refs #4257
2013-06-07 15:46:33 +02:00
Marius Hein 2172937138 Fix PSR compliance
Add some inspection items to fix.

refs #4246
2013-06-07 13:35:03 +02:00
Marius Hein e05ca449ae Fix PSR compliance
Alter files to follow PSR standards.

refs #4246
2013-06-07 13:29:11 +02:00
Marius Hein 172c699c47 Fix PSR compliance
Commit first part of correction.

refs #4246
2013-06-06 16:52:54 +02:00
Jannis Moßhammer aab69a41e8 Add tested ldap and web libraries
refs #4212
2013-06-03 17:02:08 +02:00
Jannis Moßhammer 2a9d7aa187 Add tested commandpipe connector
refs #4212
2013-06-03 16:56:08 +02:00
Jannis Moßhammer f6b5f5d405 Add tested Backend ressource
Only statusdat is currently tested

refs #4212
2013-06-03 16:36:10 +02:00
Jannis Moßhammer ba38c89755 Add tested Statusdat Protocol
In order to run the tests, phpunit must be called in the
tests/php folder

refs #4212
2013-06-03 16:14:46 +02:00
Jannis Moßhammer 66b8f70e3e Add vendor libraries
we use the following vendor libraries:
- Markdown.php for on-the-fly creation of documentation
- htmlpurifier for sane HTML output
- lessphp for on-the-fly creation of css out of less files
- tcpdf for pdf generation in the backend

refs #4212
2013-06-03 15:37:30 +02:00