Calibration History WebUI
Overview
The IFW Calob WebUI allows the user to review the history of generated calibrations. The interface uses the calibration history database as its information source and displays the JSON OBD generated as a searchable web page.

Installation
Dependencies
The Web application depends on the rpm modules nginx, flask and gunicorn which should be installed in the workstation.
Deployment
NGINX
The configuration for nginx will be created automatically during installation named calobhistory.conf. This file will be installed in <prefix>/resource/webapp/ifw/calob/deployment/calobhistory.conf the prefix will depend on if it was installed as an RPM or through waf install.
A symbolic link should be created by root to this file to be used by the NGINX service. # ln -s <path_to_calobhistory.conf> /etc/nginx/default.d/calobhistory.conf
GUNICORN Service
The Flask application which implements the WebUI, should be running as a service. For this the file calobhistory.service will be generated and installed in <prefix>/resource/webapp/ifw/calob/deployment/calobhistory.service. Again prefix depends on the installation method.
A symbolic link should be created by root to this file to be available. # ln -s <path_to_calobhistory.service> /etc/systemd/system/calobhistory.service
Running
Recognize the changes on available services:
# systemctl daemon-reload
Start the service:
# systemctl restart calobhistory
Restart NGINX:
# systemctl restart nginx
Configuration
At this point in time there is not much to configure on the interface. It needs the location of the calibration history database file, which can be provided in the interface itself here:

In the pop message the path to the file in the server should be provided, for example /home_local/eltdev/DATAROOT/calob/db/calibration_history.db.

After pressing submit the interface should be populated with the contents from the database.
Usage
The UI works as any standard Web page, with any standard modern web browser.

The history of calibrations found on the database will be displayed on the left. Each of the elements can be clicked to change the calibration been displayed.
The selected calibration is displayed on the right side as a list of OBDs. Each OBD can be clicked to fold/unfold and display a table with its particular defined values.
The search functionality searches inside the generated calibrations and marks with yellow the execution that contains the searched value. The value can be the name of an OBD, or a keyword, or the value of a keyword.
