Support date, time and datetime formatting based on format strings
set either by the user or via config.ini. The view helper
FormDateTime uses the new helper already
refs #4440
refs #4424
- Fixed concatenation
- Added license header where missing
- Fixed the index controller fetching the wrong parameter ('dashboard' instead of 'pane')
refs #4192
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
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
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 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
- 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
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