It’s very often that JS workarounds / hacks are implemented in CMS systems in order to “get-around” server side restrictions. With today’s JS, processing from the browser is so quick that you can completely eliminate / alter any HTML DOM elements that the server sends to the browser. Any end result webpage can be completely altered without the client even realizing that a change took place. Because of this, there is now an “evil side” to what JS is capable of. One little error or missing object and you can toast your entire site.