ModifiePlanning (nCodeDispo = $nCodeDispo ; DateDeb = $DateDeb ; DateFin = $DateFin ; DateFirst = $DateFirst)";
$DateDeb -= $DateFirst;
$DateFin -= $DateFirst;
$nDays = strlen($strDispo);
// echo "
ModifiePlanning (DateDeb = $DateDeb ; DateFin = $DateFin ; nDays = $nDays)";
if( ($DateDeb<0 && $DateFin<0) || ($nDays<=$DateDeb && $nDays<=$DateFin))
{
// rien à faire : la plage est
// - soit totalement avant l année en cours
// - soit totalement après les 2 années
echo "
Plage de dates hors période $nFirstYear / " . ($nFirstYear + $nNbYears -1) . "
";
}
else
{
if($DateDeb<0) $DateDeb = 0;
if($nDays<=$DateFin) $DateFin = $nDays - 1;
$nDaysModif = $DateFin - $DateDeb + 1;
$str = str_repeat("$nCodeDispo",$nDaysModif);
// echo "
str = $str";
// echo "
DateDeb=$DateDeb";
// echo "
DateFin=$DateFin";
// echo "
nDaysModif=$nDaysModif";
if($DateDeb)
$strAv = substr($strDispo,0,$DateDeb);
else
$strAv = "";
if($DateFin < $nDays)
$strAp = substr($strDispo,$DateFin+1,$nDays-$DateFin);
else
$strAp = "";
$strDispo = $strAv . $str . $strAp;
// echo "
strlen(strDispo)=" . strlen($strDispo);
}
return true;
}
// *****************************************************************************
// Traite la demande de modification du planning
function TraiteInfo(&$nIdYear,&$nIdMonth)
{
$nIdYear=2000;
$nIdMonth=1;
// Vérification du passage de parametre par POST
if(!isset($_POST['CodeDispo']) || !isset($_POST['DateDeb']) || !isset($_POST['DateFin']))
{
echo "
TraiteInfo : 1 ou plusieurs paramètres manquants
";
return;
}
$nCodeDispo = trim($_POST['CodeDispo']);
$DateDeb = trim($_POST['DateDeb']);
$DateFin = trim($_POST['DateFin']);
if($nCodeDispo=="" || $DateDeb=="" || $DateFin=="")
{
echo "
TraiteInfo : 1 ou plusieurs paramètres non renseignés
";
return;
}
// Vérif : nCodeDispo
$nCodeDispo = (int)$_POST['CodeDispo'];
if($nCodeDispo<0 || 4<$nCodeDispo)
{
echo "
TraiteInfo : CodeDispo incorrect ($nCodeDispo)
";
return;
}
// Vérif : DateDeb
List($nD,$nM,$nY) = explode("/",$_POST['DateDeb']);
if(!checkdate($nM,$nD,$nY))
{
echo "
TraiteInfo : DateDeb incorrect ($DateDeb)
";
return;
}
$nIdYear=$nY;
$nIdMonth=$nM;
$DateDeb = (int)(mktime(0,0,0,$nM,$nD,$nY,0)/86400);
// Vérif : DateFin
List($nD,$nM,$nY) = explode("/",$_POST['DateFin']);
if(!checkdate($nM,$nD,$nY))
{
echo "
TraiteInfo : DateFin incorrect ($DateFin)
";
return;
}
$DateFin = (int)(mktime(0,0,0,$nM,$nD,$nY,0)/86400);
// Vérif : DateDeb / DateFin
if($DateFin < $DateDeb)
{
echo "
TraiteInfo : DateFin < DateDeb ($DateFin < $DateDeb)
";
return;
}
// Fin Vérif : on lit tout le fichier,on met à jour le planning, on réécrit le fichier
$strErr = "Lecture";
$bOk=LitPlanning($strLastUpdate,$nFirstYear,$nNbYears,$strDispo);
if($bOk)
{
$strErr = "Modification";
$bOk=ModifiePlanning($nFirstYear,$nNbYears,$strDispo,$nCodeDispo,$DateDeb,$DateFin);
}
if($bOk)
{
$strErr = "Ecriture";
$bOk=EcritPlanning($nFirstYear,$nNbYears,$strDispo);
}
if(!$bOk)
{
echo "
TraiteInfo : $strErr KO
";
}
}
/* Site en construction : mise en commentaire ici le 21/02/2011
 |
Page en cours de construction - Données fictives ! |
*/
// *****************************************************************************
?>
Gîtes et Chambres d'hôtes des Sucs - Haute-Loire (FRANCE)
";
?>
Dates libres - Chambres d'Hôtes et Gîtes
\n";
echo "\n strBlabla = $strBlabla";
echo "\n strMsg = $strMsg";
echo "\n strAct = $strAct";
// echo "\n headers_list = ";print_r(headers_list());
echo "\n _POST = ";print_r($_POST);
// echo "\n _GET = ";print_r($_GET);
echo "\n ";
}
?>
Mise à jour du planning : Accès refusé ! ($strMsg)";
}
if($strAct == "Update")
{
TraiteInfo($nIdYear,$nIdMonth);
}
if( ($strAct == "Enter") || ($strAct == "Update") )
{
echo "