From d95425b9bba002fa2817a4e0fa61edf721c88c45 Mon Sep 17 00:00:00 2001 From: mistic100 Date: Sun, 7 Jul 2013 11:28:12 +0000 Subject: bug:2898 make some updates methods static + factorize code from plugins, themes & languages git-svn-id: http://piwigo.org/svn/trunk@23821 68402e56-0260-453c-a942-63ccdbb3a9ee --- admin/include/plugins.class.php | 63 ++--------------------------------------- 1 file changed, 2 insertions(+), 61 deletions(-) (limited to 'admin/include/plugins.class.php') diff --git a/admin/include/plugins.class.php b/admin/include/plugins.class.php index 3c0cb6ffa..36f47924b 100644 --- a/admin/include/plugins.class.php +++ b/admin/include/plugins.class.php @@ -166,10 +166,7 @@ DELETE FROM ' . PLUGINS_TABLE . ' WHERE id=\'' . $plugin_id . '\''; { break; } - if (!$this->deltree(PHPWG_PLUGINS_PATH . $plugin_id)) - { - $this->send_to_trash(PHPWG_PLUGINS_PATH . $plugin_id); - } + deltree(PHPWG_PLUGINS_PATH . $plugin_id, PHPWG_PLUGINS_PATH . 'trash'); break; } return $errors; @@ -514,10 +511,7 @@ DELETE FROM ' . PLUGINS_TABLE . ' WHERE id=\'' . $plugin_id . '\''; } elseif (is_dir($path)) { - if (!$this->deltree($path)) - { - $this->send_to_trash($path); - } + deltree($path, PHPWG_PLUGINS_PATH . 'trash'); } } } @@ -553,59 +547,6 @@ DELETE FROM ' . PLUGINS_TABLE . ' WHERE id=\'' . $plugin_id . '\''; } return $merged_extensions; } - - /** - * delete $path directory - * @param string - path - */ - function deltree($path) - { - if (is_dir($path)) - { - $fh = opendir($path); - while ($file = readdir($fh)) - { - if ($file != '.' and $file != '..') - { - $pathfile = $path . '/' . $file; - if (is_dir($pathfile)) - { - $this->deltree($pathfile); - } - else - { - @unlink($pathfile); - } - } - } - closedir($fh); - return @rmdir($path); - } - } - - /** - * send $path to trash directory - * @param string - path - */ - function send_to_trash($path) - { - $trash_path = PHPWG_PLUGINS_PATH . 'trash'; - if (!is_dir($trash_path)) - { - @mkdir($trash_path); - $file = @fopen($trash_path . '/.htaccess', 'w'); - @fwrite($file, 'deny from all'); - @fclose($file); - } - while ($r = $trash_path . '/' . md5(uniqid(rand(), true))) - { - if (!is_dir($r)) - { - @rename($path, $r); - break; - } - } - } /** * Sort functions -- cgit v1.2.3