... to return a FALSE if called with which arguments?
Could you please
declare it with more detail?
Yes. Add if ($ns == -1) return false; before the
return true.
Hmm now even the sysop has no chance to open a special page :-(
Whoops. Use instead.
if ($ns == -1) return $user->isAllowed("specialpages");
And grant the specialpages rights to the groups which should be able to
use the Special: pages