Commit Graph

2296 Commits

Author SHA1 Message Date
Johannes Meyer 9232c5cf22 Add aria-hidden="true" to all icons that exist only for design reasons
refs #8360
2015-02-12 13:49:31 +01:00
Marius Hein 09349288e1 Merge branch 'master' into feature/skip-content-7933 2015-02-12 13:14:56 +01:00
Marius Hein b6daf2237d Menu: Add html5 nav element to menu
refs #7933
2015-02-12 13:14:01 +01:00
Johannes Meyer 9e933d835d Add Icinga\Web\Form\ErrorLabeller
refs #8415
2015-02-12 09:11:03 +01:00
Johannes Meyer aa473fb8cf Standardize path validators according to Zend's validators
refs #8415
2015-02-12 09:11:02 +01:00
Johannes Meyer a2f3e7d4f7 Display an error in case a user inputs an invalid formatted datetime string
resolves #7975
2015-02-12 09:11:02 +01:00
Johannes Meyer a630db93e8 Show proper examples in case a user doesn't enter a permitted/correct val
resolves #7973
2015-02-12 09:11:02 +01:00
Johannes Meyer 33c75a8330 Add String::findSimilar()
refs #7973
2015-02-12 09:11:02 +01:00
Johannes Meyer eb3063e36d Form: Add prefix path for custom form validators
refs #8415
2015-02-12 09:11:02 +01:00
Eric Lippmann 97261cd8bd lib: Do not setLayout('pdf') twice 2015-02-11 15:15:18 +01:00
Eric Lippmann ded045e32c lib: Fix PDF rendering when using a custom set view script 2015-02-11 15:14:40 +01:00
Eric Lippmann 54292eed20 Merge branch 'master' into feature/doc-search-6630 2015-02-11 13:28:06 +01:00
Eric Lippmann ec8a89b96e lib: Add recursive iterator over a DOMNode 2015-02-11 13:20:01 +01:00
Eric Lippmann 322c6b582d lib: Prefer @type over @var in the FileExtensionFilterIterator 2015-02-10 17:02:37 +01:00
Eric Lippmann 760819f239 lib: Remove TreeNode::getIterator()
Its the tree who has the iterator.

refs #6630
2015-02-10 17:01:32 +01:00
Eric Lippmann b18405e99f lib: Add SimpleTree
Simple tree implementation for TreeNodes.

refs #6630
2015-02-10 17:00:47 +01:00
Eric Lippmann fd38e5b2e1 lib: Use @inheritdoc in the TreeNodeIterator
refs #6630
2015-02-10 16:59:43 +01:00
Thomas Gelf 88315db1eb UserBackend: reasonable defaults for AD groups
I didn't do farther research, but those values seem to work fine.
2015-02-09 15:31:47 +01:00
Thomas Gelf 81f65a7cd4 LdapUserBackend: disable "health check"
I see no point in checking this at every login. It could however be a
nice addition for our config backends and the setup wizard. I'd also
opt for completely removing this parameter - who wants to use this
method should explicitely call it.
2015-02-09 15:29:52 +01:00
Thomas Gelf 7b1b5b9b40 Authentication\Manager: do not override user groups
Needs more care, but this way we are at least able to fetch groups
unless we get out improved implementation.
2015-02-09 15:27:50 +01:00
Eric Lippmann 3a4c6e45b8 Fix Fatal error: Interface 'Identifiable' not found
refs #6630
2015-02-06 17:32:51 +01:00
Eric Lippmann 0d63e14baf lib: Rename Node to TreeNode
refs #6630
2015-02-06 17:27:14 +01:00
Eric Lippmann 828cb8d23a lib: Add iterator over a tree node's children
refs #6630
2015-02-06 17:23:07 +01:00
Eric Lippmann f331c03f63 lib/tree: Save child nodes into an array instead of using SplDoublyLinkedList
refs #6630
2015-02-06 17:20:23 +01:00
Eric Lippmann c8da05d0a7 lib: Remove NodeInterface
I'll create an iterator for nodes and drop that every node is a SplDoublyLinkedList.

refs #6630
2015-02-06 17:17:41 +01:00
Johannes Meyer b828f8b13a Fix ldap authentication when authenticating against ActiveDirectory
Unlike OpenLDAP, ActiveDirectory does not seem to react on the size limit
passed to ldap_search() in global manner causing it to not to respond with
LDAP_SIZELIMIT_EXCEEDED (4) in case a requested page contains more
entries than the requested maximum.

fixes #7993
2015-02-06 16:37:35 +01:00
Johannes Meyer 3852feb069 Add defaults for limit and offset in Icinga\Protocol\Ldap\Query 2015-02-06 16:32:59 +01:00
Johannes Meyer 8b94e4c701 Fix documentation and code style in the LdapUserBackend 2015-02-06 16:32:26 +01:00
Johannes Meyer c49f723f05 Let Icinga\Protocol\Ldap\Exception inherit from IcingaException 2015-02-06 16:31:03 +01:00
Johannes Meyer c5b6d7ee41 Ensure that all required form elements are marked as such in HTML markup
refs #8349
2015-02-05 13:15:18 +01:00
Eric Lippmann 6bae2e0a53 Note that our license is GPL v2 or any later version in our license header instead of pointing to the license's URL 2015-02-04 10:52:27 +01:00
Johannes Meyer 12497749fc Do not log when using a limited query for a paged search operation 2015-02-04 10:51:49 +01:00
Marcus Cobden 5f624e42fd Fix minor mistakes in Ldap/Connection
Signed-off-by: Eric Lippmann <eric.lippmann@netways.de>
2015-02-04 09:44:17 +01:00
Eric Lippmann 49e96b7200 Revert "monitoring/security: Guard delete comment action"
This reverts commit 4ef5f0c813.
2015-02-03 16:51:00 +01:00
Matthias Jentsch e8466ec7be Fix inlinePie borders and SVG sizes
Add white border to inline piecharts in the list, to make them more visible on mouse hovering. Set a default image size for the loaded svg charts.
2015-02-03 16:46:12 +01:00
Eric Lippmann 5b4fab0750 Add license header
This time without syntax errors hopefully :)
2015-02-03 16:27:59 +01:00
Eric Lippmann 5fa2e3cfdc Revert "Add license header"
This reverts commit 338d067aba.
2015-02-03 16:16:26 +01:00
Eric Lippmann 4c7d120523 Revert "Fix typo in UserBackend"
This reverts commit 9fa1fd626c.
2015-02-03 16:16:26 +01:00
Eric Lippmann 160b3a96ca Revert "Fix typo in UserGroupBackend"
This reverts commit e8c4f45d68.
2015-02-03 16:16:26 +01:00
Eric Lippmann e8c4f45d68 Fix typo in UserGroupBackend 2015-02-03 16:14:13 +01:00
Eric Lippmann 9fa1fd626c Fix typo in UserBackend 2015-02-03 16:13:22 +01:00
Eric Lippmann 4ef5f0c813 monitoring/security: Guard delete comment action 2015-02-03 16:11:56 +01:00
Eric Lippmann 6517f8e2be security: Activate permissions 2015-02-03 16:08:35 +01:00
Eric Lippmann 338d067aba Add license header
fixes #7788
2015-02-03 15:51:04 +01:00
Eric Lippmann 08fd000496 Remove any topbar related stuff
It's not used anywhere.
2015-02-03 12:42:02 +01:00
Alexander Klimov a6cea24934 Platform::zendClassExists(): don't fail if a Zend class file doesn't exist 2015-02-03 12:22:23 +01:00
Markus Frosch cb08b25e17 Remove executable flags from some PHP libraries
Note: dompdf.php is actually a CLI script, but has no shebang and is not used
in Icingaweb2.

Fixes #8345
2015-02-03 10:50:50 +01:00
Johannes Meyer 7989b48248 Fix ldap auth when the userNameAttribute holds multiple values
fixes #8246
2015-02-03 10:15:54 +01:00
Thomas Gelf f8c5bf6819 Web\Hook: support hook base classes in modules
refs #8207
2015-02-02 17:44:29 +01:00
Thomas Gelf 3596e7ce62 FilterEditor: use preserved params
fixes #7904
2015-02-02 17:07:54 +01:00
Eric Lippmann 9d6906bd64 Save user dashboards to Icinga Web 2's configuration directory
fixes #8056
2015-02-02 15:06:29 +01:00
Eric Lippmann 52c40bdc5b lib/SimpleQuery: Increase default limit to 25
Please follow the referenced issues.

fixes #8337
refs #8339
2015-02-02 14:16:27 +01:00
Eric Lippmann 94193abdc0 lib: Fix User::can() 2015-02-02 14:16:26 +01:00
Eric Lippmann 9ac9342107 Revert "lib: Reduce else { if { to elseif { in User::can()"
This reverts commit e5b0b52874.
2015-02-02 14:16:26 +01:00
Eric Lippmann 5a1ebf9c89 lib: Implement Tab::getUrl() 2015-02-02 14:16:26 +01:00
Johannes Meyer bf470125c3 Merge branch 'master' into feature/create-missing-directories-when-creating-inis-8219
Conflicts:
	modules/monitoring/library/Monitoring/MonitoringWizard.php
