Our thanks to Larry Smith from EduTone who initially alerted us to a bug in the process of signing up as a Kerika user: the confirmation email sent by Kerika wasn’t working well, particularly if the user used any browser other than Chrome.
For example, clicking on the confirmation email and having Kerika open that link using Firefox or Chrome produced this kind of behavior:
The problem was related to a recent decision we made to use Polymer for parts of our website.
It turns out that Chrome had a different sequence for loading the Polymer components than other browsers.
In Chrome the sequence is
- webcomponent-lite.js
- element.vulcanized.html
- build.min.js
While in browsers like Firefox the sequence is
- webcomponent-lite.js
- build.min.js
- element.vulcanized.html
Our build.min.js file needed components that were loaded only when element.vulcanized.html was loaded, which meant that the sequence in which these files were loaded by the browser was important, andΒ different browsers were loading these files in different sequences.
We fixed this bug: Polymer has a method to ensure that all imports are ready before the page is rendered.
This has been part of the learning process for us as we adopt Polymer more for our website redesign (which is underway, and should be unveiled by Christmas), and also consider using Polymer to rebuild the Kerika app itself!