Commit fab2252bcee18770e190667b36798604dd95fe18

Authored by Geoffrey PREUD'HOMME
1 parent 3a23c07d

[Orga] Réponse adaptée aux évènements des boutons

- Script externe
C'est moche, mais ça marche. On verra si on a le temps de faire un
truc plus robuste / sémantiquement correct.
Showing 2 changed files with 76 additions and 28 deletions   Show diff stats
js/orga.js 0 → 100644
@@ -0,0 +1,66 @@ @@ -0,0 +1,66 @@
  1 +$(document).ready(function() {
  2 + $(".ev_li").each(function(index) {
  3 + var id = this.id.replace('ev_li_', '')
  4 + // console.debug(id)
  5 + _this = this
  6 + $('.ev_modifier', this).click(function(e) {
  7 + // console.debug(id, 'modifier', e)
  8 +
  9 + // Bouton
  10 + $(e.currentTarget).replaceWith('<button type="button" class="ev_appliquer btn btn-success"><span class="glyphicon glyphicon-ok"></span> Appliquer les changements</button>')
  11 + valider = $('#ev_li_' + id + ' .ev_appliquer')
  12 +
  13 + // Description
  14 + // var description = $('.ev_description', _this)
  15 + // TODO replaceWith ne fonctionne pas avec context (_this) pour une raison obscure
  16 + var description = $('#ev_li_' + id + ' .ev_description')
  17 + console.debug(description)
  18 + description.replaceWith('<textarea class="ev_description form-control">' + description[0].innerHTML + '</textarea>')
  19 + description = $('#ev_li_' + id + ' .ev_description')
  20 +
  21 + // Durée
  22 + var duree = $('#ev_li_' + id + ' .ev_duree')
  23 + console.debug($('.ev_duree_h', duree).text() || '00', ':', $('.ev_duree_m', duree).text() || '00')
  24 + h = $('.ev_duree_h', duree).text() || 0
  25 + h = h < 10 ? '0' + h : h
  26 + m = $('.ev_duree_m', duree).text() || 0
  27 + m = m < 10 ? '0' + m : m
  28 + duree.replaceWith('<input type="time" class="ev_duree form-control" value="' + h + ':' + m + '">')
  29 + duree = $('#ev_li_' + id + ' .ev_duree')
  30 +
  31 + valider.click(function(e) {
  32 + console.debug('ACTION modifier', id, description[0].innerHTML, duree[0].value)
  33 +
  34 + // TODO Envoyer et refresh
  35 + })
  36 + })
  37 + $('.ev_annuler', this).click(function(e) {
  38 + // console.debug(id, 'annuler', e)
  39 + if (window.confirm('Voulez-vous vraiment annuler cet évènement ?')) {
  40 + console.debug('ACTION annuler', id)
  41 +
  42 + // TODO Envoyer et refresh
  43 + }
  44 + })
  45 + $('.ev_supprimer', this).click(function(e) {
  46 + // console.debug(id, 'supprimer', e)
  47 + if (window.confirm('Voulez-vous vraiment supprimer cet évènement ? \nIl ne sera plus visible.')) {
  48 + console.debug('ACTION supprimer', id)
  49 + }
  50 +
  51 + // TODO Envoyer et refresh
  52 + })
  53 + $('.ev_pos_proposer', this).click(function(e) {
  54 + console.debug(id, 'pos_proposer', e)
  55 + })
  56 + $('.ev_pos_valider', this).click(function(e) {
  57 + console.debug(id, 'pos_valider', e)
  58 + })
  59 + })
  60 + $("#ev_ajouter_fixe").click(function(e) {
  61 + console.debug('ajouter_fixe', e)
  62 + })
  63 + $("#ev_ajouter_choix").click(function(e) {
  64 + console.debug('ajouter_choix', e)
  65 + })
  66 +})
