This error is intended for cases when a method is
intentionally not implemented, because the module/class defining
it expects a subclass (or class including the module) to implement
the method.
This is intended to distinguish it from other cases, such as:
* feature not implemented yet
* edge case of a method call not yet supported
Notably it avoids the misuse of the Ruby-defined NotImplementedError,
which is only intended for much more specific scenarios:
> Raised when a feature is not implemented on the current platform. For example, methods depending on the fsync or fork system calls may raise this exception [...]
Also see https://docs.ruby-lang.org/en/master/NotImplementedError.html
Moves components (including templates, styles, I18n strings), associated
controllers and routing under the grids module.
This change reflects the fact that widgets may be (re)used
across various different grids, e.g. Overviews/Dashboard, My Page and
Homescreen.
* replace beta news widget with news widget component
* remove feature flag for beta component
* Add a migration to remove the beta_news component and remove beta component feature flag
* change migration file name
Since this widget will be shared between grids implementations, moves
widget, routes, controllers and views to Grids module.
Also fixes widget permission.
Provides Project Status (BETA) widget as a Reference Implementation -
this widget is currently based on the design of the Status form on the
Project Settings > General page.
In detail:
- introduces a base `WidgetController` from which widget implementations
should inherit.
- adds `Overviews::Widgets::ProjectStatusComponent` and accompanying
specs. Reuses existing forms.
- adds `Overviews::Widgets::StatusController`` with custom `#update`
action, routes and accompanying permissions.
- makes the Project Status (BETA) widget available by registering in ng
`OpenProjectGridsModule` and Rails grid modules configuration.
N.B. The Project Status (BETA) widget is EXPERIMENTAL - it will require
further visual refinement (in a follow up work package).
The widget was registered with the identifier `time_entries_project`
which did not match the i18n key
`js.grid.widgets.time_entries_list.title`, so the presented title was
the `widget.options.name` value which is the translation at the widget
creation time. For instance if French was the locale when the widget is
added then the title would be in French.
Using the correct identifier `time_entries_list` fixes the issue and
translates it for all users.
without it, the list of allowed widgets on a grid would be empty because the grid class being used is different from the grid class registered, because the class was reloaded
Updates the copyright to 2021 for all files that have a copyright. Files in our source code without the copyright header still do not receive one automatically. Additionally, backlisted files are also excluded.
Previously the copyright of chiliproject which references redmine stated a copyright of redmine up to and including 2017 which is not true for the code we have in here. Because of that I changed that to 2013