Extension talk:Admin Links

From mediawiki.org

Version number discrepancy[edit]

Just a small thing: The fact box on the extension's MediaWiki page lists the version number as "0.2.2", but the version number listed in the extension's code is "0.2.1" (as of July 7, 2015). Henryhood (talk) 21:52, 14 July 2015 (UTC)Reply

Where are you seeing "0.2.1"? Yaron Koren (talk) 15:19, 15 July 2015 (UTC)Reply

Feature Request[edit]

Hi, wouldn't it be nice to have a link to 'Special:Statistics' 'and Special:Version' in section „general“ of this extension. Cheers --kgh 19:14, 16 October 2009 (UTC)Reply

Good idea; this was finally done, in version 0.1.3. :) Yaron Koren 21:37, 12 July 2010 (UTC)Reply
Cool, thank you Yaron! I will give it a try soon. --kgh 16:48, 13 July 2010 (UTC)Reply

I see requests for the addition of links. I think it would be nice to have a custom section at the end so we have a quick access to other more project-specific pages. This could be edited in the form of a system message. So all we need is two system messages. The first one would be the section title, the second one the section contents (allowing for more sections/subsections inside it). Just an idea. --Ioannis Protonotarios 12:00, 2 February 2013 (UTC)Reply

That's an interesting idea. I should note that you can already add to the Admin Links page specifically for one wiki by adding the relevant code to LocalSettings.php. Not quite as convenient, though. Yaron Koren (talk) 02:47, 4 February 2013 (UTC)Reply

Hide from normal users?[edit]

Not at the moment; why would you want to? Yaron Koren 18:36, 10 January 2010 (UTC)Reply
Do you mean, not have the link displayed at the top, or have it not viewable once users get to that page? Because normal users should never see the top link. Yaron Koren 19:51, 10 January 2010 (UTC)Reply
Okay. No, there's no way to hide it, and I haven't yet seen a good reason to do that. I'm going by the basic "wiki philosophy", which is to leave everything out in the open unless there's a good reason not to. Yaron Koren 19:10, 11 January 2010 (UTC)Reply
  • Times have changed. Wikis have moved beyond Wikipedia and open information. Wikis are being used in ways far beyond the original wiki philosophy. Wiki devs need to accept this evolution and allow for controls to implement secure wiki environments. When placed in sensitive environments for collaboration we as admins should be able to lock them down as we see fit to protect our data integrity and to prevent unintentional damage by curious users. 17:25, 9 March 2011 (UTC)
  • You can hide the Special: pages. I posted my working method here:
    Manual_talk:Special_pages#My_WORKING_solution_to_controlling_Special_Pages_access.
    Maybe it will be useful. You can pare it down to control one or two pages as needed. I use it for maximum control of every special page I can in certain installations. It's not perfect and may still have a few issues to iron out but it's the best solution I know of so far. Someone much smarter than me needs to write an extension for securing special pages. Oh and this method prevents direct URL access from the browser address bar. If a user tries to surf directly to a special page you have 'unset' their right to they will get your sites standard error page. Good luck. 17:25, 9 March 2011 (UTC)

Well, as I said, my view of the wiki philosophy is "to leave everything out in the open unless there's a good reason not to". If there were a threat to security or data integrity, that would be a good reason not to - but in this case, Special:AdminLinks is just a page of links, so it doesn't pose any danger. Yaron Koren 18:29, 9 March 2011 (UTC)Reply

SQL[edit]

Uhm Yaron... Getting an error about the SQL table doesn't exist, but I can't find anywhere the required fields for the SQL. Are there anywhere I can get this SQL structure? - In that case, please provide link, and in future, maybe include it in Your install instructions ;) Mikkel Trebbien, Denmark 13:47, 18 August 2010 (UTC)Reply

Hi - that's definitely not coming from Admin Links, which doesn't use SQL. Out of curiosity, what's the name of the table? Yaron Koren 15:34, 18 August 2010 (UTC)Reply

Add Items to Admin List[edit]

How do we add items to the Admin List? This is a great idea but is not near enough complete.

I have successfully added a regular page such as:

$main_row->addItem( ALItem::newFromEditLink( 'Copyright', wfMsg( 'adminlinks_editcopyright' ) ) );

But, when I try to add a special page, using the exact same syntax as other special pages already included, such as:

$main_row->addItem( ALItem::newFromSpecialPage( 'ListGroupRights' ) );

I get this error message:

Fatal error: Call to a member function getTitle() on a non-object in /wiki/extensions/AdminLinks/AdminLinks_body.php on line 268

--Bro. Ignatius Mary 12:22, 17 September 2010 (UTC)Reply

Hi, the documentation should be clearer on that - the actual name of most special pages, for some reason, is all lowercase except for the first letter. So "Listgrouprights" instead should work. Yaron Koren 15:06, 17 September 2010 (UTC)Reply

Thank worked. Thanks.

--Bro. Ignatius Mary 19:52, 27 September 2010 (UTC)Reply

Adding Pages not in Edit Mode[edit]

I would like to add links on the AdminLinks that are not Special and not regular links that open in edit mode.

How can this be done?

Thanks

--Bro. Ignatius Mary 23:29, 29 September 2010 (UTC)Reply

Wow, I guess I missed this question completely. On the off chance that you still want to know the answer, it looks like you can do it using AlItem::newFromPage(). Yaron Koren 20:50, 9 March 2011 (UTC)Reply

Link to Job Queue[edit]

Hi Yaron, since the number of jobs is not displayed on Special:Statistics it might be useful to introduce a nicely formatted link to this information into this extension


Perhaps it is possible just to query for the number of jobs and not for the whole lot. Cheers --[[kgh]] 21:42, 27 June 2011 (UTC)Reply

As an aside there was a reason that count was removed from special:statistics, it was to hide it from admins who misinterpreted it on a regular basis. Just saying ;) Bawolff 04:52, 28 June 2011 (UTC)Reply
Yeah, I know. However it was the only chance for me to determine if I should do a runJobs manually to speed up things or just let the users do the job for me. Still I have come to believe that this might not be the best idea. Since I know the trick ... :) Thanks for ruining my dream :P Cheers --[[kgh]] 07:45, 28 June 2011 (UTC)Reply
It's true that the job number in Special:Statistics, as well as the one provided by the API, are sometimes way off - that's what Bawolff meant by "misinterpreted". I'll think about some alternate way to get at this number, because I think it can be important for admins to see. Yaron Koren 23:41, 28 June 2011 (UTC)Reply
Only do it, if you really think that it is a good idea. Not showing this to the general public which is definitely not able to interpret it correctly is ok. On the other hand I think an (sys)admin should be able to interpret it after gaining some experience. At that stage it is quite a useful indicator, at least to me. Cheers --[[kgh]] 11:39, 29 June 2011 (UTC)Reply

Link to Special:WantedProperties[edit]

Hi Yaron, what about inserting a link to this special page, too? Cheers --[[kgh]] 12:59, 6 July 2011 (UTC)Reply

Link to Special:Log[edit]

Hi, I think that a link to Special:Log would be useful too. Cheers --[[kgh]] 23:23, 11 September 2011 (UTC) PS Hmm, I am wondering why I seem to be one of the few with enhancement requests to this extensions. Either I am one of the few who is using this extension or I have very special needs diverging from the general usage of wikis. I do not suppose that both this is true. :)Reply

Good idea! I finally added this in to SVN now. And I'm not going to speculate on that one. :) Yaron Koren 21:24, 7 October 2011 (UTC)Reply
Cool. Thank you for doing this. Coders do not seem to like speculating a lot, do they? :) Cheers --[[kgh]] 14:40, 8 October 2011 (UTC)Reply

Crash[edit]

MediaWiki crashes after checking checkbox 'createaccount' for general group. Please help!

I believe that's not related to Admin Links. Yaron Koren (talk) 04:44, 20 April 2012 (UTC)Reply

Fatal error: Call to a member function getTitle() on a non-object...xtensions/AdminLinks/AdminLinks_body.php on line 271[edit]

Hi, I have an error when I try to go to AdminLinks http://domotiki.eu/index.php/Sp%C3%A9cial:AdminLinks

The sentence is : "Fatal error: Call to a member function getTitle() on a non-object in /homez.149/comparatxu/www/domotiki/extensions/AdminLinks/AdminLinks_body.php on line 271"

Any Idea ? Thanx

Nicolas

The issue is apparently that the code doesn't know about the $wgUser global variable, which is strange - that variable has been deprecated, but it hasn't been removed. In any case, this is a good reminder that Admin Links should be updated to no longer use it; I'll try to do that soon. Yaron Koren (talk) 12:54, 25 September 2012 (UTC)Reply
Actually, I just remembered that there's already a patch waiting, that would get rid of $wgUser, among a lot of other stuff, here. However, it would remove backward-compatibility, which is why I haven't merged it yet. However, if you have Git, you could get that patch's code; otherwise, you could just try replacing that instance of "$wgUser->getSkin()->linkKnown" in the code with "Linker::linkKnown". Yaron Koren (talk) 13:17, 25 September 2012 (UTC)Reply

Thanx for your answer, I ha ve replaced $wgUser->getSkin()->linkKnown by Linker::linkKnown at two places in AdminLinks_body.php but it still doesnt work... Nicolas NALLET (talk) 17:14, 26 September 2012 (UTC)Reply

What's the error message it gives? Yaron Koren (talk) 03:12, 27 September 2012 (UTC)Reply

