2007-02-20 02:38:59 +01:00
|
|
|
<?php
|
2008-08-22 20:07:32 +02:00
|
|
|
// Pandora FMS - the Flexible Monitoring System
|
|
|
|
// ============================================
|
|
|
|
// Copyright (c) 2008 Artica Soluciones Tecnologicas, http://www.artica.es
|
2008-01-10 17:40:00 +01:00
|
|
|
// Please see http://pandora.sourceforge.net for full contribution list
|
2007-02-20 02:38:59 +01:00
|
|
|
|
|
|
|
// This program is free software; you can redistribute it and/or
|
|
|
|
// modify it under the terms of the GNU General Public License
|
2008-08-22 20:07:32 +02:00
|
|
|
// as published by the Free Software Foundation for version 2.
|
2007-02-20 02:38:59 +01:00
|
|
|
// 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.
|
|
|
|
// You should have received a copy of the GNU General Public License
|
|
|
|
// along with this program; if not, write to the Free Software
|
|
|
|
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
|
|
|
|
?>
|
|
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
|
|
<html>
|
|
|
|
<head>
|
|
|
|
<title>Pandora FMS - Installation Wizard</title>
|
|
|
|
<meta http-equiv="expires" content="0">
|
2007-09-04 13:32:19 +02:00
|
|
|
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
2007-02-20 02:38:59 +01:00
|
|
|
<meta name="resource-type" content="document">
|
|
|
|
<meta name="distribution" content="global">
|
|
|
|
<meta name="author" content="Sancho Lerena, Raul Mateos">
|
|
|
|
<meta name="copyright" content="This is GPL software. Created by Sancho Lerena and others">
|
|
|
|
<meta name="keywords" content="pandora, fms, monitoring, network, system, GPL, software">
|
|
|
|
<meta name="robots" content="index, follow">
|
|
|
|
<link rel="icon" href="images/pandora.ico" type="image/ico">
|
2007-06-02 15:52:45 +02:00
|
|
|
<link rel="stylesheet" href="include/styles/pandora_minimal.css" type="text/css">
|
2007-05-27 14:11:15 +02:00
|
|
|
<link rel="stylesheet" href="include/styles/install.css" type="text/css">
|
|
|
|
</head>
|
2008-08-22 20:07:32 +02:00
|
|
|
<body bgcolor="#555555">
|
2007-05-27 14:11:15 +02:00
|
|
|
|
|
|
|
<?php
|
2007-02-20 02:38:59 +01:00
|
|
|
|
|
|
|
error_reporting(0);
|
|
|
|
|
|
|
|
function check_extension ( $ext, $label ){
|
|
|
|
echo "<tr><td>";
|
2007-06-27 19:45:42 +02:00
|
|
|
echo "<span class='arr'> $label </span>";
|
2007-02-20 02:38:59 +01:00
|
|
|
echo "</td><td>";
|
|
|
|
if (!extension_loaded($ext)){
|
2007-06-27 19:45:42 +02:00
|
|
|
echo "<img src='images/dot_red.png'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
return 1;
|
|
|
|
} else {
|
2007-06-27 19:45:42 +02:00
|
|
|
echo "<img src='images/dot_green.png'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
echo "</td></tr>";
|
|
|
|
}
|
|
|
|
|
|
|
|
function check_include ( $ext, $label ){
|
|
|
|
echo "<tr><td>";
|
2007-06-27 19:45:42 +02:00
|
|
|
echo "<span class='arr'> $label </span>";
|
2007-02-20 02:38:59 +01:00
|
|
|
echo "</td><td>";
|
|
|
|
if (!include($ext)){
|
2007-06-27 19:45:42 +02:00
|
|
|
echo "<img src='images/dot_red.png'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
return 1;
|
|
|
|
} else {
|
2007-06-27 19:45:42 +02:00
|
|
|
echo "<img src='images/dot_green.png'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
echo "</td></tr>";
|
|
|
|
}
|
|
|
|
|
|
|
|
function check_exists ( $file, $label ){
|
|
|
|
echo "<tr><td>";
|
2007-06-27 19:45:42 +02:00
|
|
|
echo "<span class='arr'> $label </span>";
|
2007-02-20 02:38:59 +01:00
|
|
|
echo "</td><td>";
|
|
|
|
if (!file_exists ($file)){
|
2007-06-27 19:45:42 +02:00
|
|
|
echo " <img src='images/dot_red.png'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
return 1;
|
|
|
|
} else {
|
2007-06-27 19:45:42 +02:00
|
|
|
echo " <img src='images/dot_green.png'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
echo "</td></tr>";
|
|
|
|
}
|
|
|
|
|
|
|
|
function check_generic ( $ok, $label ){
|
|
|
|
echo "<tr><td>";
|
2007-06-27 19:45:42 +02:00
|
|
|
echo "<span class='arr'> $label </span>";
|
2007-02-20 02:38:59 +01:00
|
|
|
echo "</td><td>";
|
|
|
|
if ($ok == 0 ){
|
2007-06-27 19:45:42 +02:00
|
|
|
echo " <img src='images/dot_red.png'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
return 1;
|
|
|
|
} else {
|
2007-06-27 19:45:42 +02:00
|
|
|
echo " <img src='images/dot_green.png'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
echo "</td></tr>";
|
|
|
|
}
|
|
|
|
|
2008-09-01 06:22:26 +02:00
|
|
|
function check_writable ( $fullpath, $label ){
|
|
|
|
echo "<tr><td>";
|
|
|
|
echo "<span class='arr'> $label </span>";
|
|
|
|
echo "</td><td>";
|
|
|
|
if (file_exists($fullpath))
|
|
|
|
if (is_writable($fullpath)){
|
|
|
|
echo " <img src='images/dot_green.png'>";
|
|
|
|
echo "</td></tr>";
|
|
|
|
return 0;
|
|
|
|
} else {
|
|
|
|
echo " <img src='images/dot_red.png'>";
|
|
|
|
echo "</td></tr>";
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
echo " <img src='images/dot_red.png'>";
|
|
|
|
echo "</td></tr>";
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2007-02-20 02:38:59 +01:00
|
|
|
function check_variable ( $var, $value, $label, $mode ){
|
|
|
|
echo "<tr><td>";
|
2007-06-27 19:45:42 +02:00
|
|
|
echo "<span class='arr'> $label </span>";
|
2007-02-20 02:38:59 +01:00
|
|
|
echo "</td><td>";
|
|
|
|
if ($mode == 1){
|
|
|
|
if ($var >= $value){
|
2007-06-27 19:45:42 +02:00
|
|
|
echo " <img src='images/dot_green.png'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
return 0;
|
|
|
|
} else {
|
2007-06-27 19:45:42 +02:00
|
|
|
echo " <img src='images/dot_red.png'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
} elseif ($var == $value){
|
2007-06-27 19:45:42 +02:00
|
|
|
echo " <img src='images/dot_green.png'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
return 0;
|
|
|
|
} else {
|
2007-06-27 19:45:42 +02:00
|
|
|
echo " <img src='images/dot_red.png'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
echo "</td></tr>";
|
|
|
|
}
|
|
|
|
|
2007-04-11 05:12:48 +02:00
|
|
|
function parse_mysql_dump($url){
|
|
|
|
if (file_exists($url)){
|
|
|
|
$file_content = file($url);
|
|
|
|
$query = "";
|
|
|
|
foreach($file_content as $sql_line){
|
|
|
|
if(trim($sql_line) != "" && strpos($sql_line, "--") === false){
|
|
|
|
$query .= $sql_line;
|
|
|
|
if(preg_match("/;[\040]*\$/", $sql_line)){
|
2008-07-07 19:33:31 +02:00
|
|
|
//echo "DEBUG $query <br>"; //Uncomment for debug
|
|
|
|
if (!$result = mysql_query($query)) {
|
|
|
|
// echo mysql_errno() . ": " . mysql_error(); //Uncomment for debug
|
2007-04-11 05:12:48 +02:00
|
|
|
return 0;
|
2008-07-07 19:33:31 +02:00
|
|
|
}
|
2007-04-11 05:12:48 +02:00
|
|
|
$query = "";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return 1;
|
|
|
|
} else {
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
function random_name ($size){
|
|
|
|
$temp = "";
|
|
|
|
for ($a=0;$a< $size;$a++)
|
|
|
|
$temp = $temp. chr(rand(122,97));
|
|
|
|
return $temp;
|
|
|
|
}
|
|
|
|
|
|
|
|
function install_step1() {
|
|
|
|
echo "
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='install_container'>
|
2007-04-24 15:38:44 +02:00
|
|
|
<h1>Pandora FMS installation wizard. Step #1 of 4</h1>
|
2008-09-01 06:22:26 +02:00
|
|
|
<div id='wizard' style='height: 490px;'>
|
2007-04-11 05:12:48 +02:00
|
|
|
<div id='install_box'>
|
2008-08-22 20:07:32 +02:00
|
|
|
<h2>Welcome to Pandora FMS 2.0 installation Wizard</h2>
|
2007-04-11 05:12:48 +02:00
|
|
|
<p>This wizard helps you to quick install Pandora FMS console in your system.</p>
|
2008-08-27 12:13:25 +02:00
|
|
|
<p>In four steps checks all dependencies and make your configuration
|
|
|
|
for a quick installation.</p>
|
2007-04-11 05:12:48 +02:00
|
|
|
<p>For more information, please refer to documentation.</p>
|
2007-05-27 14:11:15 +02:00
|
|
|
<i>Pandora FMS Development Team</i>
|
2007-04-11 05:12:48 +02:00
|
|
|
";
|
|
|
|
if (file_exists("include/config.php")){
|
2008-08-27 12:13:25 +02:00
|
|
|
echo "<div class='warn'><b>Warning:</b> You already have a config.php file.
|
|
|
|
Configuration and database would be overwritten if you continued.</div>";
|
2007-04-11 05:12:48 +02:00
|
|
|
}
|
2008-09-01 06:22:26 +02:00
|
|
|
echo "<table width=100%>";
|
2008-09-18 14:01:32 +02:00
|
|
|
$writable = check_writable ( "include", "Checking if ./include is writable");
|
2008-09-01 06:22:26 +02:00
|
|
|
if (file_exists("include/config.php"))
|
|
|
|
$writable += check_writable ( "include/config.php", "Checking if include/config.php is writable");
|
|
|
|
echo "</table>";
|
|
|
|
|
2008-08-27 12:13:25 +02:00
|
|
|
echo "<div class='warn'><b>Warning:</b> This installer will <b>overwrite and destroy</b>
|
|
|
|
your existing Pandora FMS configuration and <b>Database</b>. Before continue,
|
|
|
|
please <b>be sure that you have no valuable Pandora FMS data in your Database</b>.<br>
|
|
|
|
</div>";
|
|
|
|
|
|
|
|
echo "<div class='info'><b>Upgrade</b>:
|
|
|
|
If you want to upgrade from Pandora FMS 1.3.x to 2.0 version,
|
|
|
|
please download the migration tool from our website at
|
|
|
|
<a href='http://www.pandorafms.com'>PandoraFMS.com web site</a>.</div>";
|
|
|
|
|
2007-04-11 05:12:48 +02:00
|
|
|
echo "
|
|
|
|
</div>
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='logo_img'>
|
2007-06-02 15:52:45 +02:00
|
|
|
<img src='images/pandora_logo.png' border='0'><br>
|
2007-04-11 05:12:48 +02:00
|
|
|
<img src='images/step0.png' border='0'>
|
|
|
|
</div>
|
2008-09-01 06:22:26 +02:00
|
|
|
<div id='install_img'>";
|
|
|
|
if ($writable == 0)
|
|
|
|
echo "
|
|
|
|
<a href='install.php?step=2'><img align='right' src='images/arrow_next.png' border='0'></a>";
|
|
|
|
else
|
|
|
|
echo "<div class='warn'><b>ERROR:</b>You need to setup permissions to be able to write in ./include directory</div>";
|
|
|
|
echo "
|
2007-04-11 05:12:48 +02:00
|
|
|
</div>
|
2007-05-27 14:11:15 +02:00
|
|
|
</div>
|
|
|
|
<div id='foot_install'>
|
2008-09-01 06:22:26 +02:00
|
|
|
<i>Pandora FMS is an OpenSource Software project registered at
|
2008-08-27 12:13:25 +02:00
|
|
|
<a target='_new' href='http://pandora.sourceforge.net'>SourceForge</a></i>
|
2007-05-27 14:11:15 +02:00
|
|
|
</div>
|
2007-04-11 05:12:48 +02:00
|
|
|
</div>";
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2007-02-20 02:38:59 +01:00
|
|
|
function install_step2() {
|
|
|
|
echo "
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='install_container'>
|
2007-04-24 15:38:44 +02:00
|
|
|
<h1>Pandora FMS console installation wizard. Step #2 of 4</h1>
|
2008-09-01 06:22:26 +02:00
|
|
|
<div id='wizard' style='height: 390px;'>
|
2007-02-20 02:38:59 +01:00
|
|
|
<div id='install_box'>";
|
2008-08-22 20:07:32 +02:00
|
|
|
echo "<h2>Checking software dependencies</h2>";
|
2007-02-20 02:38:59 +01:00
|
|
|
echo "<table border=0 width=230>";
|
|
|
|
$res = 0;
|
2008-10-05 17:00:20 +02:00
|
|
|
$res += check_variable(phpversion(),"5.2","PHP version >= 5.2",1);
|
2007-02-20 02:38:59 +01:00
|
|
|
$res += check_extension("mysql","PHP MySQL extension");
|
2008-10-05 17:00:20 +02:00
|
|
|
$res += check_extension("gd","PHP GD extension");
|
2007-04-24 15:38:44 +02:00
|
|
|
$res += check_extension("snmp","PHP SNMP extension");
|
2007-02-20 02:38:59 +01:00
|
|
|
$res += check_extension("session","PHP session extension");
|
2008-08-22 20:07:32 +02:00
|
|
|
$res += check_extension("gettext","PHP gettext extension");
|
2007-02-20 02:38:59 +01:00
|
|
|
$res += check_include("PEAR.php","PEAR PHP Library");
|
2008-09-01 06:22:26 +02:00
|
|
|
$res += check_include("DB.php","PEAR:DB PHP Library");
|
|
|
|
$res += check_include("XML/RPC.php","PEAR XML/RPC.php PHP Library");
|
|
|
|
$res += check_exists ("/usr/bin/twopi","Graphviz Binary");
|
|
|
|
|
2007-02-20 02:38:59 +01:00
|
|
|
echo "</table>
|
|
|
|
</div>
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='logo_img'>
|
2007-06-02 15:52:45 +02:00
|
|
|
<img src='images/pandora_logo.png' border='0'' alt=''><br>
|
2007-02-20 02:38:59 +01:00
|
|
|
<img src='images/step1.png' border='0' alt=''>
|
|
|
|
</div>
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='install_img'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
if ($res > 0) {
|
2008-08-27 12:13:25 +02:00
|
|
|
echo "
|
|
|
|
<div class='warn'>You have some incomplete
|
2007-04-11 12:09:09 +02:00
|
|
|
dependencies. Please correct them or this installer
|
|
|
|
will not be able to finish your installation.
|
2007-05-27 14:11:15 +02:00
|
|
|
</div>
|
2007-02-20 02:38:59 +01:00
|
|
|
Ignore it. <a href='install.php?step=3'>Force install Step #3</a>";
|
|
|
|
} else {
|
2008-08-27 12:13:25 +02:00
|
|
|
echo "<a href='install.php?step=3'>
|
|
|
|
<img align='right' src='images/arrow_next.png' border='0' alt=''></a>";
|
2007-02-20 02:38:59 +01:00
|
|
|
}
|
|
|
|
echo "
|
|
|
|
</div>
|
2007-05-27 14:11:15 +02:00
|
|
|
</div>
|
|
|
|
<div id='foot_install'>
|
2008-09-01 06:22:26 +02:00
|
|
|
<i>Pandora FMS is an OpenSource Software project registered at
|
2007-05-27 14:11:15 +02:00
|
|
|
<a target='_new' href='http://pandora.sourceforge.net'>SourceForge</a></i>
|
|
|
|
</div>
|
|
|
|
</div>";
|
2007-02-20 02:38:59 +01:00
|
|
|
}
|
|
|
|
|
2007-05-27 14:11:15 +02:00
|
|
|
|
2007-02-20 02:38:59 +01:00
|
|
|
function install_step3() {
|
|
|
|
echo "
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='install_container'>
|
2007-04-24 15:38:44 +02:00
|
|
|
<h1>Pandora FMS console installation wizard. Step #3 of 4 </h1>
|
2007-08-21 12:04:01 +02:00
|
|
|
<div id='wizard' style='height: 640px;'>
|
2007-02-20 02:38:59 +01:00
|
|
|
<div id='install_box'>
|
2008-08-22 20:07:32 +02:00
|
|
|
<h2>Environment and database setup</h2>
|
2007-02-20 02:38:59 +01:00
|
|
|
<p>
|
2008-08-27 12:13:25 +02:00
|
|
|
This wizard will create your Pandora FMS database,
|
|
|
|
and populate it with all the data needed to run for the first time.
|
2007-02-20 02:38:59 +01:00
|
|
|
</p>
|
|
|
|
<p>
|
2007-06-02 15:52:45 +02:00
|
|
|
You need a privileged user to create database schema, this is usually <b>root</b> user.
|
|
|
|
Information about <b>root</b> user will not be used or stored anymore.
|
|
|
|
</p>
|
|
|
|
<p>
|
2008-08-27 12:13:25 +02:00
|
|
|
Now, please, complete all details to configure your database and environment setup.
|
2007-05-27 14:11:15 +02:00
|
|
|
</p>
|
2008-08-27 12:13:25 +02:00
|
|
|
<div class='warn'>
|
|
|
|
<b>Warning:</b> This installer will <b>overwrite and destroy</b> your existing
|
|
|
|
Pandora FMS configuration and <b>Database</b>. Before continue,
|
|
|
|
please <b>be sure that you have no valuable Pandora FMS data in your Database.</b>
|
|
|
|
<br><br>
|
|
|
|
</div>
|
2007-02-20 02:38:59 +01:00
|
|
|
<form method='post' action='install.php?step=4'>
|
|
|
|
<div>DB User with privileges on MySQL</div>
|
2007-04-11 05:12:48 +02:00
|
|
|
<input class='login' type='text' name='user' value='root'>
|
|
|
|
|
2007-02-20 02:38:59 +01:00
|
|
|
<div>DB Password for this user</div>
|
2007-06-27 19:45:42 +02:00
|
|
|
<input class='login' type='password' name='pass' value=''>
|
2007-04-11 05:12:48 +02:00
|
|
|
|
2007-02-20 02:38:59 +01:00
|
|
|
<div>DB Hostname of MySQL</div>
|
2007-04-11 05:12:48 +02:00
|
|
|
<input class='login' type='text' name='host' value='localhost'>
|
|
|
|
|
|
|
|
<div>DB Name (pandora by default)</div>
|
|
|
|
<input class='login' type='text' name='dbname' value='pandora'>
|
2007-02-20 02:38:59 +01:00
|
|
|
|
2007-06-02 15:52:45 +02:00
|
|
|
<div>Full path to HTTP publication directory<br>
|
2008-08-27 12:13:25 +02:00
|
|
|
<span class='f9b'>For example /var/www/pandora_console/.
|
|
|
|
Needed for graphs and attachments.
|
|
|
|
</span>
|
2007-02-20 02:38:59 +01:00
|
|
|
</div>
|
2008-08-27 12:13:25 +02:00
|
|
|
<input class='login' type='text' name='path' style='width: 190px;'
|
2008-09-03 17:47:09 +02:00
|
|
|
value='".dirname (__FILE__)."'>
|
2007-02-20 02:38:59 +01:00
|
|
|
|
2008-09-03 17:47:09 +02:00
|
|
|
<div>URL path to Pandora FMS Console<br>
|
2008-09-03 14:11:53 +02:00
|
|
|
<span class='f9b'>For example '/pandora_console'</span>
|
2007-02-20 02:38:59 +01:00
|
|
|
</div>
|
2008-08-27 12:13:25 +02:00
|
|
|
<input class='login' type='text' name='url' style='width: 250px;'
|
2008-09-03 17:47:09 +02:00
|
|
|
value='".dirname ($_SERVER['PHP_SELF'])."'>
|
2007-02-20 02:38:59 +01:00
|
|
|
|
2008-08-27 12:13:25 +02:00
|
|
|
<div align='right'>
|
|
|
|
<input type='image' src='images/arrow_next.png' value='Step #4' id='step4'>
|
|
|
|
</div>
|
2007-02-20 02:38:59 +01:00
|
|
|
</form>
|
|
|
|
</div>
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='logo_img'>
|
2007-06-02 15:52:45 +02:00
|
|
|
<img src='images/pandora_logo.png' border='0' alt=''><br>
|
2007-02-20 02:38:59 +01:00
|
|
|
<img src='images/step2.png' border='0' alt=''>
|
|
|
|
</div>
|
|
|
|
</div>
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='foot_install'>
|
2008-09-01 06:22:26 +02:00
|
|
|
<i>Pandora FMS is an OpenSource Software project registered at
|
2007-05-27 14:11:15 +02:00
|
|
|
<a target='_new' href='http://pandora.sourceforge.net'>SourceForge</a></i>
|
2007-02-20 02:38:59 +01:00
|
|
|
</div>
|
|
|
|
</div>";
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function install_step4() {
|
|
|
|
$pandora_config = "include/config.php";
|
|
|
|
|
2008-08-27 12:13:25 +02:00
|
|
|
if ( (! isset($_POST["user"])) || (! isset($_POST["dbname"])) || (! isset($_POST["host"])) ||
|
|
|
|
(! isset($_POST["pass"])) ) {
|
2007-02-20 02:38:59 +01:00
|
|
|
$dbpassword = "";
|
|
|
|
$dbuser = "";
|
|
|
|
$dbhost = "";
|
2007-04-11 05:12:48 +02:00
|
|
|
$dbname = "";
|
2007-02-20 02:38:59 +01:00
|
|
|
} else {
|
|
|
|
$dbpassword = $_POST["pass"];
|
|
|
|
$dbuser = $_POST["user"];
|
|
|
|
$dbhost = $_POST["host"];
|
2007-04-11 05:12:48 +02:00
|
|
|
$dbname = $_POST["dbname"];
|
2007-02-20 02:38:59 +01:00
|
|
|
if (isset($_POST["url"]))
|
|
|
|
$url = $_POST["url"];
|
|
|
|
else
|
|
|
|
$url = "http://localhost";
|
|
|
|
if (isset($_POST["path"]))
|
|
|
|
$path = $_POST["path"];
|
|
|
|
else
|
|
|
|
$path = "/var/www";
|
|
|
|
}
|
|
|
|
$everything_ok = 0;
|
|
|
|
$step1=0;
|
|
|
|
$step2=0;
|
|
|
|
$step3=0;
|
|
|
|
$step4=0; $step5=0; $step6=0; $step7=0;
|
|
|
|
echo "
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='install_container'>
|
2007-04-24 15:38:44 +02:00
|
|
|
<h1>Pandora FMS Console installation wizard. Step #4 of 4</h1>
|
2007-09-04 14:08:46 +02:00
|
|
|
<div id='wizard' style='height: 380px;'>
|
2007-02-20 02:38:59 +01:00
|
|
|
<div id='install_box'>
|
2008-08-22 20:07:32 +02:00
|
|
|
<h2>Creating database and default configuration file</h2>
|
2007-02-20 02:38:59 +01:00
|
|
|
<table>";
|
|
|
|
if (! mysql_connect ($dbhost,$dbuser,$dbpassword)) {
|
|
|
|
check_generic ( 0, "Connection with Database");
|
|
|
|
} else {
|
|
|
|
check_generic ( 1, "Connection with Database");
|
|
|
|
// Create schema
|
2007-04-11 05:12:48 +02:00
|
|
|
$step1 = mysql_query ("CREATE DATABASE $dbname");
|
|
|
|
check_generic ($step1, "Creating database '$dbname'");
|
2007-02-20 02:38:59 +01:00
|
|
|
if ($step1 == 1){
|
2007-04-11 05:12:48 +02:00
|
|
|
$step2 = mysql_select_db($dbname);
|
|
|
|
check_generic ($step2, "Opening database '$dbname'");
|
2007-02-20 02:38:59 +01:00
|
|
|
|
|
|
|
$step3 = parse_mysql_dump("pandoradb.sql");
|
|
|
|
check_generic ($step3, "Creating schema");
|
|
|
|
|
|
|
|
$step4 = parse_mysql_dump("pandoradb_data.sql");
|
|
|
|
check_generic ($step4, "Populating database");
|
|
|
|
|
|
|
|
$random_password = random_name (8);
|
2008-08-27 12:13:25 +02:00
|
|
|
$step5 = mysql_query ("GRANT ALL PRIVILEGES ON $dbname.* to pandora@localhost
|
|
|
|
IDENTIFIED BY '".$random_password."'");
|
2007-02-20 02:38:59 +01:00
|
|
|
mysql_query ("FLUSH PRIVILEGES");
|
2008-08-27 12:13:25 +02:00
|
|
|
check_generic ($step5, "Established privileges for user pandora <br>
|
|
|
|
password <i>'$random_password'</i>");
|
2007-02-20 02:38:59 +01:00
|
|
|
|
|
|
|
$step6 = is_writable("include");
|
|
|
|
check_generic ($step6, "Write permissions to save config file in './include'");
|
|
|
|
|
|
|
|
$cfgin = fopen ("include/config.inc.php","r");
|
|
|
|
$cfgout = fopen ($pandora_config,"w");
|
|
|
|
$config_contents = fread ($cfgin, filesize("include/config.inc.php"));
|
2007-05-27 14:11:15 +02:00
|
|
|
$config_new = '<?php
|
2007-03-02 18:56:07 +01:00
|
|
|
// Begin of automatic config file
|
2008-04-07 00:18:33 +02:00
|
|
|
$config["dbname"]="'.$dbname.'"; // MySQL DataBase name
|
|
|
|
$config["dbuser"]="pandora"; // DB User
|
|
|
|
$config["dbpass"]="'.$random_password.'"; // DB Password
|
|
|
|
$config["dbhost"]="'.$dbhost.'"; // DB Host
|
|
|
|
$config["homedir"]="'.$path.'"; // Config homedir
|
|
|
|
$config["homeurl"]="'.$url.'"; // Base URL
|
2007-03-02 18:56:07 +01:00
|
|
|
// End of automatic config file
|
|
|
|
?>';
|
2007-02-20 02:38:59 +01:00
|
|
|
$step7 = fputs ($cfgout, $config_new);
|
|
|
|
$step7 = $step7 + fputs ($cfgout, $config_contents);
|
|
|
|
if ($step7 > 0)
|
|
|
|
$step7 = 1;
|
|
|
|
fclose ($cfgin);
|
|
|
|
fclose ($cfgout);
|
2007-06-28 16:17:25 +02:00
|
|
|
chmod ($pandora_config, 0600);
|
2007-02-20 02:38:59 +01:00
|
|
|
check_generic ($step7, "Created new config file at '".$pandora_config."'");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (($step7 + $step6 + $step5 + $step4 + $step3 + $step2 + $step1) == 7) {
|
|
|
|
$everything_ok = 1;
|
|
|
|
}
|
|
|
|
echo "</table></div>
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='logo_img'>
|
2007-06-02 15:52:45 +02:00
|
|
|
<img src='images/pandora_logo.png' border='0' alt=''><br>
|
2007-02-20 02:38:59 +01:00
|
|
|
<img src='images/step3.png' border='0' alt=''>
|
|
|
|
</div>
|
|
|
|
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='install_img'>";
|
2007-02-20 02:38:59 +01:00
|
|
|
if ($everything_ok == 1) {
|
2008-08-27 12:13:25 +02:00
|
|
|
echo "<br><br><a href='install.php?step=5'>
|
|
|
|
<img align='right' src='images/arrow_next.png' border='0' alt=''></a>";
|
2007-02-20 02:38:59 +01:00
|
|
|
} else {
|
2008-08-27 12:13:25 +02:00
|
|
|
echo "<div class='warn'><b>There was some problems.
|
|
|
|
Installation is not completed.</b>
|
2007-05-27 14:11:15 +02:00
|
|
|
<p>Please correct failures before trying again.
|
2008-08-27 12:13:25 +02:00
|
|
|
All database schemes created in this step have been dropped.
|
|
|
|
Try to reload this page if you have a present Pandora FMS configuration.</p>
|
|
|
|
</div>";
|
2007-02-20 02:38:59 +01:00
|
|
|
|
|
|
|
if (mysql_error() != "")
|
2007-05-27 14:11:15 +02:00
|
|
|
echo "<div class='warn'> <b>ERROR:</b> ". mysql_error().".</div>";
|
2007-02-20 02:38:59 +01:00
|
|
|
|
2007-04-11 05:12:48 +02:00
|
|
|
mysql_query ("DROP DATABASE $dbname");
|
2007-02-20 02:38:59 +01:00
|
|
|
}
|
|
|
|
echo "
|
|
|
|
</div>
|
|
|
|
</div>
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='foot_install'>
|
2008-09-01 06:22:26 +02:00
|
|
|
<i>Pandora FMS is an OpenSource Software project registered at
|
2007-02-20 02:38:59 +01:00
|
|
|
<a target='_new' href='http://pandora.sourceforge.net'>SourceForge</a></i>
|
|
|
|
</div>
|
|
|
|
</div>";
|
|
|
|
}
|
|
|
|
|
2007-05-27 14:11:15 +02:00
|
|
|
|
2007-02-20 02:38:59 +01:00
|
|
|
function install_step5() {
|
|
|
|
echo "
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='install_container'>
|
2007-04-24 15:38:44 +02:00
|
|
|
<h1>Pandora FMS console installation wizard. Finished</h1>
|
2007-02-20 02:38:59 +01:00
|
|
|
<div id='wizard' style='height: 300px;'>
|
|
|
|
<div id='install_box'>
|
2008-08-22 20:07:32 +02:00
|
|
|
<h2>Installation complete</h2>
|
2008-08-27 12:13:25 +02:00
|
|
|
<p>You now must delete manually this installer ('<i>install.php</i>')
|
|
|
|
file for security before trying to access to your Pandora FMS console.
|
2008-09-03 17:47:09 +02:00
|
|
|
<p>You should also install the Pandora FMS Servers before trying to monitor anything,
|
2008-08-27 12:13:25 +02:00
|
|
|
please read documentation on how to install it.</p>
|
|
|
|
<p>Don't forget to check <a href='http://pandorafms.com'>http://pandorafms.com</a>
|
|
|
|
for updates.
|
|
|
|
<p><br><b><a href='index.php'>Click here to access to your Pandora FMS console</a></b>
|
|
|
|
</p>
|
2007-02-20 02:38:59 +01:00
|
|
|
</div>
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='logo_img'>
|
2007-06-02 15:52:45 +02:00
|
|
|
<img src='images/pandora_logo.png' border='0'><br>
|
2007-02-20 02:38:59 +01:00
|
|
|
<img src='images/step4.png' border='0'><br>
|
|
|
|
</div>
|
|
|
|
</div>
|
2007-05-27 14:11:15 +02:00
|
|
|
<div id='foot_install'>
|
2008-09-01 06:22:26 +02:00
|
|
|
<i>Pandora FMS is an OpenSource Software project registered at
|
2007-02-20 02:38:59 +01:00
|
|
|
<a target='_new' href='http://pandora.sourceforge.net'>SourceForge</a></i>
|
|
|
|
</div>
|
|
|
|
</div>";
|
|
|
|
}
|
|
|
|
|
2007-04-11 05:12:48 +02:00
|
|
|
|
|
|
|
// ---------------
|
|
|
|
// Main page code
|
|
|
|
// ---------------
|
|
|
|
|
2007-02-20 02:38:59 +01:00
|
|
|
if (! isset($_GET["step"])){
|
|
|
|
install_step1();
|
|
|
|
} else {
|
|
|
|
$step = $_GET["step"];
|
|
|
|
switch ($step) {
|
|
|
|
case 2: install_step2();
|
|
|
|
break;
|
|
|
|
case 3: install_step3();
|
|
|
|
break;
|
|
|
|
case 4: install_step4();
|
|
|
|
break;
|
|
|
|
case 5: install_step5();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2007-04-11 05:12:48 +02:00
|
|
|
?>
|
2007-06-02 15:52:45 +02:00
|
|
|
</body>
|
|
|
|
</html>
|