jack (Jack Phoenix)Administrator
Head of the Customer Support Team

Projects (17)


  • Clear sailing ahead.


  • Clear sailing ahead.


  • Clear sailing ahead.

User Details

User Since
Aug 19 2014, 12:44 PM (148 w, 4 d)
MediaWiki User
Jack Phoenix

I run ShoutWiki's Customer Support Team, but in addition to that, I also work on the various MediaWiki-related things we at ShoutWiki use.

Recent Activity

Wed, Jun 21

jack added a comment to T217: Consider adding NewUserMessage to our extension request whitelist.

On the other hand, this extension is used on (select) WMF wikis, such as Wikimedia Commons, so it's code-reviewed and guaranteed to be compatible with recent versions of MW.
However, we have a very similar extension -- HAWelcome -- already, which supports SocialProfile, which NewUserMessage doesn't. (See also T68)

Wed, Jun 21, 1:59 PM · Restricted Project

Thu, Jun 8

jack added a comment to T211: Allow stewards to add/remove other stewards.

The steward group was historically created (on ShoutWiki) as a way "to deal w/ rouge admins", to quote what Pinky wrote on GlobalSettings.php many, many moons ago. As such, I'm not sure about this request. Yes, this is a request we hear more often than once a year or so, but I think we can continue dealing with these requests on a case-by-case basis and focus on getting AdminPanel into shape so that admins (etc.) are able to change the wiki's default skin, theme and such stuff without having to contact staff. That seems more beneficial for all parties IMO.

Thu, Jun 8, 11:29 AM

Mar 29 2017

jack added a comment to T194: Consider enabling Thanks extension globally.


Mar 29 2017, 5:41 PM · Restricted Project
jack closed T68: HAWelcome take into account SocialProfile as Resolved.

Pretty much, yeah, although I'm not sure if the patch has been tested on wikis running both extensions. I think the reason I was keeping this open was due to my earlier comment about merging AutomaticBoardWelcome and HAWelcome, but we can create a separate task for that or something.

Mar 29 2017, 5:40 PM · Technical Debt

Mar 4 2017

jack added a comment to T178: Add Refreshed skin to CreateWiki.

What about the default logo? I believe there should be some sort of image placeholder created or have it support text, so I'll look for the upstream ticket/make a ticket upstream

Mar 4 2017, 9:56 AM · CreateWiki

Mar 3 2017

jack added a comment to T178: Add Refreshed skin to CreateWiki.

We should probably decide what we want the logo dropdown to contain and configure it by default that a wiki can upload its own image for that. I'd assume we want the wiki and then Hub?

The logo and the drop-down menu are separate features. The drop-down menu is controlled by MediaWiki:Refreshed-wiki-dropdown and its syntax is documented on MediaWiki.org. If it's empty (the default), the little "arrow" next to the wiki's wordmark won't be shown.
The actual site logo is configured by MediaWiki:Refreshed-this-wiki-wordmark (for desktop/normal screen resolutions) and MediaWiki:Refreshed-this-wiki-mobile-logo (for mobile/smaller screen resolutions); see the documentation for details.

Mar 3 2017, 7:32 PM · CreateWiki

Feb 27 2017

jack created T176: Use VIPS for image scaling & deploy the VipsScaler MediaWiki extension.
Feb 27 2017, 3:23 AM · 2017 Major Operations, Restricted Project

Feb 16 2017

jack created an object: LookupContribs.
Feb 16 2017, 8:14 AM

Feb 7 2017

jack closed T59: Fix DeleteWiki log entries for wikis which do not have the language code in their subdomain as Resolved.

With the DeleteWiki improvements done in rSHWK4107 this is no longer an issue.

Feb 7 2017, 1:27 PM · DeleteWiki, I18n
jack closed T90: Upgrade MediaWiki to 1.28 as Resolved.

We've been running MW 1.28 since 16 December 2016, so this can be safely closed.

Feb 7 2017, 1:19 PM

Feb 5 2017

