From 75e435154ef2d52189d287f5af85f0cf39adc453 Mon Sep 17 00:00:00 2001 From: Andrew Aikman Date: Fri, 8 Jul 2022 16:10:45 +0100 Subject: [PATCH 1/2] fix: Admin burger menu not keeping item id's --- djangocms_versioning/static/djangocms_versioning/js/actions.js | 1 + 1 file changed, 1 insertion(+) diff --git a/djangocms_versioning/static/djangocms_versioning/js/actions.js b/djangocms_versioning/static/djangocms_versioning/js/actions.js index a7ee38e5..179f7fda 100644 --- a/djangocms_versioning/static/djangocms_versioning/js/actions.js +++ b/djangocms_versioning/static/djangocms_versioning/js/actions.js @@ -118,6 +118,7 @@ let li_anchor = document.createElement('a'); li_anchor.setAttribute('class', 'cms-actions-dropdown-menu-item-anchor'); li_anchor.setAttribute('href', $(item).attr('href')); + li_anchor.setAttribute('id', $(item).attr('id')); if ($(item).hasClass('cms-form-get-method')) { li_anchor.classList.add('cms-form-get-method'); // Ensure the fake-form selector is propagated to the new anchor From 175abc6a4050ab4851e87bc1dd81beef82148420 Mon Sep 17 00:00:00 2001 From: Andrew Aikman Date: Fri, 8 Jul 2022 16:49:07 +0100 Subject: [PATCH 2/2] Cleaned up --- .../static/djangocms_versioning/js/actions.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/djangocms_versioning/static/djangocms_versioning/js/actions.js b/djangocms_versioning/static/djangocms_versioning/js/actions.js index 179f7fda..8e521794 100644 --- a/djangocms_versioning/static/djangocms_versioning/js/actions.js +++ b/djangocms_versioning/static/djangocms_versioning/js/actions.js @@ -118,7 +118,17 @@ let li_anchor = document.createElement('a'); li_anchor.setAttribute('class', 'cms-actions-dropdown-menu-item-anchor'); li_anchor.setAttribute('href', $(item).attr('href')); - li_anchor.setAttribute('id', $(item).attr('id')); + + // Copy the id attribute if it is set + const itemId = $(item).attr('id'); + if (itemId !== undefined) { + li_anchor.setAttribute('id', itemId); + } + // Copy the target attribute if it is set + const itemTarget = $(item).attr('target'); + if (itemTarget !== undefined) { + li_anchor.setAttribute('target', itemTarget); + } if ($(item).hasClass('cms-form-get-method')) { li_anchor.classList.add('cms-form-get-method'); // Ensure the fake-form selector is propagated to the new anchor