atomresponder/templates/gnmatomresponder/resync_widget.html (42 lines of code) (raw):

{% load static %} <div id="atom-resync-widget" style="display:none;"> <span id="rescan-throbber" style="display: none;"><img src="{% static 'img/icon-ajax-loader.gif' %}">Resyncing...</span> <button id="resync-button" type="button" onClick="startResync();">Resync to published data</button> <span id="rescan-complete-message" style="display: none">Resync has completed, this may take a few minutes to show</span> <span id="rescan-failed-messsage" class="error" style="display: none">Resync request was rejected, try again later and contact multimediatech@theguardian.com</span> </div> <script> function startResync(){ $('#resync-button').hide(); $('#rescan-throbber').show(); $.ajax("{% url gnmatomresponder:resync_to_atom item_id=master.id %}") .done(function(data, textStatus, jqXHR){ console.log(data); $('#rescan-throbber').hide(); $('#resync-complete-message').show(); }) .fail(function(jqXHR, textStatus, errorThrown){ $('#rescan-throbber').hide(); try { var jsonData = JSON.parse(jqXHR.responseText); console.error(jsonData); var errorMsg; if(jsonData.hasOwnProperty("detail")){ errorMsg = jsonData.detail; } else if (jsonData.hasOwnProperty("error")){ errorMsg = jsonData.error; } else { errorMsg = jqXHR.responseText; } $('#rescan-failed-messsage').text("Resync request was rejected: " + errorMsg).show(); } catch(e) { console.error("Could not parse server response", e); $('#rescan-failed-messsage').show(); } }); } $(document).ready(function(){ //only show the atom resync button if it's going to work if($('#id_gnm_master_mediaatom_atomid').val()!=="") $('#atom-resync-widget').show(); }) </script>