2015-01-30 16:21:42 +01:00
Johannes Meyer f5a651664c Create the enabledModules directory when necessary only as well
refs #8219
2015-01-30 16:16:12 +01:00
Johannes Meyer 9426a5bd23 Use File::create() in Config::saveIni() to create missing nested directories
refs #8219
2015-01-30 15:43:02 +01:00
Johannes Meyer fdcec046e0 Make File::create(.., $recursive = true) create missing nested directories
refs #8219
2015-01-30 15:42:22 +01:00
Eric Lippmann e5b0b52874 lib: Reduce else { if { to elseif { in User::can() 2015-01-30 11:20:05 +01:00
Eric Lippmann df29dd0e7c Implement Form::hasPermission() and Form::getPermission() 2015-01-30 09:35:01 +01:00
Eric Lippmann 2faf5f0ca1 Throw SecurityException in ActionController::assertPermission() 2015-01-30 09:34:19 +01:00
Johannes Meyer 63305fdf9a Add Icinga\Application\Config::saveIni()
Simplifies saving INI files. Icinga\File\Ini\IniWriter does already require an
instance of Icinga\Application\Config so it's obvious to give "Config" the
task to initialize the writer.. We do also have a central place to handle
creating missing ancestor directories now.

refs #8219
2015-01-30 09:32:08 +01:00
Eric Lippmann 375345f837 lib: Add SecurityException
All assertPermission() calls must throw this exception.
2015-01-30 09:06:10 +01:00
Johannes Meyer 3e128732b8 Apply a limit to results fetched via Ldap\Connection::fetchRow()
fixes #7993
2015-01-29 17:29:11 +01:00
Johannes Meyer 6e533f223e Log warnings emitted by ldap_control_paged_result_response() as debug
Such a warning is emitted as well in case it's not critical. That is passing
an alternative overall result limit using ldap_search() to the server causes
it being applied across pages so ldap_control_paged_result_response()
does not indicate the "end" of the resultset just by adjusting the cookie
but by emitting the warning as well.
2015-01-29 17:12:59 +01:00
Johannes Meyer 9ff0bbcfc0 Fix that Icinga\Protocol\Ldap\Connection does not correctly apply limits 2015-01-29 17:07:58 +01:00
Johannes Meyer 97cc37b99c Move php version check from ...\Ldap\Query to ...\Ldap\Connection
refs #8261
refs #6176
2015-01-29 15:59:03 +01:00
Johannes Meyer 2a115e71d4 Add support for paged LDAP search results
fixes #8261
refs #6176
2015-01-29 15:53:15 +01:00
Marius Hein dd483d98df LessCompiler: Remove useless argument
refs #6417
2015-01-29 14:04:47 +01:00
Marius Hein c1df1f822e ifont: Reorganize files and drop use less attributes
fixes #6417
2015-01-29 11:25:37 +01:00
Johannes Meyer 3a983e8859 Merge branch 'master' into feature/improve-autologin-setup-8274 2015-01-28 18:01:15 +01:00
Marius Hein 4abb30e55b Merge branch 'master' into bugfix/ie8-fixes-6417 2015-01-28 17:08:56 +01:00
Marius Hein 9d05190517 ifont: Fix empty font glyphs for IE8
The embedded font is included inline in the stylesheets. IE falls back and
tries to load one of the other font sources which was not exported by the web
server. This fix moves the fontello directory to public and add add a
prefix path to the embedded stylesheet.

refs #6417
2015-01-28 17:06:55 +01:00
Johannes Meyer 6fde4eec30 Show all tabs except "Add to Dashboard" when issuing a command
refs #8279
2015-01-28 12:50:29 +01:00
Eric Lippmann c53b1d27e9 lib: Deprecate Data\Filterable because of ...
addFilter and applyFilter do the same in all usages.
addFilter could be replaced w/ getFilter()->add().
We must no require classes implementing this interface to implement redundant methods over and over again.
The interface must be moved to the namespace Icinga\Data\Filter.
It lacks documentation.
2015-01-27 14:33:46 +01:00
Johannes Meyer 47b27fcfe4 setup: Look for the authentication.ini instead of the config.ini
The config.ini does not include any settings mandatory to operate
Icinga Web 2, but the authentication.ini does.

refs #8134
2015-01-27 13:34:59 +01:00
Johannes Meyer 50fc85d7ff Rename authentication type "autologin" to "external"
refs #8274
2015-01-27 09:49:36 +01:00
Johannes Meyer d452f3218d Use "ini" as preferences store in case preferences are not configured
refs #8234
2015-01-23 16:25:24 +01:00
Johannes Meyer 2a543bb5ae Rename the preference setting `type' to `store'
refs #8234
2015-01-23 16:25:23 +01:00
Eric Lippmann 7bd42b476f bootstrap: Load setup module in case the setup token exists
The web setup may write the config.ini even if it errors. Thus our bootstrap
has to load the setup module whenever the setup.token exists.
Another approach would to write the config.ini in our web setup at the very end.
2015-01-23 15:27:52 +01:00
Johannes Meyer 14a4aaeb77 Revert "Fix that when chosing to not to store preferences an invalid config is created"
This reverts commit 6284da451e.
2015-01-23 15:23:43 +01:00
Johannes Meyer 6284da451e Fix that when chosing to not to store preferences an invalid config is created
fixes #8234
2015-01-23 14:42:09 +01:00
Eric Lippmann cd8822ceff lib: Add View::hasPermission() 2015-01-23 09:36:45 +01:00
Eric Lippmann 6da3cb8403 lib: Reorder auth related functions in the ActionController 2015-01-23 09:36:05 +01:00
Eric Lippmann 44de790cc9 Security: Temporary grant all permissions 2015-01-22 17:12:49 +01:00
Eric Lippmann ef0a7c0e77 Revert "Security: Temporary grant all permissions"
This reverts commit 9b7e75a616.

Patching function hasPermission is not enough. A fix will follow.
2015-01-22 17:11:53 +01:00
Eric Lippmann 0f13c0428c Controller: Introduce method assertHttpMethod()
We have actions where only certain HTTP methods, e.g. POST are allowed but they are not restricted yet.
Controller::assertHttpMethod() takes a number of allowed HTTP methods and responds with HTTP 405 in case
the current request's method is not one of the given methods.
2015-01-22 15:47:16 +01:00
Eric Lippmann 9b7e75a616 Security: Temporary grant all permissions
We'll introduce permissions and restrictions in the next hours. Because our web setup
does not configure permissions yet, all permissions are granted for all users from now on.
2015-01-22 15:20:38 +01:00
Eric Lippmann f16aac5154 Security: Sort permissions only if not empty 2015-01-22 15:20:19 +01:00
Johannes Meyer 94d727dbb8 Fix error in Icinga\Web\Form in case the label decorator is missing
Zend_Form::getDecorator() returns false instead of null in case the
decorator is not found.
2015-01-22 09:21:50 +01:00
Johannes Meyer 10eacf9682 Allow jumping to already visited pages
This was already possible using just the base implementation of Wizard
but since WebWizard has optional pages it did not work with pages that
had such an optional page as previous page.

refs #8191
2015-01-21 15:39:06 +01:00
Johannes Meyer 64a8006973 Add Wizard::isComplete()
Wizard::isFinished() is not applicable in case a wizard is a child of another
wizard. Wizard::isComplete() fulfills the need to check whether a user went
through a wizard entirely.

refs #8191
2015-01-21 13:56:53 +01:00
Johannes Meyer 1f6a81aefb Add Wizard::skipPage()
Required to not to duplicate code in custom wizards and to avoid errors
when detecting the direction.

refs #8191
2015-01-21 13:07:08 +01:00
Johannes Meyer 2288e2a687 Add support for nested wizards
The amount of vertical dimensions is not limited as well as the location a
nested wizard can occur in the main wizard's order. In case a custom
implementation is used as nested wizard, all core functionalities are
still being utilized.

refs #8191
2015-01-20 15:54:14 +01:00
Eric Lippmann 2bd2f32b2e postgresql/auth: Fix that users cannot login when using PostgreSQL >= version 9.0
fixes #8251
2015-01-19 16:43:19 +01:00
Matthias Jentsch 4dfad963e9 Merge branch 'master' into feature/improve-chart-implementation-7841 2015-01-19 15:15:24 +01:00
Matthias Jentsch ba1007465a Adapt bar width to amount of data points 2015-01-19 15:13:44 +01:00
Eric Lippmann a1a36301fe View: Add string helpers 2015-01-19 14:20:57 +01:00
Eric Lippmann a0a3241d1c lib: Add String::ellipsis() 2015-01-19 14:20:37 +01:00
Matthias Jentsch fecd4151d1 Move axis labels to the top of the chart 2015-01-19 13:35:41 +01:00
Eric Lippmann ac503031a7 Config: Fix PHPDoc for fromIni 2015-01-19 11:43:39 +01:00
Eric Lippmann 87adbacb3b Config: Fix coding style 2015-01-19 11:43:39 +01:00
Eric Lippmann 599cb620d8 Config: Don't throw NotReadableError if the file does not exist 2015-01-19 11:43:39 +01:00
Eric Lippmann 7fc70c5a02 IniWriter: Don't allow read for others on new files 2015-01-19 11:43:38 +01:00
Matthias Jentsch f6eb9a764f Determine axis orientation based on max label length 2015-01-19 11:33:21 +01:00
Eric Lippmann b983f1901b modules: Fix that the forms namespace is not registered when the module does not have any library file 2015-01-14 13:24:31 +01:00
Matthias Jentsch 76d3e5435f Display bigger legend labels correctly without overlapping 2015-01-13 18:25:19 +01:00
Matthias Jentsch d1c7d9d2f9 Improve SVG layout 2015-01-13 18:21:11 +01:00
Matthias Jentsch 807666bf88 Improve chart axis readability
Introduce different line weights to separate between the smallest visible separator (steps) and single chart values (ticks). Calculate the amount of ticks per step using the available chart space.

fixes #7846
2015-01-13 17:56:50 +01:00
Matthias Jentsch debc305789 Add logarithmic AxisUnit
resolves #7845
2015-01-13 17:56:50 +01:00
Eric Lippmann fbe252063b IniWriter: Do not use umask(0)
chmod is not affected in any way by the umask.
2014-12-30 15:39:03 +01:00
Eric Lippmann 70c564bb0e Cli: Remove useless sprintf format in Command::fail() 2014-12-30 14:41:00 +01:00
Eric Lippmann 8eb37d9d76 Cli/Command: Add @type PHPDoc to params 2014-12-30 14:33:36 +01:00
Eric Lippmann 50bbf77d0c Fix module domain detection in Form::getTranslationDomain()
The usage of preg_replace had two errors:
1) The regular expression was wrong
2) $matches[0] always contains the full matched string, not the first parenthesized subpattern

The correct version of preg_replace would've been:

if (preg_match('/^Icinga\\\\Module\\\\([A-Za-z]+)\\\\/', get_called_class(), $matches) === 1) {
    return strtolower($matches[1]);
}

But since there's no benefit of using a regular expression here except less speed, I replaced it
with using explode.

refs #7551
2014-12-30 10:08:33 +01:00
Eric Lippmann 58cfb67983 Load setup module when necessary when bootstrapping the CLI
fixes #8146
2014-12-30 09:27:37 +01:00
Eric Lippmann 9d9dd8ac99 Merge branch 'feature/rhel-packages-6401'
resolves #6401
2014-12-29 16:50:20 +01:00
Matthias Jentsch a1950aabba Fix some obsolete or wrong docstrings 2014-12-29 16:27:28 +01:00
Matthias Jentsch 4cf8da4bb9 Do not focus logout menu item after a recurring login
Implement new MenuItemRenderer made for pages that are not part
of the regular site navigation and should trigger a complete site reload
instead of handling it via XHR.
2014-12-29 16:20:05 +01:00
Eric Lippmann 839523a73f Web: Load setup module if necessary 2014-12-29 14:31:34 +01:00
Eric Lippmann 611d01788f Add setup related utility functions to ApplicationBootstrap.php 2014-12-29 14:29:31 +01:00
Eric Lippmann 7d36a59c67 Use '@return $this' instead of '@return self' for document fluent interfaces in ApplicationBootstrap.php 2014-12-29 14:01:19 +01:00
Eric Lippmann 4ea52161a9 Merge branch 'master' into feature/packages-4075 2014-12-29 12:31:38 +01:00
Boden Garman 5e40ce2088 Only check the session save path is writable if the session handler is 'files'
fixes #8053

Signed-off-by: Eric Lippmann <eric.lippmann@netways.de>
2014-12-29 09:37:47 +01:00
Eric Lippmann 7f5ba135ee Revert "Relax session storage check to the `files' save handler"
This reverts commit f7d11ce11f.

Sorry mate but a guy on GitHub was faster ;)

