Office Pages

View Project

The requirements of this project were that all offices had to have a set of components to achieve a uniform look. But since some offices have more information than others, the template had to be flexible in the sense that if there was no info, certain fields needed to be full-width, and if that was info, fields needed to be dual-column. The challenge here was identifying all possible scenarios and writing intelligible JS that handled exceptions.

The other tricky part was that the data came from three different APIs: Google Maps, Salesforce (address info), and the CMS. The bridge between SF and the CMS was an ID. So it ended up working like YouTube: one URL with a query parameter with the ID. The JS grabs the ID, and it is passed as a parameter in a few functions, and finally into the two endpoints which return the data to be displayed and handled.