emrt.necd.content 2.5.49__zip → 2.5.50__zip
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/PKG-INFO +7 -1
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/docs/HISTORY.txt +6 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/conclusions.py +3 -5
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/metadata.xml +1 -1
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/reviewfolder.py +40 -6
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/configure.zcml +12 -0
- emrt.necd.content-2.5.50/emrt/necd/content/upgrades/evolve2550.py +56 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/utils.py +1 -1
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/vocabularies.py +9 -8
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt.necd.content.egg-info/PKG-INFO +7 -1
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt.necd.content.egg-info/SOURCES.txt +1 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/setup.py +1 -1
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/.editorconfig +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/.gitignore +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/MANIFEST.in +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/Makefile +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/README.txt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/bootstrap.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/build_manylinux.sh +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/buildout.cfg +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/docs/INSTALL.txt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/docs/LICENSE.GPL +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/docs/LICENSE.txt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/__init__.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/__init__.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/INTEGRATION.txt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/__init__.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/adapters/__init__.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/adapters/configure.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/adapters/reference_number.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/__init__.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/attachmentdownload.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/bulk_update.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/carryover.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/comments.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/configure.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/copyfiles.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/flatten_json.so +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/get_sample_xls.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/interfaces.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/macros.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/observation_import.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/reminder.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/statechange.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/statisticsview.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/tableau.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/assign_answerer_form.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/assign_conclusion_reviewer_form.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/assign_counterpart_form.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/bulk_update.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/carryover.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/finalisedfolderview.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/import_observation.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/inboxreviewfolderview.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/macros.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/multi_input.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/reminder.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/reminder_default_content.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/reviewfolder_get_table.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/reviewfolderview.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/statisticsview.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/tableau_connector.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/tableau_dashboard.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/xls_utils.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/comment.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/commentanswer.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/commentextender.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/configure.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/constants.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/converter.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/crons.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/forms/__init__.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/forms/configure.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/forms/redraft.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/inbox_sections.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/indexers.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/locales/README.txt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/necdfile.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/nfr_code_matching.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/__init__.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/answer_acknowledged.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/answer_acknowledged.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/answer_to_msexperts.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/answer_to_msexperts.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/comment_added.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/comment_added.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/comment_to_msa.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/comment_to_mse.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/conclusion_to_comment.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/conclusion_to_comment.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/configure.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/new_comment.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/observation_finalisation_denied.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/observation_finalisation_denied.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/observation_finalisation_request.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/observation_finalisation_request.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/observation_finalised.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/observation_finalised.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/observation_finalised_rev_msg.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/observation_recalled.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/observation_recalled.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/observation_recalled_closed_msa.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/observation_recalled_closed_se.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/observation_recalled_denied_se.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_answered.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_answered_lr_msg.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_answered_msexperts_msg.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_answered_rev_msg.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_ready_for_approval.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_ready_for_approval.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_redraft.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_redraft.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_redraft.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_to_counterpart.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_to_counterpart.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_to_ms.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_to_ms.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/question_to_ms_rev_msg.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/utils.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/observation.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/overrides.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/patches.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/patches.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/permissions.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/catalog.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/cssregistry.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/diff_tool.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/emrt.necd.content_various.txt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/jsregistry.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/ldap_plugin.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/necdvocabularies/conclusion_reasons.csv +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/necdvocabularies/eea_member_states.csv +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/necdvocabularies/fuel.csv +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/necdvocabularies/ghg_source_category.csv +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/necdvocabularies/ghg_source_sectors.csv +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/necdvocabularies/highlight.csv +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/necdvocabularies/highlight_2024_onwards.csv +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/necdvocabularies/highlight_projection.csv +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/necdvocabularies/parameter.csv +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/necdvocabularies/pollutants.csv +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/necdvocabularies/scenario_type.csv +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/registry.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/rolemap.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/sharing.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/tinymce.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/types/Comment.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/types/CommentAnswer.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/types/Conclusions.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/types/Folder.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/types/NECDFile.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/types/Observation.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/types/Question.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/types/ReviewFolder.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/types.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/workflows/esd-answer-workflow/definition.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/workflows/esd-comment-workflow/definition.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/workflows/esd-conclusion-workflow/definition.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/workflows/esd-file-workflow/definition.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/workflows/esd-question-review-workflow/definition.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/workflows/esd-review-workflow/definition.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/workflows/esd-reviewtool-folder-workflow/definition.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles/default/workflows.xml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/profiles.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/question.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/roles/__init__.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/roles/configure.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/roles/localroles.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/roles/localrolesubscriber.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/setuphandlers.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/chosen-sprite.png +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/chosen-sprite@2x.png +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/chosen.jquery.js +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/chosen.min.css +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/cookies.js +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/eea-tabs.css +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/eea-tabs.js +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/emrt.necd.content.css +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/flags.css +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/flags.png +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/inbox_view.css +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/inbox_view.js +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/moment.min.js +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/phase-1.png +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/phase-12.png +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/phase-2.png +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/tableauwdc-2.3.1.min.js +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/static/tableauwdc-2.3.latest.min.js +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/subscribers.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/subscriptionconfiguration.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/subscriptions/__init__.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/subscriptions/configure.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/subscriptions/dexterity.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/subscriptions/interfaces.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/templates/conclusion_layout.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/templates/diffedview.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/templates/macro_qa_chat.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/templates/observationview.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/templates/subscriptionconfiguration.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/templates/subscriptionconfigurationreview.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/templates/widget_activity.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/templates/widget_activity_type.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/templates/widget_highlight.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/templates/widget_pollutants.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/tests.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/timeit.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/transform_html_to_docx.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/__init__.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2010.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2015.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2016.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2022.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2024.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2025.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2029.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2032.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2037.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2038.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2042.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2044.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2045.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve205.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve206.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve207.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2201.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve230.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve235.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve236.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve237.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve240.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve243.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve252.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2524.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2537.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2538.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2540.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve2542.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/evolve258.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/portal_workflow.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/templates/portal_workflow_apply_and_reindex.pt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/utilities/__init__.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/utilities/configure.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/utilities/interfaces.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/utilities/ldap_utils.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/utilities/ldap_wrapper.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/utilities/ms_user.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/utilities/question.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/utilities/roles.py +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/views.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/vocabularies.zcml +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt.necd.content.egg-info/dependency_links.txt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt.necd.content.egg-info/entry_points.txt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt.necd.content.egg-info/namespace_packages.txt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt.necd.content.egg-info/not-zip-safe +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt.necd.content.egg-info/requires.txt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt.necd.content.egg-info/top_level.txt +0 -0
- {emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 1.1
|
|
2
2
|
Name: emrt.necd.content
|
|
3
|
-
Version: 2.5.
|
|
3
|
+
Version: 2.5.50
|
|
4
4
|
Summary: Content-types for EMRT-NECD Review Tool
|
|
5
5
|
Home-page: https://github.com/eea/emrt.necd.content/
|
|
6
6
|
Author: Mikel Larreategi
|
|
@@ -15,6 +15,12 @@ Description: Introduction
|
|
|
15
15
|
Changelog
|
|
16
16
|
=========
|
|
17
17
|
|
|
18
|
+
2.5.50 (2024-04-30)
|
|
19
|
+
|
|
20
|
+
- Task #260973 - Add formatting
|
|
21
|
+
- Task #260971 - Review if flags need updating/ all are still relevant
|
|
22
|
+
- Bug #269439 - Error when editing conclusion text
|
|
23
|
+
|
|
18
24
|
2.5.49 (2024-04-25)
|
|
19
25
|
|
|
20
26
|
- Task #260971 - Add "Description flags" to carryover
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
Changelog
|
|
2
2
|
=========
|
|
3
3
|
|
|
4
|
+
2.5.50 (2024-04-30)
|
|
5
|
+
|
|
6
|
+
- Task #260973 - Add formatting
|
|
7
|
+
- Task #260971 - Review if flags need updating/ all are still relevant
|
|
8
|
+
- Bug #269439 - Error when editing conclusion text
|
|
9
|
+
|
|
4
10
|
2.5.49 (2024-04-25)
|
|
5
11
|
|
|
6
12
|
- Task #260971 - Add "Description flags" to carryover
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import datetime
|
|
2
|
-
from copy import copy
|
|
3
1
|
from logging import getLogger
|
|
4
2
|
from AccessControl import getSecurityManager
|
|
5
3
|
from Acquisition import aq_base
|
|
@@ -12,9 +10,7 @@ from emrt.necd.content import MessageFactory as _
|
|
|
12
10
|
from emrt.necd.content.utils import hidden
|
|
13
11
|
from emrt.necd.content.utils import get_vocabulary_value
|
|
14
12
|
from plone import api
|
|
15
|
-
import plone.z3cform.templates
|
|
16
13
|
from plone.app.dexterity.behaviors.discussion import IAllowDiscussion
|
|
17
|
-
from plone.app.textfield import RichText
|
|
18
14
|
from plone.dexterity.browser import add
|
|
19
15
|
from plone.dexterity.browser import edit
|
|
20
16
|
from plone.dexterity.content import Container
|
|
@@ -70,7 +66,7 @@ class IConclusions(form.Schema, IImageScaleTraversable):
|
|
|
70
66
|
required=True,
|
|
71
67
|
)
|
|
72
68
|
|
|
73
|
-
text =
|
|
69
|
+
text = schema.Text(
|
|
74
70
|
title=_(u'Text'),
|
|
75
71
|
required=True,
|
|
76
72
|
default=u'',
|
|
@@ -244,6 +240,7 @@ class PseudoConclusion(object):
|
|
|
244
240
|
text = u''
|
|
245
241
|
closing_reason = ''
|
|
246
242
|
highlight = ''
|
|
243
|
+
highlight_vocabulary = ''
|
|
247
244
|
|
|
248
245
|
def __init__(self, context):
|
|
249
246
|
self.context = context
|
|
@@ -258,6 +255,7 @@ class PseudoConclusion(object):
|
|
|
258
255
|
|
|
259
256
|
def __call__(self, container):
|
|
260
257
|
self.highlight = container.highlight
|
|
258
|
+
self.highlight_vocabulary = container.highlight_vocabulary
|
|
261
259
|
# [refs #102793] needed by vocabularies
|
|
262
260
|
self.type = container.type # inventory/projection
|
|
263
261
|
return self
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
from collections import namedtuple
|
|
1
2
|
import itertools
|
|
2
3
|
import time
|
|
3
4
|
from StringIO import StringIO
|
|
@@ -133,14 +134,17 @@ def get_finalisation_reasons(reviewfolder):
|
|
|
133
134
|
return reasons
|
|
134
135
|
|
|
135
136
|
|
|
137
|
+
MissingHighlight = namedtuple("MissingHighlight", ["title"])
|
|
138
|
+
|
|
136
139
|
def translate_highlights(vocab, keys):
|
|
137
|
-
return tuple(
|
|
140
|
+
return tuple(
|
|
141
|
+
vocab.by_token.get(x, MissingHighlight(x)).title for x in keys)
|
|
138
142
|
|
|
139
143
|
|
|
140
|
-
def get_highlight_vocabs(context):
|
|
144
|
+
def get_highlight_vocabs(context, voc_name=None):
|
|
141
145
|
vocab_highlight = getUtility(
|
|
142
146
|
IVocabularyFactory,
|
|
143
|
-
name='emrt.necd.content.highlight')(context)
|
|
147
|
+
name='emrt.necd.content.highlight')(context, voc_name)
|
|
144
148
|
|
|
145
149
|
vocab_highlight_values = tuple([
|
|
146
150
|
term.value for term in vocab_highlight
|
|
@@ -159,6 +163,28 @@ def get_highlight_vocabs(context):
|
|
|
159
163
|
|
|
160
164
|
return vocab_description_flags, vocab_conclusion_flags, vocab_highlight
|
|
161
165
|
|
|
166
|
+
def classify_unknown_highlights(context, unknown_highlights):
|
|
167
|
+
result = {
|
|
168
|
+
"description_flags": set(),
|
|
169
|
+
"conclusion_flags": set()
|
|
170
|
+
}
|
|
171
|
+
if context.type == 'inventory':
|
|
172
|
+
other_highlight_vocabularies = [
|
|
173
|
+
x for x in HIGHLIGHT_VOCABULARY_TYPES.by_value
|
|
174
|
+
if x and x != context.highlight_vocabulary
|
|
175
|
+
and not x.endswith('projection')
|
|
176
|
+
]
|
|
177
|
+
for voc_name in other_highlight_vocabularies:
|
|
178
|
+
vocab_description_flags, vocab_conclusion_flags, vocab_highlight = (
|
|
179
|
+
get_highlight_vocabs(context, voc_name)
|
|
180
|
+
)
|
|
181
|
+
highlights = translate_highlights(vocab_highlight, unknown_highlights)
|
|
182
|
+
description_flags = get_common(highlights, vocab_description_flags)
|
|
183
|
+
conclusion_flags = get_common(highlights, vocab_conclusion_flags)
|
|
184
|
+
result["conclusion_flags"].update(conclusion_flags)
|
|
185
|
+
result["description_flags"].update(description_flags)
|
|
186
|
+
|
|
187
|
+
return result
|
|
162
188
|
|
|
163
189
|
def filter_for_ms(brains, context):
|
|
164
190
|
if api.user.is_anonymous():
|
|
@@ -654,6 +680,14 @@ class ExportReviewFolderForm(form.Form, ReviewFolderMixin):
|
|
|
654
680
|
row = [observation.getId]
|
|
655
681
|
highlights = translate_highlights(
|
|
656
682
|
vocab_highlight, observation['get_highlight'] or [])
|
|
683
|
+
description_flags = get_common(highlights, vocab_description_flags)
|
|
684
|
+
conclusion_flags = get_common(highlights, vocab_conclusion_flags)
|
|
685
|
+
unknown_flags = classify_unknown_highlights(
|
|
686
|
+
self.context,
|
|
687
|
+
set(highlights).difference(
|
|
688
|
+
itertools.chain(description_flags, conclusion_flags)
|
|
689
|
+
)
|
|
690
|
+
)
|
|
657
691
|
|
|
658
692
|
for key in fields_to_export:
|
|
659
693
|
if key == 'observation_is_potential_technical_correction':
|
|
@@ -664,11 +698,11 @@ class ExportReviewFolderForm(form.Form, ReviewFolderMixin):
|
|
|
664
698
|
row.append(yes_no_bool(IS_FIELD_MAP[key] in highlights))
|
|
665
699
|
elif key == 'get_description_flags':
|
|
666
700
|
row.append(', '.join(
|
|
667
|
-
|
|
701
|
+
list(itertools.chain(description_flags, unknown_flags["description_flags"]))
|
|
668
702
|
))
|
|
669
703
|
elif key == 'get_conclusion_flags':
|
|
670
704
|
row.append(', '.join(
|
|
671
|
-
|
|
705
|
+
list(itertools.chain(conclusion_flags, unknown_flags["conclusion_flags"]))
|
|
672
706
|
))
|
|
673
707
|
elif key == 'get_is_ms_key_category':
|
|
674
708
|
row.append(
|
|
@@ -784,7 +818,7 @@ class ExportReviewFolderForm(form.Form, ReviewFolderMixin):
|
|
|
784
818
|
|
|
785
819
|
try:
|
|
786
820
|
comment_html = comment.text.output_relative_to(context)
|
|
787
|
-
output_text = html2text.html2text(comment_html)
|
|
821
|
+
output_text = html2text.html2text(comment_html, bodywidth=0)
|
|
788
822
|
except AttributeError:
|
|
789
823
|
output_text = comment.text
|
|
790
824
|
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/upgrades/configure.zcml
RENAMED
|
@@ -810,5 +810,17 @@
|
|
|
810
810
|
|
|
811
811
|
</genericsetup:upgradeSteps>
|
|
812
812
|
|
|
813
|
+
<genericsetup:upgradeSteps
|
|
814
|
+
source="2.5.48"
|
|
815
|
+
destination="2.5.50"
|
|
816
|
+
profile="emrt.necd.content:default">
|
|
817
|
+
|
|
818
|
+
<genericsetup:upgradeStep
|
|
819
|
+
title="Roll-back formatting for conclusion text."
|
|
820
|
+
description="[refs #260973] Add formatting."
|
|
821
|
+
handler=".evolve2550.run"
|
|
822
|
+
/>
|
|
823
|
+
|
|
824
|
+
</genericsetup:upgradeSteps>
|
|
813
825
|
|
|
814
826
|
</configure>
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
from logging import getLogger
|
|
2
|
+
|
|
3
|
+
import transaction
|
|
4
|
+
from DateTime import DateTime
|
|
5
|
+
|
|
6
|
+
from zope.component import getMultiAdapter
|
|
7
|
+
from zope.globalrequest import getRequest
|
|
8
|
+
|
|
9
|
+
from plone.app.textfield.value import RichTextValue
|
|
10
|
+
|
|
11
|
+
import plone.api as api
|
|
12
|
+
|
|
13
|
+
import html2text
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
LOGGER = getLogger(__name__)
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
def filter_is_carried_over(obs):
|
|
20
|
+
return hasattr(obs, "carryover_from")
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
def filter_has_comments(obs):
|
|
24
|
+
return (
|
|
25
|
+
getattr(obs, "closing_comments", None)
|
|
26
|
+
or getattr(obs, "closing_deny_comments", None)
|
|
27
|
+
)
|
|
28
|
+
|
|
29
|
+
def run(_):
|
|
30
|
+
catalog = api.portal.get_tool("portal_catalog")
|
|
31
|
+
brains = catalog(portal_type="Conclusions", modified={"range": "min", "query": DateTime("2024/02/19")})
|
|
32
|
+
brains_len = len(brains)
|
|
33
|
+
a_tenth = brains_len / 10
|
|
34
|
+
conclusions = (brain.getObject() for brain in brains)
|
|
35
|
+
LOGGER.info("Found %s brains. Selecting some...", brains_len)
|
|
36
|
+
valid_conclusions = (
|
|
37
|
+
obj
|
|
38
|
+
for obj in conclusions
|
|
39
|
+
if isinstance(obj.text, RichTextValue)
|
|
40
|
+
)
|
|
41
|
+
for idx, conclusion in enumerate(valid_conclusions, start=1):
|
|
42
|
+
LOGGER.info(conclusion.absolute_url(1))
|
|
43
|
+
|
|
44
|
+
try:
|
|
45
|
+
conclusion_html = conclusion.text.output_relative_to(conclusion)
|
|
46
|
+
conclusion.text = html2text.html2text(conclusion_html, bodywidth=0)
|
|
47
|
+
except Exception:
|
|
48
|
+
LOGGER.exception("Could not update conclusion text!")
|
|
49
|
+
|
|
50
|
+
conclusion.aq_parent.reindexObject()
|
|
51
|
+
conclusion.reindexObject()
|
|
52
|
+
|
|
53
|
+
# log progress
|
|
54
|
+
if a_tenth and idx % a_tenth == 0:
|
|
55
|
+
transaction.savepoint(optimistic=True)
|
|
56
|
+
LOGGER.info("Done %s/ < %s.", idx, brains_len)
|
|
@@ -143,7 +143,7 @@ def render_rich_text_value(context, obj):
|
|
|
143
143
|
|
|
144
144
|
def richtext2text(value, context):
|
|
145
145
|
html_value = value.output_relative_to(context)
|
|
146
|
-
output_text = html2text.html2text(html_value)
|
|
146
|
+
output_text = html2text.html2text(html_value, bodywidth=0)
|
|
147
147
|
return safe_unicode(output_text)
|
|
148
148
|
|
|
149
149
|
|
|
@@ -199,16 +199,17 @@ class Fuel(object):
|
|
|
199
199
|
@implementer(IVocabularyFactory)
|
|
200
200
|
class Highlight(object):
|
|
201
201
|
|
|
202
|
-
def __call__(self, context):
|
|
202
|
+
def __call__(self, context, voc_name=None):
|
|
203
203
|
pvoc = api.portal.get_tool('portal_vocabularies')
|
|
204
204
|
|
|
205
|
-
if
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
205
|
+
if voc_name is None:
|
|
206
|
+
if context.highlight_vocabulary:
|
|
207
|
+
voc_name = context.highlight_vocabulary
|
|
208
|
+
else:
|
|
209
|
+
voc_name = (
|
|
210
|
+
'highlight' if context.type == 'inventory'
|
|
211
|
+
else 'highlight_projection'
|
|
212
|
+
)
|
|
212
213
|
|
|
213
214
|
voc = pvoc.getVocabularyByName(voc_name)
|
|
214
215
|
if voc is None:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 1.1
|
|
2
2
|
Name: emrt.necd.content
|
|
3
|
-
Version: 2.5.
|
|
3
|
+
Version: 2.5.50
|
|
4
4
|
Summary: Content-types for EMRT-NECD Review Tool
|
|
5
5
|
Home-page: https://github.com/eea/emrt.necd.content/
|
|
6
6
|
Author: Mikel Larreategi
|
|
@@ -15,6 +15,12 @@ Description: Introduction
|
|
|
15
15
|
Changelog
|
|
16
16
|
=========
|
|
17
17
|
|
|
18
|
+
2.5.50 (2024-04-30)
|
|
19
|
+
|
|
20
|
+
- Task #260973 - Add formatting
|
|
21
|
+
- Task #260971 - Review if flags need updating/ all are still relevant
|
|
22
|
+
- Bug #269439 - Error when editing conclusion text
|
|
23
|
+
|
|
18
24
|
2.5.49 (2024-04-25)
|
|
19
25
|
|
|
20
26
|
- Task #260971 - Add "Description flags" to carryover
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt.necd.content.egg-info/SOURCES.txt
RENAMED
|
@@ -241,6 +241,7 @@ emrt/necd/content/upgrades/evolve2537.py
|
|
|
241
241
|
emrt/necd/content/upgrades/evolve2538.py
|
|
242
242
|
emrt/necd/content/upgrades/evolve2540.py
|
|
243
243
|
emrt/necd/content/upgrades/evolve2542.py
|
|
244
|
+
emrt/necd/content/upgrades/evolve2550.py
|
|
244
245
|
emrt/necd/content/upgrades/evolve258.py
|
|
245
246
|
emrt/necd/content/upgrades/portal_workflow.py
|
|
246
247
|
emrt/necd/content/upgrades/templates/portal_workflow_apply_and_reindex.pt
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/adapters/__init__.py
RENAMED
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/adapters/configure.zcml
RENAMED
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/adapters/reference_number.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/bulk_update.py
RENAMED
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/carryover.py
RENAMED
|
File without changes
|
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/configure.zcml
RENAMED
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/copyfiles.py
RENAMED
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/flatten_json.so
RENAMED
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/get_sample_xls.py
RENAMED
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/interfaces.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/statechange.py
RENAMED
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/statisticsview.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/templates/macros.pt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/browser/xls_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/forms/configure.zcml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/nfr_code_matching.py
RENAMED
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/configure.zcml
RENAMED
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/new_comment.pt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{emrt.necd.content-2.5.49 → emrt.necd.content-2.5.50}/emrt/necd/content/notifications/utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|