<?php
/*
Copyright (C) 2002 Loc Dayot - Mairie Pierrefitte (93)
EPNadmin - Version 0.6 - 13/05/2003
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
http://epnadmin.pierrefitte93.fr/
*/
//require_once("header.inc.php");
require_once("constantes.inc.php"); // dfinition des constantes
if (!defined("FCT_SITES") && !defined("FCT_COURRIELS"))
return $fctnonactive;
//require_once("fonctions.inc.php"); // concernant des fonctions transversales inclassables
require_once("mysql.inc.php"); // concernant mysql
//require_once("sessions.inc.php"); // concernant les sessions et initiations
//require_once("usagers.inc.php"); // concernant la gestion des usagers
//require_once("reservations.inc.php"); // concernant les rservations des postes en accs individuel par des usagers
//require_once("tableaux.inc.php"); // Concernant l'affichage transpos d'un tableau
//require_once("siteweb.inc.php"); // concernant les pages perso des usagers et les sites web des structures
//require_once("dateheure.inc.php"); // concernant la manipulation des heures et des dates, formulaire, conversion...
//require_once("structures.inc.php"); // concernant les structures
//require_once("initiations.inc.php"); // concernant les initiations et les thmes
//require_once("parcours.inc.php"); // concernant les parcours des usagers et leur positionnement
// -
// Courriels -
// -
// La fonction ci-dessous envoie un courriel quelqu'un, s'il existe
// partir de la table demande et de l'id
// Par exemple courriel("structures", 5) rendra l'adresse courriel
// du correspondant de la structure 5.
// Valable pour usager, structure, animateur
function courriel($table, $id)
{
$res=recherche($table, "id", $id);
$entite=fetch_object($res);
if ($entite->courriel>"")
$courriel=$entite->courriel;
else
$courriel=FALSE;
return $courriel;
}
// -
// Sites web et pages perso -
// -
// Ajouter une partie de fichier de configuraiton d'apache (httpd.conf)
function config_apache_ajoute($config)
{
global $fichier_hotes_virtuels;
$fichier = fopen($fichier_hotes_virtuels, "a");
$retour = fwrite($fichier, $config);
return fclose($fichier);
}
// Supprimer une partie de fichier de configuraiton d'apache (httpd.conf)
function config_apache_supprime($id_hebergement)
{
global $fichier_hotes_virtuels;
// on lit le fichier et on recopier tout sauf la config qu'on veut supprimer
$contenu="";
$partie="garder";
$fichier = fopen($fichier_hotes_virtuels, "r");
while (!feof ($fichier))
{
$retour = fgets($fichier, 4096);
// est-ce le dbut ou la fin d'un site virtuel ?
$trouve = strpos($retour, "# $id_hebergement");
// est-ce le dbut de celui qu'on veut retirer ?
if ($trouve!==FALSE && $trouve==0) $partie="passer";
if ($partie=="garder") $contenu.=$retour;
// est-ce la fin de celui qu'on veut retirer
if ($trouve!==FALSE && $trouve==1) $partie="garder";
}
$ret = fclose($fichier);
//echo("<p>".nl2br($contenu)."</p>\n"); // Affiche ce qu'il reste du fichier
// Maintenant, on rcrit le fichier de configuration
$fichier = fopen($fichier_hotes_virtuels, "w");
$ret2 = fwrite($fichier, $contenu);
$ret3 = fclose($fichier);
return $ret && $ret2 && $ret3;
}
// Trouver l'enregistrement dans les sous-domaines
function sousdomaine($id_sousdomaine)
{
global $ssitealiasdecourt, $ssitegerepar;
$res=recherche("hebergements", "id", $id_sousdomaine);
$sousdomaine=fetch_object($res);
$ret="$sousdomaine->sousdomaine";
if ($sousdomaine->type=="aliassiteweb" || $sousdomaine->type=="aliascourriel")
$ret.=" ($ssitealiasdecourt $sousdomaine->login)";
$ret.=" $ssitegerepar ";
if ($sousdomaine->id_structure)
$ret.=structure($sousdomaine->id_structure);
if ($sousdomaine->id_usager)
$ret.=usager($sousdomaine->id_usager);
return $ret;
}
// Partie d'un formulaire proposant la liste droulante des sous-domaines hbergs
function choix_sousdomaine($id_sousdomaine, $champ="id_sousdomaine", $type="siteweb")
{
global $id_structure;
echo "<select name=\"$champ\"><option>\n";
$req="SELECT * FROM hebergements
WHERE type=\"$type\"";
if (COURRIELS_AUTRES<"w" && SITES_AUTRES<"w")
$req.=" AND id_structure=$id_structure";
$req.=" ORDER BY id_structure, sousdomaine";
$res=executeRequete($req);
while ($sousdomaine=fetch_object($res))
{
echo "<option value=\"$sousdomaine->id\"";
if ($sousdomaine->id==$id_sousdomaine)
echo " selected";
echo ">".sousdomaine($sousdomaine->id)."\n";
}
echo "</select>\n";
}
// Partie d'un formulaire proposant la liste droulante des domaines
function choix_domaine($id_domaine, $champ="id_domaine")
{
echo "<select name=\"$champ\"><option>\n";
$req="SELECT * FROM domaines";
if (SITES_AUTRES>"w" && COURRIELS_AUTRES>"w")
$req.=" WHERE visible='oui'";
$req.=" ORDER BY domaine";
$res=executeRequete($req);
while ($domaine=fetch_object($res))
{
echo "<option value=\"$domaine->id\"";
if ($domaine->id==$id_domaine)
echo " selected";
echo ">.$domaine->domaine\n";
}
echo "</select>\n";
}
?>