Page MenuHomePhabricator

allow stopping needless editing of categories
Closed, DeclinedPublic

Description

Gentlemen, nowhere in the myriad DefaultSettings can one find a way to
stop all users from accidentally creating categories pages (however
linking new [[Category:Whatever]] is encouraged.) I.e., don't have
action=edit stuck on the end of links to namespace=14 pages, or add
action=view as the default. My site has thousands of purposely "empty"
category pages. Please see
http://radioscanningtw.jidanni.org/index.php?title=Project:English#Empty_categories

[Perhaps merge with 7347, whose status I'm not sure of here offline
(costly infrequent mostly batched connection to the Internet)
with my LWP bug submitter script. "But a bug worthy of refreshing anyway".]


Version: 1.16.x
Severity: minor

Details

Reference
bz7897

Event Timeline

bzimport raised the priority of this task from to Lowest.Nov 21 2014, 9:28 PM
bzimport set Reference to bz7897.
bzimport added a subscriber: Unknown Object (MLST).

robchur wrote:

Hack implements request

Such a setting does not exist, however, a quick hack can be applied which
causes category links to become blue at all times. In fact, Tim Starling did
this once, although we ultimately reverted it owing to a flood of angry users.

The attached patch should sort you out.

Attached:

robchur wrote:

Re: Brion's WONTFIX...

...whoops, forgot to mark WORKSFORME (existence of a simple hack/workaround) :)

Yes, the patch (as of 11/12 GMT, the copy of this bug I am replying to)
indeed makes links blue, but not on e.g., Special:Categories.
Also I am hoping for a variable in LocalSettings.php, not a patch that
I will forget about tomorrow and which will get overwritten on the
next Debian package upgrade.

robchur wrote:

Don't use a Debian package to install and maintain MediaWiki, it only ends in tears.

For the record, here's my ultimate category clampdown, for wikis who want all
categories empty of text, but with members. See http://jidanni.org/comp/wiki/article-category.html

$wgNamespaceProtection[NS_CATEGORY]=$wgNamespaceProtection[NS_CATEGORY_TALK]=array('editinterface');
function JidanniBlueLinkCategoryPages($linker,$target,&$text,&$customAttribs,&$query,&$options){
switch($target->mNamespace){case NS_CATEGORY:case NS_CATEGORY_TALK:$options[0]='known';}return true;}
$wgHooks['LinkBegin'][]='JidanniBlueLinkCategoryPages';
function JidanniDontInviteEdit(&$article,&$outputDone){if($article->getID()===0){

		switch($article->mTitle->getNamespace()){case NS_CATEGORY:case NS_CATEGORY_TALK:$outputDone=true;}}return true;}

$wgHooks['ArticleViewHeader'][]='JidanniDontInviteEdit';# Bug 17630
function JidanniLessRedContentActions($sktemplate,$content_actions){
if('new'==$content_actions['talk']['class']&&!$sktemplate->mTitle->quickUserCan('createtalk')){

		unset($content_actions['talk']); unset($content_actions['watch']);}

if('selected new'==$content_actions['nstab-category']['class']){

		$content_actions['nstab-category']['class']='selected';}

return true;}
$wgHooks['SkinTemplateTabs'][]='JidanniLessRedContentActions';# Bug 17963