kopia lustrzana https://github.com/wagtail/wagtail
Use more personalised messages for the current user in the sessions list
rodzic
5de63bd1b3
commit
791defed46
|
@ -15,9 +15,15 @@
|
|||
</div>
|
||||
{% endfragment %}
|
||||
|
||||
{% blocktranslate trimmed with user_name=session.user|user_display_name|default:_("system") asvar saved_new_version_message %}
|
||||
{{ user_name }} saved a new version
|
||||
{% endblocktranslate %}
|
||||
{% if current_session.user == session.user %}
|
||||
{% blocktranslate trimmed asvar saved_new_version_message %}
|
||||
You saved a new version in another session
|
||||
{% endblocktranslate %}
|
||||
{% else %}
|
||||
{% blocktranslate trimmed with user_name=session.user|user_display_name|default:_("system") asvar saved_new_version_message %}
|
||||
{{ user_name }} saved a new version
|
||||
{% endblocktranslate %}
|
||||
{% endif %}
|
||||
|
||||
{% dropdown theme="popup" classname="w-editing-sessions__session w-editing-sessions__session--latest" toggle_label=avatar_decorated toggle_aria_label=saved_new_version_message|capfirst %}
|
||||
<div class="w-editing-sessions__popup">
|
||||
|
@ -34,9 +40,15 @@
|
|||
</div>
|
||||
{% enddropdown %}
|
||||
{% elif session.is_editing %}
|
||||
{% blocktranslate trimmed with user_name=session.user|user_display_name|default:_("system") asvar has_unsaved_changes_message %}
|
||||
{{ user_name }} has unsaved changes
|
||||
{% endblocktranslate %}
|
||||
{% if current_session.user == session.user %}
|
||||
{% blocktranslate trimmed asvar has_unsaved_changes_message %}
|
||||
You have unsaved changes in another session
|
||||
{% endblocktranslate %}
|
||||
{% else %}
|
||||
{% blocktranslate trimmed with user_name=session.user|user_display_name|default:_("system") asvar has_unsaved_changes_message %}
|
||||
{{ user_name }} has unsaved changes
|
||||
{% endblocktranslate %}
|
||||
{% endif %}
|
||||
|
||||
{% dropdown theme="popup" classname="w-editing-sessions__session w-editing-sessions__session--editing" toggle_label=avatar toggle_aria_label=has_unsaved_changes_message|capfirst %}
|
||||
<div class="w-editing-sessions__popup">
|
||||
|
@ -86,16 +98,28 @@
|
|||
|
||||
{% if sessions.0.revision_id %}
|
||||
<template data-controller="w-teleport" data-w-teleport-target-value="#title-text-w-overwrite-changes-dialog" data-w-teleport-reset-value="true">
|
||||
{% blocktranslate trimmed with user_name=sessions.0.user|user_display_name|default:_("system") model_name=_("page") asvar someone_has_saved_message %}
|
||||
{{ user_name }} has saved a newer version of this {{ model_name }}
|
||||
{% endblocktranslate %}
|
||||
{% if current_session.user == sessions.0.user %}
|
||||
{% blocktranslate trimmed with model_name=_("page") asvar someone_has_saved_message %}
|
||||
You have saved a newer version of this {{ model_name }} in another session
|
||||
{% endblocktranslate %}
|
||||
{% else %}
|
||||
{% blocktranslate trimmed with user_name=sessions.0.user|user_display_name|default:_("system") model_name=_("page") asvar someone_has_saved_message %}
|
||||
{{ user_name }} has saved a newer version of this {{ model_name }}
|
||||
{% endblocktranslate %}
|
||||
{% endif %}
|
||||
{{ someone_has_saved_message|capfirst }}
|
||||
</template>
|
||||
|
||||
<template data-controller="w-teleport" data-w-teleport-target-value="#subtitle-w-overwrite-changes-dialog" data-w-teleport-reset-value="true">
|
||||
{% blocktranslate trimmed with user_name=sessions.0.user|user_display_name|default:_("system") asvar overwrite_message %}
|
||||
Proceeding will overwrite the changes made by {{ user_name }}. Refreshing the page will lose any of your unsaved changes.
|
||||
{% endblocktranslate %}
|
||||
{% if current_session.user == sessions.0.user %}
|
||||
{% blocktranslate trimmed asvar overwrite_message %}
|
||||
Proceeding will overwrite the changes you made in that session. Refreshing the page will lose any of your unsaved changes in the current session.
|
||||
{% endblocktranslate %}
|
||||
{% else %}
|
||||
{% blocktranslate trimmed with user_name=sessions.0.user|user_display_name|default:_("system") asvar overwrite_message %}
|
||||
Proceeding will overwrite the changes made by {{ user_name }}. Refreshing the page will lose any of your unsaved changes.
|
||||
{% endblocktranslate %}
|
||||
{% endif %}
|
||||
{{ overwrite_message|capfirst }}
|
||||
</template>
|
||||
{% endif %}
|
||||
|
|
|
@ -4,14 +4,23 @@ from wagtail.admin.ui.components import Component
|
|||
class EditingSessionsModule(Component):
|
||||
template_name = "wagtailadmin/shared/editing_sessions/module.html"
|
||||
|
||||
def __init__(self, ping_url, release_url, sessions, revision_id=None):
|
||||
def __init__(
|
||||
self,
|
||||
current_session,
|
||||
ping_url,
|
||||
release_url,
|
||||
other_sessions,
|
||||
revision_id=None,
|
||||
):
|
||||
self.current_session = current_session
|
||||
self.ping_url = ping_url
|
||||
self.release_url = release_url
|
||||
self.sessions_list = EditingSessionsList(sessions)
|
||||
self.sessions_list = EditingSessionsList(current_session, other_sessions)
|
||||
self.revision_id = revision_id
|
||||
|
||||
def get_context_data(self, parent_context):
|
||||
return {
|
||||
"current_session": self.current_session,
|
||||
"ping_url": self.ping_url,
|
||||
"release_url": self.release_url,
|
||||
"sessions_list": self.sessions_list,
|
||||
|
@ -22,8 +31,9 @@ class EditingSessionsModule(Component):
|
|||
class EditingSessionsList(Component):
|
||||
template_name = "wagtailadmin/shared/editing_sessions/list.html"
|
||||
|
||||
def __init__(self, sessions):
|
||||
self.sessions = sessions
|
||||
def __init__(self, current_session, other_sessions):
|
||||
self.current_session = current_session
|
||||
self.sessions = other_sessions
|
||||
|
||||
def get_context_data(self, parent_context):
|
||||
return {"sessions": self.sessions}
|
||||
return {"current_session": self.current_session, "sessions": self.sessions}
|
||||
|
|
|
@ -180,7 +180,7 @@ def ping(request, app_label, model_name, object_id, session_id):
|
|||
}
|
||||
for other_session in other_sessions
|
||||
],
|
||||
"html": EditingSessionsList(other_sessions).render_html(),
|
||||
"html": EditingSessionsList(session, other_sessions).render_html(),
|
||||
}
|
||||
)
|
||||
|
||||
|
|
|
@ -698,6 +698,7 @@ class CreateEditViewOptionalFeaturesMixin:
|
|||
)
|
||||
revision_id = self.object.latest_revision_id if self.revision_enabled else None
|
||||
return EditingSessionsModule(
|
||||
session,
|
||||
reverse(
|
||||
"wagtailadmin_editing_sessions:ping",
|
||||
args=(
|
||||
|
|
|
@ -891,6 +891,7 @@ class EditView(WagtailAdminTemplateMixin, HookResponseMixin, View):
|
|||
last_seen_at=timezone.now(),
|
||||
)
|
||||
return EditingSessionsModule(
|
||||
session,
|
||||
reverse(
|
||||
"wagtailadmin_editing_sessions:ping",
|
||||
args=("wagtailcore", "page", self.page.pk, session.id),
|
||||
|
|
Ładowanie…
Reference in New Issue