The primary aim of my GSoC project was to recreate all the features which were using Smarty Template Engine and remove SMARTY as a resource. It involved removing and replacing UI components that use it, while managing the separation of controller classes and templates, maintaining the object oriented approach. Secondary aim of the project was to enhance User Interface throughout the application and to introduce client side validation.
To achieve my primary goal, I had to think of a proper approach to replace the use of SMARTY. I decided to modify the existing controller classes to work independent of Smarty class, by replacing Smarty defined functions like fetch()
, display()
and assign()
using the concepts of output buffering in PHP. I made 3 pull requests to completely replace Smarty from LibreEHR.
Here are the Pull requests to achieve my primary goal :
- Removed the Smarty dependence of Controller Classes and completely revamp Admini