pandorafms/pandora_console/extensions/extension_uploader.php

71 lines
2.1 KiB
PHP
Raw Normal View History

<?php
// Pandora FMS - http://pandorafms.com
// ==================================================
// Copyright (c) 2005-2010 Artica Soluciones Tecnologicas
// Please see http://pandorafms.org for full contribution list
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation for version 2.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
function extension_uploader_extensions() {
global $config;
print_page_header (__("Uploader extension"), "images/extensions.png", false, "", true, "");
$upload = (bool)get_parameter('upload', 0);
if ($upload) {
$error = $_FILES['extension']['error'];
if ($error == 0) {
$zip = new ZipArchive;
$tmpName = $_FILES['extension']['tmp_name'];
$pathname = $config['homedir'] . '/' . EXTENSIONS_DIR . '/';
if ($zip->open($tmpName) === true) {
$result = $zip->extractTo($pathname);
}
else {
$result = false;
}
}
else {
$result = false;
}
if ($result) {
pandora_audit ("Extension manager", "Upload extension " . $_FILES['extension']['name']);
}
print_result_message ($result, __('Success to upload extension'),
__('Fail to upload extension'));
}
$table = null;
$table->width = '50%';
$table->data = array();
$table->data[0][0] = __('Upload extension');
$table->data[0][1] = print_input_file('extension', true) .
print_help_tip (__("Upload the extension as a zip file."), true);
echo "<form method='post' enctype='multipart/form-data'>";
print_table($table);
echo "<div style='text-align: right; width: " . $table->width . "'>";
print_input_hidden('upload', 1);
print_submit_button(__('Upload'), 'submit', false, 'class="sub add"');
echo "</div>";
echo "</form>";
}
add_godmode_menu_option(__('Extension uploader'), 'AM', 'gextensions');
add_extension_godmode_function('extension_uploader_extensions');
?>