refs #8053
2014-12-29 09:37:07 +01:00
Matthias Jentsch 41c101d99f Use neutral default color in perfdata piecharts
If nothing is known about the state of the monitoring object, the piecharts should neither indicate OK nor Critical.
2014-12-23 16:12:25 +01:00
Matthias Jentsch cda5a6a903 Streamline chart implementation
Define sparkline layout through CSS class and remove label/tooltip formatting.

fixes #7077
2014-12-23 15:26:45 +01:00
Matthias Jentsch 64a2acd12e Do not display labels for single data sets in perfdata piecharts
Display generic chart titles for the whole piechart that only contain title and percentage and don't style perfdata piecharts using HTML properties.

refs #7077
refs #6200
refs #7304
2014-12-23 15:14:17 +01:00
Johannes Meyer f7d11ce11f Relax session storage check to the `files' save handler
fixes #8053
2014-12-22 11:02:48 +01:00
Johannes Meyer 6d263ae316 Do NOT fetch the translation domain from the request in Form::translate(..)
It might be the case that a module is using a library form...

refs #7551
2014-12-19 13:07:51 +01:00
Johannes Meyer cf43b81400 Use the class namespace instead of the request in Form::translate(Plural)
refs #7551
2014-12-19 12:08:54 +01:00
Johannes Meyer e5d2d4cec2 Add module-aware Form::translate and Form::translatePlural
refs #7551
2014-12-19 11:29:24 +01:00
Eric Lippmann 1468ed0a19 lib: Add separator parameter to String::cname() 2014-12-18 17:23:54 +01:00
Eric Lippmann 4dfac28393 lib: Fix PHPDoc of Form::setOnSuccess() 2014-12-18 17:21:06 +01:00
Johannes Meyer 7710fd7b0e Hide unsupported export formats
refs #8112
2014-12-18 16:20:41 +01:00
Eric Lippmann 8ec0740005 Merge branch 'master' into feature/packages-4075 2014-12-18 14:02:17 +01:00
Johannes Meyer 3fde78f2b3 Enable the dompdf float support and fix our list's layout 2014-12-15 13:56:19 +01:00
Johannes Meyer bca28a5ae2 Display inline pie-charts also in views exported to PDF
fixes #6463
2014-12-15 13:55:20 +01:00
Tom Ford dc0f396fbf Check LDAP username in case insensitive way
Signed-off-by: Eric Lippmann <eric.lippmann@netways.de>

refs #7991
2014-12-10 16:00:39 +01:00
Eric Lippmann 68e460b5d1 Remove unused use in EmbeddedWeb 2014-12-10 09:32:02 +01:00
Eric Lippmann 888fa90fe2 Fix typo in PHPDoc in EmbeddedWeb 2014-12-10 09:31:37 +01:00
Eric Lippmann 2b5fe7baf4 Set default config dir to '/etc/icingaweb2' 2014-12-10 09:30:12 +01:00
Eric Lippmann 916868a051 Revert "Add support for "core" modules and make the setup module such a module"
This reverts commit 8af13f564b.

The setup module must only be loaded when necessary not always.
2014-12-09 16:28:05 +01:00
Eric Lippmann 7d00f68660 Revert "Load core modules also when bootstrapping the CLI"
This reverts commit f12473d34b.

The CLI must not load core modules, i.e. setup.
2014-12-09 16:27:04 +01:00
Johannes Meyer 196b6a4875 Ensure that Zend is loaded when showing status information in the CLI
fixes #7869
2014-12-09 15:38:13 +01:00
Eric Lippmann 1afc2a0b1d lib: Add FileExtensionFilterIterator
Add iterator for iterating over files having a specific file extension.
2014-12-09 12:28:49 +01:00
Eric Lippmann 00a09284ef lib: Add NonEmptyFileIterator
Add iterator for iterating over non-empty files.
2014-12-09 12:28:23 +01:00
Thomas Gelf 09e59ba44a Modules\Module: determine correct config dir 2014-12-03 10:43:27 +01:00
Thomas Gelf cddb68bffb ActionController: shift global parameters globally 2014-12-03 10:40:48 +01:00
Eric Lippmann a2a97537ce Log: Fix StdoutWriter not using our "new" Logger's interface 2014-12-03 09:38:33 +01:00
Johannes Meyer ebf908b1b5 Make db requirement checks more sensitive
fixes #7837
2014-12-01 15:38:10 +01:00
Eric Lippmann d41602a67c Rearrange imports in Menu.php 2014-11-25 16:11:01 +01:00
Eric Lippmann eed10159fd Menu: Don't render sub menus when a dot appears in the label
I guess this was intended to be a feature. Turns out to be a bug though :)

fixes #7772
2014-11-21 17:39:18 +01:00
Eric Lippmann d84318d8b8 Fix Menu's PHPDoc
Don't use @var and don't use @return self for fluent interfaces.
2014-11-21 17:13:39 +01:00
Eric Lippmann 99ad72a0da Remove the Help decorator 2014-11-20 13:50:40 +01:00
Eric Lippmann 15506941a6 Ini: Fix that directives could not contain a slash
We introtuced preg_quote not quoting the delimiter.
2014-11-20 13:47:27 +01:00
Marius Hein bdc0321f62 Dashboard: Fix wrong URL
refs #7751
2014-11-20 13:41:12 +01:00
Eric Lippmann bb664a87ea Fix ugly positioning of help icons
If an element has a description, the description is now added to the element's label as title.
The CSS class has-feedback ensurers that the help icon is rendererd. If everything is working fine,
I'll the remove the super duper Help decorator.
2014-11-20 13:25:58 +01:00
Marius Hein d62d487251 Merge remote-tracking branch 'origin/master' into bugfix/dashboard-rework-7751 2014-11-20 12:48:28 +01:00
Marius Hein e600dc8adb Dashboard: Rename component to dashlet
refs #7751
2014-11-20 12:08:50 +01:00
Johannes Meyer 38957e340b Fix that DbQuery::renderFilter produces invalid filters
fixes #7749
2014-11-20 11:58:22 +01:00
Thomas Gelf fa44197947 Dashboard: fix complex urls 2014-11-19 16:45:15 +01:00
Eric Lippmann 2830b13082 Merge branch 'master' into feature/security-gui-5647 2014-11-19 16:31:26 +01:00
Eric Lippmann 74683ea025 Preferences: Use the lowercase username 2014-11-19 15:42:33 +01:00
Marius Hein 32af89e0a7 Merge remote-tracking branch 'origin/master' into bugfix/broken-badges-7736 2014-11-19 15:28:27 +01:00
Eric Lippmann 3e1583ca40 Security: Remove getPermissions and getRestrictions from the AdmissionLoader
These funtctions are superseded by getRestrictionsAndPermissions.

refs #5647
2014-11-19 15:13:45 +01:00
Eric Lippmann bed11ebb60 Security: Load user permissions and restrictions from roles.ini
refs #5647
2014-11-19 15:11:14 +01:00
Eric Lippmann b01a9a65e0 Security: Introduce AdmissionLoader::getPermissionsAndRestrictions() for loading permissins and restrictions from roles.ini
When loading from roles.ini there's currently an empty permission added which is of course a bug and will be fixed asap.

refs #5647
2014-11-19 15:10:09 +01:00
Eric Lippmann a2818bd937 Merge branch 'master' into feature/security-gui-5647 2014-11-19 14:13:26 +01:00
Matthias Jentsch 48699cacf4 Fix navigation layout in firefox and chrome
Hover css still broken

refs #7736
2014-11-19 12:15:18 +01:00
Marius Hein dbc1b1ce3e Merge remote-tracking branch 'origin/master' into feature/add-to-dashboard-4537 2014-11-19 11:48:22 +01:00
Marius Hein a40f357f3c Dashboard: Show error message when can not write to file
refs #4537
2014-11-19 11:47:31 +01:00
Thomas Gelf 47d81ccf7b css: allow to override vendor styles
* no more hovered icon underline
* simulate padding for headers in .controls
2014-11-19 10:33:57 +01:00
Marius Hein a5411c7a1c Dashboard: Fix reading and disabled system dashboards
refs #4537
2014-11-19 10:33:41 +01:00
Marius Hein cfb0ca1be0 Merge remote-tracking branch 'origin/master' into feature/add-to-dashboard-4537 2014-11-19 10:21:50 +01:00
Thomas Gelf 704a87c0f2 FilterEditor: make active element fit hover colors 2014-11-19 10:07:30 +01:00
Thomas Gelf eb823c4045 Widget\FilterEditor: fix root element stripping 2014-11-19 09:53:25 +01:00
Thomas Gelf c6ffdb3862 Widget\FilterEditor: fix failing parameter checking 2014-11-19 09:44:47 +01:00
Marius Hein 5ace5fd2dc Dashboard: Change icons
refs #4537
2014-11-18 17:47:57 +01:00
Eric Lippmann aef81a56d6 Merge branch 'master' into feature/security-gui-5647
Conflicts:
	library/Icinga/Application/Config.php
	library/Icinga/File/Ini/IniWriter.php
	library/Icinga/Web/Form.php
	library/Icinga/Web/Menu.php
2014-11-18 17:08:25 +01:00
Eric Lippmann f2717b6d26 Introduce Form::setOnSuccess() in favor of overriding the constructor
Zend_Form uses setters for options if a respective setter method exists.
It is not necessary to override the constructor for introducing new options.

Conflicts:
	library/Icinga/Web/Form.php
2014-11-18 17:02:39 +01:00
Marius Hein 10cfecf2ec Merge remote-tracking branch 'origin/master' into feature/add-to-dashboard-4537
Conflicts:
	application/controllers/DashboardController.php
	library/Icinga/Web/Form.php
	library/Icinga/Web/Widget/Dashboard.php
2014-11-18 16:36:42 +01:00
Bernd Erk 07c0180b1c Merge branch 'master' into feature/redesign-7144 2014-11-18 16:36:19 +01:00
Marius Hein 80871313e4 Dashboard: Remove actions
refs #4537
2014-11-18 16:28:04 +01:00
Johannes Meyer f007663235 Show the user a senseful error message in case enabledModules is missing
fixes #7205
2014-11-18 16:22:41 +01:00
Eric Lippmann 7eab09c2a2 Tests: Fix ApplicationBootstrap mock 2014-11-18 16:06:39 +01:00
Johannes Meyer 1cbdd2b51c Fix that hidden elements are getting ovewritten when validating a form
This works by "disabling" hidden elements which causes the browser not
to submit them. Due to a bug in Zend we need to manually ensure that
Form::isValid does not overwrite the value of disabled elements with null.

fixes #7717
2014-11-18 15:06:46 +01:00
Johannes Meyer 760bf1a020 Disable partial validation of forms by default 2014-11-18 15:06:46 +01:00
Alexander Fuhr 38ef33276a Replace description decorator through help decorator
refs #7696
resolves #7696
2014-11-18 14:58:54 +01:00
Alexander Fuhr 4a4fbaee8e Add Help decorator for icon help description
refs #7696
2014-11-18 14:58:05 +01:00
Johannes Meyer c288a68ed5 Merge branch 'master' into bugfix/drop-zend-config-7147
Conflicts:
	application/forms/LdapDiscoveryForm.php
2014-11-18 13:21:18 +01:00
Johannes Meyer 7621f6642d Adjust usages of Icinga\Application\Config
refs #7147
2014-11-18 13:11:52 +01:00
Johannes Meyer 0c84bf614d Split config functionality into two classes
There is now Icinga\Application\Config as our ini configuration handler and
Icinga\Data\ConfigObject as our general configuration container.

refs #7147
2014-11-18 13:02:56 +01:00
Marius Hein 8805e4af4b Merge remote-tracking branch 'origin/master' into feature/add-to-dashboard-4537 2014-11-18 12:52:02 +01:00
Marius Hein 3e58ec2530 Dashboard: Use new controller actions
refs #4537
2014-11-18 12:51:28 +01:00
Eric Lippmann f9d7062476 Form: Add our element and decorator paths instead of calling createIcingaFormElement
createIcingaFormElement lacks all stuff applied in Zend_Form::createElement().
2014-11-18 12:51:06 +01:00
Gunnar Beutner 9a79cd58e9 Re-enable auto-refresh 2014-11-18 10:48:33 +01:00
Eric Lippmann e3629a7f41 Number element: Use is_numeric in favor of Zend's float validator
The float validator uses Zend_Locale which we have stripped in our vendor library thus leading to erroneous validation.
Further we'll use php-intl instead of Zend_Locale one day :)

fixes #7692
2014-11-18 10:31:40 +01:00
Marius Hein cbcd276b44 Dashboard: Rewrite forms and controller [WIP]
refs #4537
2014-11-18 10:04:41 +01:00
Eric Lippmann 47414f3528 Introduce Form::setOnSuccess() in favor of overriding the constructor
Zend_Form uses setters for options if a respective setter method exists.
It is not necessary to override the constructor for introducing new options.
2014-11-18 10:00:58 +01:00
Marius Hein bec0085683 Dashboard: Add urls to any dashboard (form)
refs #4537
2014-11-18 09:59:24 +01:00
Marius Hein 769e8f2636 Dashboard/Component: Add remove link
refs #4537
2014-11-18 09:59:23 +01:00
Marius Hein b679c1e770 Dashboard: Refactor search/replace implementation
refs #4537
2014-11-18 09:59:23 +01:00
Marius Hein 979bec24a5 Dashboard: Write user dashboards to disk
refs #4537
2014-11-18 09:59:23 +01:00
Marius Hein f6a2f6515d Dashboard: Introduce user flag widget
Fix: Do not render disabled components.

refs #4537
2014-11-18 09:59:23 +01:00
Marius Hein af799d42dc Widget/Dashboard: Cleanup object and remove unused stuff
refs #4537
2014-11-18 09:59:23 +01:00
Matthias Jentsch 5f8fcf4005 Fix Ldap server discovery
Add a new connection member that stores whether settings were guessed or product of a discovery, move discovery methods into seperate class.

fixes #7691
2014-11-18 09:45:54 +01:00
Bernd Erk f83bcbfd2b updates current font set and changes service and reporting icons 2014-11-17 17:08:08 +01:00
Bernd Erk 878aa81d98 Changes conf icon in menu 2014-11-17 17:08:08 +01:00
Johannes Meyer 812f9af949 Change modulePath setting to module_path
fixes #7694
2014-11-17 10:10:08 +01:00
Thomas Gelf 8d4089c22a Merge remote-tracking branch 'origin/feature/livestatus-playground-4787'
Not really useful yet, allows to play around a little bit
2014-11-16 19:41:54 +01:00
Thomas Gelf 0cea370a5c Widget\Tab: fix tagParams check breaking tabs 2014-11-16 19:37:11 +01:00
Thomas Gelf b6464c5d83 Livestatus\Connection: one more comment 2014-11-16 18:43:11 +01:00
Thomas Gelf aaec1b84bf Livestatus\Query: indentation 2014-11-16 18:42:10 +01:00
Thomas Gelf 0ff9d57504 Livestatus\Connection: just a comment 2014-11-16 18:37:01 +01:00
Thomas Gelf 40c4562fe4 Data\SimpleQuery: don't fail on missing columns...
...for now
2014-11-16 18:24:16 +01:00
Thomas Gelf c0343a0dae Merge remote-tracking branch 'origin/master' into feature/livestatus-playground-4787 2014-11-16 18:07:18 +01:00
Thomas Gelf 195375f055 Livestatus\Query: use calculated column headers 2014-11-16 18:03:58 +01:00
Thomas Gelf d368df8211 Livestatus\Connection: check resource on disconnect 2014-11-16 18:01:07 +01:00
Thomas Gelf 2c7373f385 Livestatus\Connection: benchmark, comments 2014-11-16 17:59:56 +01:00
Thomas Gelf 140b246974 Livestatus\Connection: remove obsolete constant
TCPNODELAY is available in PHP >= 5.3
2014-11-16 17:58:56 +01:00
Thomas Gelf b2a55f0998 Db\DbQuery: do not expose applyFilterSql 2014-11-16 17:09:51 +01:00
Thomas Gelf 5ea2f33efb Db\DbQuery: add NOT LIKE support 2014-11-16 17:08:50 +01:00
Thomas Gelf 90f1ab06b4 Db\DbQuery: add "deep" clone support
Still far from being complete, Zend_Db_Select makes life really hard for
us. More to come...
2014-11-16 17:06:26 +01:00
Thomas Gelf 6bf0ca216a Livestatus\Query: resultrow method - base for more
This is where query-based column fixup voodoo starts
2014-11-16 16:35:02 +01:00
Thomas Gelf 628597d6cb Livestatus\Query: some more filter-related stuff 2014-11-16 16:32:53 +01:00
Thomas Gelf 46b047b013 Livestatus\Query: add customvar support 2014-11-16 16:31:09 +01:00
Thomas Gelf 7d02107803 Livestatus\Query: fix limit, add some notes 2014-11-16 16:29:40 +01:00
Thomas Gelf d7141392a5 Livestatus\Query: return available columns 2014-11-16 16:28:52 +01:00
Thomas Gelf 7b6b9b8574 LivestatusConnection: separator constant 2014-11-16 16:27:21 +01:00
Thomas Gelf e0143bf572 Livestatus\Connection: add missing use statements 2014-11-16 16:26:28 +01:00
Thomas Gelf fd55ffe47e Livestatus\Connection: switch to new fetch methods 2014-11-16 16:25:47 +01:00
Thomas Gelf efd395e12a Livestatus\ResponseRow: initial dummy implementation 2014-11-16 16:22:10 +01:00
Thomas Gelf 17c8453c1c Livestatus\Connection: line splitting implementation
Will need some more work to get SplFixedArray handling safe
2014-11-16 16:02:50 +01:00
Thomas Gelf e1cdd30c93 Livestatus\Connection: fetch row from socket...
...basically just calling readLine, but splitting columns
2014-11-16 16:00:03 +01:00
Thomas Gelf e755b37af3 Livestatus\Connection: discover column headers...
...in case the query doesn't know about
2014-11-16 15:56:58 +01:00
Thomas Gelf 8ec8c153dd Livestatus\Connection: implement readLineFromSocket
We want to stream data in the near future, so reading line by line is
essential
2014-11-16 15:55:53 +01:00
Thomas Gelf a027efc9e7 Livestatus\Connection: make use of socketError 2014-11-16 15:55:20 +01:00
Thomas Gelf d66c95a725 Livestatus\Connection: implement socketError method 2014-11-16 15:54:32 +01:00
Thomas Gelf be8120bd39 Livestatus\Connection: document hardcoded count 2014-11-16 15:53:19 +01:00
Thomas Gelf d6b9f56a2c Livestatus\Connection: throw "better" exceptions
Removed outdated method
2014-11-16 15:51:26 +01:00
Thomas Gelf 578873f695 Livestatus\Query: start using new filter methods 2014-11-16 15:48:59 +01:00
Thomas Gelf 3b1b38a353 Livestatus\Query: attempt to separate column handling 2014-11-16 15:47:06 +01:00
Thomas Gelf 4b5b5f4ae3 Livestatus\Query: use trigger_error in __toString 2014-11-16 15:37:52 +01:00
Thomas Gelf 510e1e66d6 Livestatus\Connection: add fetchRow / fetchPairs
Temporary ugly and slow implementation
2014-11-16 15:33:17 +01:00
Thomas Gelf 4cbe8da26f Livestatus\Query: add a lot of filter voodoo 2014-11-16 15:30:10 +01:00
Thomas Gelf 14cdcc8ce2 Livestatus\Query: fetch csv, not json 2014-11-16 15:28:17 +01:00
Thomas Gelf 23546a4224 Livestatus\Query: parse an array structure 2014-11-16 15:22:54 +01:00
Thomas Gelf 1b8449009c Livestatus\Connection: temporarily hardcode count 2014-11-16 15:20:12 +01:00
Thomas Gelf 0916f57ce8 Livestatus\Query: split string cast implementation
This way we can use an exception-throwing variant internally while not
breaking __toString
2014-11-16 15:13:07 +01:00
Thomas Gelf 38fec33849 Livestatus\Query: temporarily disable count cache 2014-11-16 15:12:13 +01:00
Thomas Gelf 48dfb1bb70 Livestatus\Query: remove obsolete properties 2014-11-16 15:11:31 +01:00
Thomas Gelf 39a995cc6f Livestatus\Query: remove SimpleQuery tasks 2014-11-16 15:09:33 +01:00
Thomas Gelf 6de98dcf97 Livestatus\Query: extend SimpleQuery, not abstract 2014-11-16 15:06:58 +01:00
Thomas Gelf 2e1cc8ed35 Widget\Tabs: use icon font 2014-11-16 14:41:22 +01:00
Thomas Gelf e89d4642e3 Merge remote-tracking branch 'origin/master' into feature/livestatus-playground-4787 2014-11-16 10:12:34 +01:00
Thomas Gelf 9e0e3f12e3 FilterChain: addFilter should return itself 2014-11-16 02:49:33 +01:00
Thomas Gelf 387928de02 Filter: support 'q' searches
This makes the overall search play nice with the FilterEditor and
reduces code in the action controller. Still some work to do, but
seems to be pretty fine right now.
2014-11-16 02:40:28 +01:00
Thomas Gelf 5630374058 FilterEditor: handle ignoreParams correctly 2014-11-16 00:19:28 +01:00
Thomas Gelf e0bf021fb9 FilterEditor: apply submitted changes do filter 2014-11-15 23:49:37 +01:00
Thomas Gelf b1f82bd025 FilterEditor: add request handle support 2014-11-15 23:49:06 +01:00
Thomas Gelf 7da87b7341 FilterEditor: split render function and clean up 2014-11-15 23:48:17 +01:00
Thomas Gelf 0e4a8575a9 FilterEditor: new helper for text inputs 2014-11-15 23:46:36 +01:00
Thomas Gelf 1c5cba9ddf FilterEditor: don't sort all select's
Columns are now sorted separately, so that's fine
2014-11-15 23:45:03 +01:00
Thomas Gelf 2eb2fa51da FilterEditor: cache available columns 2014-11-15 23:43:13 +01:00
Thomas Gelf 1d4ea88251 FilterEditor: clean up selectColumn 2014-11-15 23:42:15 +01:00
Thomas Gelf e6ded2eb3c FilterEditor: use new id helper in selectSign 2014-11-15 23:39:21 +01:00
Thomas Gelf 934a0a4914 FilterEditor: helper function for op dropdown 2014-11-15 23:38:36 +01:00
Thomas Gelf c700e86008 FilterEditor: add helper rendering new filters 2014-11-15 23:37:31 +01:00
Thomas Gelf 711b1a5224 FilterEditor: elementId helper method for inputs 2014-11-15 23:34:21 +01:00
Thomas Gelf 7993ad2fde FilterEditor: add a couple of link generators
remove/add/strip/cancel
2014-11-15 23:32:38 +01:00
Thomas Gelf d6e3f06997 FilterEditor: readability 2014-11-15 23:31:17 +01:00
Thomas Gelf 4a38c069f3 FilterEditor: do not export removal function 2014-11-15 23:30:06 +01:00
Thomas Gelf 8858069514 FilterEditor: addTo method for special operations
Removed obsolete mark function
2014-11-15 23:27:58 +01:00
Thomas Gelf ee16391720 FilterEditor: no title, add cancel button 2014-11-15 23:24:55 +01:00
Thomas Gelf dcc0c213b2 FilterEditor: add redirect support
Not the cleanest way, could be improved
2014-11-15 23:18:50 +01:00
Thomas Gelf ac483a0fe6 FilterEditor: add compact search render support
We show the search box and a filter preview while not modifying the
filter
2014-11-15 23:11:55 +01:00
Thomas Gelf 44d5ee8fa0 FilterEditor: make constructor parameter optional
...and use new setters
2014-11-15 23:02:38 +01:00
Thomas Gelf c5ca3b633c FilterEditor: allow additional parameter control
We may want to keep additional parameters in our url and ignore other
ones when the filter changes
2014-11-15 22:57:25 +01:00
Thomas Gelf 269f4b4c83 FilterEditor: allow to set the query from outside
Query will be used to provide a column list
2014-11-15 22:55:26 +01:00
Thomas Gelf 118abbe980 FilterEditor: url-setter and protected lazy-shortcut 2014-11-15 22:54:40 +01:00
Thomas Gelf e75d0aa10e FilterEditor: add getter and setter for Filter
We will shift quite some logic over here
2014-11-15 22:52:55 +01:00
Thomas Gelf a75bfd1dfb FilterEditor: add failsafe string cast 2014-11-15 22:50:35 +01:00
Thomas Gelf 0fd4a094ea Web\Request: the request should know the URL 2014-11-15 22:40:29 +01:00
Thomas Gelf 2ecdfefa85 Widget\Tabs: use icon for dropdown tabs 2014-11-15 22:39:42 +01:00
Thomas Gelf 44c96f0410 FilterOr: override operator change for NOT
Replacing an OR filter with a NOT operator should return a NOT OR
when the OR contains more than one entry
2014-11-15 22:37:12 +01:00
Thomas Gelf 1f74c462d4 FilterChain: add and use count() function 2014-11-15 22:34:18 +01:00
Thomas Gelf 39d7d13ddb AbstractWidget: default properties should be empty
Helps troubleshooting, getter would fail with a hard-to-track error
otherwise.
2014-11-15 16:54:59 +01:00
Thomas Gelf 210aae27fd Merge remote-tracking branch 'origin/feature/redesign-7144' 2014-11-15 12:19:46 +01:00
Eric Lippmann 6ba4e55277 Throw exception on E_NOTICE
Use of uninitialized values must be detected asap.
2014-11-15 01:20:27 +01:00
Eric Lippmann 52c19b5843 EmbeddedWeb must not load core modules, i.e. setup 2014-11-15 01:04:56 +01:00
Eric Lippmann 2c0122ba9f Fix ApplicationBootstrap::getBootstrapDirectory() when Icinga Web 2 is served using PHP's built-in web server 2014-11-15 01:04:14 +01:00
Thomas Gelf 925348d171 Data\Filter: add or/andFilter implementations
Those shortcuts make it easy to correctly add or/and conditions
regardless of the original filter type
2014-11-14 23:06:20 +01:00
Thomas Gelf 6aefc4b491 Data\Filter: fix $self VS $this 2014-11-14 22:53:46 +01:00
Thomas Gelf 178ddaade7 Data\Filter: add missing abstract function type 2014-11-14 22:44:04 +01:00
Thomas Gelf 53bca911fb Data\Filter: enforce isEmpty() implementation 2014-11-14 22:43:30 +01:00
Thomas Gelf ce7aea5df7 Data\Filter: add isChain() and isExpression()
This makes node type distiction easier
2014-11-14 22:41:30 +01:00
Thomas Gelf da47c7fc7e Merge remote-tracking branch 'origin/master' into feature/redesign-7144 2014-11-14 21:32:57 +01:00
Eric Lippmann 11bb8dbab0 icingacli web serve: Fix "PHP Notice: Use of undefined constant ICINGA_LIBDIR" 2014-11-14 16:02:17 +01:00
Eric Lippmann ce69300c9a cli: Fix the path to the clicommands 2014-11-14 16:01:40 +01:00
Johannes Meyer ddf2ef5cc9 Remove $request parameter from Form::onSuccess and Form::onRequest
fixes #7552
2014-11-14 14:59:29 +01:00
Eric Lippmann 029630308d Load Zend on Web and EmbeddedWeb
refs #7464
2014-11-14 14:07:13 +01:00
Eric Lippmann 37dd2f5dd2 Do not load Zend on the CLI and remove our library from the include path
Adding Icinga Web 2's library to the include is not necessary for getting the Zend_Plugin_Loader working.
2014-11-14 14:04:24 +01:00
Eric Lippmann 49d66a7b73 Use lessphp from the include path
refs #6165
refs #6166
2014-11-14 13:27:02 +01:00
Eric Lippmann 6624b764cf Use JShrink from the include path
refs #6165
refs #6166
2014-11-14 11:55:06 +01:00
Johannes Meyer 586b4f463b Let our module autloader know that we renamed our form namespaces
refs #7553
2014-11-14 11:30:44 +01:00
Johannes Meyer 775c20d9ad Rename namespace Icinga\Form to Icinga\Forms
refs #7553
2014-11-14 10:57:14 +01:00
Johannes Meyer 1c4a5ce86f Leave it up to Icinga\Web\Form to instantiate our own form elements 2014-11-14 10:15:27 +01:00
Johannes Meyer 872dce2208 Prefer form elements of Icinga\Web\Form\Element in Form::createElement 2014-11-14 10:15:27 +01:00
Thomas Gelf 69fdc6a329 Chart/InlinePie: smaller, white border for hover
I roughly changed the piechart defaults to their original (icon-like)
size. However, this is NOT how we should handle such changes. We MUST
be able to style them via CSS and get rid of that incredible amount of
HTML attributes.

I want to be able to set the height directly in CSS as em/px. And I want
also be able to set it to 100% and size the outer container.

refs #7077
2014-11-14 09:54:20 +01:00
Thomas Gelf d55c2a4c87 Widget\Filter*: fix parse error, replace minus 2014-11-13 21:47:40 +01:00
Bernd Erk 903219b302 Merge branch 'master' into feature/redesign-7144
Conflicts:
	library/Icinga/Web/Menu.php
	public/css/icinga/menu.less
2014-11-13 21:11:36 +01:00
Eric Lippmann c4aeaf3428 Use dompdf from the include path
refs #6165
refs #6166
2014-11-13 20:10:24 +01:00
Bernd Erk 20be45e8da Enable icon font 2014-11-13 20:08:58 +01:00
Eric Lippmann 48a468b888 Add our vendor path to the include path 2014-11-13 19:52:28 +01:00
Eric Lippmann 81b144d057 Fix locale setup
The CLI must not try to use HTTP_ACCEPT_LANGUAGE. Avoided double try-catch blocks.

refs #6073
2014-11-13 18:02:03 +01:00
Bernd Erk 6201858a68 Merge branch 'master' into feature/redesign-7144 2014-11-13 17:47:26 +01:00
Eric Lippmann e3c70bec6d Fix timezone setup
The CLI must not try to use our web timezone detection thingy.

refs #6073
2014-11-13 17:07:36 +01:00
Eric Lippmann ac2ec83852 Merge branch 'master' into feature/localization-form-6073
Conflicts:
	library/Icinga/Application/ApplicationBootstrap.php
	test/php/library/Icinga/User/Store/DbStoreTest.php
2014-11-13 17:03:41 +01:00
Eric Lippmann 94f8597271 Add existing GROUPBYs to count queries 2014-11-13 16:42:11 +01:00
Eric Lippmann 0e34001568 Use automatically a subquery when counting with groups 2014-11-13 16:42:11 +01:00
Johannes Meyer 77f5bc3932 Use GROUPBY instead of DISTINCT and subqueries when counting 2014-11-13 16:42:11 +01:00
Thomas Gelf f86d3e7636 Web\StyleSheet: PCRE problem workaround, PHP5.3.7
Lines with embedded fonts where too long for lessphp's PCRE matches
unless PHP 5.3.7
2014-11-13 16:35:26 +01:00
Thomas Gelf 28c239c6fd Web\Controller: initial commit
* This is the controller all modules should inherit from.
* We will flip code with the ModuleActionController as soon as a couple
  of pending feature branches are merged back to the master.
2014-11-13 15:42:25 +01:00
Thomas Gelf 1c0e427d3b Web\StyleSheet: compile webfont too
refs #6936
2014-11-13 15:41:13 +01:00
Thomas Gelf 50869c783d MonitoringMenuItemRenderer: webfont icon support
refs #6936
2014-11-13 15:30:00 +01:00
Thomas Gelf b16959bc44 Widget\Tab: support webfont icons
refs #6936
2014-11-13 15:22:47 +01:00
Thomas Gelf 29c7c2e707 Web\MenuRenderer: support webfont icons
refs #6936
2014-11-13 15:21:49 +01:00
Thomas Gelf 1aa8858dca helpers/icon: support webfont shortcuts
* set icon class instead of icon image if no such is given
* fix TODO: merge parameter classes

refs #6936
2014-11-13 15:17:36 +01:00
Bernd Erk ef2ec0442c Merge branch 'master' into feature/redesign-7144 2014-11-13 14:40:26 +01:00
Johannes Meyer 6be51d1565 Use Icinga\Web\Form\Element\Button instead of Zend's button
Due to a bug in Zend prior to 1.12.2 we need our own button implementation
to support earlier versions of the Zend Framework. The side effect is, that
this button can also be used as submit button for our forms as isChecked
will do its job now properly.
2014-11-13 14:26:12 +01:00
Eric Lippmann f427577067 Add getVendorDir() in favor of constant ICINGAWEB_VENDORS 2014-11-13 09:38:04 +01:00
Eric Lippmann bfa834fc3b Remove constant ICINGAWEB_APPDIR
We should avoid use of constants.
2014-11-13 09:33:31 +01:00
Eric Lippmann 9c103a9864 Remove constant ICINGAWEB_BASEDIR
We should avoid use of constants.
2014-11-13 09:24:51 +01:00
Bernd Erk ac8cc0613c Merge branch 'master' into feature/redesign-7144
Conflicts:
	application/views/scripts/authentication/login.phtml
	public/css/icinga/login.less
2014-11-12 17:21:54 +01:00
Eric Lippmann 75475b1684 Rename getBootstrapDirecory() to getBootstrapDirectory() 2014-11-12 17:14:43 +01:00
Eric Lippmann c394cd0bff Use realpath in ApplicationBootstrap::getBootstrapDirecory()
If the CLI is called from source, the base directory is now set to the correct path.
Packagers will have to provide the path to the base directory though.
2014-11-12 17:11:48 +01:00
Johannes Meyer db7954c350 Merge branch 'master' into feature/setup-wizard-7163 2014-11-12 17:05:13 +01:00
Alexander Fuhr c7f36a5afa Fix empty preferences array warning in the DbStore 2014-11-12 17:03:22 +01:00
Eric Lippmann ec6b56a060 Allow to define Icinga Web 2's base directory while bootstrapping 2014-11-12 15:52:43 +01:00
Eric Lippmann b27d1d0058 Merge branch 'master' into feature/setup-wizard-7163 2014-11-12 14:48:15 +01:00
Eric Lippmann a081db08a4 icingacli: Fix "Notice: Constant ICINGAWEB_BASEDIR already defined" 2014-11-12 14:43:58 +01:00
Eric Lippmann 6089372c42 Do not define ICINGAWEB_BASEDIR in index.php
There's SCRIPT_FILENAME. The constants will be removed shortly.
2014-11-12 14:39:45 +01:00
Alexander Fuhr 993390941a Add user account menu and move logout and preferences inside it 2014-11-12 13:22:14 +01:00
Eric Lippmann 277765ac72 No longer make ICINGAWEB_APPDIR configureable 2014-11-12 13:18:05 +01:00
Eric Lippmann 11e13582e2 Define the ICINGAWEB_VENDORS contant 2014-11-12 13:17:18 +01:00
Alexander Fuhr 4f84979c89 Fix IniStore to save and load proper user preferences 2014-11-12 13:16:09 +01:00
Eric Lippmann 8c9465ffbd Fix ICINGAWEB_APPDIR location if the Icinga library is in PHP's include path 2014-11-12 13:06:43 +01:00
Eric Lippmann 877e9101f3 Do not define the constant ICINGAWEB_LIBDIR
This constant should not be needed anywhere.
2014-11-12 12:55:16 +01:00
Alexander Fuhr 533d2207fd Fix `setupTimezone' and `setupInternationalization' for user preferences 2014-11-12 12:16:05 +01:00
Alexander Fuhr 8d120762de Add timezone detection to `setupTimezone' in ApplicationBootstrap 2014-11-12 12:13:46 +01:00
Thomas Gelf f0ca81d7af Data\Filter: SORT_NATURAL only for PHP >= 5.4 2014-11-12 11:47:42 +01:00
Thomas Gelf 5851886877 Widget\Tab: no underlined space after icon 2014-11-12 11:30:06 +01:00
Alexander Fuhr 33107ff8f2 Add new table columns and change the preferences DB save process 2014-11-12 11:08:05 +01:00
Johannes Meyer 62aacce469 Place the noscript button next to the element it is supposed to apply 2014-11-12 10:48:52 +01:00
Johannes Meyer 7aae291f69 Merge branch 'master' into feature/setup-wizard-7163 2014-11-12 10:08:28 +01:00
Johannes Meyer c3e28a42fb Remove configuration option for setting the access mode on new files 2014-11-12 09:40:07 +01:00
Johannes Meyer 4992140326 Hardcode the access mode to use when creating files
refs #7163
2014-11-12 09:39:18 +01:00
Thomas Gelf f24b0e2a4e MonitoringBackend: a few more places, doesn't hurt 2014-11-12 00:20:37 +01:00
Thomas Gelf 0992f6cc15 Monitoring/MenuRenderers: unify logic, perftuning
This reduces duplicate code, query will be fired only once right now.

fixes #7554
2014-11-11 21:50:49 +01:00
Thomas Gelf 0d4d4930a9 Db\DbConnection: benchmark single row fetches 2014-11-11 21:07:02 +01:00
Thomas Gelf d253e1e5b0 Util\Translator: available locales should be sorted 2014-11-11 19:45:56 +01:00
Thomas Gelf f39301d47f Cli: use STDOUT as the default logger
fixes #7636
2014-11-11 19:43:22 +01:00
Thomas Gelf f347a74982 Logger\StdoutWriter: initial implementation
This log writer writes to STDOUT and uses ANSI colors on real terminals

fixes #7636
2014-11-11 19:40:59 +01:00
Thomas Gelf 629118b590 LogWriter: setting config must not be abstract
Storing the given config makes sense as default action, no need to
abstract the constructor per default.

refs #7636
2014-11-11 19:39:15 +01:00
Thomas Gelf 6d705721e3 Filters: try to give meaningful results for...
...missing columns

refs #4787
2014-11-11 19:26:37 +01:00
Thomas Gelf 8987b69d55 Filter: allow to list all filtered columns
This is important for backends that need to know which additional columns
to fetch.

refs #4787
2014-11-11 19:09:59 +01:00
Johannes Meyer a6af51f402 Fix that Config::fromSection cannot return the actual value
refs #7147
2014-11-11 15:51:54 +01:00
Matthias Jentsch c70f738236 Remove linebreaks from configuration keys and values 2014-11-11 15:10:50 +01:00
Matthias Jentsch fdfad34e5c Do not normalize configuration keys to nested arrays in IniWriter
More than one nesting level (the section) is no longer allowed in configuration files. Dots in keys are now
part of the key and will not lead to a nested configuration.

fixes #7120
2014-11-11 15:05:34 +01:00
Eric Lippmann 8e3394fd55 Merge branch 'master' into feature/redesign-7144 2014-11-11 13:54:13 +01:00
Johannes Meyer eb4672923f Require the OpenSSL module instead of providing an unsafe fallback
refs #7163
2014-11-11 10:19:09 +01:00
Johannes Meyer f12473d34b Load core modules also when bootstrapping the CLI
refs #7163
2014-11-11 10:00:28 +01:00
Johannes Meyer 9d292269b1 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	application/forms/Config/Resource/LdapResourceForm.php
	test/php/application/forms/Config/Authentication/LdapBackendFormTest.php
2014-11-11 09:44:11 +01:00
Johannes Meyer 8af13f564b Add support for "core" modules and make the setup module such a module
refs #7163
2014-11-10 17:34:49 +01:00
Johannes Meyer 21ed823da7 Adjust namespace declarations
refs #7163
2014-11-10 16:31:40 +01:00
Johannes Meyer 8f212018ec Move the setup wizard code to a dedicated module
refs #7163
2014-11-10 15:11:44 +01:00
Johannes Meyer 2bb7217d04 Do not require the openssl extension 2014-11-10 11:20:02 +01:00
Johannes Meyer 79493592bb Do not use Installer anywhere.
"It's setup."

refs #7163
2014-11-10 10:30:52 +01:00
Johannes Meyer f85ddeb215 Do not hardcode the php username dummy in Icinga\Application\Platform
refs #7163
2014-11-07 14:40:28 +01:00
Johannes Meyer eadc7d8415 Remove the POSIX requirement
refs #7163
2014-11-07 14:39:34 +01:00
Johannes Meyer 9a5d01b3fd Check the mysql or pgsql extension instead of just pdo, really 2014-11-07 14:31:20 +01:00
Johannes Meyer 124f64ad89 Merge branch 'master' into bugfix/drop-zend-config-7147 2014-11-07 14:07:15 +01:00
Johannes Meyer 7b99b74ae1 Prefer Icinga\Application\Config instead of Zend_Config
refs #7147
2014-11-07 13:53:03 +01:00
Johannes Meyer 268569114c Fix that an error is thrown when reading INI files without trailing newlines 2014-11-07 13:38:35 +01:00
Johannes Meyer 4537b2932e Fix that current(), key(), etc does not work with Config objects 2014-11-07 13:37:09 +01:00
Matthias Jentsch 54eda31633 Allow connect to hosts with no anonymous access
Do not throw exceptions on failed ldap connects during capability discovery

fixes #7325
2014-11-06 17:04:56 +01:00
Matthias Jentsch d0706a55ea Chain exceptions in LdapUserBackend instead of printing the message 2014-11-06 16:32:43 +01:00
Johannes Meyer 83f386f92a Do not extend Zend_Config in Icinga\Application\Config
refs #7147
fixes #7580
2014-11-06 15:41:31 +01:00
Bernd Erk f9e8cc84b9 Design: headline and main menu 2014-11-06 00:09:14 +01:00
Alexander Fuhr 2e24c53224 Merge branch 'master' into feature/localization-form-6073
Conflicts:
	application/forms/Config/GeneralForm.php
	application/forms/Preference/GeneralForm.php
	library/Icinga/Application/Web.php
2014-11-05 13:27:45 +01:00
Eric Lippmann a06568ce41 security: Add menu entry for security
refs #5647
2014-11-04 16:19:20 +01:00
Eric Lippmann d2eddcbec6 Introduce Form::setOnSuccess() in favor of overriding the constructor
Zend_Form uses setters for options if a respective setter method exists.
It is not necessary to override the constructor for introducing new options.
2014-11-04 16:15:06 +01:00
Johannes Meyer 7569c55796 Fix how password hashes are stored and retrieved in DbUserBackend 2014-11-04 15:52:09 +01:00
Johannes Meyer 0db658b7f3 Fix that pgsql privileges were tested in case of mysql
refs #7163
2014-11-04 15:51:11 +01:00
Johannes Meyer 69b38768cf Fix "Icinga\Logger\Logger not found"
The class was moved to Icinga\Application\Logger.
2014-11-04 15:50:34 +01:00
Eric Lippmann a965017d73 INI writer: Support writing files which do not yet exist 2014-11-04 14:46:56 +01:00
Johannes Meyer 5a169ee656 Fix "PreservingIniWriter not found"
The class was renamed a few commits ago to "IniWriter"
2014-11-04 14:35:57 +01:00
Johannes Meyer 170ded6510 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	library/Icinga/Authentication/Backend/LdapUserBackend.php
	library/Icinga/File/Ini/IniWriter.php
2014-11-04 14:22:53 +01:00
Johannes Meyer 581935c26f Fix database setup and add support for the new schema
refs #7163
2014-11-04 13:51:15 +01:00
Johannes Meyer 805cb9f079 Do not report whether files were skipped because they already exist
I've removed the summary earlier as a user does not configure this in any
way so it's not necessary to show him what should had happened to files
as well.

refs #7163
2014-11-04 13:47:37 +01:00
Eric Lippmann 45d3005f3c Throw exceptions on PHP warnings
Sometimes we miss PHP warnings because our layout overlays them.
2014-11-04 13:20:41 +01:00
Johannes Meyer 8913bf53c9 Fix salt extraction 2014-11-04 13:03:36 +01:00
Johannes Meyer 99277383b9 Fix retrieving a user's data from the database 2014-11-04 13:03:12 +01:00
Johannes Meyer cad8f7538e Leave it up to the database to decide what is the current time 2014-11-04 12:42:39 +01:00
Matthias Jentsch f9fee2df70 Do not interrupt authentication chain on invalid ldap connection infos
Catch LdapExceptions and throw AuthenticationException to not interrupt authentication chain

fixes #7497
2014-11-04 12:35:41 +01:00
Eric Lippmann ea1f51ad9a Use callable as type hint instead of Callback
PHP 5.4 introduces callable for type hinting and PSR-5 proposes callable.
2014-10-31 15:59:45 +01:00
Eric Lippmann e5091ec835 Fix Modules\Manager::getLoadedModules() PHPDoc 2014-10-31 11:22:27 +01:00
Eric Lippmann 0124a33037 Add method Config::isEmpty() 2014-10-31 11:20:17 +01:00
Eric Lippmann b38e3affb9 Move INI writer classes to the File namespace
fixes #7150
2014-10-31 10:54:53 +01:00
Eric Lippmann 16352fc10c Move Logger to the Application namespace
fixes #7148
2014-10-31 10:27:17 +01:00
Johannes Meyer 4f1e1ddb6f Adjust the DbUserBackend to reflect the new database schema 2014-10-30 15:40:07 +01:00
Johannes Meyer 538bc8aec8 Drop unused method parameter in DbTool::checkPrivileges 2014-10-30 15:08:04 +01:00
Johannes Meyer 521a36e0af Fix method documentation of DbTool::checkPgsqlPriv() 2014-10-30 15:07:33 +01:00
Johannes Meyer e58520c3e6 Drop irritating and redundant docblock warning 2014-10-30 15:06:57 +01:00
Johannes Meyer 1bd1b58d46 Drop unused use statement 2014-10-30 15:06:14 +01:00
Johannes Meyer c1bff9a26e Merge branch 'master' into feature/setup-wizard-7163 2014-10-30 10:38:21 +01:00
Johannes Meyer 9365e3ca94 Remove the setup token from disk upon completion of the wizard
refs #7163
2014-10-30 10:36:02 +01:00
Johannes Meyer ec47f6bdb3 Create permissions.ini when defining the initial administrator
refs #7163
2014-10-30 09:53:58 +01:00
Eric Lippmann 1b83ec3ce2 Preferences: Fix saving preferences when using a database store
Our DbSelect::where() is not (or no longer?) compatible w/ Zend_Db_Select::where().
DbStore::load() now uses Zend_Db_Select but we should definitely think about our
DbSelect::where() implementation.

fixes #7353
2014-10-30 09:49:21 +01:00
Eric Lippmann 39729c9580 Logger: Fix level comparison 2014-10-29 16:51:17 +01:00
Johannes Meyer 504853961b Add temporary requirement for the DOM php module
Should be removed once dompdf isn't shipped with Icinga Web 2 anymore

refs #7163
refs #6172
2014-10-29 16:25:25 +01:00
Johannes Meyer c8e323e8a7 Improve requirment checks
refs #7163
2014-10-29 16:24:31 +01:00
Johannes Meyer 4d8842db09 Return a dummy PHP username in case the POSIX module is not available 2014-10-29 16:22:41 +01:00
Johannes Meyer 81e06fe570 Do not show a requirement for Zend_Db_Adaper_*
refs #7163
refs #7464
2014-10-29 15:49:14 +01:00
Johannes Meyer 9cd4aeec06 Fix MySQL login creation in DbTool::addLogin()
refs #7163
2014-10-29 15:45:57 +01:00
Johannes Meyer 33a64eb55a Do not throw an exception in DbTool due to an implementation detail
Throwing exceptions due to failing logic which is purely an implementation
detail must not affect the calling code in any way.

refs #7163
2014-10-29 15:45:26 +01:00
Johannes Meyer 47d9426a1f Use a hardcoded path where to look for modules
refs #7163
2014-10-29 15:43:08 +01:00
Johannes Meyer ec6948dddf Fix that the ModulePage does not provide a wizard's requirement info
refs #7163
2014-10-29 11:38:21 +01:00
Johannes Meyer 32006420c5 Fix WelcomePage
There were some grammar- and layout-errors
as well as information missing :(
2014-10-29 11:36:03 +01:00
Johannes Meyer 6a3244d8df Do not show a summary for the MakeDirStep
The user does not configure anything this step will process so there is no
need to show the user a summary about something he can't control.

refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer 83cfcef85c Add EnableModuleStep
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer 3c438d9221 Allow install steps to return no summary
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer dbf5512252 Drop Icinga\Application\Installation and introduce Icinga\Installation
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer a899070606 Move MakeDirStep to Icinga\Web\Setup
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer dd6b045183 Fix that the ModulePage cant find modules when being asked for
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer 98acc24869 Create configuration sub directories as part of the setup wizard
refs #7163
2014-10-29 08:38:59 +01:00
Johannes Meyer 1fd4a301c4 Pass the wizard title to the summary page to be able to reuse the page
Module wizards can now use the SummaryPage as well if they want to.

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

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

resolves #7389
2014-10-27 15:08:52 +01:00
Johannes Meyer 2f83976f50 Add ModulePage
refs #7163
2014-10-24 17:10:17 +02:00
Johannes Meyer 851682cf18 Make page count assertion more sensitive
refs #7163
2014-10-24 14:06:31 +02:00
Johannes Meyer 1bd5868a88 Fix access of an array key which does not exist in some circumstances
refs #7163
2014-10-24 13:57:30 +02:00
Johannes Meyer 03bbc2e2e6 Use a dedicated method to clear a wizard's session
Simplifies session removal in case a sub-class of Icinga\Web\Wizard
requires special session handling

refs #7163
2014-10-24 13:55:41 +02:00
Johannes Meyer a8dd9c933d Add the possibility for modules to provide a setup wizard
refs #7163
2014-10-24 13:52:26 +02:00
Johannes Meyer 64e6886c9c Make it possible to pass the module paths directly to the module manager 2014-10-24 13:51:23 +02:00
Johannes Meyer d90d6fe6a9 Improve summary page layout a bit
refs #7163
2014-10-23 15:16:25 +02:00
Johannes Meyer a6cbde54c5 Move summary HTML generation from the view script to each install step
refs #7163
2014-10-23 15:15:59 +02:00
Johannes Meyer 216c072024 Implement installation routines modularly
This allows us to "merge" module installation
routines with our main installer routines.

refs #7163
2014-10-23 11:41:16 +02:00
Eric Lippmann f44b0525d8 logging: Fix that setting a numeric log level is flawed 2014-10-23 03:50:03 +02:00
Eric Lippmann f68c591a46 LDAP Auth: Make group loading really optional
fixes #7432
2014-10-23 03:50:03 +02:00
Johannes Meyer f5c4708ae2 Add a default file mode for new configuration files
The file mode which can be configured in the general configuration is now
used when creating new configuration files with the PreservingIniWriter.
2014-10-21 17:02:21 +02:00
Johannes Meyer a5b10235d2 Add more detail to error messages when token validation fails
refs #7163
fixes #7410
2014-10-21 16:10:21 +02:00
Johannes Meyer 8c62c66a4e Make regular expression pattern in autologin backend being fully optional 2014-10-20 15:14:14 +02:00
Eric Lippmann 424cee6b4a Auth: Load user groups using the new user group backends 2014-10-20 13:43:40 +02:00
Eric Lippmann 2b67683e00 DbConnection::__construct(): Set prefix if configured 2014-10-20 13:43:03 +02:00
Eric Lippmann aa56f3010c lib: Add DbUserGroupBackend 2014-10-20 13:42:33 +02:00
Eric Lippmann d170cf0c9d lib: Replace Membership with IniUserGroupBackend 2014-10-20 13:42:15 +02:00
Eric Lippmann d1228deef2 lib: Add UserGroupBackend as base class and factory for user group backends 2014-10-20 13:41:33 +02:00
Eric Lippmann 79ade944de Resources: Support type 'ini' yet only in the resources.ini
Configuring the resource type 'ini' via the web interface is not yet possible.
2014-10-20 13:40:35 +02:00
Eric Lippmann cee261bf7e Use lowercase username and user groups for loading user permissions and restrictions 2014-10-20 13:36:37 +02:00
Johannes Meyer e72f2cac24 Fix that page information gets deleted when navigating back
refs #7163
2014-10-17 15:42:06 +02:00
Johannes Meyer 24b6274f01 Fix logging configuration installation
refs #7163
refs #6933
2014-10-17 13:05:56 +02:00
Johannes Meyer 9f127be1dc Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	application/forms/Config/General/LoggingConfigForm.php
2014-10-17 13:04:59 +02:00
Johannes Meyer a54c81b2a7 Adjust button labels only in WebSetup::addButtons(), not in view scripts
refs #7163
2014-10-17 11:20:20 +02:00
Eric Lippmann 6c59c22044 Bootstrap: Remove logging configuration directives which do not override defaults 2014-10-16 15:59:56 +02:00
Eric Lippmann 6dfefb0e73 CLI: Fix logging setup 2014-10-16 15:59:35 +02:00
Eric Lippmann d2d653209f Logger/SyslogWriter: Define configuration defaults here
Usage of closelog() is optional so I removed the explicit calls.
2014-10-16 15:56:38 +02:00
Eric Lippmann 04a8df54cd Logger/FileWriter: Rename 'target' directive to 'file' 2014-10-16 15:55:24 +02:00
Eric Lippmann 97677ee2c1 Fix our Logger not supporting named logging levels and requiring the 'enabled' directive 2014-10-16 15:54:13 +02:00
Eric Lippmann 985154d3d8 Throw an ErrorException on E_STRICT errors 2014-10-16 15:51:18 +02:00
Eric Lippmann a2772a17a7 File: Fix ErrorException::__construct()'s parameters 2014-10-16 15:47:50 +02:00
Johannes Meyer d73423ceee Style summary page
Dropped also the layout logic as it was too generic.

refs #7163
2014-10-16 14:52:26 +02:00
Johannes Meyer d1ea7e87a2 Improve form styling slightly 2014-10-15 15:46:07 +02:00
Johannes Meyer 38ee467603 Fix that the session is written too early when post-dispatching 2014-10-15 13:15:30 +02:00
Johannes Meyer 2c09ca1623 Fix that retrieving notifications causes them to be dropped entirely
I've broke this when doing some improvements while being
brainless, obviously.
2014-10-15 13:14:51 +02:00
Johannes Meyer 5d44a005a0 Fix that notifications are not registered 2014-10-15 13:02:56 +02:00
Johannes Meyer 45e179d939 Fix that `type' is missing for installed ldap authentication backends
refs #7163
2014-10-15 10:44:08 +02:00
Matthias Jentsch 937dbe2c15 Add missing close buttons to views without tabs 2014-10-14 17:54:52 +02:00
Matthias Jentsch 9a9aa84e23 Respect base_dn in LdapUserBackend 2014-10-14 14:37:21 +02:00
Johannes Meyer b5798331db Wrap form notifications in <p> by default, not <div> 2014-10-13 09:41:36 +02:00
Johannes Meyer 13678bb33e Add useful @todo hint
refs #7163
2014-10-13 09:35:00 +02:00
Johannes Meyer 52016d81b9 Consider `root_dn' and `base_dn' when installing config files
refs #7163
2014-10-13 09:34:22 +02:00
Johannes Meyer 437b41c6c1 Merge branch 'master' into feature/setup-wizard-7163 2014-10-13 08:18:43 +02:00
Johannes Meyer ca6eca6b67 Quote database names, usernames and passwords when setting up the db
refs #7163
2014-10-09 16:02:18 +02:00
Johannes Meyer 78b130a4f3 Fix that the LDAP discovery page is shown for non-LDAP authentication
refs #7163
2014-10-09 15:05:21 +02:00
Johannes Meyer c3404fdc67 Support prepared statements in DbTool::exec and DbTool::query
refs #7163
2014-10-09 15:03:51 +02:00
Johannes Meyer f8f27e046d Ensure that we advance a wizard when pushing ENTER
refs #7163
2014-10-09 13:41:06 +02:00
Johannes Meyer 169a646a1a Fix that LDAP discovery suggestions are not populated
I've broke this when re-commiting the changes made by Matthias and fixed
this by populating dependent pages directly in WebSetup::setupPage.

