"; while ($row = sql_fetch($res)) { $LISTE .= "
".$row['nom']."

"; if($row['type']=='mysql') $LISTE_CALENDRIER.=""; } } sql_free($res); ###################### # Ajout d'un mot clé # ###################### if( $_POST['action_to_take']=='add_mot' && $_POST['ajouter'] && $_POST['id_calendrier'] && strlen($_POST['id_mot']) ){ $INFO="
  "._T('fullcalendar:action_mot_add').".

"; sql_insert('spip_fullcalendar_events', '(id_fullcalendar, lien)', "(".sql_quote(intval($_POST['id_calendrier'])).", ".sql_quote(intval($_POST['id_mot'])).")"); } ####################### # Modifier le mot clé # ####################### if( $_POST['action_to_take']=='update_mot' && $_POST['ajouter'] && $_POST['id_calendrier'] && strlen($_POST['id_mot']) ){ $INFO="
  "._T('fullcalendar:action_mot_edit').".

"; sql_update('spip_fullcalendar_events', array('lien' => sql_quote(intval($_POST['id_mot'])) ), "id_fullcalendar=".sql_quote(intval($_POST['id_calendrier'])) ); } ######################## # Ajout d'une rubrique # ######################## if( $_POST['action_to_take']=='add_rubrique' && $_POST['ajouter'] && $_POST['id_calendrier'] && strlen($_POST['id_rubrique']) ){ $INFO="
  "._T('fullcalendar:action_rub_add').".

"; sql_insert('spip_fullcalendar_events', '(id_fullcalendar, lien)', "(".sql_quote(intval($_POST['id_calendrier'])).", ".sql_quote(intval($_POST['id_rubrique'])).")"); } ######################## # Modifier la rubrique # ######################## if( $_POST['action_to_take']=='update_rubrique' && $_POST['ajouter'] && $_POST['id_calendrier'] && strlen($_POST['id_rubrique']) ){ $INFO="
  "._T('fullcalendar:action_rub_edit').".

"; sql_update('spip_fullcalendar_events', array('lien' => sql_quote(intval($_POST['id_rubrique'])) ), "id_fullcalendar=".sql_quote(intval($_POST['id_calendrier'])) ); } ########################## # Ajout d'une clé Google # ########################## if( $_POST['action_to_take']=='add' && $_POST['ajouter'] && $_POST['id_calendrier'] && strlen($_POST['gcalID']) ){ $INFO="
  "._T('fullcalendar:action_key_add').".

"; sql_insert('spip_fullcalendar_events', '(id_fullcalendar, lien)', "(".sql_quote(intval($_POST['id_calendrier'])).", ".sql_quote($_POST['gcalID']).")"); } ########################## # Modifier la clé Google # ########################## if( $_POST['action_to_take']=='update' && $_POST['ajouter'] && $_POST['id_calendrier'] && strlen($_POST['gcalID']) ){ $INFO="
  "._T('fullcalendar:action_key_edit').".

"; sql_update('spip_fullcalendar_events', array('lien' => sql_quote(trim($_POST['gcalID'])) ), "id_fullcalendar=".sql_quote(intval($_POST['id_calendrier'])) ); } ############################## # Ajout d'un évènement MySQL # ############################## if( $_POST['action_to_take']=='AddEvent' && strlen($_POST['Nom_Evenement']) && $_POST['id_calendrier'] ){ $t = explode('/',$_POST['Date']); $date = $t['2'].'-'.$t['1'].'-'.$t['0']; $t = explode('/',$_POST['Date_Fin']); $date_fin = $t['2'].'-'.$t['1'].'-'.$t['0']; unset($t); sql_insert("spip_fullcalendar_events", "(id_fullcalendar, id_style, titre, lien, start, end)", "( ".sql_quote(intval($_POST['id_calendrier'])).", ".sql_quote(intval($_POST['id_style'])).", ".sql_quote($_POST['Nom_Evenement']).", ".sql_quote($_POST['Lien_Evenement']).", ".sql_quote($date." ".$_POST['HeureDebut'].":00").", ".sql_quote($date_fin." ".$_POST['HeureFin'].":00")." )"); $INFO="
  "._T('fullcalendar:event_add').".

