var metaBackup = function() { var mbb = null; var monitortimer = null; var progressDiv; function getBackupData() { metaHandlers.genericAction( 'getbackupdata', metaBackup.doMainLayout, function() { infobar.error(language.gettext('label_general_error')); mbb.slideToggle('fast'); } ); } function goDoThings(thing, what) { debug.mark("BACKUPS",thing,what); metaHandlers.genericAction( [{action: 'backup'+thing, which: what}], function(data) { clearTimeout(monitortimer); debug.log("BACKUPS","Success"); if (thing == 'restore') { collectionHelper.forceCollectionReload(); } progressDiv.empty(); getBackupData(); }, function() { clearTimeout(monitortimer); infobar.error(language.gettext('error_backupfail', [thing])); if (thing == 'restore') { collectionHelper.forceCollectionReload(); } progressDiv.empty(); getBackupData(); }, ); if (thing == 'restore') { setTimeout(monitorRestore, 250); } } function monitorRestore() { clearTimeout(monitortimer); $.ajax({ type: "GET", url: 'utils/checkrestoreprogress.php', dataType: 'json' }) .done(function(data) { debug.debug("UPDATE",data); progressDiv.html(data.current); monitortimer = setTimeout(monitorRestore, 250); }) .fail(function(data) { debug.log("UPDATE","ERROR",data); monitortimer = setTimeout(monitorRestore, 250); }); } return { open: function() { if (mbb === null) { mbb = browser.registerExtraPlugin("mbb", language.gettext("label_metabackup"), metaBackup, 'https://fatg3erman.github.io/RompR/Backing-Up-Your-Metadata'); $("#mbbfoldup").append('
Backup Date | '; for (var i in data[0].stats) { html += ''+i+' | '; } html += ''; html += ' | |
---|---|---|---|
'+data[i].name+' | '; for (var j in data[i].stats) { html += ''+data[i].stats[j]+' | '; } html += ''; html += ' | '; html += ' |