Fatal error: Call to a member function getTitle() on a non-object in /homez.149/comparatxu/www/domotiki/extensions/AdminLinks/AdminLinks_body.php on line 271

Regards Nicolas NALLET (talk) 09:21, 27 September 2012 (UTC)Reply

Oh, oops! I should have looked more closely at the original error message. My original diagnosis was wrong - $wgUser isn't the issue. Instead, one of the links that Admin Links is trying to create is for a page that doesn't exist on your wiki. If possible, could you place the following line of code right above line 271:
print "$page_name. ";

...and let me know what the last name it prints is? Yaron Koren (talk) 13:28, 27 September 2012 (UTC)Reply

Ok so I have remplaced Linker::linkKnown by $wgUser->getSkin()->linkKnown to get the orinigal page and put print "$page_name. "; here (I have paste a little bit of code) :

global $wgUser;
			$item->text = $wgUser->getSkin()->linkKnown( $page_name, $desc, array(), $params );
print "$page_name. ";
		} else

And when I try to go to admin link it shows :

Spécial:Connexion. Fatal error: Call to a member function getTitle() on a non-object in /homez.149/comparatxu/www/domotiki/extensions/AdminLinks/AdminLinks_body.php on line 272

Ah - so the issue is the page "Spécial:Connexion", i.e. Special:UserLogin. But that string is not being called from anywhere in the Admin Links code, I don't think... by any chance, do you have any custom code, or custom extension, adding anything to the Admin Links page? Yaron Koren (talk) 19:01, 27 September 2012 (UTC)Reply

No I didnt have any custom code or extension, so I will try to installe new version of MW and see.

Anyway Thank you for your support !

Nicolas NALLET (talk) 21:02, 27 September 2012 (UTC)Reply

Fatal error: Call to a member function getTitle() on a non-object in /wiki/extensions/AdminLinks/AdminLinks_body.php on line 273

Same thing happened. --Zoglun (talk) 23:16, 23 November 2013 (UTC)Reply

What versions of MediaWiki and Admin Links are you using? Yaron Koren (talk) 13:52, 24 November 2013 (UTC)Reply

I write here because the topic is similar. PHP Fatal error: Call to a member function getTitle() on a non-object in /home/wiki/html/extensions/AdminLinks/AdminLinks_body.php on line 281, referer: http://wiki.host.lcl/index.php/.... MW 1.25.1. The problem disappears if I disable Extension:ShortUrl. --StasR (talk) 16:51, 2 June 2015 (UTC)Reply

Solved. The problem is in ShortUrl. --StasR (talk) 17:11, 2 June 2015 (UTC)Reply

I got the same issue, but there is no module ShortUrl. (Admink Links: 0.1.8)

PHP Fatal error:  Call to a member function getTitle() on a non-object in /var/www/mediawiki/extensions/AdminLinks/AdminLinks_body.php on line 273,
I assume the issue is caused by one or more extensions you have installed. If possible, could you try briefly disabling different subsets of the extensions to try to narrow it down...? Yaron Koren (talk) 01:58, 4 July 2015 (UTC)Reply

Thanks. commented out this package: #require_once "$IP/extensions/ConfirmEdit/ConfirmEdit.php"; then admin links works properly.

Same here, but is there any real solution to use both extensions AdminLinks and ConfirmEdit? --Escalator~enwikibooks (talk) 06:31, 2 June 2016 (UTC)Reply
What version of Admin Links are you using? This is reminding me that I should release a new version. Yaron Koren (talk) 15:23, 2 June 2016 (UTC)Reply
AdminLinks 0.2.1, ConfrimEdit 1.2 --Escalator~enwikibooks (talk) 13:44, 27 June 2016 (UTC)Reply
Try upgrading to the latest AL version, 0.2.3. Yaron Koren (talk) 16:41, 27 June 2016 (UTC)Reply

How to add an Link?[edit]

I want to add an Link to an external Site were the Admins can meet and diskuss... is this possible? And if, how? THX

Yes, you can add additional links to that page - you can do that in either a custom extension, or directly in LocalSettings.php. See here for more information. Yaron Koren (talk) 16:01, 2 April 2013 (UTC)Reply
Well, I had seen this bevore, but unfortunately I had no idea how to do this...
Hi again, now i think I undertand how to add an internal link via
newFromEditLink so i added $main_row->addItem( ALItem::newFromEditLink( 'Deletereason-dropdown', $this->msg( 'adminlinks_Löschgründe' ) ) );

