Steps to reproduce:
- Add an account to a user group that contains importupload but not import rights
- Visit Special:SpecialPages
Expected result:
Since users with importupload but not import rights can use Special:Import, it is listed
Actual result:
Since SpecialImport::mRestriction is based solely on import rights, the special page isn't shown
Proposed solution:
Change SpecialPage::__construct and SpecialPage::mRestriction to accept either a string of a single right needed, or an array of possible rights needed
Backwards compatibility:
providing a string or no restriction continues to work as before
overriding userCanExecute continues to work as before
This would also be helpful for T226926 and T92795 by making it easier for a special page to require that the user have "one of" some rights