django-cms/djangocms-link

Under certain conditions edits made by superuser are not being published [BUG]

Opened this issue · 0 comments

I have a Django CMS page with a URL like this something.edu/dynamic/x/y/

We had a legacy static page at a URL like this something.edu/x/y/z.html

When we moved the sub-page into the CMS, the new subpage link needed to change to something.edu/dynamic/x/y/z/

For some reason our superuser account was also assigned various groups and granular permissions. I figured it didn't matter because superuser status should override all other permissions.

When this superuser made the edit to the djangocms-link on the parent page, the change appeared okay in edit mode. But when the superuser tried to "Publish" the change, the link still looked like this: <a href="./z.html"> In other words, trying to "Publish" the CMS page failed silently. The HTML on the CMS page didn't change, and the link was still broken. (I confirmed this in an incognito browser page and a second browser to make sure I wasn't viewing a cached version of the page.)

We removed the superuser from all groups and granular permissions. The superuser was then able to successfully edit the djangocms-link and publish the change.

By the way, the page we were trying to edit is a page that requires authentication via the page-specific "Login required" option. I have not been able to reproduce this bug when trying to edit other Django CMS pages. But removing the redundant permissions and groups from the superuser permissions did fix the problem. Yesterday I also encountered problems with making any edits to the text of the page with the superuser account. But today I was only able to reproduce this bug when trying to make edits to the djangocms-link plugin specifically. So I'm not 100% certain if it's a bug with CMS permissions more generally or with the djangocms-link plugin.

The bug was encountered on a site running django 3.2.6, django-cms 3.9.0, and djangocms-link 3.0.0.