"; } ############################### # Modification d'un évènement # ############################### if( $_POST['action_to_take']=='EditEvent' && strlen($_POST['Nom_Evenement']) && strlen($_POST['id_evenement']) && $_POST['id_calendrier'] ){ $t = explode('/',$_POST['Date']); $date = $t[2].'-'.$t[1].'-'.$t[0]; $t = explode('/',$_POST['Date_Fin']); $date_fin = $t[2].'-'.$t[1].'-'.$t[0]; unset($t); sql_update('spip_fullcalendar_events', array( 'id_fullcalendar' => sql_quote($_POST['id_calendrier']), 'id_style' => sql_quote($_POST['id_style']), 'titre' => sql_quote($_POST['Nom_Evenement']), 'lien' => sql_quote(trim($_POST['Lien_Evenement'])), 'start' => sql_quote($date." ".$_POST['HeureDebut'].":00"), 'end' => sql_quote($date_fin." ".$_POST['HeureFin'].":00") ), "id_event=".sql_quote(intval($_POST['id_evenement'])) ); $INFO="
  "._T('fullcalendar:event_edit').".

"; } ####################### # Efface un évènement # ####################### if( $_POST['action_to_take']=='del' && $_POST['id_calendrier'] && $_POST['id_evenement'] ){ sql_delete("spip_fullcalendar_events", "id_event=".sql_quote(intval($_POST['id_evenement'])) ); $INFO="
  "._T('fullcalendar:event_del')."

"; } ################################# # Calendrier en cours d'édition # ################################# $req = sql_select('*', 'spip_fullcalendar_main', 'id_fullcalendar='.$id_fullcalendar); $num_calendar = sql_count($req); if(!$num_calendar) $INFO="
"._T('fullcalendar:unknown_error')."

"; else { $row = sql_fetch($req); $id = $row['id_fullcalendar']; $type = $row['type']; $nom = $row['nom']; sql_free($req); # Récupère les styles pour les évènements $req = sql_select('*', 'spip_fullcalendar_styles'); $num_style = sql_count($req); if(!$num_style) $STYLES=_T('fullcalendar:no_style'); else { $STYLES="

"._T('fullcalendar:event_style').":

