Bonjour à tous ,

J'ai encore des soucis avec le schedule de primefaces 3.2

Tout d'abord à la création d'un événement je voulais y ajouter l'heure de début et de fin donc voila ce que j'ai fais :

XHTML
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
<p:dialog widgetVar="detailModal" header="Event Details" showEffect="clip" hideEffect="clip">  
              <h:panelGrid id="eventDetails" columns="2">  
                <h:outputLabel for="title" value="Title:" />  
                <p:inputText id="title" value="#{calendrierSessionBeanOld.event.title}" required="false"/>  
                <h:outputLabel for="from" value="Du:" />  
                <p:inputMask id="from" value="#{calendrierSessionBeanOld.event.startDate}" mask="99/99/9999">  
                  <f:convertDateTime pattern="dd/MM/yyyy" />  
                </p:inputMask>                                  
                <h:outputLabel for="to" value="Au:" />  
                <p:inputMask id="to" value="#{calendrierSessionBeanOld.event.endDate}" mask="99/99/9999">  
                  <f:convertDateTime pattern="dd/MM/yyyy" />  
                </p:inputMask> 
                <h:outputLabel value="De:" />  
                <p:calendar value="#{calendrierSessionBeanOld.heureDeb}" pattern="HH:mm" timeOnly="true" size="4"/>
                <h:outputLabel value="A:" />  
                <p:calendar value="#{calendrierSessionBeanOld.heureFin}" pattern="HH:mm" timeOnly="true" size="4"/>
                <h:outputLabel for="allDay" value="All Day:" />  
                <h:selectBooleanCheckbox id="allDay" value="#{calendrierSessionBeanOld.event.allDay}" />  
 
               <p:commandButton type="reset" value="Reset" />  
               <p:commandButton value="Save" actionListener="#{calendrierSessionBeanOld.addEvent()}" oncomplete="myschedule.update();detailModal.hide();"/>  
             </h:panelGrid>
BEAN
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
 
public class CalendrierSessionBeanOld{
 
 
 
 
 
    private ScheduleModel eventModel;
    private int slot;
    private String view ;
    private Date date;
    private Date dateDebut;
    private Date dateFin;
 
    private ScheduleEvent event;
    private Date heureDeb;
    private Date heureFin;
 
public void addEvent() {  
 
       dateDebut = event.getStartDate();
       dateFin = event.getEndDate();
 
         if(event.getId() == null){
            event.getStartDate().setTime(ajoutDeHeure(dateDebut, heureDeb).getTime());
            event.getEndDate().setTime(ajoutDeHeure(dateFin, heureFin).getTime());
            eventModel.addEvent(event);  
         }else{
            event.getStartDate().setTime(ajoutDeHeure(dateDebut, heureDeb).getTime());
            event.getEndDate().setTime(ajoutDeHeure(dateFin, heureFin).getTime());
            eventModel.updateEvent(event);  
         }
        event = new DefaultScheduleEvent();  
    } 
 
 
 
   public Date ajoutDeHeure(Date dateRef,Date heure){
      Date dateFinal = new Date();
 
       Calendar calendarDateRef=Calendar.getInstance();
      calendarDateRef.setTime(dateRef); 
 
       Calendar calendarDateHeure=Calendar.getInstance();
       calendarDateHeure.setTime(heure); 
 
      calendarDateRef.set(Calendar.HOUR,calendarDateHeure.get(Calendar.HOUR));
      calendarDateRef.set(Calendar.MINUTE,calendarDateHeure.get(Calendar.MINUTE));
 
 
      dateFinal.setTime(calendarDateRef.getTimeInMillis()); 
 
      return dateFinal;
   }
Cela fonctionne et même sur plusieurs jour sauf quand l'heure de début ou de fin et après 12H (pb je pense d'AM/PM) je ne sais pas comment résoudre mon problème.


Ensuite j'ai toujours un décalage d'une heure qui à mon avis est du à l'heure d'hiver/été mais la encore je ne sais pas comment faire ?


Pour finir lorsqu'on utilise le eventResize je ne sais pas comment mettre à jour l'event quelqu'un aurait-il un exemple ?

D'avance merci