Monday, August 22, 2016

GSOC 2016 Results

This is my post, devoted to the results of my work during GSOC 2016 program.

This year I worked on the User Management Dashboard module for OpenMRS ID (here is the description of my project)

My project is a React application, built with using of such libraries and technologies as react-toolbox, ExpressJS, AltJS, webpack, babel

List of my commits during this summer: https://github.com/diospark/openmrs-contrib-id-user-management-dashboard/commits/master?author=diospark

Also I submitted 2 Pull Requests to main OpenMRS ID project repository, with improvements, required for my module:

https://github.com/openmrs/openmrs-contrib-id/pull/88
https://github.com/openmrs/openmrs-contrib-id/pull/89

Sunday, August 21, 2016

GSOC Reports, Week 13: Final GSOC Week

Hi, guys! Here is my last GSOC report regarding my work under User Dashboard module for OpenMRS ID, but not last generally :)
This week I've implemented huge number of features, such as:

  • Re-implemented update, re-save, delete users API, make it more stable, fixed bugs;
  • Added option to edit user email list;
  • Implemented RegExp search;
  • Implemented URL params for search (for example, we can open url: user-dashboard?user=someusername, and it will search for selected user;
  • Changed 'Yes/No' fields on UI to boolean true/false;
  • Added error handling to REST API;
  • Added Messages component for status messages (user update, delete, errors, etc)
  • Added ability to change 'locked' attribute;
  • Added option 'sort by';
  • Re-implemented UI controls, design;
  • Added option to set email from email list as primary.
 User Dashboard became more stable, and get a lot of functions. It still in development, but I believe, that as a result of my work we will have a stable and functional user management dashboard, which will make life of ID Dashboard Administrators much easier!

Sunday, August 14, 2016

GSOC Reports, Week 12: Finalizing things

Hello, everyone! This is one of my last reports about GSOC. Summer ending, and I am finalizing features for OpenMRS ID User Dashboard. So, lets see what I've done during last week:

  • Implemented REST for deleting, updating users, and integrated it into UI;
  • Fixed group list on UI;
  • Added user permissions middleware;
  • Updated possible columns for view list;
  • Added option to update rest of user fields (username, firstName, lastName, etc)
  • Updated UI components, fixed React warnings.
Next week - is a final GSOC week, so my plans for it:

  • Add option to update user email list;
  • REST for users search (by username, primaryEmail, firstName, lastName)
  • Integrate Mongo & LDAP registering (fixing missed entries)
  • UI improvements (styles, useability)
  • Errors hangling and notifications on events (save/update/delete user, etc)

Saturday, August 6, 2016

GSOC Reports, Week 11: Data integration, API updates


Hello everyone!

This week I've successfully integrated users list from Mongo/LDAP into User Dashboard, using axios library, so now we have actual user list. Group list also integrated, but turned off for now due to some bug with React Toolbox Dropdown component, which I will fix later. Also we changed User Dasboard REST API to /admin/user-dasboard/api. So, now we have everything to finish API integration into User Dashboard.

Plans for next week:
  • Finalize API integration;
  • Fix bug with groups/dropdown component;
  • Finish Search, one/mutiple user update;
  • Think about feature of Regex search for users (proposed by my mentor Robert).
Thanks!