refs #7163
2014-10-09 10:47:45 +02:00
Matthias Jentsch e29a568bff Add LDAP discovery pages
refs #7163
2014-10-09 10:20:07 +02:00
Matthias Jentsch df69fd2264 Make Dns::getSrvRecors being more generic
The `target' property of a returned service record is too specific and causes
other properties being ignored.
2014-10-09 10:19:21 +02:00
Matthias Jentsch dd21b7b5d1 Make sure that we work only with arrays when handling LDAP groups 2014-10-09 10:14:42 +02:00
Matthias Jentsch 04e83a53c5 Add `base_dn' directive to LDAP backend config 2014-10-09 10:10:09 +02:00
Eric Lippmann cc61dc2b01 Form: Don't override Zend_Form::setDefaults()
fixes #7315
2014-10-08 17:43:28 +02:00
Johannes Meyer 1cbe2451a8 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	application/forms/Config/Resource/StatusdatResourceForm.php
2014-10-08 16:34:31 +02:00
Johannes Meyer 7c202dd8fa Improve the db-summary text and db-creation/-resource step handling
refs #7163
2014-10-08 15:36:26 +02:00
Johannes Meyer 8fa8642917 Do not show the db-creation step when the db-resource step was skipped
refs #7163
2014-10-08 15:35:12 +02:00
Johannes Meyer 89ae05899b Query a particular login name and create database logins using the DbTool
refs #7163
2014-10-08 15:33:51 +02:00
Johannes Meyer 96ba45d896 Convert password salt to ASCII to avoid encoding issues with PostgreSQL 2014-10-08 15:26:42 +02:00
Alexander Fuhr 4c23d98575 Merge branch 'master' into bugfix/monitoring-list-dup-entries-7057 2014-10-08 12:45:14 +02:00
Alexander Fuhr afc97b1cac Fix the duplicate entries in monitoring list shows
refs #7057
refs #7344
fixes #7057
2014-10-08 12:30:08 +02:00
Johannes Meyer baa6abdb00 Relax schema check
Checking one table for its existence is more than enough. Creating a diff
implies conditional CREATE TABLE instructions and the like, what we want
to avoid.

