Page MenuHomePhabricator

siprop=skins doesn't show as much information about skins as siprop=extensions does
Closed, DeclinedPublic

Description

Hi when viewing http://en.random-wikisaur.tk/api.php?action=query&meta=siteinfo&siprop=skins it doesent show the version or any thing else which causes wikiapirary when it tracks your site it thinks the skin is an extension and put it in extension section and skins section. Where as extension http://en.random-wikisaur.tk/api.php?action=query&meta=siteinfo&siprop=extensions shows everything and skins settings do what the extension does you can show name description version and license i think this needs to be added to the skins api.

Event Timeline

Paladox raised the priority of this task from to High.
Paladox updated the task description. (Show Details)
Paladox subscribed.

As far as MediaWiki is concerned, a Skins is just an extension.

The questions is whether there's any point duplicating this information onto siprop=skins

Reedy renamed this task from Skin api to siprop=skins doesn't show as much information about skins as siprop=extensions does.Jan 12 2015, 7:47 PM
Jackmcbarn lowered the priority of this task from High to Lowest.Jan 12 2015, 7:47 PM
Jackmcbarn subscribed.
Jackmcbarn unsubscribed.

Why not create seperate ExtensionCredit and create SkinCreatdit becuase a skin is not a extension.

Why not create seperate ExtensionCredit and create SkinCreatdit becuase a skin is not a extension.

Why? What's the real benefit of actually doing this?

And yes, a skin is effectively an extension

Oh ok but why not have them seperate.

Anomie claimed this task.

siprop=skins is supposed to return the list of skins available on the wiki. Not the list of extensions that happen to provide skins and other such data. If you want information about skin-providing extensions, siprop=extensions is the way to go.

I am trying to only show the skins but i doint know how to do that i think the only way to go is to create a new setting like SkinCredit for skins only and ExtensionCredit for extensions only.

I think that skin should be displayed the same as extension in api instead of just showing the name and then verything else is blank and so it will stop thinking a skin is an extension it may effectivly be a skin but it is classed under a different name not extension.

I have created SkinCredits I in the process of doing it skin in extensionTypes was deprecated so all skins would have to be converted to use the new SkinCredits. I have tested all the changes and will upload the patch shortly.

I doint know how to add backward compatibility so skins that use ExtensionCredits will be shown.

Hi I will upload the codes now I doint know how to add support for the api to show default skin or allowed in the app. So could I have some help with doing that and also it has support for backword support. But it is shown in a different table above skin I doint know how to change it so there is only one table showing the skins. but it woulden make a difference if all skins are converted to use SkinCredits in Wikimedia version control. And then one it is all converted in Wikimedia version control skin from extensionTypes can be removed and including backword support for skin. This patch also deprecates ExtensionCredits for skins.

Change 184689 had a related patch set uploaded (by Paladox):
Add SkinCredits

https://gerrit.wikimedia.org/r/184689

Patch-For-Review

Please don't reopen this.

For the reasons expressed when this was declined the first time.

Paladox, why not use siprop=extensions, then fetch siprop=skins and filter the extension results by the skin results?

Ok how would I do that I am not sure how to use the code already there for extension but how can I use it for skins. And do you mean put the skin data on extension or use the extension but filter out the result so only skins show on skin api.

He's saying to filter the extension data returned by siprop=extensions|skins in your client.

For that matter, you should be able to just filter the extension data by the 'type' field, as Reedy already pointed out in T86570#971608.

Ok but woulden that mean siprop=skins would be removed if you can filter but I think skins and extension should have a different api not in the same api.

You're still mistakenly thinking that siprop=skins is supposed to return extension-data about skins. It's not. It's supposed to return the data about the skins the MediaWiki installation knows about, whether they're from extensions or built in.

Oh so siprop=skins should collect the data from extension and filter it out for skins only. But I am not sure how to do that all I know is how to re use the code for extension and put it for skins and in process using the new SkinCredits which ExtensionCrdits would not look nice on skins.

Oh so siprop=skins should collect the data from extension and filter it out for skins only.

No. siprop=skins should do exactly what it does now. In your client program you should collect the data from siprop=extensions and filter it.

Oh ok I am not sure how to do that.

Hi how would I be able to add something that uses ExtensionCredits and insert it in to SkinCredits.

Should we use ExtensionCredits for skins or should we use the new SkinCredits.

I am not sure how to filter extension for skins and so I found it easer to just create SkinCredits for skins and only problem is to add default skin to api and the other unused. and it shows two tables one for the old format and one for the new format. but could I have some help if you would like it to be filtered instead of doing it the way I did it.

I am not sure how to filter extension for skins and so I found it easer to just create SkinCredits for skins and only problem is to add default skin to api and the other unused. and it shows two tables one for the old format and one for the new format. but could I have some help if you would like it to be filtered instead of doing it the way I did it. but I have kept a backword compatibility for the old system which will set default even if SkinCredits is specified.

Hi how would I be able to filter the code for extension so that it only shows skins on the api for skins.

Hi could this be reopen since it is saying that skins does not show the information it should show.

No. No one thinks that except you.

@Paladox: Do not add random projects to tasks and do not comment here when there is nothing new to discuss. Thank you for your understanding.

Change 190681 had a related patch set uploaded (by Paladox):
Update skin api

https://gerrit.wikimedia.org/r/190681

Patch-For-Review

I have managed to do filtering. Please see the new patch I abandoned the one that was adding SkinCredits.

"siprop=skins doesn't show as much information about skins as siprop=extensions does", and it shouldn't.
This task has been declined and thus no more patches are to be uploaded.

Hi why shoulden it show as much information and extensions shows.

Hi why shoulden it show as much information and extensions shows.

Because the information is already shown in that module, no need to replicate it in another module

Oh ok how would I require the extension api in the skin api and then filter it out so skin only shows.

You should filter the skins out of the extensions in client code. Use action=query&meta=siteinfo&siprop=extensions and retrieve only those with "type = skin"

Oh ok i have tryed this

protected function appendSkins( $property ) {
ApiQuerySiteinfo::appendExtensions( $property );
if ( strpos( $ret['type'] = $type, 'skin' ) === false ) {
continue;
}
}

It works but wont allow me to only let skin show comes up with this error

Fatal error: Cannot break/continue 1 level

@Paladox I said client code

And this task is not a support forum for us to solve your programming questions.

@Paladox: You have been told more than once that this task (and Phabricator in general) is not a support forum, still you continue to post support questions in this task which are unrelated to the specific request in this task which was already handled and decided on more than one month ago.
In your own interest, please respect the Phabricator etiquette or your Phabricator account might get disabled.
Thank you for your understanding and your cooperation to keep Phabricator a productive and non-noisy work environment (and for clarification, comments that do not include any other content than "Oh ok" are also noisy).