Commit Graph

304 Commits

Author SHA1 Message Date
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