https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=35837

--- Comment #34 from Martin Renvoize (ashimema) 
<[email protected]> ---
Created attachment 206522
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=206522&action=edit
Bug 35837: Add a Vue plugin store page for discovering and installing plugins

Adds a staff-interface "Plugin store" page (Administration > Plugins)
for browsing plugins published to a configured plugin-store service
and installing them, alongside the existing manual upload path:

 * Search/filter the store's catalogue by name, description or
   author, with an option to include releases that don't declare
   support for this Koha version
 * Install directly from a search result, or upload a local .kpz
   file
 * A plugin already installed, but with a newer release available,
   shows an "Update available" badge and an Update action in place
   of Install -- reusing the same install flow, since the backend
   already overwrites in place and runs the plugin's own upgrade()
   hook
 * Unsigned-plugin and unsupported-Koha-version installs require
   explicit confirmation before proceeding, with the backend's error
   code driving which confirmation (if any) is shown
 * All plugin-store-supplied metadata (name, description, author,
   version strings) is HTML-escaped before rendering -- it's
   text from a remote, third-party service

The search results table is fed by two independent fetches (the
store's catalogue, and this Koha's installed-plugins list); a watcher
on each refreshes the DataTable so a completed install/update is
reflected immediately, without a page reload.

Also wires the page into the admin menu and breadcrumbs, and extends
the shared Vue HttpClient with postForm() (multipart uploads) and
clearer error-message extraction for Mojolicious::Plugin::OpenAPI
validation failures, both needed by the upload path.

Test plan:
1. yarn build
2. Point Koha at a plugin-store instance to test against. Either run
   your own (see DEVELOPMENT.md in
   https://github.com/openfifth/koha-plugin-store#docker-development),
   or use the OpenFifth-hosted test server:
     Inside ktd: vi /etc/koha/sites/kohadev/koha-conf.xml
     and add, inside <config>...</config>:
      
<plugin_store_url>https://plugin-store.koha-ptfs.co.uk</plugin_store_url>
     Then: restart_all
3. Administration > Plugins > Plugin store: confirm the catalogue
   loads, search/filter works, and installing a plugin succeeds and
   is reflected in the table without reloading.
4. Upload a local .kpz file via the Upload plugin button and confirm
   it installs.
5. Downgrade an installed plugin's version on disk, restart, and
   confirm the row now shows "Update available" with a working
   Update action.

Co-Authored-By: Claude Sonnet 5 <[email protected]>

-- 
You are receiving this mail because:
You are watching all bug changes.
_______________________________________________
Koha-bugs mailing list -- [email protected]
To unsubscribe send an email to [email protected]
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/

Reply via email to