Initial commit
Benjamin Renard authored 8 years ago
|
1) $('#cats').collapse({
2) toggle: false
3) });
4)
5) on_title_click=function(event) {
6) if (event.target.tagName=='BUTTON') {
7) return;
8) }
9) var title=$(this);
10) var panel=title.parent().parent();
11) var panel_collapse=panel.find('.panel-collapse');
12) var show=!panel_collapse.hasClass('in');
13) $('.panel-collapse').each(function(idx,div) {
14) $(div).collapse('hide');
15) });
16) if (show) {
17) panel_collapse.collapse('show');
18) }
19) }
20)
21) /***********************
22) * Add scase
23) **********************/
24) on_add_scase_btn_click=function(event) {
25) navbar_collapse_hide();
26) $('#add_scase_modal').modal('show');
27) }
28)
29) on_valid_add_scase_modal=function (e) {
30) e.preventDefault();
31) var name=$('#add_scase_name')[0].value;
32) if (name=='') {
33) alert("Vous devez saisir le nom de la valise !");
34) return;
35) }
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
36) var nameshake=scases.byName(name);
37) if (nameshake) {
38) if (nameshake.removed) {
39) alert("Une valise de ce nom existe dans la corbeille !");
40) }
41) else {
42) alert("Cette valise existe déjà !");
43) }
|
Initial commit
Benjamin Renard authored 8 years ago
|
44) return;
45) }
46) var scase=scases.newSCase(name);
47) if (scase) {
48) scases.save();
49) show_scase(scase);
50) }
51) $('#add_scase_modal').modal('hide');
52) }
53)
54) on_show_add_scase_modal=function () {
55) $('#add_scase_name').focus();
56) }
57)
58) on_close_add_scase_modal=function () {
59) $('#add_scase_modal form')[0].reset();
60) }
61)
62) /***********************
63) * Rename scase
64) **********************/
65) on_rename_scase_btn_click=function(event) {
66) navbar_collapse_hide();
67) $('#rename_scase_name')[0].value=$('#cats').data('scase');
68) $('#rename_scase_modal').modal('show');
69) }
70)
71) on_valid_rename_scase_modal=function (e) {
72) e.preventDefault();
73) var name=$('#rename_scase_name')[0].value;
74) if (name=='') {
75) alert("Vous devez saisir le nouveau nom de la valise !");
76) return;
77) }
78) if ($('#cats').data('scase')!=name) {
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
79) var nameshake=scases.byName(name);
80) if (nameshake) {
81) if (nameshake.removed) {
82) alert("Une valise portant ce nom existe dans la corbeille !");
83) }
84) else {
85) alert("Une valise portant ce nom existe déjà !");
86) }
|
Initial commit
Benjamin Renard authored 8 years ago
|
87) return;
88) }
89)
90) var scase=scases.renameSCase($('#cats').data('scase'),name);
91) if (scase) {
92) scases.save();
93) show_scase(scase);
94) }
95) else {
96) alert('Une erreur est survenue en renomant la valise...');
97) }
98) }
99) $('#rename_scase_modal').modal('hide');
100) }
101)
102) on_show_rename_scase_modal=function () {
103) $('#rename_scase_name').focus();
104) }
105)
106) on_close_rename_scase_modal=function () {
107) $('#rename_scase_modal form')[0].reset();
108) }
109)
110) /***********************
111) * Copy scase
112) **********************/
113) on_copy_scase_btn_click=function(event) {
114) navbar_collapse_hide();
115) $('#copy_scase_modal').modal('show');
116) }
117)
118) on_valid_copy_scase_modal=function (e) {
119) e.preventDefault();
120) var name=$('#copy_scase_name')[0].value;
121) if (name=='') {
122) alert("Vous devez saisir le nom de la nouvelle valise !");
123) return;
124) }
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
125) var nameshake=scases.byName(name);
126) if (nameshake) {
127) if (nameshake.removed) {
128) alert("Une valise portant ce nom existe dans la corbeille !");
129) }
130) else {
131) alert("Une valise portant ce nom existe déjà !");
132) }
|
Initial commit
Benjamin Renard authored 8 years ago
|
133) return;
134) }
135) var scase=scases.copySCase($('#cats').data('scase'),name);
136) if (scase) {
137) scases.save();
138) show_scase(scase);
139) }
140) else {
141) alert('Une erreur est survenue en copiant la valise...');
142) }
143) $('#copy_scase_modal').modal('hide');
144) }
145)
146) on_show_copy_scase_modal=function () {
147) $('#copy_scase_name').focus();
148) }
149)
150) on_close_copy_scase_modal=function () {
151) $('#copy_scase_modal form')[0].reset();
152) }
153)
|
Add reset scase feature
Benjamin Renard authored 8 years ago
|
154) /***********************
155) * Reset scase
156) **********************/
157) on_reset_scase_btn_click=function(event) {
158) navbar_collapse_hide();
159) var scase=scases.byName($('#cats').data('scase'));
160) if (scase) {
161) myconfirm('Voulez-vous vraiment réinitialiser la valise '+$('#cats').data('scase')+' ?',
162) function(data) {
163) scases.resetSCase(scase.name);
164) scases.save();
165) show_scase(scase);
166) });
167) }
168) }
|
Initial commit
Benjamin Renard authored 8 years ago
|
169) /***********************
170) * Delete scase
171) **********************/
172) on_delete_scase_btn_click=function(event) {
173) navbar_collapse_hide();
174) var scase=scases.byName($('#cats').data('scase'));
175) if (scase) {
176) myconfirm('Voulez-vous vraiment supprimer la valise '+$('#cats').data('scase')+' ?',
177) function(data) {
178) scases.removeSCase(scase.name);
179) scases.save();
180) show_scases();
181) });
182) }
183) }
184)
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
185) on_restore_scase_btn_click=function(event) {
186) navbar_collapse_hide();
187) var scase=event.data.scase;
188) if (scase) {
189) myconfirm('Voulez-vous vraiment restaurer la valise '+scase.name+' ?',
190) function(data) {
191) scase.restore();
192) scases.save();
193) show_scases();
194) });
195) }
196) }
197)
198) on_scase_trash_btn_click=function(event) {
199) event.preventDefault();
200) navbar_collapse_hide();
201) var scase=scases.byName($('#cats').data('scase'));
202) if (scase) {
203) show_scase_trash(scase);
204) }
205) }
206)
|
Initial commit
Benjamin Renard authored 8 years ago
|
207) /***********************
208) * Add cat
209) **********************/
210) on_add_cat_btn_click=function(event) {
211) navbar_collapse_hide();
212) $('#add_cat_modal').modal('show');
213) }
214)
215) on_valid_add_cat_modal=function (e) {
216) e.preventDefault();
217) var name=$('#add_cat_name')[0].value;
218) if (name=='') {
219) alert("Vous devez saisir le nom de la catégorie !");
220) return;
221) }
222) var scase=scases.byName($('#cats').data('scase'));
223) if (scase) {
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
224) var nameshake=scase.cats.byName(name);
225) if (nameshake) {
226) if (nameshake.removed) {
227) alert("Une catégorie portant ce nom existe dans la corbeille !");
228) }
229) else {
230) alert("Une catégorie portant ce nom existe déjà !");
231) }
|
Initial commit
Benjamin Renard authored 8 years ago
|
232) return;
233) }
234) var cat=scase.cats.newCat(name);
235) if (cat) {
236) scases.save();
237) show_scase(scase,cat.name);
238) }
239) }
240) $('#add_cat_modal').modal('hide');
241) }
242)
243) on_show_add_cat_modal=function () {
244) $('#add_cat_name').focus();
245) }
246)
247) on_close_add_cat_modal=function () {
248) $('#add_cat_modal form')[0].reset();
249) }
250)
251) /***********************
252) * Rename cat
253) **********************/
254) on_rename_cat_btn_click=function(event) {
255) navbar_collapse_hide();
256) $('#rename_cat_modal').data('cat',event.data.cat.name);
257) $('#rename_cat_name')[0].value=event.data.cat.name;
258) $('#rename_cat_modal').modal('show');
259) }
260)
261) on_valid_rename_cat_modal=function (e) {
262) e.preventDefault();
263) var name=$('#rename_cat_name')[0].value;
264) if (name=='') {
265) alert("Vous devez saisir le nouveau nom de la catégorie !");
266) return;
267) }
268) var scase=scases.byName($('#cats').data('scase'));
269) if (scase) {
270) if (scase.cats.byName(name)) {
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
271) var namesake=scase.cats.byName(name);
272) if (namesake.removed) {
273) alert("Une catégorie de se nom existe dans la corbeille !");
274) }
275) else {
276) alert("Cette catégorie existe déjà !");
277) }
|
Initial commit
Benjamin Renard authored 8 years ago
|
278) return;
279) }
280) var cat=scase.cats.renameCat($('#rename_cat_modal').data('cat'),name);
281) if (cat) {
282) scases.save();
283) show_scase(scase,cat.name);
284) }
285) }
286) $('#rename_cat_modal').modal('hide');
287) }
288)
289) on_show_rename_cat_modal=function () {
290) $('#rename_cat_name').focus();
291) }
292)
293) on_close_rename_cat_modal=function () {
294) $('#rename_cat_modal form')[0].reset();
295) }
296)
297) /***********************
298) * Delete cat
299) **********************/
300) on_delete_cat_btn_click=function(event) {
301) navbar_collapse_hide();
302) var scase=scases.byName($('#cats').data('scase'));
303) if (scase) {
304) var cat=event.data.cat.name;
305) myconfirm('Voulez-vous vraiment supprimer la catégorie '+cat+' ?',
306) function(data) {
307) scase.cats.removeCat(cat);
308) scases.save();
309) show_scase(scase);
310) });
311) }
312) }
313)
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
314) on_restore_cat_btn_click=function(event) {
315) navbar_collapse_hide();
316) var scase=scases.byName($('#cats').data('scase'));
317) if (scase) {
318) var cat=event.data.cat.name;
319) myconfirm('Voulez-vous vraiment restaure la catégorie '+cat+' ?',
320) function(data) {
321) scase.cats.restoreCat(cat);
322) scases.save();
323) show_scase(scase);
324) });
325) }
326) }
327)
|
Initial commit
Benjamin Renard authored 8 years ago
|
328) /************************
329) * Check/Uncheck thing
330) ***********************/
331) on_li_click=function(event) {
332) if (event.target.tagName!='LI') {
333) return;
334) }
335) var li=$(this);
336) if (li.hasClass('done')) {
337) li.removeClass('done');
338) }
339) else {
340) li.addClass('done');
341) }
342) var ul=li.parent();
343) var scase=scases.byName($('#cats').data('scase'));
344) if (scase) {
345) var cat=scase.cats.byName(ul.data('cat'));
346) if (cat) {
347) var thing=cat.byLabel(li.data('label'));
348) if (thing) {
|
Rework on data structure to...
Benjamin Renard authored 8 years ago
|
349) thing.setChecked(li.hasClass('done'));
|
Initial commit
Benjamin Renard authored 8 years ago
|
350) scases.save();
351) }
352) show_scase(scase,cat.name);
353) }
354) }
355) }
356)
357) /***********************
358) * Add thing
359) **********************/
360) on_li_add_click=function(event) {
361) var li=$(this);
362) var cat=li.parent().data('cat');
|
Permit to add multiple thin...
Benjamin Renard authored 7 years ago
|
363) var modal=$('#add_thing_modal');
|
Initial commit
Benjamin Renard authored 8 years ago
|
364) modal.data('cat',cat);
365) modal.modal('show');
366) }
367)
368) on_valid_add_thing_modal=function (e) {
369) e.preventDefault();
|
Permit to add multiple thin...
Benjamin Renard authored 7 years ago
|
370)
|
Initial commit
Benjamin Renard authored 8 years ago
|
371) var modal=$('#add_thing_modal');
372) var scase=scases.byName($('#cats').data('scase'));
373) if (scase) {
374) var cat=scase.cats.byName(modal.data('cat'));
375) if (cat) {
|
Permit to add multiple thin...
Benjamin Renard authored 7 years ago
|
376) var labels=[];
377) var error=false;
378) $('input.add_thing_label').each(function(idx,input) {
379) var val=$(input).val();
380) if (val && val!='') {
381) if (labels.indexOf(val)>-1) {
382) alert("Deux élements ne peuvent porter le même nom !");
383) error=true;
384) return;
385) }
386) if (cat.byLabel(val)) {
387) alert("L'élément '"+val+"' existe déjà !");
388) error=true;
389) return;
390) }
391) labels.push(val);
392) }
393) });
394) if (error) {
|
Initial commit
Benjamin Renard authored 8 years ago
|
395) return;
396) }
|
Permit to add multiple thin...
Benjamin Renard authored 7 years ago
|
397) if (labels.length==0) {
398) alert("Vous devez saisir au moins un nom d'élément !");
399) return;
400) }
401) for (idx in labels) {
402) cat.newThing(labels[idx]);
403) }
|
Initial commit
Benjamin Renard authored 8 years ago
|
404) scases.save();
405) show_scase(scase,cat.name);
406) }
407) }
408) modal.modal('hide');
409) }
410)
411) on_show_add_thing_modal=function () {
|
Permit to add multiple thin...
Benjamin Renard authored 7 years ago
|
412) $('input.add_thing_label_other').parent().remove();
413) $('input.add_thing_label').val('');
414) $('input.add_thing_label').first().focus();
|
Initial commit
Benjamin Renard authored 8 years ago
|
415) }
416)
417) on_close_add_thing_modal=function () {
418) $('#add_thing_modal form')[0].reset();
419) }
420)
|
Permit to add multiple thin...
Benjamin Renard authored 7 years ago
|
421) on_add_thing_label_focus=function(event) {
422) if ($('input.add_thing_label').last()[0] == event.target) {
423) var new_input_group=$('<div class="form-group"></div>');
424) var new_input=$('<input type="text" class="form-control add_thing_label add_thing_label_other" class="form-control" placeholder="Encore un ?"/>');
425) new_input_group.append(new_input);
426) new_input.bind('focus', on_add_thing_label_focus);
427) $(event.target).parent().after(new_input_group);
428) }
429) }
430)
|
Initial commit
Benjamin Renard authored 8 years ago
|
431)
432) /***********************
433) * Rename thing
434) **********************/
435) on_rename_thing_btn_click=function(event) {
436) navbar_collapse_hide();
437) $('#rename_thing_modal').data('cat',event.data.cat.name);
438) $('#rename_thing_modal').data('thing',event.data.thing.label);
439) $('#rename_thing_label')[0].value=event.data.thing.label;
440) $('#rename_thing_modal').modal('show');
441) }
442)
443) on_valid_rename_thing_modal=function (e) {
444) e.preventDefault();
445) var label=$('#rename_thing_label')[0].value;
446) if (label=='') {
447) alert("Vous devez saisir le nouveau nom de l'élément !");
448) return;
449) }
450) var scase=scases.byName($('#cats').data('scase'));
451) if (scase) {
452) var cat=scase.cats.byName($('#rename_thing_modal').data('cat'));
453) if (cat) {
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
454) var namesake=cat.byLabel(label);
455) if (namesake) {
456) if (namesake.removed) {
457) alert("Un élément de ce nom existe dans la corbeille !");
458) }
459) else {
460) alert("Un élément de ce nom existe déjà !");
461) }
|
Initial commit
Benjamin Renard authored 8 years ago
|
462) return;
463) }
464) var thing=cat.renameThing($('#rename_thing_modal').data('thing'),label);
465) if (thing) {
466) scases.save();
467) show_scase(scase,cat.name);
468) }
469) }
470) }
471) $('#rename_thing_modal').modal('hide');
472) }
473)
474) on_show_rename_thing_modal=function () {
|
Fix input focus on rename t...
Benjamin Renard authored 8 years ago
|
475) $('#rename_thing_label').focus();
|
Initial commit
Benjamin Renard authored 8 years ago
|
476) }
477)
478) on_close_rename_thing_modal=function () {
479) $('#rename_thing_modal form')[0].reset();
480) }
481)
482) /***********************
483) * Delete thing
484) **********************/
485) on_delete_thing_btn_click=function(event) {
486) navbar_collapse_hide();
487) var scase=scases.byName($('#cats').data('scase'));
488) if (scase) {
489) var cat=scase.cats.byName(event.data.cat.name);
490) if (cat) {
491) var thing=event.data.thing.label;
492) myconfirm("Voulez-vous vraiment supprimer l'élément "+thing+" ?",
493) function(data) {
494) cat.removeThing(thing);
495) scases.save();
496) show_scase(scase,cat.name);
497) });
498) }
499) }
500) }
501)
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
502) on_restore_thing_btn_click=function(event) {
503) navbar_collapse_hide();
504) var scase=scases.byName($('#cats').data('scase'));
505) if (scase) {
506) var cat=scase.cats.byName(event.data.cat.name);
507) if (cat) {
508) var thing=event.data.thing.label;
509) myconfirm("Voulez-vous vraiment restaurer l'élément "+thing+" ?",
510) function(data) {
511) cat.restoreThing(thing);
512) scases.save();
513) show_scase(scase,cat.name);
514) });
515) }
516) }
517) }
518)
|
Initial commit
Benjamin Renard authored 8 years ago
|
519) /********************
520) * Show one scase
521) *******************/
522) show_cat=function(cat,displayed) {
523) var panel=$('<div class="panel panel-default"></div>');
524) var panel_heading=$('<div class="panel-heading" role="tab"></div>');
525) var panel_title=$('<h4 class="panel-title">'+cat.name+' </h4>');
526) panel_title.bind('click',on_title_click);
527)
|
Rework on data structure to...
Benjamin Renard authored 8 years ago
|
528) var stats=cat.stats();
|
Initial commit
Benjamin Renard authored 8 years ago
|
529) var tag=$('<span class="count-tag pull-right"></span>');
|
Rework on data structure to...
Benjamin Renard authored 8 years ago
|
530) if (stats.things==stats.done) {
|
Initial commit
Benjamin Renard authored 8 years ago
|
531) tag.append($('<span class="label label-success"><span class="glyphicon glyphicon-ok" aria-hidden="true"></span></span>'));
532) }
533) else {
|
Rework on data structure to...
Benjamin Renard authored 8 years ago
|
534) tag.append($('<span class="badge">'+stats.done+' / '+stats.things+'</span>'));
|
Initial commit
Benjamin Renard authored 8 years ago
|
535) }
536)
537) var delete_btn=$('<button class="btn btn-default btn-xs pull-right"><span class="glyphicon glyphicon-trash"></button>');
538) delete_btn.bind('click',{'cat': cat},on_delete_cat_btn_click);
539) tag.append(delete_btn);
540)
541) var rename_btn=$('<button class="btn btn-default btn-xs pull-right"><span class="glyphicon glyphicon-edit"></button>');
542) rename_btn.bind('click',{'cat': cat},on_rename_cat_btn_click);
543) tag.append(rename_btn);
544)
545) panel_title.append(tag);
546)
547)
548) panel_heading.append(panel_title);
549) panel.append(panel_heading);
550) var panel_collapse=$('<div class="panel-collapse collapse" role="tabpanel"></div>');
551) if (displayed) {
552) panel_collapse.addClass('in');
553) }
554) var ul=$('<ul class="list-group" data-cat="'+cat.name+'"></ul>');
555) for (idx in cat.things) {
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
556) if (cat.things[idx].removed) {
557) continue;
558) }
|
Initial commit
Benjamin Renard authored 8 years ago
|
559) var li=$('<li class="list-group-item" data-label="'+cat.things[idx].label+'">'+cat.things[idx].label+'</li>');
560) if (cat.things[idx].checked) {
561) li.addClass('done');
562) }
563) li.bind('click',on_li_click);
564)
565) var li_actions=$('<span class="actions pull-right"></span>');
566)
567) var delete_el_btn=$('<button class="btn btn-default btn-xs pull-right"><span class="glyphicon glyphicon-trash"></button>');
568) delete_el_btn.bind('click',{'cat': cat,'thing': cat.things[idx]},on_delete_thing_btn_click);
569) li_actions.append(delete_el_btn);
570)
571) var rename_el_btn=$('<button class="btn btn-default btn-xs pull-right"><span class="glyphicon glyphicon-edit"></button>');
572) rename_el_btn.bind('click',{'cat': cat,'thing': cat.things[idx]},on_rename_thing_btn_click);
573) li_actions.append(rename_el_btn);
574)
575) li.append(li_actions);
576)
577) ul.append(li);
578) }
579) var li=$('<li class="list-group-item"><span class="glyphicon glyphicon-plus-sign"></span> Ajouter un élément</li>');
580) li.bind('click',on_li_add_click);
581) ul.append(li);
582) panel_collapse.append(ul);
583) panel.append(panel_collapse);
584) $('#cats').append(panel);
585) }
586)
587) show_scase=function(scase,display_cat) {
|
Rework on scase page title
Benjamin Renard authored 8 years ago
|
588) clear_page('<h3><span class="glyphicon glyphicon-briefcase" aria-hidden="true"></span> '+scase.name+'</h3><div class="panel-group" id="cats" role="tablist" aria-multiselectable="true" data-scase="'+scase.name+'"></div>');
|
Initial commit
Benjamin Renard authored 8 years ago
|
589) scase.cats.each(function(idx,cat) {
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
590) if (cat.removed) {
591) return;
592) }
|
Initial commit
Benjamin Renard authored 8 years ago
|
593) show_cat(cat,(cat.name==display_cat));
594) });
595) show_menu('scase');
596) }
597)
598) on_back_to_scases_btn_click=function(e) {
599) e.preventDefault();
600) navbar_collapse_hide();
601) show_scases();
602) }
603)
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
604) /********************
605) * Show scase trash
606) *******************/
607) show_scase_trash=function(scase,display_cat) {
608) clear_page('<h3><span class="glyphicon glyphicon-trash" aria-hidden="true"></span>'+scase.name+' : Corbeille <button class="btn btn-default btn-xs" id="back_btn"><span class="glyphicon glyphicon-arrow-left"></button></h3><div class="panel-group" id="cats" role="tablist" aria-multiselectable="true" data-scase="'+scase.name+'"></div>');
609)
610) $('#content h3 #back_btn').bind('click', {'scase': scase}, function(event) {
611) show_scase(event.data.scase);
612) });
613)
614) scase.cats.each(function(idx,cat) {
615) show_cat_trash(cat,(cat.name==display_cat));
616) });
617) if ($('#cats .panel').length==0) {
618) $('#content').append('<p class="center">La corbeille est vide.</p>');
619) }
620) show_menu('scase');
621) }
622)
623) show_cat_trash=function(cat,displayed) {
624) var panel=$('<div class="panel panel-default"></div>');
625) var panel_heading=$('<div class="panel-heading" role="tab"></div>');
626) var panel_title=$('<h4 class="panel-title">'+cat.name+' </h4>');
627)
628) var tag=$('<span class="count-tag pull-right"></span>');
629)
630) panel_title.append(tag);
631)
632)
633) panel_heading.append(panel_title);
634) panel.append(panel_heading);
635)
636)
637) if (cat.removed) {
638) var stats=cat.stats();
639) tag.append($('<span class="badge">'+stats.things+'</span>'));
640)
641) var restore_btn=$('<button class="btn btn-default btn-xs pull-right"><span class="glyphicon glyphicon-ok"></button>');
642) restore_btn.bind('click',{'cat': cat},on_restore_cat_btn_click);
643) tag.append(restore_btn);
644) }
645) else {
646) var deleted_things=[];
647) for (idx in cat.things) {
648) if (cat.things[idx].removed) {
649) deleted_things.push(cat.things[idx]);
650) }
651) }
652) if (deleted_things.length==0) {
653) return true;
654) }
655) panel_title.bind('click',on_title_click);
656) tag.append($('<span class="badge">'+deleted_things.length+'</span>'));
657)
658) var panel_collapse=$('<div class="panel-collapse collapse" role="tabpanel"></div>');
659) if (displayed) {
660) panel_collapse.addClass('in');
661) }
662) var ul=$('<ul class="list-group" data-cat="'+cat.name+'"></ul>');
663) for (idx in deleted_things) {
664) var li=$('<li class="list-group-item" data-label="'+deleted_things[idx].label+'">'+deleted_things[idx].label+'</li>');
665) var li_actions=$('<span class="actions pull-right"></span>');
666)
667) var restore_el_btn=$('<button class="btn btn-default btn-xs pull-right"><span class="glyphicon glyphicon-ok"></button>');
668) restore_el_btn.bind('click',{'cat': cat,'thing': deleted_things[idx]},on_restore_thing_btn_click);
669) li_actions.append(restore_el_btn);
670)
671) li.append(li_actions);
672)
673) ul.append(li);
674) }
675) panel_collapse.append(ul);
676) panel.append(panel_collapse);
677) }
678)
679) $('#cats').append(panel);
680) }
681)
682) on_back_to_scase_btn_click=function(e) {
683) e.preventDefault();
684) navbar_collapse_hide();
685) show_scase(e.data.scase);
686) }
687)
|
Initial commit
Benjamin Renard authored 8 years ago
|
688) /********************
689) * Show scases
690) *******************/
691) show_scases=function() {
|
Rework on home page
Benjamin Renard authored 8 years ago
|
692) clear_page('<h3>Vos valises</h3><ul class="list-group" id="scases"></ul>');
|
Initial commit
Benjamin Renard authored 8 years ago
|
693) scases.each(function(idx,scase) {
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
694) if (scase.removed) {
695) return;
696) }
|
Rework on home page
Benjamin Renard authored 8 years ago
|
697) var stats=scase.stats();
698) var tag='<span class="count-tag pull-right">';
699) if (stats.things==stats.done) {
700) tag+='<span class="label label-success"><span class="glyphicon glyphicon-ok" aria-hidden="true"></span></span>';
701) }
702) else {
703) tag+='<span class="badge">'+stats.done+' / '+stats.things+'</span>';
704) }
705) tag+='</span>';
706)
707) var li=$('<li class="list-group-item" data-name="'+scase.name+'"><span class="scase-name"><span class="glyphicon glyphicon-briefcase" aria-hidden="true"></span> '+scase.name+'</span>'+tag+'</li>');
|
Initial commit
Benjamin Renard authored 8 years ago
|
708) li.bind('click',on_scase_click);
709) $('#scases').append(li);
710) });
711) show_menu('scases');
712) }
713)
714) on_scase_click=function(event) {
715) var li=$(this);
716) var scase=scases.byName(li.data('name'));
717) show_scase(scase);
718) }
719)
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
720) /********************
721) * Show scases trash
722) *******************/
723) show_scases_trash=function() {
724) clear_page('<h3>Corbeille <button class="btn btn-default btn-xs" id="back_btn"><span class="glyphicon glyphicon-arrow-left"></button></h3><ul class="list-group" id="scases"></ul>');
725) $('#content h3 #back_btn').bind('click', function(event) {
726) show_scases();
727) });
728)
729) scases.each(function(idx,scase) {
730) if (!scase.removed) {
731) return;
732) }
733) var stats=scase.stats();
734) var tags=$('<span class="count-tag pull-right"></span>');
735) tags.append('<span class="badge">'+stats.things+'</span>');
736)
737) var restore_btn=$('<button class="btn btn-default btn-xs pull-right"><span class="glyphicon glyphicon-ok"></button>');
738) restore_btn.bind('click',{'scase': scase},on_restore_scase_btn_click);
739) tags.append(restore_btn);
740)
741) var li=$('<li class="list-group-item" data-name="'+scase.name+'"><span class="scase-name"><span class="glyphicon glyphicon-briefcase" aria-hidden="true"></span> '+scase.name+'</span></li>');
742) li.append(tags);
743) $('#scases').append(li);
744) });
745) if ($('#scases li').length==0) {
746) $('#content').append('<p class="center">Aucune valise dans la corbeille.</p>');
747) }
748) show_menu('scases');
749) }
750)
|
Initial commit
Benjamin Renard authored 8 years ago
|
751) clear_page=function(new_content) {
752) if (new_content) {
753) $('#content').html(new_content);
754) }
755) else {
756) $('#content').html('');
757) }
758) }
759)
760) /************************
761) * Show menu
762) ***********************/
763) show_menu=function(menu) {
764) $('.menu').css('display','none');
765) $('.menu-'+menu).css('display','block');
766) }
767)
768) /*******************
769) * pleaseWaitDialog
770) *******************/
771)
772) pleaseWaitShow=function() {
773) $('#please_wait_modal').modal('show');
774) }
775)
776) pleaseWaitHide=function() {
777) $('#please_wait_modal').modal('hide');
778) }
779)
780) /****************
781) * Nav bars
782) ****************/
783) navbar_collapse_hide=function() {
784) if ($('#navbar-top-collapse').hasClass('in')) {
785) $('#navbar-top-collapse').collapse('hide');
786) }
787) }
788)
789) /**************************
790) * Cache / Update
791) *************************/
792)
793) _checkForUpgrade=false;
794) onUpdateReady=function() {
795) if (_checkForUpgrade) {
796) pleaseWaitHide();
797) }
798) myconfirm(
799) "Une nouvelle version de l'application est disponible. Voulez-vous lancer la mise à jour ?",
800) onConfirmUpdate,null,{}
801) );
802) }
803)
804) onConfirmUpdate=function() {
805) window.applicationCache.swapCache();
806) location.reload();
807) }
808)
809) updateApp = function() {
810) navbar_collapse_hide();
811) pleaseWaitShow();
812) _checkForUpgrade=true;
813) window.applicationCache.update();
814) }
815)
816) onNoUpdate = function() {
817) if (_checkForUpgrade) {
818) pleaseWaitHide();
819) _checkForUpgrade=false;
820) alert('Aucune mise à jour disponible');
821) }
822) }
823)
824) /********************
825) * Clear local data
826) ********************/
827) clear_local_data=function() {
828) navbar_collapse_hide();
829) myconfirm('Etes-vous sûre de vouloir supprimer les données locales ?',on_confirm_clear_local_data);
830) }
831)
832) on_confirm_clear_local_data=function(data) {
833) delete localStorage.scases;
834) location.reload();
835) }
836)
837) /*********************
838) * Activate
839) *********************/
840) $( document ).ready( function() {
841) pleaseWaitShow();
842) if(typeof(localStorage)!=="undefined"){
843) scases=new SCaseList();
844) scases.loadFromLocalStorage();
845) show_scases();
846) }
847) else {
848) alert('Local storage not supported !');
849) pleaseWaitHide();
850) return;
851) }
852)
853) $('#clear_local_data').bind('click',clear_local_data);
854)
855) $('#add_scase_btn').bind('click',on_add_scase_btn_click);
856) $('#add_scase_submit').bind('click',on_valid_add_scase_modal);
857) $("#add_scase_modal").on('shown.bs.modal',on_show_add_scase_modal);
858) $("#add_scase_modal").on('hidden.bs.modal',on_close_add_scase_modal);
859) $("#add_scase_modal form").bind('submit',on_valid_add_scase_modal);
860)
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
861) $('#scases_trash_btn').bind('click',show_scases_trash);
862)
|
Initial commit
Benjamin Renard authored 8 years ago
|
863) $('#rename_scase_btn').bind('click',on_rename_scase_btn_click);
864) $('#rename_scase_submit').bind('click',on_valid_rename_scase_modal);
865) $("#rename_scase_modal").on('shown.bs.modal',on_show_rename_scase_modal);
866) $("#rename_scase_modal").on('hidden.bs.modal',on_close_rename_scase_modal);
867) $("#rename_scase_modal form").bind('submit',on_valid_rename_scase_modal);
868)
869) $('#copy_scase_btn').bind('click',on_copy_scase_btn_click);
870) $('#copy_scase_submit').bind('click',on_valid_copy_scase_modal);
871) $("#copy_scase_modal").on('shown.bs.modal',on_show_copy_scase_modal);
872) $("#copy_scase_modal").on('hidden.bs.modal',on_close_copy_scase_modal);
873) $("#copy_scase_modal form").bind('submit',on_valid_copy_scase_modal);
874)
|
Add reset scase feature
Benjamin Renard authored 8 years ago
|
875) $('#reset_scase_btn').bind('click',on_reset_scase_btn_click);
|
Initial commit
Benjamin Renard authored 8 years ago
|
876) $('#delete_scase_btn').bind('click',on_delete_scase_btn_click);
|
Add trash feature on scase,...
Benjamin Renard authored 7 years ago
|
877) $('#scase_trash_btn').bind('click',on_scase_trash_btn_click);
|
Initial commit
Benjamin Renard authored 8 years ago
|
878)
879) $('#add_cat_btn').bind('click',on_add_cat_btn_click);
880) $('#add_cat_submit').bind('click',on_valid_add_cat_modal);
881) $("#add_cat_modal").on('shown.bs.modal',on_show_add_cat_modal);
882) $("#add_cat_modal").on('hidden.bs.modal',on_close_add_cat_modal);
883) $("#add_cat_modal form").bind('submit',on_valid_add_cat_modal);
884)
885) $('#rename_cat_submit').bind('click',on_valid_rename_cat_modal);
886) $("#rename_cat_modal").on('shown.bs.modal',on_show_rename_cat_modal);
887) $("#rename_cat_modal").on('hidden.bs.modal',on_close_rename_cat_modal);
888) $("#rename_cat_modal form").bind('submit',on_valid_rename_cat_modal);
889)
890) $('#back_to_scases').bind('click',on_back_to_scases_btn_click);
891)
|
Permit to add multiple thin...
Benjamin Renard authored 7 years ago
|
892) $('input.add_thing_label').bind('focus',on_add_thing_label_focus);
|
Initial commit
Benjamin Renard authored 8 years ago
|
893) $('#add_thing_submit').bind('click',on_valid_add_thing_modal);
894) $("#add_thing_modal").on('shown.bs.modal',on_show_add_thing_modal);
895) $("#add_thing_modal").on('hidden.bs.modal',on_close_add_thing_modal);
896) $("#add_thing_modal form").bind('submit',on_valid_add_thing_modal);
897)
898) $('#rename_thing_submit').bind('click',on_valid_rename_thing_modal);
899) $("#rename_thing_modal").on('shown.bs.modal',on_show_rename_thing_modal);
900) $("#rename_thing_modal").on('hidden.bs.modal',on_close_rename_thing_modal);
901) $("#rename_thing_modal form").bind('submit',on_valid_rename_thing_modal);
902)
|
Bind on App Name click to s...
Benjamin Renard authored 8 years ago
|
903) $('#app-name').bind('click', show_scases);
|