@@ -70,7 +70,7 @@ class Evenement @@ -70,7 +70,7 @@ class Evenement
70 $heures = floor($this->duree/3600); 70 $heures = floor($this->duree/3600);
71 $minutes = floor($this->duree%3600/60); 71 $minutes = floor($this->duree%3600/60);
72 $secondes = floor($this->duree%3600%60); 72 $secondes = floor($this->duree%3600%60);
73 - $html .= 'Durée : <span class="ev_duree">'.($heures > 0 ? $heures.' heure'.($heures > 1 ? 's' : '').' ' : '').($minutes > 0 ? $minutes.' minute'.($minutes > 1 ? 's' : '').' ' : '').($secondes > 0 ? $secondes.' seconde'.($secondes > 1 ? 's' : '').' ' : '').'</span><br/>'; 73 + $html .= 'Durée : <span class="ev_duree">'.($heures > 0 ? '<span class="ev_duree_h">'.$heures.'</span> heure'.($heures > 1 ? 's' : '').' ' : '').($minutes > 0 ? '<span class="ev_duree_m">'.$minutes.'</span> minute'.($minutes > 1 ? 's' : '').' ' : '').($secondes > 0 ? '<span class="ev_duree_s">'.$secondes.'</span> seconde'.($secondes > 1 ? 's' : '').' ' : '').'</span><br/>';
74 if ($this->valide) { 74 if ($this->valide) {
75 $html .= 'Date : le <span class="ev_date">'.date('j/m/o', $this->valide).' à '.date('H:i', $this->valide).'</span><br/>'; 75 $html .= 'Date : le <span class="ev_date">'.date('j/m/o', $this->valide).' à '.date('H:i', $this->valide).'</span><br/>';
76 } 76 }
@@ -165,18 +165,23 @@ function a_evenement() { @@ -165,18 +165,23 @@ function a_evenement() {
165 # DEBUG 165 # DEBUG
166 $test1 = new Evenement; 166 $test1 = new Evenement;
167 $test1->id = 1; 167 $test1->id = 1;
  168 + $test1->duree = 12345;
168 $test1->nom = 'Évènement de test n°1'; 169 $test1->nom = 'Évènement de test n°1';
  170 + $test1->description = 'Description de l\'évènement de test n°1';
169 $test1->valide = time(); 171 $test1->valide = time();
170 172
171 $test2 = new Evenement; 173 $test2 = new Evenement;
172 $test2->id = 2; 174 $test2->id = 2;
173 $test2->nom = 'Évènement de test n°2'; 175 $test2->nom = 'Évènement de test n°2';
  176 + $test2->description = 'Description de l\'évènement de test n°2';
  177 + $test2->duree = 36000;
174 $test2->valide = time(); 178 $test2->valide = time();
175 $test2->annule = true; 179 $test2->annule = true;
176 180
177 $test3 = new Evenement; 181 $test3 = new Evenement;
178 $test3->id = 3; 182 $test3->id = 3;
179 $test3->nom = 'Évènement de test n°3'; 183 $test3->nom = 'Évènement de test n°3';
  184 + $test3->description = 'Description de l\'évènement de test n°3';
180 $test3->dates[] = 1415482197; 185 $test3->dates[] = 1415482197;
181 $test3->datesVotes[] = 42; 186 $test3->datesVotes[] = 42;
182 $test3->dates[] = time(); 187 $test3->dates[] = time();
@@ -187,6 +192,7 @@ function a_evenement() { @@ -187,6 +192,7 @@ function a_evenement() {
187 $test4 = new Evenement; 192 $test4 = new Evenement;
188 $test4->id = 4; 193 $test4->id = 4;
189 $test4->nom = 'Évènement de test n°4'; 194 $test4->nom = 'Évènement de test n°4';
  195 + $test4->description = 'Description de l\'évènement de test n°4';
190 $test4->dates[] = time(); 196 $test4->dates[] = time();
191 $test4->datesVotes[] = 5; 197 $test4->datesVotes[] = 5;
192 $test4->dates[] = time()+365*24*3600; 198 $test4->dates[] = time()+365*24*3600;
@@ -197,6 +203,7 @@ function a_evenement() { @@ -197,6 +203,7 @@ function a_evenement() {
197 $test5 = new Evenement; 203 $test5 = new Evenement;
198 $test5->id = 5; 204 $test5->id = 5;
199 $test5->nom = 'Évènement de test n°5'; 205 $test5->nom = 'Évènement de test n°5';
  206 + $test5->description = 'Description de l\'évènement de test n°5';
200 $test5->dates[] = time(); 207 $test5->dates[] = time();
201 $test5->datesVotes[] = 0; 208 $test5->datesVotes[] = 0;
202 $test5->supprime = true; 209 $test5->supprime = true;
@@ -204,6 +211,7 @@ function a_evenement() { @@ -204,6 +211,7 @@ function a_evenement() {
204 $test6 = new Evenement; 211 $test6 = new Evenement;
205 $test6->id = 6; 212 $test6->id = 6;
206 $test6->nom = 'Évènement de test n°6'; 213 $test6->nom = 'Évènement de test n°6';
  214 + $test6->description = 'Description de l\'évènement de test n°6';
207 $test6->valide = 1415452197; 215 $test6->valide = 1415452197;
208 216
209 return array($test1, $test2, $test3, $test4, $test5, $test6); 217 return array($test1, $test2, $test3, $test4, $test5, $test6);
@@ -272,33 +280,7 @@ foreach ($evenementsPasses as $evenement) { @@ -272,33 +280,7 @@ foreach ($evenementsPasses as $evenement) {
272 ?> 280 ?>
273 </ul> 281 </ul>
274 282
275 -<script type="text/javascript">  
276 - $(".ev_li").each(function (index) {  
277 - var id = this.id.replace('ev_li_', '')  
278 - // console.debug(id)  
279 - $('.ev_modifier', this).click(function(e) {  
280 - console.debug(id, 'modifier', e)  
281 - })  
282 - $('.ev_annuler', this).click(function(e) {  
283 - console.debug(id, 'annuler', e)  
284 - })  
285 - $('.ev_supprimer', this).click(function(e) {  
286 - console.debug(id, 'supprimer', e)  
287 - })  
288 - $('.ev_pos_proposer', this).click(function(e) {  
289 - console.debug(id, 'pos_proposer', e)  
290 - })  
291 - $('.ev_pos_valider', this).click(function(e) {  
292 - console.debug(id, 'pos_valider', e)  
293 - })  
294 - })  
295 - $("#ev_ajouter_fixe").click(function(e) {  
296 - console.debug('ajouter_fixe', e)  
297 - })  
298 - $("#ev_ajouter_choix").click(function(e) {  
299 - console.debug('ajouter_choix', e)  
300 - })  
301 -</script> 283 +<script type="text/javascript" src="js/orga.js"></script>
302 284
303 <?php 285 <?php
304 } else { 286 } else {