twomice / org.civicrm.extensionsui

CiviCRM extension: Provides improved interface for in-app extension management
Other
2 stars 3 forks source link

Downloaded but uninstalled extensions are hard to find #10

Open universalhandle opened 7 years ago

universalhandle commented 7 years ago

Maybe I was thrown off that the behavior is a little different from that of core, or maybe it really is confusing. In any case I thought I'd open an issue and let you decide what to do with it :-)

In CiviCRM core, downloaded but uninstalled extensions appear under a tab named "Extensions" (along with installed and missing ones). To go out into the world and fetch new ones, you visit "Add New."

In the extension, the first tab, labeled "Installed," largely corresponds to core's "Extensions" tab. However, only installed and missing extensions appear here. The "Add New" tab lists both extensions that have been downloaded as well as those which can be downloaded.

I can think of two approaches to resolving this problem, if it is deemed to be a problem at all.

  1. Create more tabs in the UI. For example: Installed, Disabled, Add New.
  2. Consolidate the UI to one filterable list. Each extension model could have properties on it (e.g., status: installed, disabled, missing; downloaded: 0|1, etc.), and we could live filter those as needed. (Bonus: eliminating the arbitrary distinction between local and remote extensions means users can view them in the same list and compare, for example their installed com.cividesk.email.sparkpost against available com.pesc.sparkpost.) These extension properties could be used in other ways in the list, too (e.g., add CSS class error if extension.status == 'missing', or change text on a button from "Install" to "Download and Install" if extension.downloaded == 0).
twomice commented 7 years ago

I just ran into this issue myself. Actually couldn't figure out why my downloaded extension didn't show up when I hit refresh.

Also related is the fact that the "Add New" tab contains a comforting message at the top: "These extensions are compatible with your version of CiviCRM and have passed a quality review by the CiviCRM community ..." But this is untrue for downloaded extensions.

I'll go back and re-think this design a little.