On Thu, May 22, 2008 at 9:11 PM, simetrical@svn.wikimedia.org wrote:
Log Message:
Re-commit cleaned-up version of r33565 (move subpages along with page).
- Move subpages checkbox is not shown unless the current page or its talk page actually has subpages.
- Move subpages checkbox is shown if subpages are disabled for the current namespace, provided that the talk page has subpages (but then it has no effect unless the "move talk" box is also checked).
- Unnecessary ampersands expunged, superfluous ternary operators excised.
- Crazy 1=0 query removed.
- Limit of maximum number of pages to move at once added (default 1000).
One niggling annoyance is that if the maximum number of pages is hit due to the base page having too many subpages, the talk page probably won't be moved due to the order that results are returned, which is kind of unexpected. Also, make sure the queries don't cause MySQL 4 to explode -- MySQL sometimes has problems with OR, especially older versions. Other than that, should be production-ready, I think.
Oh, and one more thing I forgot: moving a page with 1000 subpages might be kind of disruptive to RecentChanges and/or Contributions, since each one creates its own move log entry. :) Any ideas on that?
Also, it occurs to me that the interface for reverting such a move might be improved. You can revert it manually by just moving back the target page with subpages . . . at least, if the target namespace accepts subpages. Hmm. You shouldn't be able to move subpages to a target namespace that doesn't have subpages, I think. At any rate, the tempting "revert" links would be the wrong way to do it, since you'd have to click each one.
For the time being, the limit might be lowered drastically (to, say, 20), except for those projects that particularly want it -- Wikibooks (which I wrote the feature for) might be willing to tolerate some RC spam for the sake of being able to move books around easily.