diff --git a/rdmo/projects/assets/js/projects/components/main/Projects.js b/rdmo/projects/assets/js/projects/components/main/Projects.js index 6f15f8e7b..fb9b672e5 100644 --- a/rdmo/projects/assets/js/projects/components/main/Projects.js +++ b/rdmo/projects/assets/js/projects/components/main/Projects.js @@ -116,20 +116,36 @@ const Projects = ({ config, configActions, currentUserObject, projectsActions, p if (myProjects) { visibleColumns.splice(2, 0, 'role') - columnWidths = ['35%', '20%', '20%', '20%', '5%'] + columnWidths = ['40%', '18%', '18%', '18%', '6%'] } else { visibleColumns.splice(2, 0, 'created') visibleColumns.splice(2, 0, 'owner') - columnWidths = ['35%', '10%', '20%', '20%', '20%', '5%'] + columnWidths = ['30%', '10%', '18%', '18%', '18%', '6%'] } const cellFormatters = { title: (content, row) => renderTitle(content, row), role: (_content, row) => { const { rolesString } = getUserRoles(row, currentUserId) - return rolesString + return <> + { + rolesString &&

{rolesString}

+ } + { + row.visibility &&

{row.visibility}

+ } + }, - owner: (_content, row) => row.owners.map(owner => `${owner.first_name} ${owner.last_name}`).join('; '), + owner: (_content, row) => ( + <> +

+ {row.owners.map(owner => `${owner.first_name} ${owner.last_name}`).join('; ')} +

+ { + row.visibility &&

{row.visibility}

+ } + + ), progress: (_content, row) => getProgressString(row), created: content => useFormattedDateTime(content, language), last_changed: content => useFormattedDateTime(content, language), diff --git a/rdmo/projects/serializers/v1/__init__.py b/rdmo/projects/serializers/v1/__init__.py index 1ea857fd9..192f20aed 100644 --- a/rdmo/projects/serializers/v1/__init__.py +++ b/rdmo/projects/serializers/v1/__init__.py @@ -65,6 +65,8 @@ def get_queryset(self): last_changed = serializers.DateTimeField(read_only=True) + visibility = serializers.CharField(source='visibility.get_help_display') + class Meta: model = Project fields = ( @@ -85,7 +87,8 @@ class Meta: 'site', 'views', 'progress_total', - 'progress_count' + 'progress_count', + 'visibility' ) read_only_fields = ( 'snapshots', diff --git a/rdmo/projects/templates/projects/project_form_visibility.html b/rdmo/projects/templates/projects/project_form_visibility.html index 2356b821e..4c5a736c5 100644 --- a/rdmo/projects/templates/projects/project_form_visibility.html +++ b/rdmo/projects/templates/projects/project_form_visibility.html @@ -19,12 +19,12 @@

{% endblocktrans %}

- {% if object.visibility and 'sites' in form.fields or 'groups' in form.fields %} + {% if not object.visibility %} + {% bootstrap_form submit=_('Make visible') %} + {% elif object.visibility and 'sites' in form.fields or 'groups' in form.fields %} {% bootstrap_form submit=_('Update visibility') delete=_('Remove visibility') %} - {% elif object.visibility %} - {% bootstrap_form delete=_('Remove visibility') %} {% else %} - {% bootstrap_form submit=_('Make visible') %} + {% bootstrap_form delete=_('Remove visibility') %} {% endif %} {% endblock %}