GSoC 2017 - More Metadata Management in AdminUI

I just like your innovativeness! Please keep it up. :smile:

1 Like

Haa haaa That’s my interest about OpenMRS :openmrs:

@dkayiwa Anyway I want to complete those iterations to find out whether this module contains any dependent modules or not :smiley: . So I decided to show those dependent modules on the alert message.

For the mean time, I displayed loading Icon in the alert message until getting those details.

Dependent Modules details for App UI Module,

.

Commit : Stop/Delete Module alert information modification · suthagar23/openmrs-owa-sysadmin@1c7eb81 · GitHub


Apart from that, I have introduced another table called “Dependent module on this Module” in Module View page.

Commit : Dependent Module list addedd · suthagar23/openmrs-owa-sysadmin@6b6d367 · GitHub

You can check on the https://modules-refapp.openmrs.org or just download it from here :slight_smile:

You are as awesome as always! :smile: Let me check it out and give you feedback.

1 Like

@suthagar23 i tested this out but did not see the more sort of button you promised for module dependencies. Did you just forget it?

Nope @dkayiwa, The long time was taken for doing those iterations, but I wanted to do those whole iterations to find out if this module contains any dependent module or not (even for that status). Then only I can select which message want to pop-up(alert Message). So here time for getting dependent module status and time for getting dependent module list is approx equal. So I just posted the module list here :slight_smile:

So here there is no need for More Button here :frowning:

Oh i see!

Instead of the “Do you want to stop this Module?” message, can we mention the exact name of the module that we want to stop? Something like “Do you want to stop the XForms Module?”

The same for delete module.

Also try refresh the page and then start with the delete module button. You will notice that it does not behave the same as the stop module one, in terms of listing dependencies on the confirmation window that pops up. Can you fix that? And even when you say YES, the module is not deleted. If it gets deleted, then i did not see any progress or message confirming that the module was deleted.

Also “Please Wait until upload Finished!” could be “Please wait while we upload the module!”

And for “Module Uploaded Patd” did you mean “Module Uploaded Path”? When i click the More Details button after the upload for xforms, i see “There are no aware of modules.” but when they actually get listed. Can you fix this too? Is the check for updates button on this screen working?

@dkayiwa I have updated all those mentioned feedbacks and bugs

  1. Changed the alert message content with module name
  2. Bugs Fixed for loading alert message
  3. Progress added while unloading modules
  4. Changed status messages
  5. “There are no aware of modules” bugs fixed
  6. Check for Updates button is working good.

Can you take a look again to these updated part

Commit : https://github.com/suthagar23/openmrs-owa-sysadmin/commit/6f8a564a79833321f69af6f9f45551d24f616f8f

You can find the ZIP file here of the updated OWA Make sure to clear cache :slight_smile:

When checking for module updates, why do i always get the error message “Could not get some the module update details.”?

Yah @dkayiwa I am using this link to check the module updates https://modules.openmrs.org/modulus/modules/findModules?callback=angular.callbacks._2s&sEcho=13&iColumns=1&sColumns=CVersion&iDisplayStart=0&iDisplayLength=15&bEscapeRegex=true&sSearch=Reference%20Application%20Module

Here I assigned sSearch=“module_name”. But for some modules, I can’t get the details from the server. That’s why It showing some error messages.

Do you have any idea about this?

@suthagar23 can you mention examples of modules for which you can get details from the server and those for which you cannot?

@dkayiwa Previously I have used this following online URL to get details,

  1. Success Call - Including new version data - https://modules.openmrs.org/modulus/modules/findModules?callback=angular.callbacks._2s&sEcho=13&iColumns=1&sColumns=CVersion&iDisplayStart=0&iDisplayLength=15&bEscapeRegex=true&sSearch=Atlas
  2. Unsuccess Call - https://modules.openmrs.org/modulus/modules/findModules?callback=angular.callbacks._2s&sEcho=13&iColumns=1&sColumns=CVersion&iDisplayStart=0&iDisplayLength=15&bEscapeRegex=true&sSearch=Metadata-Mapping

So then I moved to modules.openmrs API

Success Call - https://modules.openmrs.org/modulus/api/modules/metadatamapping but there are some problems,

  1. /API/modules/{id} - gives information about the module including moduleid(Integer)
  2. /API/modules/{moduleId}/releases - give information about releases/versions So I want to Call that first API to get moduleId and then want to call the second API to get releases details. Second API only can give us the new versions details.

Here it may take some long time. Shall I try this way? or are there any alternative way?

Source : https://openmrs.github.io/openmrs-contrib-modulus/#page:modules,header:modules-invididual-module-get

Instead of minding about performance (here it may take some long time), i would rather start with something that just works. If we find it unacceptably slow, we can always look into it. But many times you will get shocked to find that what you thought would be slow is not noticeably so. :slight_smile:

Yah absolutely @dkayiwa. Now there are some pending works :slight_smile:

There are some problems that, modules.openmrs.org identifies modules using slug-id. Here,

  1. I can get details for Atlas Module using default Module UUID - atlas ( https://modules.openmrs.org/modulus/api/modules/atlas)
  2. But for Admin UI module, This module UUID is not worked, (uuid-adminui). It used “Admin-UI-Module” (https://modules.openmrs.org/modulus/api/modules/Admin-UI-module)

So how can I find this Slug ID using the module data inside our server?

@suthagar23, I would note that we’re going to be retiring modules.openmrs.org soon, and replacing it with addons.openmrs.org. So if possible you should not code this functionality against the existing modulus REST API.

What is it that you’re trying to do here? (Sorry I haven’t followed all of these posts.)

@darius Thanks for the update. I will take a look around addons.openmrs.org

Here I am looking for this following information to my SysAdmin OWA

  1. Checking newest version for the module updates and want to download from there
  2. Search and Install Modules
  3. Want to get the module information(In case that module doesn’t exist in the system)

@dkayiwa I will start using this addons.openmrs.org. It gave me information+latest version details through one REST Call. https://addons.openmrs.org/api/v1/addon/org.openmrs.module.admin-ui-module

Yes go ahead and use it.

@dkayiwa and @darius

For some modules, I can get details using their package name, but I can’t get details for some modules using their package name

Eg - I can get details using pacakge name(or UUID) for this modules,

  1. Atlas Module (package : org.openmrs.module.atlas ) - URL : https://addons.openmrs.org/api/v1/addon/org.openmrs.module.atlas
  2. UI Commons (package : _org.openmrs.module.uicommon_s ) - URL : https://addons.openmrs.org/api/v1/addon/org.openmrs.module.uicommons

But I can’t get modules details for this module using package name or UUID

  1. Legacy Module(package name : org.openmrs.module.legacyui ) : Original URL : https://addons.openmrs.org/api/v1/addon/org.openmrs.module.legacy-ui-module
  2. Data Exchange Module (package name : org.openmrs.module.dataexchange) Original URL : https://addons.openmrs.org/api/v1/addon/org.openmrs.module.data-exchange-module

What is the way you are following to index this module in https://addons.openmrs.org?

@dkayiwa and @darius

Data Exchange Module details can be retrieved using REST request, Using that REST response says as

  • Name : “Data Exchange Module”
  • Uuid : “dataexchange”
  • package : “org.openmrs.module.dataexchange”

But here what is Uid they have used for addonindex?