User:Krinkle/Gadgets 3.0

Rough notes

edit
ala Chrome market place / Firefox Add-ons

Search, Find, Inform, Install

Search:
- Search: [_____________________]
- [x] Search through descriptions as well
- Source:
-- [x] Local wiki
-- [x] Foreign repositories the site trusts
--/ [+] Add repo
- Filter:
-- [x] Only search for gadgets known to support the MediaWiki version this wiki has (''1.18.1'')
-- [x] Only search for gadgets known to work with your current skin (''Vector'')

Find:
- Search engine result pages
[       ]   {Title of gadget}
[{Thumb}]      from: {repo}                               {Category}    { [+] Install gadget }
[       ]   {Description (snippet)}   .. .....            [{Rating}]  {# users}   
            ....  .......  .......  .... ...  ....

Inform:
/head
- Title of gadget
-- Rating, Category, # users
- Authors (from repowiki)
- + [+] Install gadget
/tab: intro
- Screenshot slider
- Short description
/tab: details
- Larger description    - Authors (from repowiki)
- Screenshot slider     - Report bug | Support | Website
                        - Last updated: #date#
                        - Compatible with:
                           [\/ MediaWiki 1.20] [\/ Monobook]
                           [ Not officially supported] (402 people say it works, 9 people say it's broken)
                        - This gadget can access: (Nice to have, is this possible?, closure could include a fake window/document/mw variable to shadow the real ones)
                             * [ ] mw.user.options
                             * [ ] mw.user.tokens 
                             * ..
                        - This gadget is an add-on to the following gadgets,
                          these will be automatically enabled upon enabling this one:
                             * ...
                             * ...

([Report abuse], reports to repo-owner)

/tab: changelog
- version, date, changes
- version, date, changes
- version, date, changes

/tab: stats
- download stats


Install:
/write to user_options.gadgets_custom_sources
    ["http://localhost/mw-scriptpath/"]
/write to user_options.gadgets_enabled
  {
    "local": {"gadgetid": false, "gadgetid": true},
    "mediawikiwiki": {"gadgetid": true, "gadgetid": true},
    "http://localhost/mw-scriptpath/": {"gadget.id": true}
  }

Once installed, on Special:MyGadgets
- List of installed gadgets (a bit like chrome://settings/extensions)
- Uninstall / Options

/write to user_option.gadget_options
  {
    "gadgetid": {
      "some-pref": 123
    },
    "gadgetid": {
      "some-pref": 123
    }
  }

Assumed / consequence

edit

Gotchas learned from Gadgets 2.0

edit
  • Deal with naming conflicts between gadgets from different repositories by identifying them with both the repository ID and the gadget ID.

See also

edit