Adding rotation effect to widgets with long AJAX calls

Reopening this as I've fixed the error that came from putting the rotation icon instead of the ``<div>`` it's placed inside.

Issue arose from ``event.target`` being ``<span class="icon-refresh"></span>`` and trying to get the id from which the widget is refreshed. This now takes the id of the parent when ``event.target.id == ""``