function synchronize() { var listeeventsIdBD; var listeeventsBD; $.ajax({ type: 'GET', async :false, url: 'calendar/geteventsbd.php?sync=1', success: function(resp) { resp = resp.replace("\n","\\n"); //ajouté a cause de probleme dans le parse resp = resp.replace("\/","\\/"); //ajouté a cause de probleme dans le parse var liste=JSON.parse(resp); listeeventsIdBD=liste['listeEventsId']; listeeventsBD=liste['listeEvents']; } }); var listeliveeventsGG; var listedeletedeventsGG; $.ajax({ type: 'GET', async :false, url: 'calendar/geteventsgoogle.php', success: function(resp) { resp = resp.replace("\n","\\n"); //ajouté a cause de probleme dans le parse resp = resp.replace("\/","\\/"); //ajouté a cause de probleme dans le parse var liste=JSON.parse(resp); listedeletedeventsGG=liste['deleted']; listeliveeventsGG=liste['live']; //objet plus complexe //nb=Object.keys(listeliveeventsGG).length); } }); for (var i = 0; i < listedeletedeventsGG.length; i++) { var eventidGG = listedeletedeventsGG[i]; var testSync = listeeventsIdBD.indexOf(eventidGG); if(testSync!=-1) //levenement GG est encore dans la BD, on le supprime { var datasql=new Object(); datasql['eventid']=eventidGG; var datasql2=JSON.stringify(datasql); $.ajax( { type: 'POST', url: 'calendar/deleteeventbd.php', data: {'data': datasql2}, success: function(resp) { msgs='Le rendez-vous id='+eventidGG+' a été supprimé'; infos(msgs); } }); } } //events GG live depuis 7 jours => ajouter nouveau event BD ou bien mettre a jour event BD correspondant for(var key in listeliveeventsGG) { var evt = listeliveeventsGG[key]; //alert(JSON.stringify(evt)); if(evt.transparency=='transparent') { var eventToUpd=evt; eventToUpd['eventIdToUpdate']=evt.id; var eventToUpd2=JSON.stringify(eventToUpd); $.ajax( { type: 'POST', url: 'calendar/seteventtransparency.php', data: {'data': eventToUpd2}, success: function(resp) { //alert(resp); } }); } eventidGG=evt.id; var testSync = listeeventsIdBD.indexOf(eventidGG); if(testSync==-1) //levenement nest pas dans la BD, on lajoute si on peut { summary_=evt.summary; if(summary_ === null || typeof summary_ === 'undefined') { msgs='Un rendez-vous enregistré ('+evt.id+') sur le site google calendar est mal renseigné'; infos(msgs); } else { nomarray=summary_.split(' '); prenom_=nomarray[0]; nom_=nomarray[1]; $.ajax({ type: 'GET', async :false, url: 'calendar/getclient.php?family_name='+nom_+'&given_name='+prenom_, success: function(respclient) { respclient=JSON.parse(respclient); if(!respclient) { msgs='Le rendez-vous pour '+summary_+' du '+evt.start.dateTime+', enregistré sur le site google calendar est associé à une personne inconnue dans la BD, ou bien le titre a été mal renseigné (rappel du format : "Prenom Nom")'; infos(msgs); } else { //le patient existe clientname = {'nom': nom_,'prenom': prenom_}; if(evt.description === null || typeof evt.description === 'undefined') desc=''; else desc=evt.description; eventToAdd = { 'summary': summary_, 'description': desc, 'start': { 'dateTime': evt.start.dateTime, 'timeZone': 'Europe/Paris' }, 'end': { 'dateTime': evt.end.dateTime, 'timeZone': 'Europe/Paris' } }; eventToAdd['eventid']=eventidGG; seteventSync(eventToAdd,clientname); } } }); } } else //evenement GG dans la bd { var DT=evt.updated; //date updated de levent GG var dateTime = DT.split("T"); var strdate = dateTime[0]; var time = dateTime[1].split(":"); var strtime = time[0]+':'+time[1]; var sec=time[2].split('.'); var secondes=sec[0]; strtime =strtime+':'+secondes; updateddateGG = strdate+' '+strtime; //date updated de levent GG format mysql updateddateBD=listeeventsBD[eventidGG].modified_at;//date updated de levent GG format mysql //alert(updateddateGG+' '+updateddateBD+' '+eventidGG); if(updateddateBD