to AdminLinks_body.php and the message to AdminLinks.i18n.php but my try to add

 $main_row->addItem( ALItem::newFromExternalLink( 'https:/myurl.com, 'MyLinkName') ) );

kills the Extension. What do I wrong? --Dave

What's the error message? Yaron Koren (talk) 15:13, 4 April 2013 (UTC)Reply
The Side Spezial:Admin-Links is blank

Okay - please see here for how to get error messages to display on the screen. Yaron Koren (talk) 15:59, 4 April 2013 (UTC)Reply

Then I see this: Parse error: syntax error, unexpected ')' in /var/www/www.pflegewiki.de/extensions/AdminLinks/AdminLinks_body.php on line 61
Ah, yes - it looks like your 2nd line has one too many ')'. Yaron Koren (talk) 16:45, 4 April 2013 (UTC)Reply

And what do I have to do to Link to a non MediaWiki Site? My Idea was to link to a other Namspace, for example this: PflegeWiki:Entsperrwünsche so I wrote

$main_row->addItem( ALItem::newFromEditLink( 'PflegeWiki:Entsperrwünsche', $this->msg( 'adminlinks_Endsperr' ) ) );

. But this opens an Site Called MediaWiki:PflegeWiki:Entsperrwünsche which doesen't exists. What can I do ? And is it possible to open a sight in readmode?

Yes - call ALItem::newFromPage() instead. Yaron Koren (talk) 21:02, 8 April 2013 (UTC)Reply
OK now I got an Link which doesen't work, it looks like [[Link|Linktext]] I think I need an $params, but which?--82.113.99.194 21:55, 8 April 2013 (UTC)Reply
I don't know - you should look in the Admin Links code to see all the ways in which the ALItem functions are called. Yaron Koren (talk) 22:56, 8 April 2013 (UTC)Reply


I'm so sorry but its me again...
$ul = SpecialPage::getTitleFor( 'PflegeWiki:Endsperrwünsche' );
$main_row->addItem( AlItem::newFromPage( $ul, $this->msg( adminlinks_Endsperr' )->text(), array( 'type' => 'PflegeWiki:Endsperrwünsche', ) ) );
seems to work well but now it still links to Special:MyNameSpace:MySite... My idea is that the part after $ul is the problem.... any idea?
You shouldn't use SpecialPage::getTitleFor(), you should use Title::newFromText(). Yaron Koren (talk) 17:00, 9 April 2013 (UTC)Reply

Add Categories to Admin Links[edit]

I would like to add several categories to my Admin Links page. I have tried:

  • ALItem::newFromEditLink( 'Category:cat name', ......Links to MediaWiki:Category:cat_name
  • ALItem::newFromEditLink( ':Category:cat name', .....errors out with "getFullURL() on a non-object"

Is this possible with Admin Links?

Assuming you want to just link to the categories, and not to the categories' edit pages, try ALItem::newFromPage() instead. Yaron Koren (talk) 17:01, 30 April 2013 (UTC)Reply
Using ALItem::newFromPage( ':Category:cat name' ).... results in the correct link structure, but it is placed on the page as text versus an active link. Is there a special parameter, I need to use to make the result an active link?
Oops! It looks like newFromPage() was only partly working, for recent versions of MediaWiki. I just checked in a fix - if you're getting the code from Git, please get the latest, and if you can, let me know if it worked. Yaron Koren (talk) 13:45, 1 May 2013 (UTC)Reply

Solved the problem. Categories are showing up as expected. All other links are working correctly. Thank you for your fast response and fix. p.s. Thank you for writing a book about wikis.

Great! Thanks for letting me know about the problem. And you're welcome! Yaron Koren (talk) 20:08, 1 May 2013 (UTC)Reply

Extension:Data Transfer[edit]

I just realised that the Data Transfer extension allows for spreadsheet import since version 0.6. I think it will be cool if the link to "Special:ImportSpreadsheet" shows up in the import-export section of this extension. Cheers --[[kgh]] (talk) 16:16, 11 June 2015 (UTC)Reply

Ah, good point! I just checked in this change - although the change was to Data Transfer, not Admin Links (each extension is responsible for adding its own links to the page). Yaron Koren (talk) 23:31, 11 June 2015 (UTC)Reply
Great, thanks a lot! Indeed, it does make sense to do this at Data Transfer. --[[kgh]] (talk) 07:01, 12 June 2015 (UTC)Reply

JS Addition[edit]

Hello. I think it would be great if you added an 'Edit JS file' just like you did with 'Edit CSS file'. It would be extremely helpful! 188.24.79.123 18:37, 4 October 2015 (UTC)Reply

Example code[edit]

Manual:Hooks/AdminLinks is kind of complicated for users who don't know php. Yaron Koren, wouldn't it be better if an example code is provided for beginners. The following is my code, if you agree it could be added to the Manual:Hooks/AdminLinks page or maybe you can provide a better example code.

function AdditionalAdminLinks( &$admin_links_tree )
{
   $general_section = $admin_links_tree->getSection( wfMessage( 'adminlinks_users' )->text() );  // Retrieve section name    
   $main_row = $general_section->getRow( 'main' );                                      // Retrieve section's row name            
   $main_row->addItem( ALItem::newFromSpecialPage( 'Contributions' ) );                 // Add special page Special:Contributions
   $main_row->addItem( ALItem::newFromSpecialPage( 'PasswordReset' ), 'Userrights' );   // Add special page Special:PasswordReset before 
                                                                                        // Special:Userrights
   $description = 'chapter';                                                            // Define text to be shown on "Admin links" page
   $main_row->addItem( ALItem::newFromPage( "Custom page", $description ) );            // Add page whose name is "Custom page" with the text
                                                                                        // being shown "chapter" on the "Admin links" page
   $description = 'chapter new name';                                                   // Define text to be shown on "Admin links" page
   $main_row->addItem( ALItem::newFromEditLink( "Custom page", $description ) );        // Add edit link for page whose name is
                                                                                        // "MediaWiki:Custom page" with the text being shown
                                                                                        // as "chapter new name" on the "Admin links" page
   $SecondRow = new ALRow( 'SecondRow' );                                               // Create new row
   $general_section->addRow( $SecondRow );                                              // Add new row
   $SecondRow->addItem( ALItem::newFromSpecialPage( 'Block' ) );                        // Add special page Special:Block in new row

   $spam_vandalism_section = new ALSection( 'Spam and vandalism' );                     //Create new section titled "Spam and vandalism"
   $sv_row = new ALRow( 'sv' );                                                         //Create new row
   $spam_vandalism_section->addRow( $sv_row );                                          //Add new row
   $admin_links_tree->addSection( $spam_vandalism_section, wfMessage( 'adminlinks_browsesearch' )->text() ); //Place this section before
                                                                                                       // section titled "Browse and search"
   $sv_row->addItem( ALItem::newFromSpecialPage( 'BlockList' ) );                       //Add special page Special:BlockList
   
   return true;
}
  • Userrights in above code, is case-sensitive, it wouldn't work for UserRights. This is because some page titles are non-capitalized even though they appear to be on the Wiki. The special page titles list can be found at /includes/specials/.
  • I initially, had some problems with inserting spaces for $page_name_or_title (broke the Wiki when I attempted it); not sure why that was happening.
  • The edit action apparently, only links to the MediaWiki project page i.e. pages with namespace "MediaWiki:" prefix. Is this how this feature is supposed to work, or am I missing something?

Regards, AhmadF.Cheema (talk) 16:17, 3 April 2016 (UTC)Reply

Using Composer to install AdminLinks may be broken?[edit]

Yaron,

First thing is to say thank you for a great book, which led me to AdminLinks. I am pretty much a beginner at running a MediaWiki/SMW installation, so apologies if I am doing something obviously stupid. I am trying to shift all those of my extensions which support it to Composer because now that SMW has made me install Composer, it seems to be the most efficient way to manage large numbers of extensions. My Admin Links extension worked fine as a

require_once( "$IP/extensions/AdminLinks/AdminLinks.php" );

entry in LocalSettings.php. It is now #commented out in that file, and instead my composer.json has the following require section, with everything after "zordius/lightncandy": "0.21", being my doing:

"require": {
    "composer/semver": "1.0.0",
    "cssjanus/cssjanus": "1.1.1",
    "ext-iconv": "*",
    "liuggio/statsd-php-client": "1.0.16",
    "oyejorge/less.php": "1.7.0.9",
    "mediawiki/at-ease": "1.1.0",
    "oojs/oojs-ui": "0.12.12",
    "php": ">=5.3.3",
    "psr/log": "1.0.0",
    "wikimedia/assert": "0.2.2",
    "wikimedia/cdb": "1.3.0",
    "wikimedia/composer-merge-plugin": "1.3.0",
    "wikimedia/ip-set": "1.0.1",
    "wikimedia/utfnormal": "1.0.3",
    "wikimedia/wrappedstring": "2.0.0",
    "zordius/lightncandy": "0.21",
    "mediawiki/parser-hooks": "~1.5",
    "mediawiki/maps": "*",
    "mediawiki/image-map": "@dev",
    "mediawiki/header-footer": "*",
    "mediawiki/proofread-page": "@dev",
    "mediawiki/simple-batch-upload": "~1.0",
    "enterprisemediawiki/admin-links": "dev-master",
    "mediawiki/semantic-media-wiki": "~2.5@dev",
    "mediawiki/semantic-result-formats": "~2.3",
    "mediawiki/semantic-extra-special-properties": "~1.3",
    "mediawiki/semantic-glossary": "~2.0",
    "mediawiki/semantic-maps": "~3.4",
    "mediawiki/semantic-forms": "~3.7",
    "mediawiki/semantic-compound-queries": "~1.0",
    "mediawiki/semantic-cite": "~1.1"
},

Running "php56 composer.phar update" (which is the correct syntax given my setup) gives me the following output:

> ComposerHookHandler::onPreUpdate
Deprecation Notice: The Composer\Package\LinkConstraint\VersionConstraint class is deprecated, use Composer\Semver\Constraint\Constraint instead. in phar:///volume1/web/MediaWiki/composer.phar/src/Composer/Package/LinkConstraint/VersionConstraint.php:17
Deprecation Notice: The Composer\Package\LinkConstraint\LinkConstraintInterface interface is deprecated, use Composer\Semver\Constraint\ConstraintInterface instead. in phar:///volume1/web/MediaWiki/composer.phar/src/Composer/Package/LinkConstraint/LinkConstraintInterface.php:17
Loading composer repositories with package information
Updating dependencies (including require-dev)
  - Installing enterprisemediawiki/admin-links (dev-master a46a6e5)
    Cloning a46a6e548ba7cecba4509dc1f3211da19c12e85d
    Failed to download enterprisemediawiki/admin-links from source: Failed to clone https://github.com/jamesmontalvo3/mediawiki-extensions-AdminLinks.git via https, ssh protocols, aborting.
- https://github.com/jamesmontalvo3/mediawiki-extensions-AdminLinks.git
  Cloning into 'extensions/AdminLinks'...
  remote: Invalid username or password.
  fatal: Authentication failed for 'https://github.com/jamesmontalvo3/mediawiki-extensions-AdminLinks.git/'
- git@github.com:jamesmontalvo3/mediawiki-extensions-AdminLinks.git
  Cloning into 'extensions/AdminLinks'...
  Warning: Permanently added the RSA host key for IP address '192.30.253.112' to the list of known hosts.
  Permission denied (publickey).
  fatal: Could not read from remote repository.
  Please make sure you have the correct access rights and the repository exists.
  Now trying to download from dist
  - Installing enterprisemediawiki/admin-links (dev-master a46a6e5)
    Downloading: Failed
  [Composer\Downloader\TransportException]
  The "https://api.github.com/repos/jamesmontalvo3/mediawiki-extensions-AdminLinks/zipball/a46a6e548ba7cecba4509dc1f3211da19c12e85d" file could not be downloaded (HTTP/1.1 404 Not Found)

If I try 'https://github.com/jamesmontalvo3/mediawiki-extensions-AdminLinks.git/' by hand, I get a 404, so it doesn't seem to be me being an idiot! Can you think what is going wrong? Thanks. PS When I try and replace the SMW line with a Semantic Bundle line (at the same time as removing the lines referring to Bundle components) I also get a fail, based on versioning. Any ideas? Thanks CharlesSpencer (talk) 22:04, 3 October 2016 (UTC)Reply

Let me preface that I don't know much about Composer, and I don't think I've ever tried installing any of my extensions with it. With that said - why are you using the "enterprisemediawiki" version of Admin Links and not the official version? That may be the source of the problem. Yaron Koren (talk) 16:32, 4 October 2016 (UTC)Reply
Thanks Yaron. I'm only using the "enterprisemediawiki" version because that's what I found at Packagist.org's [1] list of Composer-compatible extensions. It sounds to me like I should go back to installing it the old-fashioned way! I'll also give up on trying to Composer-install the Semantic bundle too for now. Thanks. CharlesSpencer (talk) 21:01, 4 October 2016 (UTC)Reply

Add a class or id for each link[edit]

It would be more convenient if the generated page are more customizable via some CSS.

I mean, I wanted to customize this thing to look like the Fandom Admin Dashboard, with all these fancy icons on, but without an id or a class it would be kinda painful. --Lakejason0 (talk) 04:21, 10 April 2021 (UTC)Reply

InvalidArgumentException: WikiPage constructed on a Title that cannot exist as a page: Spezial:Statistik[edit]

Setup
  • MediaWiki 1.37.1 (2aa4a86) 18. Dez. 2021, 19:11
  • PHP 7.3.31-1~deb10u1 (apache2handler)
  • MariaDB 10.3.31-MariaDB-0+deb10u1
  • Admin Links0.4.2 (28009e8) 8. Jun. 2021, 15:32
Issue

Happens when trying to access Special:AdminLinks.

[77f990ee92b7e7a78fb35dce] /wiki/Spezial:Admin-Links InvalidArgumentException: WikiPage constructed on a Title that cannot exist as a page: Spezial:Statistik

Backtrace
from /../w/includes/page/WikiPage.php(175)
#0 /../w/extensions/DisplayTitle/includes/DisplayTitleHooks.php(230): WikiPage->__construct(Title)
#1 /../w/extensions/DisplayTitle/includes/DisplayTitleHooks.php(142): DisplayTitleHooks::getDisplayTitle(Title, HtmlArmor, boolean)
#2 /../w/extensions/DisplayTitle/includes/DisplayTitleHooks.php(84): DisplayTitleHooks::handleLink(Title, HtmlArmor, boolean)
#3 /../w/includes/HookContainer/HookContainer.php(338): DisplayTitleHooks::onHtmlPageLinkRendererBegin(MediaWiki\Linker\LinkRenderer, Title, HtmlArmor, array, array, NULL)
#4 /../w/includes/HookContainer/HookContainer.php(137): MediaWiki\HookContainer\HookContainer->callLegacyHook(string, array, array, array)
#5 /../w/includes/HookContainer/HookRunner.php(2022): MediaWiki\HookContainer\HookContainer->run(string, array)
#6 /../w/includes/linker/LinkRenderer.php(174): MediaWiki\HookContainer\HookRunner->onHtmlPageLinkRendererBegin(MediaWiki\Linker\LinkRenderer, Title, HtmlArmor, array, array, NULL)
#7 /../w/includes/linker/LinkRenderer.php(197): MediaWiki\Linker\LinkRenderer->runBeginHook(Title, HtmlArmor, array, array, boolean)
#8 /../w/includes/linker/LinkRenderer.php(248): MediaWiki\Linker\LinkRenderer->makePreloadedLink(Title, HtmlArmor, string, array, array)
#9 /../w/extensions/AdminLinks/includes/AdminLinks.php(149): MediaWiki\Linker\LinkRenderer->makeKnownLink(Title, HtmlArmor, array, array)
#10 /../w/extensions/AdminLinks/includes/ALItem.php(48): AdminLinks::makeLink(Title, string)
#11 /../w/extensions/AdminLinks/includes/AdminLinks.php(25): ALItem::newFromSpecialPage(string)
#12 /../w/extensions/AdminLinks/includes/AdminLinks.php(80): AdminLinks->createInitialTree()
#13 /../w/includes/specialpage/SpecialPage.php(647): AdminLinks->execute(NULL)
#14 /../w/includes/specialpage/SpecialPageFactory.php(1366): SpecialPage->run(NULL)
#15 /../w/includes/MediaWiki.php(314): MediaWiki\SpecialPage\SpecialPageFactory->executePath(string, RequestContext)
#16 /../w/includes/MediaWiki.php(930): MediaWiki->performRequest()
#17 /../w/includes/MediaWiki.php(564): MediaWiki->main()
#18 /../w/index.php(53): MediaWiki->run()
#19 /../w/index.php(46): wfIndexMain()
#20 {main}

[[kgh]] (talk) 19:04, 20 December 2021 (UTC)Reply

That's strange. I don't know what version of DisplayTitle you're using, but my guess/hope is that, if you switch to using the latest code for that extension, the problem will go away. Yaron Koren (talk) 00:30, 21 December 2021 (UTC)Reply
Ah, this is a DisplayTitle issue. No worries. Got so many errors after upgrading to 1.37 that I did not correctly distribute this one in the heat of the action. Anyhow, I am already on master to avoid two other issues with that extension. Will inform Cindy. [[kgh]] (talk) 18:39, 21 December 2021 (UTC)Reply

Github: please add 0.5 tag[edit]

https://github.com/wikimedia/mediawiki-extensions-AdminLinks/tags

Oh, I forgot to create a tag! Sorry about that - I just did it. Yaron Koren (talk) 15:27, 10 February 2022 (UTC)Reply

Feature request[edit]

Would you consider looking at adding a LocalSettings option to add custom page links? Thank you! InnerCitadel (talk) 09:29, 28 March 2022 (UTC)Reply

This is already possible to do, although it maybe is a little trickier than it should be. If you see the example code here, all that code can be added directly to LocalSettings.php - so, within a function you define in LocalSettings.php, you can add any sections, rows or items you want. Yaron Koren (talk) 18:26, 28 March 2022 (UTC)Reply

Version 0.6 broken on MW 1.35.x and PHP 7.3[edit]

I am getting the following notices and warnings:

Notice: Undefined index: user-menu in /../extensions/AdminLinks/includes/AdminLinks.php on line 111
Warning: array_keys() expects parameter 1 to be array, null given in /../extensions/AdminLinks/includes/AdminLinks.php on line 111
Notice: Undefined index: user-menu in /../extensions/AdminLinks/includes/AdminLinks.php on line 112
Warning: array_values() expects parameter 1 to be array, null given in /../extensions/AdminLinks/includes/AdminLinks.php on line 112
Warning: array_search() expects parameter 2 to be array, null given in /../extensions/AdminLinks/includes/AdminLinks.php on line 113
Warning: array_splice() expects parameter 1 to be array, null given in /../extensions/AdminLinks/includes/AdminLinks.php on line 114
Warning: array_splice() expects parameter 1 to be array, null given in /../extensions/AdminLinks/includes/AdminLinks.php on line 115
Warning: count(): Parameter must be an array or an object that implements Countable in /../extensions/AdminLinks/includes/AdminLinks.php on line 118

The admin link does not show. After reverting to version 0.5 of Admin Links works as expected again. [[kgh]] (talk) 22:35, 4 March 2023 (UTC)Reply

What skin are you using? Yaron Koren (talk) 03:18, 5 March 2023 (UTC)Reply
Chameleon in version 3.4.3 Hopefully moving on to 4.2.1 next week. [[kgh]] (talk) 09:38, 5 March 2023 (UTC)Reply
Thanks for letting me know about the problem - I just checked in a fix for it. Yaron Koren (talk) 20:15, 6 March 2023 (UTC)Reply
No problem. In the meantime I am on PHP 7.4. The fix only silence the error messages. The link to the AdminLinks special page, however, is not shown, both on Chameleon 3.4.3 and 4.2.1. On version 0.5 things are back to normal. [[kgh]] (talk) 13:36, 7 March 2023 (UTC)Reply
That's true. Unfortunately, I don't know how to get it working for Chameleon with the new hook (version 0.5 is using a deprecated hook). Yaron Koren (talk) 15:11, 7 March 2023 (UTC)Reply
Ah, I get it. At least you know about the issue, even if there is no solution. The fix to get rid of the warnings and notices is much better than nothing. [[kgh]] (talk) 17:42, 7 March 2023 (UTC)Reply
By the way, if you could find out from any of the Chameleon developers what the right code would be to add to this function (which is called by the SkinTemplateNavigation::Universal hook) to add in the link, that would be helpful. Yaron Koren (talk) 14:56, 9 March 2023 (UTC)Reply
Hmm, a couple of days later, when checking the link does show up. Probably some caching issue or whatever ... Anyhow, back in business on Chameleon. [[kgh]] (talk) 11:14, 11 March 2023 (UTC)Reply
That seems impossible... are you definitely using Admin Links 0.6 again? Yaron Koren (talk) 15:33, 13 March 2023 (UTC)Reply
Excuse that it took me so long to reply. Indeed, I reverted to version 0.5 - senior moments. Anyhow, the new version 0.6.1 does not show the admin link either. I will remove it for now. [[kgh]] (talk) 20:47, 16 June 2023 (UTC)Reply

Versions 0.6.x broken on MW 1.35.x and PHP 7.3 for Monobook[edit]

I am getting the following fatal for 0.6.2 on Special:AdminLinks:

[6aac3e8a8cc818bb6bdf98d1] /ekl/Spezial:Admin-Links ParseError from line 12 of /../extensions/AdminLinks/includes/AdminLinksHookRunner.php: syntax error, unexpected 'HookContainer' (T_STRING), expecting function (T_FUNCTION) or const (T_CONST)
Backtrace
#0 [internal function]: AutoLoader::autoload(string)
#1 /../extensions/AdminLinks/includes/AdminLinks.php(78): spl_autoload_call(string)
#2 /../includes/specialpage/SpecialPage.php(600): AdminLinks->execute(NULL)
#3 /../includes/specialpage/SpecialPageFactory.php(635): SpecialPage->run(NULL)
#4 /../includes/MediaWiki.php(307): MediaWiki\SpecialPage\SpecialPageFactory->executePath(Title, RequestContext)
#5 /../includes/MediaWiki.php(947): MediaWiki->performRequest()
#6 /../includes/MediaWiki.php(547): MediaWiki->main()
#7 /../index.php(53): MediaWiki->run()
#8 /../index.php(46): wfIndexMain()
#9 {main}

Version 0.6.1 does not result into this error. Version 0.6 shows the errors already reported. The 0.6.x versions do not show the admin link at all. Thus I reverted back to version 0.5. I will update to PHP 7.4 AND 1.39 this year. Let's see what happens. --[[kgh]] (talk) 17:12, 21 October 2023 (UTC)Reply

That's odd. In your MediaWiki installation, does the file HookContainer.php look like this, with the namespace "MediaWiki\HookContainer"? Yaron Koren (talk) 13:47, 23 October 2023 (UTC)Reply
I am running MediaWiki 1.35.13 (0ef05ae). Thus I expect that the file is at this revision. [[kgh]] (talk) 16:23, 23 October 2023 (UTC)Reply
Okay, now I see the issue: the problem is not the MediaWiki version, it's the PHP version. That change in June 2023 added a typed property, which has only been supported by PHP since version 7.4, unfortunately. I just changed the PHP requirement on the extension page. Yaron Koren (talk) 17:49, 23 October 2023 (UTC)Reply
Ah, I see. Good that you were able to pin down the issue. That particular server will soon go 7.4 allowing me to upgrade Admin Links. [[kgh]] (talk) 17:52, 23 October 2023 (UTC)Reply