We had a fairly major problem in the office, so our VP asked my team to work on a solution for automating the process. It was a fairly major system to setup and we only had a few weeks to get a working demo. In the end, troubleshooting and a few other things necessitated a longer release time, but we had something working within our original timeframe.

We ended up creating a custom object oriented javascript framework on the front, including a centralized AJAX controller based on jQuery’s methods that could candle common feedback (like dropped connections or invalid post data), or pass it back for custom handling where it was called from. The whole project spanned about 13k lines and records a few thousand transactions each year.

Code Igniter helped on the backend, but in the future we’ll likely jump ship to work with something like Laravel. This is mainly because we found a bug with Code Igniter that causes some undiagnosable session dropping errors. It doesn’t break the app by any means, but I would want to avoid the issue in the future.

The time-off request process typically was taking 3-4 weeks for sign-off and official approval, which was totally unnaceptable to all involved. We ended up shrinking the process down to 2-3 days by introducing our system, and more specifically by providing daily queue summary emails to remind managers to approve new requests.

Below is a quick video (HTML5) we cut together to showcase how to use the system.