diff --git a/core/templates/core/fragment/user_visibility.jinja b/core/templates/core/fragments/user_visibility.jinja similarity index 100% rename from core/templates/core/fragment/user_visibility.jinja rename to core/templates/core/fragments/user_visibility.jinja diff --git a/core/views/user.py b/core/views/user.py index 00d5610a..96c95387 100644 --- a/core/views/user.py +++ b/core/views/user.py @@ -473,7 +473,7 @@ class UserClubView(UserTabsMixin, CanViewMixin, DetailView): class UserVisibilityFormFragment(FragmentMixin, SuccessMessageMixin, UpdateView): model = User form_class = UserVisibilityForm - template_name = "core/fragment/user_visibility.jinja" + template_name = "core/fragments/user_visibility.jinja" pk_url_kwarg = "user_id" def get_form_kwargs(self): diff --git a/pedagogy/models.py b/pedagogy/models.py index f9731d86..47fdebeb 100644 --- a/pedagogy/models.py +++ b/pedagogy/models.py @@ -126,7 +126,11 @@ class UE(models.Model): Returns: True if the user has already posted a comment on this UE, else False. """ - return self.comments.filter(author=user).exists() + self._has_user_commented = getattr(self, "_has_user_commented", {}) + self._has_user_commented[user] = self._has_user_commented.get( + user, self.comments.filter(author=user).exists() + ) + return self._has_user_commented[user] @cached_property def grade_global_average(self): diff --git a/pedagogy/static/pedagogy/css/pedagogy.scss b/pedagogy/static/pedagogy/css/pedagogy.scss index f0b9863d..d4661e1b 100644 --- a/pedagogy/static/pedagogy/css/pedagogy.scss +++ b/pedagogy/static/pedagogy/css/pedagogy.scss @@ -205,14 +205,14 @@ $pedagogy-white-text: #f0f0f0; grid-area: hours-the; } - #leave_comment_not_allowed { + .leave-comment-not-allowed { p { text-align: center; color: red; } } - #leave_comment { + .leave-comment { .leave-comment-grid-container { display: grid; grid-template-columns: 270px auto; @@ -246,9 +246,11 @@ $pedagogy-white-text: #f0f0f0; margin-top: 20px; } - input[type="submit"] { - float: right; + .right { + display: flex; + justify-content: flex-end; } + } .ue-details-container { @@ -410,8 +412,9 @@ $pedagogy-white-text: #f0f0f0; padding-left: 10px; } - .actions { + .action { float: right; + margin-top: 0; } } diff --git a/pedagogy/templates/pedagogy/fragments/ue_comment.jinja b/pedagogy/templates/pedagogy/fragments/ue_comment.jinja new file mode 100644 index 00000000..6361e8d9 --- /dev/null +++ b/pedagogy/templates/pedagogy/fragments/ue_comment.jinja @@ -0,0 +1,77 @@ +{% from "pedagogy/macros.jinja" import display_star %} +{% from "core/macros.jinja" import user_profile_link %} + +
{% trans %}Global grade{% endtrans %}
+{% trans %}Utility{% endtrans %}
+{% trans %}Interest{% endtrans %}
+{% trans %}Teaching{% endtrans %}
+{% trans %}Work load{% endtrans %}
+{{ display_star(object.grade_global_average) }}
+{{ display_star(object.grade_utility_average) }}
+{{ display_star(object.grade_interest_average) }}
+{{ display_star(object.grade_teaching_average) }}
+{{ display_star(object.grade_work_load_average) }}
+{% trans %}Objectives{% endtrans %}
+{{ object.objectives|markdown }}
+{% trans %}Program{% endtrans %}
+{{ object.program|markdown }}
+{% trans %}Earned skills{% endtrans %}
+{{ object.skills|markdown }}
+{% trans %}Key concepts{% endtrans %}
+{{ object.key_concepts|markdown }}
+{% trans %}UE manager: {% endtrans %}{{ object.manager }}
+{% trans %}You already posted a comment on this UE. If you want to comment again, please modify or delete your previous comment.{% endtrans %}
+{% trans %}Global grade{% endtrans %}
-{% trans %}Utility{% endtrans %}
-{% trans %}Interest{% endtrans %}
-{% trans %}Teaching{% endtrans %}
-{% trans %}Work load{% endtrans %}
-{{ display_star(object.grade_global_average) }}
-{{ display_star(object.grade_utility_average) }}
-{{ display_star(object.grade_interest_average) }}
-{{ display_star(object.grade_teaching_average) }}
-{{ display_star(object.grade_work_load_average) }}
-{% trans %}Objectives{% endtrans %}
-{{ object.objectives|markdown }}
-{% trans %}Program{% endtrans %}
-{{ object.program|markdown }}
-{% trans %}Earned skills{% endtrans %}
-{{ object.skills|markdown }}
-{% trans %}Key concepts{% endtrans %}
-{{ object.key_concepts|markdown }}
-{% trans %}UE manager: {% endtrans %}{{ object.manager }}
-{% trans %}You already posted a comment on this UE. If you want to comment again, please modify or delete your previous comment.{% endtrans %}
-{% trans %}Global grade{% endtrans %}
-{% trans %}Utility{% endtrans %}
-{% trans %}Interest{% endtrans %}
-{% trans %}Teaching{% endtrans %}
-{% trans %}Work load{% endtrans %}
-{{ display_star(comment.grade_global) }}
-{{ display_star(comment.grade_utility) }}
-{{ display_star(comment.grade_interest) }}
-{{ display_star(comment.grade_teaching) }}
-{{ display_star(comment.grade_work_load) }}
-- {% trans %}This comment has been reported{% endtrans %} -
- {% endif %} - - {% if comment.author_id == user.id or user.has_perm("pedagogy.change_comment") %} -- - {% trans %}Edit{% endtrans %} - - {% endif %} - {% if comment.author_id == user.id or user.has_perm("pedagogy.delete_comment") %} - - {% trans %}Delete{% endtrans %} - -
- {% endif %} -
{% trans %}Global grade{% endtrans %}
+{% trans %}Utility{% endtrans %}
+{% trans %}Interest{% endtrans %}
+{% trans %}Teaching{% endtrans %}
+{% trans %}Work load{% endtrans %}
+{{ display_star(comment.grade_global) }}
+{{ display_star(comment.grade_utility) }}
+{{ display_star(comment.grade_interest) }}
+{{ display_star(comment.grade_teaching) }}
+{{ display_star(comment.grade_work_load) }}
++ {% trans %}This comment has been reported{% endtrans %} +
+ {% endif %} + + {% if comment.author_id == user.id or user.has_perm("pedagogy.change_comment") %} + + {% endif %} + {% if comment.author_id == user.id or user.has_perm("pedagogy.delete_comment") %} + + {% endif %} ++ + {% trans %}Report this comment{% endtrans %} + +
+{{ comment.publish_date.strftime('%d/%m/%Y') }}
{{ user_profile_link(comment.author) }}