refs #7163
2014-10-08 11:24:05 +02:00
Johannes Meyer 393191ced1 Add admin creation routine
refs #7163
2014-10-08 10:26:12 +02:00
Johannes Meyer abc34a5f1a Add database setup routines
refs #7163
2014-10-07 17:08:50 +02:00
Johannes Meyer 7da11b83f5 Fix that the database is displayed instead of the login in the db summary
refs #7163
2014-10-07 17:06:51 +02:00
Johannes Meyer 1136a09741 Wrap report message registration in a specific method
refs #7163
2014-10-07 17:05:55 +02:00
Johannes Meyer 627a19a2a9 Fix warning "references should be passed by variable" 2014-10-07 15:57:00 +02:00
Eric Lippmann 1b23fd7fbe monitoring: Don't support status.dat as backend
Icinga Web 2 will not support status.dat for now and maybe forever.
2014-10-07 13:22:07 +02:00
Johannes Meyer d54bfddee4 Silence file_get_contents call
Since an earlier change already made the existence of config files not
required we do not care about any E_WARNING or notice emitted by
"file_get_contents".
2014-10-06 16:55:20 +02:00
Johannes Meyer 04ff2e271a Drop dependent page data more earlier
Not only the "setup_authentication_backend" page depends on the auth
type but also the "setup_admin_account" page, so just drop both entries
once a new auth type gets submitted.

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

