Page MenuHomePhabricator

Event registration should not be disabled when a translation page is deleted
Closed, ResolvedPublicBUG REPORT

Description

Steps to replicate the issue:

@Geertivp reported me:

What happens?:
The registration box, with registration button disappeared.

What should have happened instead?:
We should still be able to register at this event.

Event Timeline

According to the database, this event was deleted on 2024-04-10 at 20:02:02 UTC. Everything I see in the page history and logs is earlier than that. I also cannot reproduce the bug locally as it is described in the task description. @Geertivp did you by any chance clicked on "Delete event"?

(On a related note, allowing organizers to restore events is tracked in T318412, and logging deletions is tracked in T318160.)

Ah, I see what happened. This translation page was deleted, and due to a bug the event also got deleted. I'll fix this, and I'll see if we can restore the event.

Change #1019132 had a related patch set uploaded (by Daimona Eaytoy; author: Daimona Eaytoy):

[mediawiki/extensions/CampaignEvents@master] PageMoveAndDeleteHandler: skip canonicalization of event pages

https://gerrit.wikimedia.org/r/1019132

Change #1019132 merged by jenkins-bot:

[mediawiki/extensions/CampaignEvents@master] PageMoveAndDeleteHandler: skip canonicalization of event pages

https://gerrit.wikimedia.org/r/1019132

Daimona added subscribers: MHorsey-WMF, cmelo, Ladsgroup.

To restore the event, I can run the following query:

UPDATE campaign_events SET event_deleted_at = NULL where event_id = 480;

(via mwscript mysql.php --wiki metawiki --cluster extension1 --wikidb wikishared --write)

@cmelo @MHorsey-WMF can you please double-check that the query is correct?

Thanks, I'll do this on Monday at 17:00 CEST.

Pols12 renamed this task from Event registration should not be disabled after marking the event page for translation to Event registration should not be disabled when a translation page is deleted.Mon, Apr 15, 5:54 PM
Pols12 updated the task description. (Show Details)

Thank you for the quick and deep investigation and fix despite the poor reproduction steps.

I have edited the task to provide a better description for future reference and easier QA.

vaughnwalters subscribed.

Testing AC on betacluster:

  • Then, a translation admin marked the page for translation.

What should have happened instead?
✅ We should still be able to register at this event.

Can still register at
https://meta.wikimedia.beta.wmflabs.org/wiki/Event:TranslateTool

Still a problem with https://meta.wikimedia.org/wiki/Special:RegisterForEvent/480 -- see the following error message. It seems that the link between the Event and the Dashboard is broken/lost.

Edit registration
The course Amazone/International_girls_in_ICT_day_(2024-04-25) is not connected to this event, and therefore it cannot be synchronized.

Consequence:

  • Event can't be edited by the organiser
  • Users can't register

Indeed, DeleteEventCommand::deleteUnsafe() also performed TrackingToolEventWatcher::onEventDeleted() which triggered:

  • wikimedia_event_center_controller::unsync_event() through an HTTP POST request
  • TrackingToolUpdater::updateToolSyncStatus()

Both must be reversed. However, confirm_event_sync() states it only applies for “not-yet-in-use Dashboard Course”. I don’t know whether Dashboard provides a feature to re-link a Registration tool.

Indeed, you are correct. The application should ignore that error when removing a course, like we did T358732. I have filed T363187 about this and pushed a fix just now. Let's continue the conversation in T363187. Once the fix is merged, you should be able to remove the tool, and add it again if you wish.

I can indeed confirm; when I attempt to delete the event, I get the following error:

The course Amazone/International_girls_in_ICT_day_(2024-04-25) is not connected to this event, and therefore it cannot be synchronized.

Delete event registration -
Confirm that you want to delete this event registration by using the "Delete" button. This action cannot be reverted.
(Delete-button)

This is a catch 22 problem...

Could someone please remove the event manually from the database... this problem is extremely irritating to the participants...

Geertivp closed this task as Resolved.EditedMon, Apr 29, 8:49 AM

The event removal button problem is now solved due to the implementation of T363187 - thanks for that!
But the reactivation functionality is still pending in T318412.