From eefd94d398e51c2e772c7d8ebc6f2299ace000be Mon Sep 17 00:00:00 2001 From: Christoph Ladurner Date: Tue, 2 Apr 2024 08:58:48 +0200 Subject: [PATCH] global: remove invenio-admin * invenio-admin was deprecated in favour of invenio-administration and is removed now --- invenio_records/admin.py | 80 ---------------------------------------- setup.cfg | 7 +--- 2 files changed, 1 insertion(+), 86 deletions(-) delete mode 100644 invenio_records/admin.py diff --git a/invenio_records/admin.py b/invenio_records/admin.py deleted file mode 100644 index 78c04afc..00000000 --- a/invenio_records/admin.py +++ /dev/null @@ -1,80 +0,0 @@ -# -*- coding: utf-8 -*- -# -# This file is part of Invenio. -# Copyright (C) 2015-2018 CERN. -# Copyright (C) 2023 Graz University of Technology. -# -# Invenio is free software; you can redistribute it and/or modify it -# under the terms of the MIT License; see LICENSE file for more details. - -"""Admin model views for records.""" - -import json - -from flask import flash -from flask_admin.contrib.sqla import ModelView -from invenio_admin.filters import FilterConverter -from invenio_db import db -from invenio_i18n import gettext as _ -from markupsafe import Markup -from sqlalchemy.exc import SQLAlchemyError - -from .api import Record -from .models import RecordMetadata - - -class RecordMetadataModelView(ModelView): - """Records admin model view.""" - - filter_converter = FilterConverter() - can_create = False - can_edit = False - can_delete = True - can_view_details = True - column_list = ( - "id", - "version_id", - "updated", - "created", - ) - column_details_list = ("id", "version_id", "updated", "created", "json") - column_labels = dict( - id=_("UUID"), - version_id=_("Revision"), - json=_("JSON"), - ) - column_formatters = dict( - version_id=lambda v, c, m, p: m.version_id - 1, - json=lambda v, c, m, p: Markup("
{0}
").format( - json.dumps(m.json, indent=2, sort_keys=True) - ), - ) - column_filters = ( - "created", - "updated", - ) - column_default_sort = ("updated", True) - page_size = 25 - - def delete_model(self, model): - """Delete a record.""" - try: - if model.json is None: - return True - record = Record(model.json, model=model) - record.delete() - db.session.commit() - except SQLAlchemyError as e: - if not self.handle_view_exception(e): - flash( - _("Failed to delete record. {error}").format(error=str(e)), - category="error", - ) - db.session.rollback() - return False - return True - - -record_adminview = dict( - modelview=RecordMetadataModelView, model=RecordMetadata, category=_("Records") -) diff --git a/setup.cfg b/setup.cfg index 440f3491..013d9eec 100644 --- a/setup.cfg +++ b/setup.cfg @@ -3,7 +3,7 @@ # This file is part of Invenio. # Copyright (C) 2015-2022 CERN. # Copyright (C) 2021 TU Wien. -# Copyright (C) 2022 Graz University of Technology. +# Copyright (C) 2022-2024 Graz University of Technology. # # Invenio is free software; you can redistribute it and/or modify it # under the terms of the MIT License; see LICENSE file for more details. @@ -39,12 +39,9 @@ install_requires = [options.extras_require] tests = pytest-black>=0.3.0 - invenio-admin>=1.4.0,<2.0.0 pytest-invenio>=2.1.0,<3.0.0 pytest-mock>=1.6.0 sphinx>=4.5.0 -admin = - invenio-admin>=1.2.1,<2.0.0 mysql = invenio-db[mysql,versioning]>=1.0.14,<2.0.0 postgresql = @@ -55,8 +52,6 @@ docs = # Kept for backwards compatibility [options.entry_points] -invenio_admin.views = - invenio_records = invenio_records.admin:record_adminview invenio_base.apps = invenio_records = invenio_records:InvenioRecords invenio_base.api_apps =