"; } $LISTE_CALENDRIER.=''; if($type=='mysql'){ # Modification d'un évènement if( $_POST['action_to_take']=='edit' && $_POST['id_evenement'] ){ $req = sql_select('*', 'spip_fullcalendar_events', array('id_fullcalendar='.$id_fullcalendar, 'id_event='.intval($_POST['id_evenement'])) ); $rw = sql_fetch($req); sql_free($req); $NOM=$rw['titre']; $LIEN=$rw['lien']; $ACTION='EditEvent'; $ID_EVENEMENT=$_POST['id_evenement']; $DATE = DateFromMysql(substr($rw['start'],0,10)); $DATE_FIN = DateFromMysql(substr($rw['end'],0,10)); $START = substr($rw['start'],11,5); $END = substr($rw['end'],11,5); $BUTTON = ""; } else { $ACTION='AddEvent'; $ID_EVENEMENT=''; $DATE=(strlen($_POST['Date'])==10)?stripslashes($_POST['Date']):Date("d/m/Y"); $DATE_FIN=(strlen($_POST['Date_Fin'])==10)?stripslashes($_POST['Date_Fin']):Date("d/m/Y"); $START=(strlen($_POST['HeureDebut'])==5)?stripslashes($_POST['HeureDebut']):Date("H:m"); $END=(strlen($_POST['HeureFin'])==5)?stripslashes($_POST['HeureFin']):Date("H:m"); $BUTTON = ""; } # Récupère les style css $HTML.=""; # Récupère les évènements du calendrier MySQL $events=''; $req = sql_select('*', 'spip_fullcalendar_events', 'id_fullcalendar='.$id_fullcalendar, '', 'start ASC'); $num_events = sql_count($req); if(!$num_events) $INFO.=_T('fullcalendar:no_event'); else { $HTML.=" "; $entete=""; while ($row = sql_fetch($req)) { $date = substr($row['start'],0,10); $date_fin = substr($row['end'],0,10); $start = substr($row['start'],11,5); $end = substr($row['end'],11,5); $class=$url=$lien_start=$lien_end=''; $fc_date = explode('-',substr($row['start'],0,10)); $fc_date_fin = explode('-',substr($row['end'],0,10)); $fc_start = explode(':',substr($row['start'],11,5)); $fc_end = explode(':',substr($row['end'],11,5)); if($row['id_style']>0){ $class=",backgroundColor: '".$style[$row['id_style']]['back']."', textColor: '".$style[$row['id_style']]['text']."', borderColor: '".$style[$row['id_style']]['bord']."'"; } else $class=''; if(strlen(trim($row['lien']))){ $lien_start=""; $lien_end=""; } $bloc=''; $t=substr($date,5,2); if($bloc_mois!=$t){ $bloc_mois=$t; $annee=substr($date,0,4); $bloc.="".$entete; } $url="url:\"javascript:ModifierEvenement('".$row['id_event']."')\","; $events.="{title: '".texte_script($row['titre'])."',start: new Date(".$fc_date[0].", ".($fc_date[1]-1).", ".$fc_date[2].", ".$fc_start[0].", ".$fc_start[1]."),end: new Date(".$fc_date_fin[0].", ".($fc_date_fin[1]-1).", ".$fc_date_fin[2].", ".$fc_end[0].", ".$fc_end[1]."),".$url." allDay: false ".$class."},"; $HTML.= "$bloc "; } sql_free($req); $HTML.="
"._T('fullcalendar:event_title')." "._T('fullcalendar:event_start')." "._T('fullcalendar:event_end')."  
".MyMonth($t)." ".$annee."
".$lien_start."".$row['titre']."".$lien_end." ".MyDateEnLettre ($date)."
".$start."
".MyDateEnLettre ($date_fin)."
".$end."
 
"; $events=substr($events,0,strlen($events)-1); } $INTERFACE="

"._T('fullcalendar:calendar')." :

"._T('fullcalendar:event_from')." :

"._T('fullcalendar:event_to')." :

"._T('fullcalendar:event_title')." :

".$STYLES."

"._T('fullcalendar:lien')." :

".$BUTTON."
"; } else if($type=='google') { $INFO=""._T('fullcalendar:google_agenda')."

"._T('fullcalendar:google_agenda_info')."

".$INFO; # Récupère le lien Google dans les évènements $req = sql_select('lien', 'spip_fullcalendar_events', 'id_fullcalendar='.$id); if(sql_count($req)){ # Une clé est déjà renseignée $rw = sql_fetch($req); sql_free($req); $gcalID=$rw['lien']; $URL_AGENDA = "http://www.google.com/calendar/feeds/".$rw['lien']."/public/basic"; $ACTION='update'; $BUTTON = ""; } else { # on ajoute la clé $ACTION='add'; $gcalID=''; $BUTTON = ""; } $INTERFACE='

'.$BUTTON.'
'; } else if($type=='rub') { $INFO=""._T('fullcalendar:rub_agenda')."

"._T('fullcalendar:rub_agenda_info')."

".$INFO; # Récupère le secteur utilisé pour les évènements $req = sql_select('lien', 'spip_fullcalendar_events', 'id_fullcalendar='.$id); if(sql_count($req)){ # Une rubrique est déjà renseignée $rw = sql_fetch($req); $ID_MOT=intval($rw['lien']); sql_free($req); $ACTION='update_rubrique'; $BUTTON = ""; } else { # on ajoute la clé $ACTION='add_rubrique'; $ID_MOT=''; $BUTTON = ""; } # Rubriques du site (contenant des articles) $LISTE_RUBRIQUES=''; $req = sql_select( array( "DISTINCT R.id_rubrique", "R.titre" ), array( "spip_rubriques AS R", "spip_articles AS A" ), array( "R.id_parent=0", "R.id_rubrique=A.id_rubrique", "R.id_parent=0" ), "", "R.titre ASC"); if(sql_count($req)){ while ($row = sql_fetch($req)) { $LISTE_RUBRIQUES.="