From 68eb2d9100d6cb2989cb85a5fe7e024ce09f18a8 Mon Sep 17 00:00:00 2001 From: wangyuting Date: Wed, 6 Dec 2023 16:41:13 +0800 Subject: [PATCH] * Optimize extension uninstall function. --- module/extension/control.php | 11 ++++++++--- module/extension/ui/safe.html.php | 5 ++--- module/extension/ui/uninstall.html.php | 2 +- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/module/extension/control.php b/module/extension/control.php index 9453137645..7ea873d288 100644 --- a/module/extension/control.php +++ b/module/extension/control.php @@ -162,19 +162,21 @@ class extension extends control } /** + * 卸载插件流程。 * Uninstall an extension. * - * @param string $extension + * @param string $extension + * @param string $confirm * @access public * @return void */ - public function uninstall($extension, $confirm = 'no') + public function uninstall(string $extension, string $confirm = 'no') { $this->checkSafe(); /* Determine whether need to back up. */ $dbFile = $this->extension->getDBFile($extension, 'uninstall'); - if($confirm == 'no' and file_exists($dbFile)) + if($confirm == 'no' && file_exists($dbFile)) { $this->view->title = $this->lang->extension->waring; $this->view->confirm = 'no'; @@ -182,6 +184,7 @@ class extension extends control return $this->display(); } + /* 相关依赖插件检查。 */ $dependsExts = $this->extension->checkDepends($extension); if($dependsExts) { @@ -189,6 +192,7 @@ class extension extends control return $this->display(); } + /* 卸载前的钩子加载。 */ if($preUninstallHook = $this->extension->getHookFile($extension, 'preuninstall')) include $preUninstallHook; if(file_exists($dbFile)) $this->view->backupFile = $this->extension->backupDB($extension); @@ -200,6 +204,7 @@ class extension extends control $this->view->title = $this->lang->extension->uninstallFinished; $this->view->removeCommands = $this->extension->removePackage($extension); + /* 卸载后的钩子加载。 */ if($postUninstallHook = $this->extension->getHookFile($extension, 'postuninstall')) include $postUninstallHook; $this->display(); } diff --git a/module/extension/ui/safe.html.php b/module/extension/ui/safe.html.php index 91562f06ff..4611422f51 100644 --- a/module/extension/ui/safe.html.php +++ b/module/extension/ui/safe.html.php @@ -19,11 +19,10 @@ panel ), btn ( - on::click('loadCurrentPage'), + on::click(isInModal() ? "loadModal('', '', {loadingClass: ''})" : "loadCurrentPage"), set::type('primary'), $lang->extension->refreshPage ) ); -render('page'); - +render(); diff --git a/module/extension/ui/uninstall.html.php b/module/extension/ui/uninstall.html.php index 4d08d56fff..b37e6e77e7 100644 --- a/module/extension/ui/uninstall.html.php +++ b/module/extension/ui/uninstall.html.php @@ -45,7 +45,7 @@ elseif(!empty($error)) ), div ( - div + div ( setClass('alert-heading'), $lang->extension->uninstallFailed