refs #7163
2014-10-06 16:49:29 +02:00
Johannes Meyer b50c780bcf Let the setup's view scripts be a bit more generic
refs #7163
2014-10-06 16:04:58 +02:00
Johannes Meyer ac255eeda0 Change form name of GeneralConfigPage to "setup_general_config"
Used to be "setup_application_config".

refs #7163
2014-10-06 13:52:32 +02:00
Alexander Fuhr 421263af00 Make LDAP Groups optional
refs #7343
2014-10-06 13:35:17 +02:00
Eric Lippmann 865ef76cb8 filter: Fix whitespace sanitizing 2014-10-06 13:19:25 +02:00
Alexander Fuhr 5143c78f1a Merge branch 'master' into bugfix/monitoring-list-duplicates-7057 2014-10-06 13:06:56 +02:00
Alexander Fuhr 97d2a920db Implement GROUP BY clause functionality 2014-10-06 11:34:04 +02:00
Alexander Fuhr 36681bb55a Add new QueryException 2014-10-06 11:30:48 +02:00
Johannes Meyer 83006c014c Wrap wizard buttons in a div
refs #7163
2014-10-06 11:07:21 +02:00
Eric Lippmann 2956d9e342 form: Correctly set our default element decorators 2014-10-06 10:42:24 +02:00
Eric Lippmann fa96a1cbbe Number: Extend our FormElement class 2014-10-06 10:21:17 +02:00
Eric Lippmann a3409b166d Note: Extend our FormElement class 2014-10-06 10:21:02 +02:00
Eric Lippmann 9be52a9148 DateTimePicker: Extend our FormElement class
fixes #7322
2014-10-06 10:20:26 +02:00
Eric Lippmann 9db76bf371 CsrfCounterMeasure: Save calls to `setRequired()' and `setIgnore()' 2014-10-06 10:19:36 +02:00
Eric Lippmann 8106fe4f79 form: Add `FormElement' as base class for our elements 2014-10-06 10:19:05 +02:00
Johannes Meyer 9cbd7e945d Do not permit the user to give equal names to multiple resources
refs #7163
2014-10-06 09:43:50 +02:00
Johannes Meyer b4a1364a92 Add summary report
refs #7163
2014-10-06 09:30:51 +02:00
Johannes Meyer f29705fc59 Add summary page
refs #7163
2014-10-02 17:11:00 +02:00
Johannes Meyer 0f302bfc0a Fix form population in case the user navigates backwards to make changes
refs #7163
2014-10-02 17:08:55 +02:00
Johannes Meyer 4f52da95ac Drop page data when skipping a page that was displayed before
refs #7163
2014-10-02 16:35:41 +02:00
Alexander Klimov 1a2d15b638 Drop Icinga\Util\Enumerate 2014-10-02 13:59:54 +02:00
Alexander Klimov 051128b967 Icinga\Protocol\File\FileReader: don't use Icinga\Util\Enumerate 2014-10-02 13:59:53 +02:00
Alexander Klimov e192b939c2 Icinga\Protocol\File\FileIterator: extend EnumeratingFilterIterator 2014-10-02 13:59:52 +02:00
Alexander Klimov 081d8eecfc Implement abstract class EnumeratingFilterIterator 2014-10-02 13:59:51 +02:00
Alexander Fuhr 017d4b8c9d Introduce Groups from LDAP to User Object 2014-10-01 16:03:42 +02:00
Johannes Meyer a980184eb9 Move css instructions to dedicated stylesheet
refs #7163
2014-10-01 15:46:58 +02:00
Johannes Meyer 464fefa578 Fix exception in case the database access credentials are invalid
refs #7163
2014-10-01 15:44:43 +02:00
Matthias Jentsch ed91e119d2 Add close-button to all containers
refs #6216
2014-10-01 14:51:51 +02:00
Eric Lippmann 74bd9b319d restrictions: Include restriction's section name in user restrictions 2014-10-01 14:08:21 +02:00
Eric Lippmann 64d41ac5a3 filter: Make `DbQuery::applyFilterSql()' public
I want to use that function in a module :)
2014-10-01 12:51:28 +02:00
Johannes Meyer 8f79e0a713 Fix warning "references should be passed by variable only" 2014-10-01 09:17:48 +02:00
Johannes Meyer 08d259eccf Add database creation page
refs #7163
2014-10-01 09:16:53 +02:00
Eric Lippmann bbee06b57f form: Ignore note elments when retrieving values at form level 2014-10-01 08:18:34 +02:00
Eric Lippmann fa9bd59565 lib: Support `isset()' and `empty()' checks on CLI params 2014-10-01 08:17:35 +02:00
Eric Lippmann 084691570e permissions: Use a comma-separated list as config instead of the `permission_*' directives
Permissions are now set using a comma-separated list of permissions using the `permissions' config because
the `users' and `groups' are comma-separated lists too.
2014-10-01 08:14:03 +02:00
Eric Lippmann ebde422824 filter: Fix whitepsace sanitation when expression is an array 2014-10-01 04:00:43 +02:00
Eric Lippmann 46078f50db filter: Fix that leading and trailing whitespaces for columns and expressions let filters fail
Before, filtering for "host = localhost" issued "got invalid column host".
2014-10-01 03:13:27 +02:00
Eric Lippmann 1c7eb0d59a lib: Introduce function `String::cname()' 2014-09-30 22:34:58 +02:00
Matthias Jentsch 8eb7db9b35 Avoid type warning when using array_combine on empty arrays 2014-09-30 15:54:38 +02:00
Johannes Meyer c78b016d74 Remove boiler plate code 2014-09-30 10:26:10 +02:00