jack created T170: Remove DeleteWiki backups on a regular basis.
Feb 5 2017, 6:35 PM · 2017 Major Operations, Restricted Project, CreateWiki

Jan 15 2017

jack closed T155: Give staff access to Special:SMWAdmin by default as Resolved.
Jan 15 2017, 1:52 PM · Semantic MediaWiki
jack closed T147: Special:AbuseFilter is inaccessible as Resolved.

This should now be fixed for good (ditto for T155).

Jan 15 2017, 1:52 PM
jack added a comment to T164: Aurora skin uses data URIs for gradients instead of using CSS gradients.

There are four gradient-* images in /skins/Aurora/resources/images, and four respective CSS rules in /skins/Aurora/resources/aurora.css which use 'em:

  • gradient-body.png (CSS rule which uses this: #content-inner)
  • gradient-footer.png (CSS rule: #foot)
  • gradient-header.png (CSS rule: #head)
  • gradient-input.png (CSS rule: #full-search)
Jan 15 2017, 1:51 PM · Aurora

Jan 14 2017

jack updated the task description for T155: Give staff access to Special:SMWAdmin by default.
Jan 14 2017, 10:16 PM · Semantic MediaWiki

Dec 21 2016

jack added a comment to T152: ISBN.

Here it works but shows in red: "Pages using ISBN magic links". That should not be there!

Actually, as per the official release notes I quoted previously, that's intentional: Their usage is discouraged, but if they are manually enabled, a tracking category will be added to help identify usage and make it easier to migrate away from.

Here it doesn't work:

Yep, seems that what the MediaWiki.org manual page forgot to mention that caches need to be cleared after changing the value of the setting. I've manually flushed the cache for Rose-Biblio's main namespace, so now this issue should be properly resolved. :)

Dec 21 2016, 11:02 AM

Dec 20 2016

jack closed T152: ISBN as Resolved.

This is an intentional behavior change in MediaWiki 1.28. To quote the official release notes:

Dec 20 2016, 2:42 PM

Dec 17 2016

jack closed T148: Special:SpamRegex is not accessible by administrators as Resolved.

Long story short, SpamRegex is intentionally very restricted because unlike AbuseFilter and whatnot, it is a global tool. If it were administrator-viewable (let alone editable!), that probably wouldn't go so well because all you need is a valid email address to create a new wiki.

Dec 17 2016, 5:26 PM

Dec 16 2016

jack closed T146: Global Help: pages do not work as Resolved.

Besides that, as far as I've seen, global help: pages have worked as intended, save for that redlink issue, which should be now fixed.

Dec 16 2016, 11:41 PM
jack closed T139: Undefined UploadRow methods in MultiUpload as Resolved.
Dec 16 2016, 4:34 PM · Technical Debt, Other/Unspecified

Dec 8 2016

jack created T139: Undefined UploadRow methods in MultiUpload.
Dec 8 2016, 1:29 PM · Technical Debt, Other/Unspecified

Nov 19 2016

jack triaged T137: Tidy up CSS in Sports theme for Games skin as Normal priority.
Nov 19 2016, 11:54 PM · Skins, Technical Debt

Nov 16 2016

jack closed T136: Cleanup Piwik as Resolved.
Nov 16 2016, 12:21 AM

Nov 15 2016

jack closed T124: Obsolete HTML in CreateWiki as Resolved.

@CJC fixed this a while ago, CW has recently been updated so there's nothing else to be done here.

Nov 15 2016, 12:12 AM · CreateWiki

Nov 13 2016

jack updated the task description for T77: High-definion logo support for certain ShoutWiki skins not utilizing Wiki.png/$wgLogo.
Nov 13 2016, 1:36 PM · Skins
jack closed T62: Consolidate the Games and Sports skins as Resolved.

Now that Sports is a theme of Games, I've pushed that change live and undeployed Sports from Interface Messages Wiki, the only wiki where it was deployed on.

Nov 13 2016, 1:09 PM · Technical Debt, Skins
jack closed T117: Special:RenameWiki doesn't update the value of $wgServer in the wiki's configuration settings file as Resolved.

This should be fixed now that rSHWK3987 is live.

Nov 13 2016, 12:57 PM · CreateWiki
jack closed T133: MultiUpload fails to unpack zips as Resolved.

I've just rolled out version 3.1-SW of MultiUpload which should fix this issue.

Nov 13 2016, 12:55 PM

Nov 2 2016

jack closed T128: Add signature button to Forum namespace as Resolved.

I've added the configuration variable into Hub's settings file.

Nov 2 2016, 11:59 AM

Oct 31 2016

jack added a comment to T131: Sort HTTPS and make it available to everyone.

I'll throw in my favorite solution, which Skizzerz proposed the last time I spoke to him about this: Let's Encrypt SSL certificates for <lang code>.*.shoutwiki.com, i.e. fi.*.shoutwiki.com (possibly relevant: this StackOverflow question). Looking at /trunk/languages/i18n/, there are currently 371 files in there so it would mean about the same amount of SSL certificates, which admittedly is somewhat of an ops nightmare, but the renewal of Let's Encrypt certificates can be automated and I'm sure someone already made a script for that.
I would imagine that this is a solution that'll be painful to implement initially but which wouldn't need too much maintenance after that and it would allow us to keep the current URL structure.

Oct 31 2016, 6:01 PM · Restricted Project

Sep 26 2016

jack closed T126: Open-source SharedHelpPages as Resolved.

Now done.

Sep 26 2016, 8:10 PM · Other/Unspecified

Sep 21 2016

jack created T126: Open-source SharedHelpPages.
Sep 21 2016, 12:20 AM · Other/Unspecified

Sep 20 2016

jack created T125: Update SharedHelpPages to use the TitleIsAlwaysKnown hook and ditch the LinkBegin hook.
Sep 20 2016, 11:45 PM · Other/Unspecified

Sep 14 2016

jack added a project to T119: kosto 503 Service Unavailable: Restricted Project.

This is somewhat "intentional" for the time being.

Sep 14 2016, 8:53 AM · Restricted Project

Aug 6 2016

jack created T117: Special:RenameWiki doesn't update the value of $wgServer in the wiki's configuration settings file.
Aug 6 2016, 9:52 PM · CreateWiki
jack created T116: CreateWikiBackend::parseLicense()/[[MediaWiki:Createwiki-license-rels]] should not use $wgScriptPath but rather something else.
Aug 6 2016, 6:48 PM · CreateWiki

Aug 5 2016

jack added a comment to T115: Optimize HTML-documents..

dir="ltr". Why is it specified?

Page content and User Interface language can be different. But you'd have to ask upstream for a definitive answer.

Aug 5 2016, 4:22 PM

Jul 31 2016

jack added a comment to T108: HTML Form section taking wrong name.

Using the uselang=qqx URL parameter on Special:AdminPanel/privacy I was able to figure out that the page expects the message keys to be adminpanel/privacy-privacy-section-editing and adminpanel/privacy-privacy-section-viewing (sic!), most likely because the special page is named AdminPanel/privacy in the constructor.

Jul 31 2016, 2:55 PM · AdminPanel

Jul 28 2016

jack closed T99: Make Refreshed skin compatible with ShoutWiki ads as Resolved.

So I added (and self-merged) a new hook point, RefreshedInSidebar, to Refreshed (upstream commit), which allows us to inject 125x125px ads into the sidebar area.

Jul 28 2016, 11:37 AM · Skins
jack closed T99: Make Refreshed skin compatible with ShoutWiki ads, a subtask of T89: Adding Refreshed as an optional skin?, as Resolved.
Jul 28 2016, 11:37 AM · Skins

Jul 27 2016

jack updated subscribers of T106: Let site stewards add local interwiki or interlanguage links.

@isarra Do you know anything any thoughts on this? You merged our nasty hack (the ShoutWiki Interwiki Magic extension) into the upstream Interwiki extension a long time ago.

Jul 27 2016, 11:21 PM

Jul 25 2016

jack added a comment to T97: CreateWiki::addToAnalytics should log to its own file.

Quoth lines 315-319 of /extensions/CreateWiki/CreateWiki_backend.php:

		// Allow this feature to be turned off, because history has sadly taught
		// us that we might need to do that every now and then...
		// This has to be here instead of being at the very beginning of this
		// function so that we can use the $wikiId variable here.
		if ( $wgCreateWikiAnalyticsLogMode && $wgCreateWikiAnalyticsLogFile ) {

Set $wgCreateWikiAnalyticsLogMode to true and $wgCreateWikiAnalyticsLogFile to a valid path and it won't even try to query the analytics DB, but rather writes the data to a comma-separated file.
If those variables aren't set and thus a connection to the analytics DB is attempted, in lines 351-353 we log the error message to both CW's own log ($wgDebugLogFile['CreateWiki']) as well as the standard error log (error_log()). Do you want the ordinary error_log removed and/or a new wfDebugLog call with a new group name (such as CreateWikiAnalytics) inserted?

Jul 25 2016, 1:09 AM · CreateWiki

Jul 24 2016

jack added a comment to T98: Write a ShoutWiki library.

One of the major problems I had with this idea the last time it popped into my mind was that where would the code go? Logically speaking it'd be a part of CreateWiki, as everything and anything is tied into the architecture that CW provides, requires and expects, but CW is enabled only on the English Hub! So we'll likely need to create a new meta-extension for this.
And thus we need a name for it, unless we'll settle for plain "ShoutWiki", and maybe source availability status would need to be considered. There are extensions which use and depend on the CW framework -- i.e. wiki_list and wiki_settings tables in $wgSharedDB -- which are open source (ShoutWikiAPI) and even more which are not, even if they are forked from an open source extension (ref).

Jul 24 2016, 10:11 PM · Major Code
jack added a comment to T91: Remove wfMsg in DumpsOnDemand.

Yes, it's FOSS, and yes, the usage of wfMsg might break it under MW 1.27, but that's the very least of this extension's problems. I mean, a literal s/wfMsg/wfMessage/g will work because of the existence of Message::__toString, so if someone really wants to run this under 1.27, it's not this issue really blocking that -- it's the fact that the extension's somewhat ShoutWiki-specific, requiring a core hack (for the CustomSpecialStatistics hook) and uses some other deprecated things, such as PHP i18n and setup files...not to mention the obvious lack of scalability (a known design issue at the time).

Jul 24 2016, 8:56 AM · Technical Debt

Jul 23 2016

jack reopened T89: Adding Refreshed as an optional skin? as "Open".

so that hopefully there's a bigger audience to test Refreshed

We're not here so you can test your code. Go break some other site.

So this was probably worded a bit badly. I'm sure that @SamanthaNguyen's intention wasn't to have unstable, potentially broken code deployed on ShoutWiki.

Jul 23 2016, 4:46 PM · Skins
jack added a comment to T87: Refactor ShoutWiki Calendar extension (tasklist).

Can this be broken / merged into more manageable chunks/problems and file those as separate tasks. Refactoring an entire extension as one task makes it less manageable.

Echoing this, mainly because my screen is what's considered small these days (resolution-wise) and having to scroll up and down all the time is annoying. :P

Jul 23 2016, 3:26 PM · Calendar
jack added a comment to T92: Drop CodeReview from Repo.

We don't use this extension in production

This is correct, but that's also because we don't have that many overly technical wikis, and also because we've never advertised it. Granted, that hasn't stopped users in the past from requesting different kinds of unsupported extensions, but still.

Jul 23 2016, 2:43 PM · Restricted Project, Technical Debt

Jul 21 2016

jack added a comment to T80: Create the skeleton of the extension.
In T80#1112, @cook879 wrote:

FYI, you can tag the task in the commit, or the commit in the task, so you don't have to add comments. Whatever way around you want to do it, it is done via the "Edit Related Objects" option in the menu on the right of the page.

So this is slightly meta and off-topic, but you don't even need to use the "Edit Related Objects" option. Having "Bug: T<some task number>" in a new line in the commit message automatically links the commit and the associated task. For example:

CreateWiki: Fix a fatal bug in the backend.
Jul 21 2016, 2:07 AM · AdminPanel

Jul 18 2016

jack added a comment to T81: Get wiki data.

The EnhanceContactForm extension is about as simple as they come (although I should note that 1) the upstream version is slightly outdated again, the one in our repo includes an important HHVM patch, as ShoutWiki is using HHVM and thus we must address its quirks to avoid breaking the site, and 2) for whatever bizarre reasons that are beyond my comprehension upstream has managed to bloat a single-file extension into a bunch of irrelevant files and unnecessary (IMO) i18n).

Jul 18 2016, 3:09 PM · AdminPanel
jack added a comment to T86: Submission page.

What @cook879 is describing can be achieved with the jQuery UI dialog component (ResourceLoader module jquery.ui.dialog). Example use can be seen on Special:CreateWiki, step #3, when the chosen wiki type is "private" and you attempt to proceed to step 4 but both viewing and editing restrictions are set to "everyone" (in which case it obviously wouldn't be a private wiki!). The code for this can be found at /extensions/CreateWiki/scripts/createwiki.js, function checkForErrorsPage3. As always, ping me if you need help with this -- ResourceLoader is somewhat of a messy system even from the viewpoint of an experienced developer!

Jul 18 2016, 3:03 PM · AdminPanel
jack added a comment to T85: Page layout for user permissions.

IMO i18n isn't that huge of an issue, because 1) we're building the product to be i18n-able right from the start, as it should be and 2) we can always change the labels etc. either directly in the code or as an "afterthough" via the Interface Messages Wiki (mwmsg.sw).

Jul 18 2016, 2:59 PM · AdminPanel

Jul 14 2016

jack created T77: High-definion logo support for certain ShoutWiki skins not utilizing Wiki.png/$wgLogo.
Jul 14 2016, 11:33 PM · Skins

Jul 13 2016

jack closed T51: Add wiki creation date (timestamp) into Special:MyWikis as Resolved.
Jul 13 2016, 2:54 PM · Sprint 22/06/16, CreateWiki
jack closed T76: Thumbnails not created for shared images as Resolved.

The $wgForeignFileRepos configuration setting for {de,es,fi}.shoutwiki.com had the wrong (old) value for the directory key (essentially due to T41: Cleanup legacy image pathing), which tells MW where the physical files are stored at. This is fixed now, but you may need to purge the page to see thumbnails again.

Jul 13 2016, 11:10 AM · Restricted Project

Jul 11 2016

jack added a comment to T74: Provide a better No Such Wiki page.

We should consider that the creator/admin isn't going to be the only one looking at a wiki.

This is obviously true, hence why Special:DeleteWiki is staff-only instead of something that'd allow admins/stewards to delete any wiki that they've created.

Jul 11 2016, 3:33 PM · Design, Major Code, NoSuchWiki
jack added a comment to T68: HAWelcome take into account SocialProfile.

I agree with the idea of merging both extensions. However, this isn't exactly a straightforward thing, because of the following:

  1. Usually users have the choice between a wiki user page and a social user profile, i.e. social profiles aren't enforced (SocialProfile's $wgUserPageChoice config var), so we need to take these into account...
  2. ...and even if social profiles were enforced, user boards and traditional user talk pages will coexist, because to my knowledge, it just isn't possible to get rid of user talk pages without significant core hacks. Generally speaking most users tend to prefer user boards over talk pages -- I guess it's easier to use those than to go to the desired user's talk page, click "edit", make changes, preview and finally save.
Jul 11 2016, 3:26 PM · Technical Debt