308 lines
9.6 KiB
PHP
Executable File
308 lines
9.6 KiB
PHP
Executable File
<?php
|
|
/*
|
|
Copyright (C) 2007 Mercier Benjamin
|
|
|
|
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; either version 2 of the License, or
|
|
(at your option) any later version.
|
|
|
|
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.
|
|
*/
|
|
/*
|
|
[ERREUR 1] => Le vhost ne peut pas etre ouvert en ecriture.
|
|
{ERREUR 2] => Le vhost n'a pu etre lu.
|
|
[ERREUR 3] => Le vhost n'a pu etre supprimé
|
|
[ERREUR 4] => Le vhost n'a pu etre écrit
|
|
[ERREUR 5] => La mise a jour sur le panel a échoué.
|
|
*/
|
|
|
|
// Annulation de la connexion MySql locale :
|
|
$ConnexionLocale = "non";
|
|
|
|
// Inclusion du core
|
|
require ('/var/www/daemon/system/core.php');
|
|
|
|
/* ------------*/
|
|
/* Suppression */
|
|
/* ----------- */
|
|
$ListDomaine = $ConnexionPanel->Select ("*", "domaine", "Status='3' OR Regeneration='Oui'", "", "", "", "");
|
|
if ( $ListDomaine != FALSE )
|
|
{
|
|
$CountDomaine = count($ListDomaine);
|
|
echo "\nDomaine(s) en attente de suppréssion : ".$CountDomaine."\n";
|
|
|
|
for ($i=0; $i < $CountDomaine; $i++)
|
|
{
|
|
$SelectUtilisateur = $ConnexionPanel->Select ("*", "utilisateur", "Utilisateur='".$ListDomaine[$i]["Utilisateur"]."'", "", "", "", "");
|
|
if ( $SelectUtilisateur[0]["ServeurFichier"] == $ServeurFichier )
|
|
{
|
|
echo "Domaine de ".$ListDomaine[$i]["Utilisateur"]." : ".$ListDomaine[$i]["Adresse"];
|
|
if ( is_writable("/var/www/vhost/".$ListDomaine[$i]["Utilisateur"]) )
|
|
{
|
|
$LoadFichier = file_get_contents ("/var/www/vhost/".$ListDomaine[$i]["Utilisateur"]);
|
|
|
|
// Ne renvoit pas true ou false !!! http://fr.php.net/preg_replace
|
|
$SupprimeDomaine = preg_replace("#\#DEBUT: ".$ListDomaine[$i]["Adresse"]."(.+)\#FIN: ".$ListDomaine[$i]["Adresse"]."#iUs", "", $LoadFichier);
|
|
|
|
$Fichier = file_put_contents("/var/www/vhost/".$ListDomaine[$i]["Utilisateur"], $SupprimeDomaine);
|
|
|
|
if ( $Fichier != FALSE )
|
|
{
|
|
|
|
if ( $ListDomaine[$i]["Regeneration"] == "Oui" )
|
|
{
|
|
$MajPanel = $ConnexionPanel->Update("domaine", array("Status", "Regeneration"), array("1", "Non"), "Adresse='".$ListDomaine[$i]["Adresse"]."'");
|
|
}
|
|
else
|
|
{
|
|
$MajPanel = $ConnexionPanel->Delete("domaine", "Adresse='".$ListDomaine[$i]["Adresse"]."'");
|
|
}
|
|
|
|
if ( $MajPanel != FALSE )
|
|
{
|
|
echo "\t\t\t[OK]\n";
|
|
}
|
|
else
|
|
{
|
|
echo "\t\t\t[ERREUR 5]\n";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
echo "\t\t\t[ERREUR 4]\n";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
echo "\t\t\t[ERREUR 1]\n";
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
echo "Aucun domaine n'est en attente de suppression.\n";
|
|
}
|
|
|
|
/* -------- */
|
|
/* Création */
|
|
/* -------- */
|
|
$ListDomaine = $ConnexionPanel->Select ("*", "domaine", "Status='1'", "", "", "", "");
|
|
if ( $ListDomaine != FALSE )
|
|
{
|
|
$CountDomaine = count($ListDomaine);
|
|
echo "\nDomaine(s) en attente de création : ".$CountDomaine."\n";
|
|
|
|
for ( $i=0; $i < $CountDomaine; $i++)
|
|
{
|
|
$SelectUtilisateur = $ConnexionPanel->Select ("*", "utilisateur", "Utilisateur='".$ListDomaine[$i]["Utilisateur"]."'", "", "", "", "");
|
|
|
|
if ( $SelectUtilisateur[0]["ServeurFichier"] == $ServeurFichier )
|
|
{
|
|
echo "Domaine de ".$ListDomaine[$i]["Utilisateur"]." : ".$ListDomaine[$i]["Adresse"];
|
|
if ( is_writable("/var/www/vhost/".$ListDomaine[$i]["Utilisateur"]) )
|
|
{
|
|
|
|
// Préparation des variables
|
|
$Remplacement = array ();
|
|
|
|
if ( !empty($ListDomaine[$i]["MysqlDefaultHost"]) )
|
|
{
|
|
$Remplacement["{MYSQL_DEFAUT_HOST}"] = 'php_admin_value mysql.default_host "'.$ListDomaine[$i]["MysqlDefaultHost"].'"';
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{MYSQL_DEFAUT_HOST}"] = "";
|
|
}
|
|
|
|
if ( !empty($ListDomaine[$i]["MysqlDefaultUser"]) )
|
|
{
|
|
$Remplacement["{MYSQL_DEFAUT_USER}"] = 'php_admin_value mysql.default_user "'.$ListDomaine[$i]["MysqlDefaultUser"].'"';
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{MYSQL_DEFAUT_USER}"] = "";
|
|
}
|
|
|
|
if ( !empty($ListDomaine[$i]["MysqlDefaultPassword"]) )
|
|
{
|
|
$Remplacement["{MYSQL_DEFAUT_PASS}"] = 'php_admin_value mysql.default_password "'.$ListDomaine[$i]["MysqlDefaultPassword"].'"';
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{MYSQL_DEFAUT_PASS}"] = "";
|
|
}
|
|
|
|
if ( !empty($ListDomaine[$i]["tmp"]) )
|
|
{
|
|
$Remplacement["{TMP_DIR}"] = 'php_admin_value upload_tmp_dir "/var/www/web/'.$ListDomaine[$i]["Utilisateur"].$ListDomaine[$i]["tmp"].'"';
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{TMP_DIR}"] = "";
|
|
}
|
|
|
|
if ( !empty($ListDomaine[$i]["sessions"]) )
|
|
{
|
|
$Remplacement["{SESSION}"] = 'php_admin_value session.save_path "/var/www/web/'.$ListDomaine[$i]["Utilisateur"].$ListDomaine[$i]["sessions"].'"';
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{SESSION}"] = "";
|
|
}
|
|
|
|
if ( !empty($ListDomaine[$i]["Short_Open_Tag"]) )
|
|
{
|
|
if ( $ListDomaine[$i]["Allow_url_fopen"] == "Oui") { $Reponse = "On" ; } else { $Reponse = "Off"; }
|
|
$Remplacement["{SHORT_OPEN_TAG}"] = 'php_admin_value short_open_tag "'.$Reponse.'"';
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{SHORT_OPEN_TAG}"] = "";
|
|
}
|
|
|
|
if ( !empty($ListDomaine[$i]["Allow_url_fopen"]) )
|
|
{
|
|
if ( $ListDomaine[$i]["Allow_url_fopen"] == "Oui") { $Reponse = "On" ; } else { $Reponse = "Off"; }
|
|
$Remplacement["{URL_FOPEN}"] = 'php_admin_value allow_url_fopen "'.$Reponse.'"';
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{URL_FOPEN}"] = "";
|
|
}
|
|
|
|
if ( !empty($ListDomaine[$i]["Allow_url_include"]) )
|
|
{
|
|
if ( $ListDomaine[$i]["Allow_url_include"] == "Oui") { $Reponse = "On" ; } else { $Reponse = "Off"; }
|
|
$Remplacement["{URL_INCLUDE}"] = 'php_admin_value allow_url_include "'.$Reponse.'"';
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{URL_INCLUDE}"] = "";
|
|
}
|
|
|
|
if ( !empty($ListDomaine[$i]["Session_auto_start"]) )
|
|
{
|
|
if ( $ListDomaine[$i]["Session_auto_start"] == "Oui") { $Reponse = "On" ; } else { $Reponse = "Off"; }
|
|
$Remplacement["{SESSION_AUTO_START}"] = 'php_admin_value session.auto_start "'.$Reponse.'"';
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{SESSION_AUTO_START}"] = "";
|
|
}
|
|
|
|
if ( !empty($ListDomaine[$i]["Magic_quotes_gpc"]) )
|
|
{
|
|
if ( $ListDomaine[$i]["Magic_quotes_gpc"] == "Oui") { $Reponse = "On" ; } else { $Reponse = "Off"; }
|
|
$Remplacement["{MAGIC_QUOTE}"] = 'php_admin_value magic_quotes_gpc "'.$Reponse.'"';
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{MAGIC_QUOTE}"] = "";
|
|
}
|
|
|
|
if ( !empty($ListDomaine[$i]["Register_globals"]) )
|
|
{
|
|
if ( $ListDomaine[$i]["Register_globals"] == "Oui") { $Reponse = "On" ; } else { $Reponse = "Off"; }
|
|
$Remplacement["{REGISTER_GLOBAL}"] = 'php_admin_value register_globals "'.$Reponse.'"';
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{REGISTER_GLOBAL}"] = "";
|
|
}
|
|
|
|
if ( !empty($ListDomaine[$i]["DisplayErrors"]) )
|
|
{
|
|
if ( $ListDomaine[$i]["DisplayErrors"] == "Oui") { $Reponse = "On" ; } else { $Reponse = "Off"; }
|
|
$Remplacement["{DISPLAY_ERROR}"] = 'php_admin_value display_errors "'.$Reponse.'"';
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{DISPLAY_ERROR}"] = "";
|
|
}
|
|
|
|
if ( $ListDomaine[$i]["Listage"] == "Oui" )
|
|
{
|
|
$Remplacement["{INDEXE}"] = "Indexes";
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{INDEXE}"] = "-Indexes";
|
|
}
|
|
|
|
$Remplacement["{DOMAINE}"] = $ListDomaine[$i]["Adresse"];
|
|
$Remplacement["{CHEMIN}"] = "/var/www/web/".$ListDomaine[$i]["Utilisateur"].$ListDomaine[$i]["Racine"];
|
|
$Remplacement["{BASEDIR}"] = "/var/www/web/".$ListDomaine[$i]["Utilisateur"].$ListDomaine[$i]["OpenBasedir"];
|
|
|
|
if ( $ListDomaine[$i]["Bridage"] == "Oui" )
|
|
{
|
|
$Remplacement["{BRIDAGE}"] = "CBandRemoteSpeed 50kb/s 3 3";
|
|
}
|
|
else
|
|
{
|
|
$Remplacement["{BRIDAGE}"] = "";
|
|
}
|
|
|
|
$Fichier = file_get_contents("/var/www/daemon/system/vhost.tpl");
|
|
$Vhost = str_replace (array_keys($Remplacement), array_values($Remplacement), $Fichier);
|
|
|
|
$AncienVhost = file_get_contents("/var/www/vhost/".$ListDomaine[$i]["Utilisateur"]);
|
|
if ( $AncienVhost != FALSE )
|
|
{
|
|
$NouveauVhost = $AncienVhost.$Vhost."\n";
|
|
$SuppressionVhost = unlink("/var/www/vhost/".$ListDomaine[$i]["Utilisateur"]);
|
|
|
|
if ( $SuppressionVhost != FALSE )
|
|
{
|
|
$EcritureNouveauVhost = file_put_contents("/var/www/vhost/".$ListDomaine[$i]["Utilisateur"], $NouveauVhost);
|
|
if ( $EcritureNouveauVhost != FALSE )
|
|
{
|
|
$MajPanel = $ConnexionPanel->Update("domaine", array("Status", "Regeneration"), array("2", "Non"), "Adresse='".$ListDomaine[$i]["Adresse"]."'");
|
|
|
|
if ( $MajPanel != FALSE )
|
|
{
|
|
echo "\t\t\t[OK]\n";
|
|
}
|
|
else
|
|
{
|
|
echo "\t\t\t[ERREUR 5]\n";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
echo "\t\t\t[ERREUR 4]\n";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
echo "\t\t\t[ERREUR 3]\n";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
echo "\t\t\t[ERREUR 2]\n";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
echo "\t\t\t[ERREUR 1]\n";
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
echo "Aucun domaine n'est en attente de création.\n";
|
|
}
|
|
|
|
|
|
|
|
?>
|