Update a small application that displays a list of downloads used internally for Little Stream Software. Assist in prep for GDPR deadline of May 25th.
Replace UI theme
The user interface was last built in 2010 and had an outdated look and feel. To start, I added Bootstrap and removed the old CSS files. Then I converted the HTML used in the original Sinatra code to the current syntax.
The basic structure of the application is a simple table with the document title, number of downloads and links to edit or download the file.
You can see the before and after screenshots below.
Upgrade Sinatra and Ruby
The application was running on an early version of Sinatra which posed a security risk as there was a major update in 2.0.
To upgrade Sinatra, I changed the Gemfile to use at least Sinatra 2.0
I upgraded Ruby from 1.8 to 2.5.1, which fixed the unit test suite.
Remove IP tracking and from database
We’ve all been touched in some way by GDPR and in this case, we were collecting IP addresses. We needed to modify the database, keeping compatibility with DataMapper.
The IP tracking was solved by removing the code that logged the IP address and purging the data from the Postgres database.