From d8b35b5c8115763f696e4404137fa74c067687a7 Mon Sep 17 00:00:00 2001 From: Deepsingh Chhabda Date: Thu, 23 Feb 2023 15:12:14 -0500 Subject: [PATCH] disable edit submission on private --- pybossa/forms/forms.py | 4 +++- pybossa/themes/default | 2 +- pybossa/view/projects.py | 5 +++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/pybossa/forms/forms.py b/pybossa/forms/forms.py index 43a724ecc1..babc469449 100644 --- a/pybossa/forms/forms.py +++ b/pybossa/forms/forms.py @@ -136,7 +136,9 @@ class ProjectUpdateForm(ProjectForm): short_name = TextField(label=None, widget=HiddenInput()) long_description = TextAreaField(lazy_gettext('Long Description')) allow_anonymous_contributors = BooleanField(lazy_gettext('Allow Anonymous Contributors')) - allow_taskrun_edit = BooleanField(lazy_gettext('Allow Editing of Task Submissions')) + private_instance = data_access.data_access_levels.get("valid_access_levels", []) == ["L1", "L2", "L3", "L4"] + if not private_instance: + allow_taskrun_edit = BooleanField(lazy_gettext('Allow Editing of Task Submissions')) zip_download = BooleanField(lazy_gettext('Allow ZIP data download')) category_id = SelectField(lazy_gettext('Category'), coerce=int) hidden = BooleanField(lazy_gettext('Hide?')) diff --git a/pybossa/themes/default b/pybossa/themes/default index f7e9b09384..8b77ed2e6f 160000 --- a/pybossa/themes/default +++ b/pybossa/themes/default @@ -1 +1 @@ -Subproject commit f7e9b09384d9fc99dffd5ad678c83c04d71eb7bd +Subproject commit 8b77ed2e6f7eebad0e762d94e11273aedf782158 diff --git a/pybossa/view/projects.py b/pybossa/view/projects.py index 4f6dfc1bd6..c8e4f9827e 100644 --- a/pybossa/view/projects.py +++ b/pybossa/view/projects.py @@ -823,7 +823,8 @@ def handle_valid_form(form): 'input_data': form.input_data_class.data, 'output_data': form.output_data_class.data } - new_project.info["allow_taskrun_edit"] = form.allow_taskrun_edit.data + if "allow_taskrun_edit" in form: + new_project.info["allow_taskrun_edit"] = form.allow_taskrun_edit.data project_repo.update(new_project) auditlogger.add_log_entry(old_project, new_project, current_user) @@ -854,7 +855,7 @@ def handle_valid_form(form): project.kpi = project.info.get('kpi') project.input_data_class = project.info.get('data_classification', {}).get('input_data') project.output_data_class = project.info.get('data_classification', {}).get('output_data') - project.allow_taskrun_edit = project.info.get("allow_taskrun_edit") + project.allow_taskrun_edit = project.info.get("allow_taskrun_edit") or False ensure_amp_config_applied_to_project(project, project.info.get('annotation_config', {})) form = dynamic_project_form(ProjectUpdateForm, None, data_access_levels, obj=project, products=prodsubprods, data_classes=data_classes)