The fallback timezone is set in case an error occurs
before setupTimezone() is entered. In this case the user
is presented with an warning about missing timezone settings
if the php.ini doesn't contain timezone information
refs #4529
This commit summarizes the bugfixes made in this branch. As the frontend the fixes required a lot of stuff to be fixed afterwards and #4602 was used as a larger example regression test, this affects a few tickets:
- (Bug 4491) Frontend tests will hang randomly: CasperJS now operates on the installed version, so this shouldn't happen anymore
- (Bug 4602) Configuration Interface - Authentication: Backends moved when pushing enter: The authentication interface is reworked and does not persist a state over pages
- (Bug 4605) /tmp should not be the default log path: Now it is the application relative var/log path
- (Bug 4606) Configuration: Show message that changes were saved successfully: Implemented and tested with casperjs
- (Bug 4641) Installation/Testing fix configure/make: This has been reworked
- (Bug 4642) Allow Application placeholder in config: This was required for implementimg 4605
- (Bug 4643) Application doesn't work with older Zend Versions: A fallback __call has been implemented for this
refs #4491
refs #4602
refs #4605
refs #4606
refs #4641
refs #4642
refs #4643
Fix coding standards in database schemes. Use DbAdapterFactory in all unit
tests instead of creating own adapters. Fix DbUserBackend and DbStore to use
FETCH_OBJ, instead of FETCH_ASSOC, to handle it consistently in the whole
application. Remove unnecessary table columns from the "account" scheme.
refs #4577
refs #4578
refs #4596
refs #4599
refs #4627
Change the StoreFactory configuration to reference to a resource instead of
defining the whole database. Additionally fix docstrings, fix imports and fix
function calls to comply to coding style standards.
refs #4503
Create the DbAdapterFactory to instanciate db adapters, add resources.ini to configure resources, change
the authentication Manager to fall back to backends with lower priority in case
of errors, update the current UserBackends to the changed environment. Also
adjust the documentation and existing unit tests.
resolves#4503
- Rename ConfigurationController to ConfigController
- ConfigController and PreferenceController are now subclasses of
BaseConfigController and BasePreferenceController
- Module and Application Config/Preference Tabs are detected via
the ControllerTabCollector
- Moved Controller classes to Icinga/Web/Controller (this is why
so many files are modified)
refs #4530
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
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
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
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
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
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
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
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.
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
- 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