Watchlist error after upgrade to 1.18.1
After upgrading from 1.10.1. to 1.18.1 the change of the watchlist using the link on the page does not work, instead the message MediaWiki:Watcherrortext turns up. Special:Watchlist works fine. I detected, that the target address generated by the link after action=watch&token= contains a different token as in Special:Preferences#mw-prefsection-watchlist, if that matters.
- MediaWiki 1.18.1
- PHP 5.2.14 (apache2handler)
- MySQL 5.0.26
Any piece of advice is welcome.
They're different tokens, with different purposes.
Thanks, I assumed so, but wasn't sure. Meanwhile I also checked the template "watch", which we copied from w:en:template:watch. The template generates &action=watch, i.e. without a token, and it works fine. So the token seems to be the reason of the watchlist error, but I don't know how to fix it yet.
After upgrading from 1.10.1. to 1.18.1 the change of the watchlist using the link on the page does not work
You mean the link that's part of the skin? If you're using a non-standard skin it could be a bug in that skin.
Wikipedia is using 1.19 which may account for the differences in behavior. (I'm not at my home computer so I can't easily check how/if the behavior changed between versions)
Meanwhile I found Bug 30372 - Users able to watch pages get a script error .... Setting $wgAjaxWatch = false seems to solve the problem, but Comment 8 makes me wonder, if this is really a good solution.
The same issue occurs on MW 1.19.2 (Vector, Mozilla + IE). Sure I could set $wgAjaxWatch to "false", but I need it to be set to "true" in order to run Extension:CategoryTree. There is a slim chance that in my case, this is related to a recent upgrade of SMW from 1.8.0.3 to SMW 1.8.0.4, but that doesn't seem very likely.
Check the JavaScript error console to be sure it has no JavaScript errors when loading the page. Maybe you have any conflicting script that breaks the load of other MediaWiki stuff, including the watch/unwatch tab.
Sure enough, though I haven't been to locate the issue yet. I'll let you know when I have.