Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge US-Permissions to staging #3247

Merged
merged 26 commits into from
Feb 8, 2023
Merged

Merge US-Permissions to staging #3247

merged 26 commits into from
Feb 8, 2023

Conversation

zannkukai
Copy link
Contributor

And then... crying for rebase

zannkukai and others added 25 commits February 7, 2023 13:38
* Adds new professional roles.
* Updates data and fixtures.
* Reorganizes `Patron.api` file.

Co-Authored-by: Lauren-D <laurent.dubois@itld-solutions.be>
Co-Authored-by: Johnny Mariéthoz <Johnny.Mariethoz@rero.ch>
* Uses invenio-records-permmissions for CRUD operations.
* Adds a generic record permission policy compatible with
  invenio-records-rest and invenio-records-resources.
* Adds actions for patron types.
* Adds fixtures and the corresponding cli to the action roles
  permissions.
* Adds two generic permission generators for action role permissions.

Co-Authored-by: Johnny Mariéthoz <Johnny.Mariethoz@rero.ch>
* Refactoring Organisation policy access using `Permission` framework.
* Adapts `PatronType` policy.
* Adapts unitest

Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
* Refactoring vendor policy access.
* Adapts unitest.

Co-Authored-by: Lauren-D <laurent.dubois@itld-solutions.be>
* Refactoring item type policy access.
* Adapts unitest.

Co-Authored-by: Lauren-D <laurent.dubois@itld-solutions.be>
Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
* Refactoring contibution policy access.
* Adapts unitest.

Co-Authored-by: Lauren-D <laurent.dubois@itld-solutions.be>
Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
* Refactoring circulation policies policy access.
* Adapts unitest.

Co-Authored-by: Lauren-D <laurent.dubois@itld-solutions.be>
Co-Authored-by: Bertrand Zuchuat <bertrand.zuchuat@rero.ch>
Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
* Refactors Budget permission policies resource.
* Refactors AcqAccount permission policies resource.
* Refactors AcqOrder permission policies resource.
* Refactors AcqOrderLine permission policies resource.
* Refactors AcqReceipt permission policies resource.
* Refactors AcqInvoice permission policies resource.
* Cleans uni-tests to remove unnecessary tests.

Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
Co-Authored-by: Bertrand Zuchuat <bertrand.zuchuat@rero.ch>
Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
* Refactors `Collection` resource permission policy.
* Refactors `Template` resource permission policy.
* Adapts and cleans unitests.

Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
* Uses invenio-record-permissions to limit access to LocalField resource
  on CRUD operations.
* Fixes LocalField duplicate detection
* Adapts uni-tests

Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
Use `invenio-record-permissions` policies to manage REST permissions
policy on `Patron` resource. This policy also restrict some change on
`roles` field depending of the connected user.

Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
* Adding a `permissions` setting into the logged_user API. This is useful
  to UI to know if it's necessary to show/hide some elements.
* Removes actions from `pyproject.toml` to load them when the
  application is loaded. This was an issue for CLI application.
* Use cache system to store `ActionNeed` loading result to improve
  performance..
* Creates API to manage permissions.

Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
* Create an API to expose permssion for a specific patron pid.
* Add action to allow acquisition account transfer.
* Updates copyright dates
* Fix roles managements behavior for `Patron` resources.

Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
* Creates marshmallow schema for template resources.
* Controls "public" template creation through REST API.

Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
* Use Marshmallow schema to control `Patron` resources through API. The
  `role` field is now controlled to limit changes depending to current
  connected user.
* Renames `User.get_by_id()` to `User.get_record()`
* Improves code coverage
* Include `public-holdings-items` CSS into document detail-view
* Fixes policies related to `Template` resource.

Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
@github-actions github-actions bot added dev: DB Database structure (models.py) dev: fixtures Fixtures data used for ils.test and ilsdev.test developers From a developer point of view. f: activity-logs Everything around logging user or system activities f: circulation Concerns the circulation interface or backend labels Feb 7, 2023
@github-actions github-actions bot added f: data About data model, importation, transformation, exportation of data, specific for bibliographic data f: data migration Data migration from a legacy system or a previous version f: notifications f: permissions Concerns the rights management f: serials f: statistics Related to the usage statistics either for pricing or for the libaries reports f: user management translations Translations labels Feb 7, 2023
@zannkukai zannkukai marked this pull request as ready for review February 7, 2023 14:16
* Changing the json schema to use the multicheckbox type for the role field.
* Fix the Alembic role migration script.

Co-Authored-by: Bertrand Zuchuat <bertrand.zuchuat@rero.ch>
Co-Authored-by: Renaud Michotte <renaud.michotte@gmail.com>
@zannkukai zannkukai merged commit 4fcca56 into staging Feb 8, 2023
@zannkukai zannkukai deleted the US-Permissions branch February 8, 2023 07:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dev: DB Database structure (models.py) dev: fixtures Fixtures data used for ils.test and ilsdev.test developers From a developer point of view. f: activity-logs Everything around logging user or system activities f: circulation Concerns the circulation interface or backend f: data migration Data migration from a legacy system or a previous version f: data About data model, importation, transformation, exportation of data, specific for bibliographic data f: notifications f: permissions Concerns the rights management f: serials f: statistics Related to the usage statistics either for pricing or for the libaries reports f: user management translations Translations
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants