/*! * BackupMODX - Backup dashboard widget for MODX * Version: 3.0.1-pl * Build date: 2019-09-19 */ var backupmodx=function(e){return e=e||{},Ext.applyIf(e,{}),backupmodx.superclass.constructor.call(this,e),this};Ext.extend(backupmodx,Ext.Component,{config:{},util:{},initComponent:function(){this.stores={},this.ajax=new Ext.data.Connection({disableCaching:!0})},templatingFiles:function(e){var t=new Ext.XTemplate('',' {label} ({size}) ',"");(Ext.get("backupmodx-download-container").dom.innerText="")!==e.database&&(e.database.icon="sql",e.database.label="Database",t.append(Ext.get("backupmodx-download-container"),e.database)),""!==e.files&&(e.files.icon="zip",e.files.label="Files",t.append(Ext.get("backupmodx-download-container"),e.files)),""!==e.note&&(e.note.icon="txt",e.note.label="Note",t.append(Ext.get("backupmodx-download-container"),e.note))},backup:function(){var e=document.getElementById("backupmodx-input-database").checked,t=document.getElementById("backupmodx-input-files").checked,o=document.getElementById("backupmodx-input-note").checked;e||t?(Ext.get("backupmodx-form-backup").addClass("hide"),Ext.get("backupmodx-spinner").removeClass("hide"),Ext.Ajax.request({url:BackupMODX.config.connectorUrl,timeout:12e4,params:{action:"backup",database:e,files:t,note:o},success:function(e){var t=Ext.decode(e.responseText);t.success?(BackupMODX.templatingFiles(t.results.files),Ext.get("backupmodx-remove-btn").removeClass("hide")):(Ext.get("backupmodx-download-container").dom.innerText=t.message,Ext.get("backupmodx-remove-btn").addClass("hide")),Ext.get("backupmodx-spinner").addClass("hide"),Ext.get("backupmodx-form-download").removeClass("hide")},failure:function(e){var t=Ext.decode(e.responseText);Ext.Msg.show({title:_("backupmodx.err_msg_title"),msg:t.message?t.message:_("backupmodx.err_unknown"),buttons:Ext.MessageBox.OK,icon:Ext.MessageBox.ERROR}),Ext.get("backupmodx-spinner").addClass("hide"),Ext.get("backupmodx-form-backup").removeClass("hide")}})):Ext.Msg.show({title:_("backupmodx.err_msg_title"),msg:_("backupmodx.err_missing_backup_options"),buttons:Ext.MessageBox.OK,icon:Ext.MessageBox.WARNING})},restore:function(){Ext.get("backupmodx-form-backup").addClass("hide"),Ext.get("backupmodx-form-download").addClass("hide"),Ext.get("backupmodx-form-restore").removeClass("hide"),Ext.Ajax.request({url:BackupMODX.config.connectorUrl,params:{action:"getbackups"},success:function(e){var t=Ext.decode(e.responseText);if(t.success){var o=t.results,a=new Ext.XTemplate('','',"{date_format} | {note}",'','',' '+_("backupmodx.database")+' ',"","","");""!==o&&a.overwrite(Ext.get("backupmodx-restore-container"),o),Ext.get("backupmodx-restore-btn").removeClass("hide")}else Ext.get("backupmodx-restore-container").dom.innerText=t.message,Ext.get("backupmodx-restore-btn").addClass("hide")},failure:function(e){var t=Ext.decode(e.responseText);Ext.Msg.show({title:_("backupmodx.err_msg_title"),msg:t.message?t.message:_("backupmodx.err_unknown"),buttons:Ext.MessageBox.OK,icon:Ext.MessageBox.ERROR})}})},download:function(e,t){BackupMODX.util.HiddenForm(BackupMODX.config.connectorUrl,{action:"download",file:e,folder:t,HTTP_MODAUTH:MODx.siteId})},cancel:function(){Ext.get("backupmodx-form-backup").removeClass("hide"),Ext.get("backupmodx-form-download").addClass("hide"),Ext.get("backupmodx-form-restore").addClass("hide")},removeBackup:function(){Ext.Ajax.request({url:BackupMODX.config.connectorUrl,params:{action:"removebackup"},success:function(e){var t=Ext.decode(e.responseText).results;void 0!==t&&null!=t&&null!=t.length&&0===t.length&&(Ext.get("backupmodx-restore-container").dom.innerText="",Ext.get("backupmodx-form-backup").removeClass("hide"),Ext.get("backupmodx-form-download").addClass("hide"))},failure:function(e){var t=Ext.decode(e.responseText);Ext.Msg.show({title:_("backupmodx.err_msg_title"),msg:t.message?t.message:_("backupmodx.err_unknown"),buttons:Ext.MessageBox.OK,icon:Ext.MessageBox.ERROR})}})},restoreBackup:function(){var e=Ext.DomQuery.selectNode("input[name=database]:checked");e?Ext.Ajax.request({url:BackupMODX.config.connectorUrl,params:{action:"restorebackup",database:e.value},success:function(e){var t=Ext.decode(e.responseText);t.success?Ext.Msg.show({title:_("backupmodx.success_msg_title"),msg:_("backupmodx.success_restore"),buttons:Ext.MessageBox.OK,icon:Ext.MessageBox.INFO,fn:function(){location.reload()}}):Ext.Msg.show({title:_("backupmodx.err_msg_title"),msg:t.message?t.message:_("backupmodx.err_unknown"),buttons:Ext.MessageBox.OK,icon:Ext.MessageBox.WARNING})},failure:function(e){var t=Ext.decode(e.responseText);Ext.Msg.show({title:_("backupmodx.err_msg_title"),msg:t.message?t.message:_("backupmodx.err_unknown"),buttons:Ext.MessageBox.OK,icon:Ext.MessageBox.ERROR})}}):Ext.Msg.show({title:_("backupmodx.err_msg_title"),msg:_("backupmodx.err_missing_restore_options"),buttons:Ext.MessageBox.OK,icon:Ext.MessageBox.WARNING})},about:function(){var e='© 2015-2019 by www.quadro-system.deVersion 3.x refactored by treehillstudio.com';Ext.Msg.show({title:_("backupmodx")+" "+BackupMODX.config.version,msg:e,buttons:Ext.Msg.OK,cls:"backupmodx_window",width:330})}}),Ext.reg("backupmodx",backupmodx),BackupMODX=new backupmodx,BackupMODX.util.HiddenForm=function(e,t){if(Ext.isObject(t)){var o=Ext.getBody(),a=(o.createChild({tag:"iframe",cls:"x-hidden",id:"hiddenform-iframe",name:"iframe"}),o.createChild({tag:"form",cls:"x-hidden",id:"hiddenform-form",action:e,target:"iframe",method:"post"}));Ext.iterate(t,function(e,t){a.createChild({tag:"input",type:"text",cls:"x-hidden",id:"hiddenform-"+e,name:e,value:t})}),a.dom.submit()}};