Seulement, il n'est possible d'ajouter qu'un seul évènement à la fois au calendrier.
Nous allons donc voir ici comment modifier Centre/SIS afin de pouvoir répéter un évènement du calendrier sur un nombre de jours défini, lors de sa création.
Le seul fichier PHP à modifier sera /modules/School_Setup/Calendar.php
1. Ajouter le nouveau texte et le champ dans le formulaire "Nouvel Evènement":
Ajouter apres la ligne contenant:
DateInput($RET[1]['SCHOOL_DATE'],'values[SCHOOL_DATE]','',false)
//modif: add event repeat
if($_REQUEST['event_id']=='new')
{
echo ''._('Event Repeat').''.TextInput('0','REPEAT','','maxlength="2"',false).' '._('Days').'';
}
2. Ajouter le traitement de ce champ si celui-ci est supérieur à zéro:Aux alentours de la ligne 79, dans le else du if($_REQUEST['event_id']!='new'), ajouter:
//modif: add event repeat
if ($_REQUEST['REPEAT']>0)
{
for ($i=0; $i<=$_REQUEST['REPEAT']; $i++)
{
if ($i==0)
{
$_REQUEST['values']['SCHOOL_DATE'] = date('d-m-Y', mktime(0,0,0,intval(MonthNWSwitch(substr($_REQUEST['values']['SCHOOL_DATE'], 3, 3),'tonum')),intval(substr($_REQUEST['values']['SCHOOL_DATE'], 0, 2)),intval(substr($_REQUEST['values']['SCHOOL_DATE'], 7, 4))));
}
else
{
$_REQUEST['values']['SCHOOL_DATE'] = date('d-m-Y', mktime(0,0,0,intval(substr($_REQUEST['values']['SCHOOL_DATE'], 3, 2)),intval(substr($_REQUEST['values']['SCHOOL_DATE'], 0, 2))+1,intval(substr($_REQUEST['values']['SCHOOL_DATE'], 6, 4))));
}
$sql = "INSERT INTO CALENDAR_EVENTS ";
$fields = 'ID,SYEAR,SCHOOL_ID,';
$values = db_seq_nextval('CALENDAR_EVENTS_SEQ').",'".UserSyear()."','".UserSchool()."',";
$go = 0;
foreach($_REQUEST['values'] as $column=>$value)
{
if($value)
{
$fields .= $column.',';
$values .= "'".str_replace("\'","''",$value)."',";
$go = true;
}
}
$sql .= '(' . substr($fields,0,-1) . ') values(' . substr($values,0,-1) . ')';
if($go)
DBQuery($sql);
}
}
else
{
Voici un aprecu de la modification:
