Since there is no OOTB way to move an Event (and it isn't on the roadmap), we have endeavoured to code this up ourselves. It's pretty much working.. I can move an Event from one calendar to another...
The event is there in the Calendar I moved it to, and is available on the new URL.
There's one problem; if I go to the old URL it doesn't redirect to the new one as I'd expect. That's in spite of there being a row in the te_UrlRedirects table which looks correct to me...
I can actually go to the old URL & the event still displays (with no redirect).. making it look like it's in the old group/calendar, even when it isn't!
When I delete the redirect from te_UrlRedirects, it doesn't make any difference.
If I do this with another content type, like a Wiki doc then I can see the browser redirect from the old URL to the new one. I'd assumed that was to do with the entry in te_UrlRedirects, but interestingly, it continues to redirect even when I delete that row from the database (and restart the site). It therefore feels like I'm missing a piece of the puzzle, and that piece might help solve why Event moving isn't working 100% as expected.
Any help would be appreciated.
Thanks!