0byt3m1n1
Path:
/
data
/
27
/
5
/
48
/
71
/
5374886
/
user
/
6435255
/
htdocs
/
wp-content
/
plugins
/
duplicator
/
[
Home
]
File: uninstall.php
<?php /** * Fired when the plugin is uninstalled. */ // If uninstall not called from WordPress, then exit if ( ! defined( 'WP_UNINSTALL_PLUGIN' ) ) { exit; } require_once 'define.php'; require_once 'classes/class.settings.php'; require_once 'classes/utilities/class.u.php'; global $wpdb; $DUP_Settings = new DUP_Settings(); $table_name = $wpdb->prefix . "duplicator_packages"; $wpdb->query("DROP TABLE IF EXISTS `{$table_name}`"); delete_option('duplicator_version_plugin'); //Remove entire wp-snapshots directory if (DUP_Settings::Get('uninstall_files')) { $ssdir = DUP_Util::safePath(DUPLICATOR_SSDIR_PATH); $ssdir_tmp = DUP_Util::safePath(DUPLICATOR_SSDIR_PATH_TMP); $ssdir_installer = DUP_Util::safePath(DUPLICATOR_SSDIR_PATH . '/installer'); //Sanity check for strange setup $check = glob("{$ssdir}/wp-config.php"); if (count($check) == 0) { //PHP sanity check foreach (glob("{$ssdir}/*_database.sql") as $file) { if (strstr($file, '_database.sql')) @unlink("{$file}"); } foreach (glob("{$ssdir}/*_installer.php") as $file) { if (strstr($file, '_installer.php')) @unlink("{$file}"); } foreach (glob("{$ssdir}/*_archive.zip*") as $file) { if (strstr($file, '_archive.zip')) @unlink("{$file}"); } foreach (glob("{$ssdir}/*_archive.daf") as $file) { if (strstr($file, '_archive.daf')) @unlink("{$file}"); } foreach (glob("{$ssdir}/*_scan.json") as $file) { if (strstr($file, '_scan.json')) @unlink("{$file}"); } foreach (glob("{$ssdir}/*.log") as $file) { if (strstr($file, '.log')) @unlink("{$file}"); } foreach (glob("{$ssdir}/*.log1") as $file) { if (strstr($file, '.log1')) @unlink("{$file}"); } //Check for core files and only continue removing data if the snapshots directory //has not been edited by 3rd party sources, this helps to keep the system stable $files = glob("{$ssdir}/*"); if (is_array($files) && count($files) < 6) { $defaults = array("{$ssdir}/index.php", "{$ssdir}/robots.txt", "{$ssdir}/dtoken.php"); $compare = array_diff($defaults, $files); //There might be a .htaccess file or index.php/html etc. if (count($compare) < 3) { foreach ($defaults as $file) { @unlink("{$file}"); } @unlink("{$ssdir}/.htaccess"); //installer log from previous install foreach (glob("{$ssdir_installer}/*.txt") as $file) { if (strstr($file, '.txt')) @unlink("{$file}"); } if (strstr($ssdir, 'wp-snapshots')) { @rmdir($ssdir_installer); @rmdir($ssdir_tmp); @rmdir($ssdir); } } } } } //Remove all Settings if (DUP_Settings::Get('uninstall_settings')) { DUP_Settings::Delete(); delete_option('duplicator_ui_view_state'); delete_option('duplicator_package_active'); delete_option("duplicator_exe_safe_mode"); } ?>