diff options
Diffstat (limited to 'admin')
-rw-r--r-- | admin/include/functions_plugins.inc.php | 30 | ||||
-rw-r--r-- | admin/plugins.php | 18 | ||||
-rw-r--r-- | admin/plugins_list.php | 4 | ||||
-rw-r--r-- | admin/plugins_new.php | 114 | ||||
-rw-r--r-- | admin/plugins_update.php | 170 |
5 files changed, 174 insertions, 162 deletions
diff --git a/admin/include/functions_plugins.inc.php b/admin/include/functions_plugins.inc.php index 25ad0dd65..9b59fdb0f 100644 --- a/admin/include/functions_plugins.inc.php +++ b/admin/include/functions_plugins.inc.php @@ -182,18 +182,24 @@ function extract_plugin_files($action, $source, $dest) { // we search main.inc.php in archive if (basename($file['filename']) == 'main.inc.php' - and (!isset($main_filepath) or strlen($file['filename']) < strlen($main_filepath))) + and (!isset($main_filepath) + or strlen($file['filename']) < strlen($main_filepath))) { $main_filepath = $file['filename']; } } - if (isset($main_filepath)) { $root = dirname($main_filepath); // main.inc.php path in archive - if ($action == 'upgrade') $extract_path = PHPWG_PLUGINS_PATH . $dest; - else $extract_path = PHPWG_PLUGINS_PATH . ($root == '.' ? 'extension_' . $dest : basename($root)); - + if ($action == 'upgrade') + { + $extract_path = PHPWG_PLUGINS_PATH.$dest; + } + else + { + $extract_path = PHPWG_PLUGINS_PATH + . ($root == '.' ? 'extension_' . $dest : basename($root)); + } if($result = $zip->extract(PCLZIP_OPT_PATH, $extract_path, PCLZIP_OPT_REMOVE_PATH, $root, PCLZIP_OPT_REPLACE_NEWER)) @@ -226,7 +232,7 @@ function extract_plugin_files($action, $source, $dest) * delete $path directory * @param string - path */ -function pm_deltree($path) +function deltree($path) { if (is_dir($path)) { @@ -236,8 +242,14 @@ function pm_deltree($path) if ($file != '.' and $file != '..') { $pathfile = $path . '/' . $file; - if (is_dir($pathfile)) pm_deltree($pathfile); - else @unlink($pathfile); + if (is_dir($pathfile)) + { + deltree($pathfile); + } + else + { + @unlink($pathfile); + } } } closedir($fh); @@ -250,7 +262,7 @@ function pm_deltree($path) * send $path to trash directory * @param string - path */ -function send_pm_trash($path) +function send_to_trash($path) { $trash_path = PHPWG_PLUGINS_PATH . 'trash'; if (!is_dir($trash_path)) diff --git a/admin/plugins.php b/admin/plugins.php index 63054fc55..d40158b33 100644 --- a/admin/plugins.php +++ b/admin/plugins.php @@ -151,26 +151,26 @@ DELETE FROM ' . PLUGINS_TABLE . ' WHERE id="' . $plugin_id . '"'; } } break; - + case 'delete': - if (!pm_deltree(PHPWG_PLUGINS_PATH . $plugin_id)) + if (!deltree(PHPWG_PLUGINS_PATH . $plugin_id)) { - send_pm_trash(PHPWG_PLUGINS_PATH . $plugin_id); + send_to_trash(PHPWG_PLUGINS_PATH . $plugin_id); } break; } if (empty($errors)) - { - $my_base_url .= isset($_GET['upgrade']) ? + { + $my_base_url .= isset($_GET['upgrade']) ? '&plugin='.$plugin_id.'&upgrade='.$_GET['upgrade'].'&reactivate=true':''; - $my_base_url .= isset($_GET['upgradestatus']) ? + $my_base_url .= isset($_GET['upgradestatus']) ? '&plugin='.$plugin_id.'&upgradestatus='.$_GET['upgradestatus']:''; - redirect($my_base_url); + redirect($my_base_url); } - else - { + else + { $page['errors'] = array_merge($page['errors'], $errors); } } diff --git a/admin/plugins_list.php b/admin/plugins_list.php index a4c41e868..7e7a153cb 100644 --- a/admin/plugins_list.php +++ b/admin/plugins_list.php @@ -80,7 +80,7 @@ foreach($fs_plugins as $plugin_id => $fs_plugin) 'VERSION' => $fs_plugin['version'], 'DESCRIPTION' => $desc); - $action_url = htmlentities($my_base_url) . '&plugin=' . $plugin_id; + $action_url = htmlentities($my_base_url) . '&plugin=' . $plugin_id; if (isset($db_plugins_by_id[$plugin_id])) { @@ -109,7 +109,7 @@ foreach($fs_plugins as $plugin_id => $fs_plugin) array('U_ACTION' => $action_url . '&action=install', 'L_ACTION' => l10n('Install'), 'CONFIRM' => l10n('Are you sure?')); - $tpl_plugin['actions'][] = + $tpl_plugin['actions'][] = array('U_ACTION' => $action_url . '&action=delete', 'L_ACTION' => l10n('plugins_delete'), 'CONFIRM' => l10n('plugins_confirm_delete')); diff --git a/admin/plugins_new.php b/admin/plugins_new.php index f7fc21a75..e3bdf8f7d 100644 --- a/admin/plugins_new.php +++ b/admin/plugins_new.php @@ -34,40 +34,40 @@ $template->set_filenames(array('plugins' => 'admin/plugins_new.tpl')); //------------------------------------------------------automatic installation if (isset($_GET['install']) and isset($_GET['extension']) and !is_adviser()) { - include(PHPWG_ROOT_PATH.'admin/include/pclzip.lib.php'); + include(PHPWG_ROOT_PATH.'admin/include/pclzip.lib.php'); - $install_status = extract_plugin_files('install', - $_GET['install'], - $_GET['extension']); + $install_status = extract_plugin_files('install', + $_GET['install'], + $_GET['extension']); - redirect($my_base_url . '&installstatus=' . $install_status); + redirect($my_base_url . '&installstatus=' . $install_status); } //--------------------------------------------------------------install result if (isset($_GET['installstatus'])) { - switch ($_GET['installstatus']) - { - case 'ok': - array_push($page['infos'], l10n('plugins_install_ok'), l10n('plugins_install_need_activate')); - break; - - case 'temp_path_error': - array_push($page['errors'], l10n('plugins_temp_path_error')); - break; - - case 'dl_archive_error': - array_push($page['errors'], l10n('plugins_dl_archive_error')); - break; + switch ($_GET['installstatus']) + { + case 'ok': + array_push($page['infos'], l10n('plugins_install_ok'), l10n('plugins_install_need_activate')); + break; + + case 'temp_path_error': + array_push($page['errors'], l10n('plugins_temp_path_error')); + break; + + case 'dl_archive_error': + array_push($page['errors'], l10n('plugins_dl_archive_error')); + break; - case 'archive_error': - array_push($page['errors'], l10n('plugins_archive_error')); - break; + case 'archive_error': + array_push($page['errors'], l10n('plugins_archive_error')); + break; - default: - array_push($page['errors'], sprintf(l10n('plugins_extract_error'), $_GET['installstatus']), l10n('plugins_check_chmod')); - } + default: + array_push($page['errors'], sprintf(l10n('plugins_extract_error'), $_GET['installstatus']), l10n('plugins_check_chmod')); + } } @@ -88,45 +88,45 @@ $template->assign('selected', htmlentities($my_base_url.'&order=').$order); $plugins_infos = check_server_plugins(true); if ($plugins_infos !== false) { - if ($order == 'date') krsort($plugins_infos); - else uasort($plugins_infos, 'extension_'.$order.'_compare'); - - foreach($plugins_infos as $plugin) - { - $ext_desc = nl2br(htmlspecialchars(strip_tags( + if ($order == 'date') krsort($plugins_infos); + else uasort($plugins_infos, 'extension_'.$order.'_compare'); + + foreach($plugins_infos as $plugin) + { + $ext_desc = nl2br(htmlspecialchars(strip_tags( utf8_encode($plugin['ext_description'])))); - - $ver_desc = sprintf(l10n('plugins_description'), - $plugin['version'], - date('Y-m-d', $plugin['date']), - nl2br(htmlspecialchars(strip_tags( + + $ver_desc = sprintf(l10n('plugins_description'), + $plugin['version'], + date('Y-m-d', $plugin['date']), + nl2br(htmlspecialchars(strip_tags( utf8_encode($plugin['description']))))); - - $url_auto_install = htmlentities($my_base_url) - . '&extension=' . $plugin['id_extension'] - . '&install=%2Fupload%2Fextension-' . $plugin['id_extension'] - . '%2Frevision-' . $plugin['id_revision'] . '%2F' + + $url_auto_install = htmlentities($my_base_url) + . '&extension=' . $plugin['id_extension'] + . '&install=%2Fupload%2Fextension-' . $plugin['id_extension'] + . '%2Frevision-' . $plugin['id_revision'] . '%2F' . str_replace(' ', '%20',$plugin['url']); - - $url_download = PEM_URL .'/upload/extension-'.$plugin['id_extension'] - . '/revision-' . $plugin['id_revision'] - . '/' . $plugin['url']; - - $template->append('plugins', - array('EXT_NAME' => $plugin['ext_name'], - 'EXT_URL' => PEM_URL.'/extension_view.php?eid='.$plugin['id_extension'], - 'EXT_DESC' => $ext_desc, - 'VERSION' => $plugin['version'], - 'VERSION_URL' => PEM_URL.'/revision_view.php?rid='.$plugin['id_revision'], - 'VER_DESC' => $ver_desc, - 'AUTHOR' => $plugin['author'], - 'URL_INSTALL' => $url_auto_install, - 'URL_DOWNLOAD' => $url_download)); - } + + $url_download = PEM_URL .'/upload/extension-'.$plugin['id_extension'] + . '/revision-' . $plugin['id_revision'] + . '/' . $plugin['url']; + + $template->append('plugins', + array('EXT_NAME' => $plugin['ext_name'], + 'EXT_URL' => PEM_URL.'/extension_view.php?eid='.$plugin['id_extension'], + 'EXT_DESC' => $ext_desc, + 'VERSION' => $plugin['version'], + 'VERSION_URL' => PEM_URL.'/revision_view.php?rid='.$plugin['id_revision'], + 'VER_DESC' => $ver_desc, + 'AUTHOR' => $plugin['author'], + 'URL_INSTALL' => $url_auto_install, + 'URL_DOWNLOAD' => $url_download)); + } } else { - array_push($page['errors'], l10n('plugins_server_error')); + array_push($page['errors'], l10n('plugins_server_error')); } ?>
\ No newline at end of file diff --git a/admin/plugins_update.php b/admin/plugins_update.php index f92eb112d..2e9e22cd5 100644 --- a/admin/plugins_update.php +++ b/admin/plugins_update.php @@ -34,46 +34,46 @@ $template->set_filenames(array('plugins' => 'admin/plugins_update.tpl')); //-----------------------------------------------------------automatic upgrade if (isset($_GET['upgrade']) and isset($_GET['plugin']) and !is_adviser()) { - include(PHPWG_ROOT_PATH.'admin/include/pclzip.lib.php'); + include(PHPWG_ROOT_PATH.'admin/include/pclzip.lib.php'); - $upgrade_status = extract_plugin_files('upgrade', - $_GET['upgrade'], - $_GET['plugin']); + $upgrade_status = extract_plugin_files('upgrade', + $_GET['upgrade'], + $_GET['plugin']); - $my_base_url .= isset($_GET['reactivate']) ? '&action=activate' : ''; + $my_base_url .= isset($_GET['reactivate']) ? '&action=activate' : ''; - redirect($my_base_url.'&plugin='.$_GET['plugin'].'&upgradestatus='.$upgrade_status); + redirect($my_base_url.'&plugin='.$_GET['plugin'].'&upgradestatus='.$upgrade_status); } //--------------------------------------------------------------upgrade result if (isset($_GET['upgradestatus']) and isset($_GET['plugin'])) { - switch ($_GET['upgradestatus']) - { - case 'ok': - array_push($page['infos'], + switch ($_GET['upgradestatus']) + { + case 'ok': + array_push($page['infos'], sprintf(l10n('plugins_upgrade_ok'), $fs_plugins[$_GET['plugin']]['name'])); - break; - - case 'temp_path_error': - array_push($page['errors'], l10n('plugins_temp_path_error')); - break; - - case 'dl_archive_error': - array_push($page['errors'], l10n('plugins_dl_archive_error')); - break; - - case 'archive_error': - array_push($page['errors'], l10n('plugins_archive_error')); - break; - - default: - array_push($page['errors'], + break; + + case 'temp_path_error': + array_push($page['errors'], l10n('plugins_temp_path_error')); + break; + + case 'dl_archive_error': + array_push($page['errors'], l10n('plugins_dl_archive_error')); + break; + + case 'archive_error': + array_push($page['errors'], l10n('plugins_archive_error')); + break; + + default: + array_push($page['errors'], sprintf(l10n('plugins_extract_error'), - $_GET['upgradestatus'])); - } + $_GET['upgradestatus'])); + } } @@ -84,75 +84,75 @@ $plugins_infos = check_server_plugins(); if ($plugins_infos !== false) { - foreach($fs_plugins as $plugin_id => $fs_plugin) - { - if (isset($fs_plugin['extension']) + foreach($fs_plugins as $plugin_id => $fs_plugin) + { + if (isset($fs_plugin['extension']) and isset($plugins_infos[$fs_plugin['extension']])) - { - $plugin_info = $plugins_infos[$fs_plugin['extension']]; - - $ext_desc = nl2br(htmlspecialchars(strip_tags( + { + $plugin_info = $plugins_infos[$fs_plugin['extension']]; + + $ext_desc = nl2br(htmlspecialchars(strip_tags( utf8_encode($plugin_info['ext_description'])))); - - $ver_desc = sprintf(l10n('plugins_description'), - $plugin_info['version'], - date('Y-m-d', $plugin_info['date']), - nl2br(htmlspecialchars(strip_tags( + + $ver_desc = sprintf(l10n('plugins_description'), + $plugin_info['version'], + date('Y-m-d', $plugin_info['date']), + nl2br(htmlspecialchars(strip_tags( utf8_encode($plugin_info['description']))))); - - if ($plugin_info['version'] == $fs_plugin['version']) - { - // Plugin is up to date - $template->append('plugins_uptodate', - array('URL' => $fs_plugin['uri'], - 'NAME' => $fs_plugin['name'], - 'EXT_DESC' => $ext_desc, - 'VERSION' => $fs_plugin['version'], - 'VER_DESC' => $ver_desc)); - } - else - { - // Plugin need upgrade - $url_auto_update = htmlentities($my_base_url) - . '&plugin=' . $plugin_id - . ( + + if ($plugin_info['version'] == $fs_plugin['version']) + { + // Plugin is up to date + $template->append('plugins_uptodate', + array('URL' => $fs_plugin['uri'], + 'NAME' => $fs_plugin['name'], + 'EXT_DESC' => $ext_desc, + 'VERSION' => $fs_plugin['version'], + 'VER_DESC' => $ver_desc)); + } + else + { + // Plugin need upgrade + $url_auto_update = htmlentities($my_base_url) + . '&plugin=' . $plugin_id + . ( (isset($db_plugins_by_id[$plugin_id]) and $db_plugins_by_id[$plugin_id]['state'] == 'active' and $plugin_id != PLUGINSMANAGER_DIR) ? '&action=deactivate' : '' ) - . '&upgrade=%2Fupload%2Fextension-' . $fs_plugin['extension'] - . '%2Frevision-' . $plugin_info['id_revision'] + . '&upgrade=%2Fupload%2Fextension-' . $fs_plugin['extension'] + . '%2Frevision-' . $plugin_info['id_revision'] . '%2F' . $plugin_info['url']; - - $url_download = PEM_URL.'/upload/extension-'. $fs_plugin['extension'] - . '/revision-' . $plugin_info['id_revision'] - . '/' . $plugin_info['url']; - - $template->append('plugins_not_uptodate', - array('EXT_NAME' => $fs_plugin['name'], - 'EXT_URL' => $fs_plugin['uri'], - 'EXT_DESC' => $ext_desc, - 'VERSION' => $fs_plugin['version'], - 'VERSION_URL' => PEM_URL.'/revision_view.php?rid='.$plugin_info['id_revision'], - 'NEW_VERSION' => $plugin_info['version'], - 'NEW_VER_DESC' => $ver_desc, - 'URL_UPDATE' => $url_auto_update, - 'URL_DOWNLOAD' => $url_download)); - } - } - else - { - // Can't check plugin - $template->append('plugins_cant_check', - array('NAME' => $fs_plugin['name'], - 'VERSION' => $fs_plugin['version'])); - } - } + + $url_download = PEM_URL.'/upload/extension-'. $fs_plugin['extension'] + . '/revision-' . $plugin_info['id_revision'] + . '/' . $plugin_info['url']; + + $template->append('plugins_not_uptodate', + array('EXT_NAME' => $fs_plugin['name'], + 'EXT_URL' => $fs_plugin['uri'], + 'EXT_DESC' => $ext_desc, + 'VERSION' => $fs_plugin['version'], + 'VERSION_URL' => PEM_URL.'/revision_view.php?rid='.$plugin_info['id_revision'], + 'NEW_VERSION' => $plugin_info['version'], + 'NEW_VER_DESC' => $ver_desc, + 'URL_UPDATE' => $url_auto_update, + 'URL_DOWNLOAD' => $url_download)); + } + } + else + { + // Can't check plugin + $template->append('plugins_cant_check', + array('NAME' => $fs_plugin['name'], + 'VERSION' => $fs_plugin['version'])); + } + } } else { - array_push($page['errors'], l10n('plugins_server_error')); + array_push($page['errors'], l10n('plugins_server_error')); } ?>
\ No newline at end of file |