fd335245d5fdc49c2070a7515e6e8db46c71fe72
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

1) refresh_group_list=function() {
2)   grouplist=$('#group-choice')[0];
3)   $('a.group-choice').each(function(idx,a) {
4)     $(a).parent().remove();
5)   });
6) 
7)   if (groups.count()==0) {
8)     $(grouplist).prepend('<li><a class="group-choice">Aucune groupe</a></li>');
9)   }
10)   else { 
11)     groups.each(function(idx,group) {
12)       $(grouplist).prepend('<li><a class="group-choice">'+group.name+'</a></li>');
13)     });
14) 
15)     $('a.group-choice').each(function(idx,a) {
16)       $(a).bind('click',on_group_choice_click);
17)     });
18)   }
19) }
20) 
21) 
22) /****************
23)  * Add group
24)  ****************/
Benjamin Renard Hide navbar-groupe-collapse...

Benjamin Renard authored 10 years ago

25) 
26) on_click_add_group_btn=function(e) {
Benjamin Renard Add function navbar_collaps...

Benjamin Renard authored 10 years ago

27)   navbar_collapse_hide();
Benjamin Renard Hide navbar-groupe-collapse...

Benjamin Renard authored 10 years ago

28)   $('#add_group_modal').modal('show');
29) }
30) 
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

31) on_show_add_group_modal=function(e) {
32)   $('#add_group_modal #add_group_name').focus();
33) }
34) 
35) on_valid_add_group_modal=function () {
36)   var name=$('#add_group_name')[0].value;
37)   if (name=='') {
38)     alert('Vous devez saisir un nom !');
39)     return;
40)   }
41)   if (groups[name]!==undefined) {
42)     alert('Ce groupe exite déjà !');
43)     return;
44)   }
45)   groups[name]=new Group(name);
46)   refresh_group_list();
47)   $('#add_group_modal').modal('hide');
48)   groups.save();
49)   view_group(groups[name]);
50) }
51) 
52) on_close_add_group_modal=function () {
Benjamin Renard Fix error on add_group_moda...

Benjamin Renard authored 10 years ago

53)   $('#add_group_modal form')[0].reset();
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

54) }
55) 
56) /****************
57)  * Nav bars
58)  ****************/
59) on_group_choice_click=function(e) {
60)   view_group(groups[$(e.target).html()]);
Benjamin Renard Add function navbar_collaps...

Benjamin Renard authored 10 years ago

61)   navbar_collapse_hide();
62) }
63) 
64) navbar_collapse_hide=function() {
65)   if ($('#navbar-groupe-collapse').hasClass('in')) {
66)     $('#navbar-groupe-collapse').collapse('hide');
67)   }
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

68) }
69) 
Benjamin Renard Manage multiple screen part...

Benjamin Renard authored 10 years ago

70) /****************
71)  * Parts
72)  ****************/
73) 
74) view_part=function(part) {
75)   $('.part').each(function(idx,div) {
76)     $(div).css('display','none');
77)   });
78)   $(part).css('display','block');
79) }
80) 
81) view_home=function() {
82)   if (user) {
83)     $('#view-home #title').html('Bonjour '+user.name);
84)   }
85)   else {
86)     $('#view-home #title').html('Bonjour');
87)   }
88)   if (groups.count()>0) {
89)     tbody=$('#view-home #mybalances tbody');
90)     tbody.html('');
91)     balances=groups.balances();
92)     var sum=0;
93)     for (g in balances) {
94)       if (jQuery.type(balances[g]['balance'][user.name])!='undefined') {
95)         if (balances[g]['balance'][user.name]['diff']<0) {
96)           sum+=balances[g]['balance'][user.name]['diff'];
97)           diff='<td class="negative">'+balances[g]['balance'][user.name]['diff'].toFixed(2)+'</td>';
98)         }
99)         else {
100)           value=balances[g]['balance'][user.name]['total']-balances[g]['min'];
101)           sum+=value;
102)           diff='<td class="positive">+'+value.toFixed(2)+' €</td>';
103)         }
Benjamin Renard Make group name as link in...

Benjamin Renard authored 10 years ago

104)         tbody.html(tbody.html()+'<tr><td><a class="group-link">'+g+'</a></td>'+diff+'</tr>');
Benjamin Renard Manage multiple screen part...

Benjamin Renard authored 10 years ago

105)       }
106)     }
Benjamin Renard Make group name as link in...

Benjamin Renard authored 10 years ago

107)     $('#view-home #mybalances a.group-link').bind('click',function(e) {
108)       g=$(e.target).html();
109)       if (jQuery.type(groups[g])!='undefined') {
110)         view_group(groups[g]);
111)       }
112)     });
Benjamin Renard Manage multiple screen part...

Benjamin Renard authored 10 years ago

113)     if (sum<0) {
114)       $('#view-home #mybalances #total-value').html('<span class="negative">'+sum.toFixed(2)+' €</span>');
115)     }
116)     else {
117)       $('#view-home #mybalances #total-value').html('<span class="positive">'+(sum==0?'':'+')+sum.toFixed(2)+' €</span>');
118)     }
119)     $('#view-home #mybalances').css('display','block');
120)   }
121)   else {
122)     $('#view-home #mybalances').css('display','none');
123)   }
124)   view_part('#view-home');
125) }
126) 
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

127) /****************
128)  * View group
129)  ****************/
130) view_group=function(group) {
Benjamin Renard Replace usage of view-group...

Benjamin Renard authored 10 years ago

131)   $('#view-group h1 span:first').html(group.name);
132)   $('#view-group #group_name')[0].value=group.name;
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

133)   set_contributors(group);
134)   on_contributor_change();
Benjamin Renard Manage multiple screen part...

Benjamin Renard authored 10 years ago

135)   view_part('#view-group');
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

136) }
137) 
138) set_contributors=function(group) {
139)   $('#view-group #contributor option').remove();
140)   if(group.contributors.length==0) {
141)     $('#view-group #contributor').append('<option>Aucun participant</option>');
142)   }
143)   else {
144)     $(group.contributors).each(function(idx,c) {
145)       $('#view-group #contributor').append('<option value="'+c.name+'">'+c.name+'</option>');
146)     });
147)   }
148) }
149) 
150) on_contributor_change=function(e) {
Benjamin Renard Replace usage of view-group...

Benjamin Renard authored 10 years ago

151)   show_contributions(groups[$('#view-group #group_name')[0].value],$('#view-group #contributor')[0].value);
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

152) }
153) 
154) show_contributions=function(group,contributor_name) {
155)   var tbody=$($('#view-group #contributions tbody')[0]);
156)   tbody.html('');
157)   total=$($('#view-group #total-value')[0]);
158)   contributions=group.contributionsByContributorName(contributor_name);
159)   if (contributions.length==0) {
160)     tbody.append('<tr><td colspan=3>Aucune contributions</td></tr>');
161)     total.html('0,00 €');
162)   }
163)   else {
164)     sum=0;
165)     for (idx in contributions) {
166)       col_actions='<td><div class="btn-group" data-id="'+contributions[idx].id+'"><button type="button" class="btn btn-default contribution_edit_btn"><span class="glyphicon glyphicon-edit"></span></button><button type="button" class="btn btn-default contribution_delete_btn"><span class="glyphicon glyphicon-trash"></span></button></div></td>';
167)       tbody.append('<tr><td>'+contributions[idx].getTitle()+'</td><td>'+contributions[idx].cost+' €</td>'+col_actions+'</tr>');
168)       sum+=contributions[idx].cost;
169)     }
170)     total.html(sum+' €');
171)   }
Benjamin Renard Clean code

Benjamin Renard authored 10 years ago

172)   
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

173)   $('.contribution_delete_btn').bind('click',on_contribution_delete_btn_click);
174)   $('.contribution_edit_btn').bind('click',on_contribution_edit_btn_click);
175) }
176) 
Benjamin Renard Add edit contributor feature

Benjamin Renard authored 10 years ago

177) /******************************
178)  * Add/Edit/remove contributor
179)  ******************************/
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

180) on_click_add_contributor_btn=function() {
Benjamin Renard Replace usage of view-group...

Benjamin Renard authored 10 years ago

181)   $('#add_contributor_modal #group_name')[0].value=$('#view-group #group_name')[0].value;
Benjamin Renard Add edit contributor feature

Benjamin Renard authored 10 years ago

182)   $($('#add_contributor_modal h4')[0]).html('Ajouter un participant');
183)   $($('#add_contributor_modal #add_contributor_submit')[0]).html('Ajouter');
184)   $('#view-group #edit_id')[0].value='-1';
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

185)   $('#add_contributor_modal').modal('show');
186) }
187) 
188) on_show_add_contributor_modal=function(e) {
189)   $('#add_contributor_modal #add_contributor_name').focus();
190) }
191) 
192) on_valid_add_contributor_modal=function() {
193)   var group=groups[$('#add_contributor_modal #group_name')[0].value];
194)   var name=$('#add_contributor_name')[0].value;
Benjamin Renard Add edit contributor feature

Benjamin Renard authored 10 years ago

195)   edit_id=$('#view-group #edit_id')[0].value;
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

196)   if (name=='') {
197)     alert('Vous devez saisir un nom !');
198)     return;
199)   }
Benjamin Renard Add edit contributor feature

Benjamin Renard authored 10 years ago

200)   duplicate=group.contributorByName(name);
201)   if (duplicate!=undefined && duplicate.id!=edit_id) {
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

202)     alert('Un contributor porte déjà ce nom !');
203)     return;
204)   }
205)   var email=$('#add_contributor_email')[0].value;
206)   if (email=='') {
207)     alert('Vous devez saisir un email !');
208)     return;
209)   }
Benjamin Renard Add edit contributor feature

Benjamin Renard authored 10 years ago

210)   duplicate=group.contributorByEmail(email)
211)   if (duplicate!=undefined && duplicate.id!=edit_id) {
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

212)     alert('Un contributor utilise déjà cet email !');
213)     return;
214)   }
Benjamin Renard Add edit contributor feature

Benjamin Renard authored 10 years ago

215)   if(edit_id=='-1') {
216)     group.addContributor(new Contributor(name,email));
217)   }
218)   else {
219)     group.replaceContributor(edit_id,new Contributor(name,email));
220)   }
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

221)   set_contributors(group);
222)   $('#add_contributor_modal').modal('hide');
223)   $('#add_contributor_name')[0].value='';
224)   $('#add_contributor_email')[0].value='';
225)   groups.save();
226) }
227) 
228) on_close_add_contributor_modal=function () {
229)   $('#add_contributor_name')[0].value='';
230)   $('#add_contributor_email')[0].value='';
231) }
232) 
Benjamin Renard Add edit contributor feature

Benjamin Renard authored 10 years ago

233) on_edit_contributor_btn_click=function(e) {
234)   var group=groups[$('#view-group #group_name')[0].value];
235)   $('#add_contributor_modal #group_name')[0].value=group.name;
236)   contributor_name=$('#view-group #contributor')[0].value;
237)   contributor=group.contributorByName(contributor_name);
238)   $('#view-group #edit_id')[0].value=contributor.id;
239)   $('#add_contributor_modal #add_contributor_name')[0].value=contributor.name;
240)   $('#add_contributor_modal #add_contributor_email')[0].value=contributor.email;
241)   $($('#add_contributor_modal h4')[0]).html('Editer un participant');
242)   $($('#add_contributor_modal #add_contributor_submit')[0]).html('Valider');
243)   $('#add_contributor_modal').modal('show');
244) }
245) 
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

246) on_click_del_contributor_btn=function() {
247)   contributor=$('#view-group #contributor')[0].value;
248)   question='Voulez-vous vraiment supprimer '+contributor+' ?';
249)   myconfirm(question,on_confirm_del_contributor,null,contributor);
250) }
251) 
252) on_confirm_del_contributor=function(contributor) {
Benjamin Renard Replace usage of view-group...

Benjamin Renard authored 10 years ago

253)   var group=groups[$('#view-group #group_name')[0].value];
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

254)   group.removeContributor(contributor);
255)   set_contributors(group);
256)   groups.save();
257) }
258) 
259) /********************************
260)  * Add/edit/delete contribution
261)  ********************************/
262) on_show_add_contribution_modal=function(e) {
263)   var cs=$($('#add_contribution_modal #add_contribution_contributor_name')[0]);
264)   cs.html('');
265)   $('#view-group #contributor option').each(function(idx,option) {
266)     cs.append($(option).clone());
267)   });
268)   cs[0].value = $('#view-group #contributor')[0].value;
269)   $('#add_contribution_modal #add_contribution_title').focus();
270) }
271) 
272) on_click_add_contribution_btn=function() {
Benjamin Renard Replace usage of view-group...

Benjamin Renard authored 10 years ago

273)   $('#add_contribution_modal #group_name')[0].value=$('#view-group #group_name')[0].value;
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

274)   $('#add_contribution_modal #edit_id')[0].value='-1';
Benjamin Renard Customize add_contribution_...

Benjamin Renard authored 10 years ago

275)   $($('#add_contribution_modal h4')[0]).html('Ajouter une contribution');
276)   $($('#add_contribution_modal #add_contribution_submit')[0]).html('Ajouter');
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

277)   $('#add_contribution_modal').modal('show');
278) }
279) 
280) on_valid_add_contribution_modal=function(e) {
281)   e.preventDefault();
282)   var group=groups[$('#add_contribution_modal #group_name')[0].value];
283)   var contributor_name=$('#add_contribution_contributor_name')[0].value;
284)   var contributor=group.contributorByName(contributor_name);
285)   if (contributor==undefined) {
286)     alert('Participant inconu !');
287)     return;
288)   }
289)   var title=$('#add_contribution_title')[0].value;
290)   if (title=='') {
291)     $('#add_contribution_title')[0].focus();
292)     alert('Vous devez saisir un titre !');
293)     return;
294)   }
295)   var cost=$('#add_contribution_cost')[0].value;
296)   if (cost=='') {
297)     $('#add_contribution_cost')[0].focus();
298)     alert('Vous devez saisir un coût !');
299)     return;
300)   }
Benjamin Renard Add support of dot and comm...

Benjamin Renard authored 10 years ago

301)   else if(!RegExp('^[0-9]*((,|\.)[0-9]{1,2})*$').test(cost)) {
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

302)     $('#add_contribution_cost')[0].focus();
303)     alert('Coût incorrect !');
304)     return;
305)   }
306)   cost=parseFloat(cost.replace(',','.'));
Benjamin Renard Clean code

Benjamin Renard authored 10 years ago

307)   
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

308)   var date=$('#add_contribution_date')[0].value;
309)   if (date!='') {
310)     if(!RegExp('^[0-3][0-9]\/[0-1][0-9]\/[0-2][0-9][0-9][0-9]$').test(date)) {
311)       $('#add_contribution_date')[0].focus();
312)       alert('Date incorrect !');
313)       return;
314)     }
315)     date=moment(date,'DD-MM-YYYY').toDate();
316)     if (jQuery.type(date)!='date') {
317)       alert('Date non-reconnu !');
318)       return;
319)     }
320)   }
321)   else {
322)     date=new Date();
323)   }
Benjamin Renard Clean code

Benjamin Renard authored 10 years ago

324)   
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

325)   if($('#add_contribution_modal #edit_id')[0].value=='-1') {
326)     group.addContribution(new Contribution(contributor,cost,title,date));
327)   }
328)   else {
329)     contribution_id=$('#add_contribution_modal #edit_id')[0].value;
330)     group.replaceContribution(contribution_id,new Contribution(contributor,cost,title,date));
331)   }
332)   show_contributions(group,contributor_name);
333)   $('#add_contribution_modal').modal('hide');
334)   $('#add_contribution_modal form')[0].reset();
335)   groups.save();
336) }
337) 
338) on_close_add_contribution_modal=function () {
339)   $('#add_contribution_modal form')[0].reset();
340) }
341) 
342) on_contribution_delete_btn_click=function(e) {
Benjamin Renard Replace usage of view-group...

Benjamin Renard authored 10 years ago

343)   var group=groups[$('#view-group #group_name')[0].value];
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

344)   contribution_id=$($(e.target).parents('div')[0]).data('id');
345)   contribution=group.contributions[contribution_id];
346)   myconfirm('Etes-vous sûre de vouloir supprimer la participation '+contribution.getTitle()+' de '+contribution.contributor.name+' ?',on_confirm_contribution_delete,null,{'group':group,'contribution_id':contribution_id, 'contribution': contribution} );
347) }
348) 
349) on_confirm_contribution_delete=function(data) {
350)   delete data.group.contributions[data.contribution_id];
351)   groups.save();
352)   on_contributor_change();
353) }
354) 
355) on_contribution_edit_btn_click=function(e) {
Benjamin Renard Replace usage of view-group...

Benjamin Renard authored 10 years ago

356)   var group=groups[$('#view-group #group_name')[0].value];
357)   $('#add_contribution_modal #group_name')[0].value=$('#view-group #group_name')[0].value;
Benjamin Renard Customize add_contribution_...

Benjamin Renard authored 10 years ago

358)   $($('#add_contribution_modal h4')[0]).html('Editer une contribution');
359)   $($('#add_contribution_modal #add_contribution_submit')[0]).html('Valider');
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

360)   contribution_id=$($(e.target).parents('div')[0]).data('id');
361)   contribution=group.contributions[contribution_id];
362)   $('#add_contribution_modal #add_contribution_contributor_name')[0].value=contribution.contributor.name;
363)   $('#add_contribution_modal #add_contribution_title')[0].value=contribution.getTitle();
364)   $('#add_contribution_modal #add_contribution_cost')[0].value=contribution.cost;
365)   $('#add_contribution_modal #add_contribution_date')[0].value=moment(contribution.date).format('DD/MM/YYYY');
366)   $('#add_contribution_modal #edit_id')[0].value=contribution_id;
367)   $('#add_contribution_modal').modal('show');
368) }
369) 
370) 
371) 
372) /********************
373)  * Clear local data
374)  ********************/
375) clear_local_data=function() {
Benjamin Renard Add function navbar_collaps...

Benjamin Renard authored 10 years ago

376)   navbar_collapse_hide();
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

377)   myconfirm('Etes-vous sûre de vouloir supprimer les données locales ?',on_confirm_clear_local_data);
378) }
379) 
380) on_confirm_clear_local_data=function(data) {
381)   localStorage.clear();
382)   location.reload();
383) }
384) 
385) /*********************
386)  * View balance
387)  *********************/
388) 
389) on_display_balance_btn_click=function(e) {
Benjamin Renard Replace usage of view-group...

Benjamin Renard authored 10 years ago

390)   group=groups[$('#view-group #group_name')[0].value];
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

391)   display_balance(group);
392) }
393) 
394) display_balance=function(group) {
395)   bal=group.balance();
396)   tbody=$($('#display_balance_modal tbody')[0]);
397)   tbody.html('');
Benjamin Renard Improve balance display

Benjamin Renard authored 10 years ago

398)   for (c in bal['balance']) {
399)     if(bal['balance'][c]['diff']<0) {
400)       diff='<td class="negative">'+bal['balance'][c]['diff'].toFixed(2)+' €</td>';
401)     }
402)     else {
403)       diff='<td><span class="glyphicon glyphicon-thumbs-up"></span></td>';
404)     }
405)     tbody.append('<tr><td>'+c+'</td><td>'+bal['balance'][c]['total']+' €</td>'+diff+'</tr>');
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

406)   }
Benjamin Renard Improve balance display

Benjamin Renard authored 10 years ago

407)   $('#display_balance_modal #total-value').html(bal.sum.toFixed(2)+' €');
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

408)   $('#display_balance_modal').modal('show');
409) }
410) 
411) /*********************
412)  * Remove group
413)  *********************/
414) 
415) on_remove_group_btn_click=function(e) {
Benjamin Renard Replace usage of view-group...

Benjamin Renard authored 10 years ago

416)   group=groups[$('#view-group #group_name')[0].value];
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

417)   myconfirm('Etes-vous sûre de vouloir supprimer le group '+group.name+' ?',on_confirm_remove_group,null,group);
418) }
419) 
420) on_confirm_remove_group=function(group) {
421)   if(groups.removeGroup(group.name)) {
422)     groups.save();
423)     location.reload();
424)   }
425)   else {
426)     alert('Erreur en supprimant le groupe '+group.name+' :(');
427)   }
428) }
429) 
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

430) /********************
431)  * Login
432)  ********************/
433) on_close_login_modal=function(e) {
434)   $('#login_modal form')[0].reset();
435) }
436) 
437) sync_server=false;
438) on_valid_login_modal=function(e) {
439)   email=$('#login_modal #login_email')[0].value;
440)   pass=$('#login_modal #login_pass')[0].value;
441)   server=$('#login_modal #login_server')[0].value;
442)   $('#login_modal').modal('hide');
Benjamin Renard Use pleaseWaitDialog in som...

Benjamin Renard authored 10 years ago

443)   pleaseWaitShow();
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

444)   sync_server.login(server,email,pass,
445)     function(data) {
446)       localStorage.user=JSON.stringify({
447)         'name': data.name,
448)         'email': email,
449)         'password': pass,
450)         'server': server,
451)       });
Benjamin Renard Use pleaseWaitDialog in som...

Benjamin Renard authored 10 years ago

452)       pleaseWaitHide();
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

453)       logged_menu();
454)     },
455)     function(data) {
Benjamin Renard Use pleaseWaitDialog in som...

Benjamin Renard authored 10 years ago

456)       pleaseWaitHide();
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

457)       if (jQuery.type(data) != 'object' && data.loginerror) {
458)         alert(data.loginerror);
459)       }
460)       else {
461)         console.log(data);
462)         alert('Erreur durant la connexion au serveur');
463)       }
464)     }
465)   );
466) }
467) 
468) 
469) 
470) /********************
471)  * Sync
472)  ********************/
473) on_click_sync_btn=function(e) {
Benjamin Renard Manage user global variable

Benjamin Renard authored 10 years ago

474)   if (user) {
Benjamin Renard Use pleaseWaitDialog in som...

Benjamin Renard authored 10 years ago

475)     pleaseWaitShow();
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

476)     sync_server.sync(user.server, user.email, user.password, groups.export(),
477)       function(data) {
478)         console.log(data);
479)         if (data.groups) {
480)           groups.import(data.groups);
481)           groups.save();
482)           refresh_group_list();
Benjamin Renard Use pleaseWaitDialog in som...

Benjamin Renard authored 10 years ago

483)           pleaseWaitHide();
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

484)           alert('Groupes synchronisés');
485)         }
486)         else {
Benjamin Renard Use pleaseWaitDialog in som...

Benjamin Renard authored 10 years ago

487)           pleaseWaitHide();
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

488)           console.log(data);
489)           alert('Erreur durant la synchronisation :(');
490)         }
491)       },
492)       function(data) {
Benjamin Renard Use pleaseWaitDialog in som...

Benjamin Renard authored 10 years ago

493)         pleaseWaitHide();
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

494)         console.log(data);
495)         alert('Impossible de contacter le serveur :(');
496)       }
497)     );
498)   }
499)   else {
500)     alert("Vous devez vous connecter pour commencer");
501)     $('#login_modal').modal('show');
502)   }
503) }
504) 
505) /*
506)  * User menu
507)  */
508) user=false;
509) logged_menu=function() {
510)   user=JSON.parse(localStorage.user);
511)   $('#user-name').html(user.name);
512)   $('#user-menu li').remove();
513)   menu=$('#user-menu');
514)   menu.html("<li><a id='myaccount_btn'>Mon compte</a></li>"+
515)   "<li><a id='sync_btn'>Synchroniser</a></li>" +
516)   "<li class='divider'></li>" +
517)   "<li><a id='logoff_btn'>Déconnexion</a></li>");
518)   $('#myaccount_btn').bind('click',on_click_myaccount_btn);
519)   $('#sync_btn').bind('click',on_click_sync_btn);
520)   $('#logoff_btn').bind('click',on_click_logoff_btn);
521) }
522) 
523) logged_out_menu=function() {
Benjamin Renard Manage user global variable

Benjamin Renard authored 10 years ago

524)   user=false;
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

525)   $('#user-name').html('Connexion');
526)   $('#user-menu li').remove();
527)   menu=$('#user-menu');
528)   menu.html("<li><a id='login_btn'>Connexion</a></li>");
529)   $('#login_btn').bind('click',on_click_login_btn);
530) }
531) 
532) on_click_myaccount_btn=function() {
533)   $('#myaccount_modal #myaccount_email').html(user.email);
534)   $('#myaccount_modal #myaccount_name')[0].value=user.name;
Benjamin Renard Display server in myaccount...

Benjamin Renard authored 10 years ago

535)   $('#myaccount_modal #myaccount_server').html(user.server);
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

536)   $('#myaccount_modal').modal('show');
537) }
538) 
539) on_click_login_btn=function() {
540)   $('#login_modal').modal('show');
541) }
542) 
543) on_click_logoff_btn=function() {
544)   delete localStorage.user;
545)   logged_out_menu();
546) }
547) 
Benjamin Renard Add pleaseWaitDialog and fu...

Benjamin Renard authored 10 years ago

548) /*******************
549)  * pleaseWaitDialog
550)  *******************/
551) 
552) pleaseWaitShow=function() {
Benjamin Renard Fix please wait modal

Benjamin Renard authored 10 years ago

553)   $('#please_wait_modal').modal('show');
Benjamin Renard Add pleaseWaitDialog and fu...

Benjamin Renard authored 10 years ago

554) }
555) 
556) pleaseWaitHide=function() {
Benjamin Renard Fix please wait modal

Benjamin Renard authored 10 years ago

557)   $('#please_wait_modal').modal('hide');
Benjamin Renard Add pleaseWaitDialog and fu...

Benjamin Renard authored 10 years ago

558) }
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

559) 
560) /*********************
561)  * Activate
562)  *********************/
563) $( document ).ready( function() {
Benjamin Renard Use pleaseWaitDialog in som...

Benjamin Renard authored 10 years ago

564)   pleaseWaitShow();
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

565)   if(typeof(Storage)!=="undefined"){
566)     groups=new GroupList();
567)     groups.loadFromLocalStorage();
568)     refresh_group_list();
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

569)     if (jQuery.type(localStorage.user)!='undefined') {
570)       logged_menu();
571)     }
572)     else {
573)       logged_out_menu();
574)     }
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

575)   }
576)   else {
577)     alert('Local storage not supported !');
Benjamin Renard Use pleaseWaitDialog in som...

Benjamin Renard authored 10 years ago

578)     pleaseWaitHide();
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

579)     return;
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

580)   }
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

581)   sync_server=new SyncServer();
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

582) 
Benjamin Renard Add link on App Name in Navbar

Benjamin Renard authored 10 years ago

583)   $('#app-name').bind('click',view_home);
584) 
Benjamin Renard Hide navbar-groupe-collapse...

Benjamin Renard authored 10 years ago

585)   $('#add_group_btn').bind('click',on_click_add_group_btn);
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

586)   $('#add_group_submit').bind('click',on_valid_add_group_modal);
587)   $("#add_group_modal").on('shown.bs.modal',on_show_add_group_modal);
588)   $("#add_group_modal").on('hidden.bs.modal',on_close_add_group_modal);
589)   $("#add_group_modal form").on('submit',on_valid_add_group_modal);
590) 
591)   $('#clear_local_data').bind('click',clear_local_data);
592) 
Benjamin Renard Add login and sync support

Benjamin Renard authored 10 years ago

593)   $('#login_modal').on('hidden.bs.modal',on_close_login_modal);
594)   $('#login_modal #login_submit').bind('click',on_valid_login_modal);
595)   $('#login_modal form').bind('submit',on_valid_login_modal);
596) 
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

597)   $('#view-group #contributor').bind('change',on_contributor_change);
598) 
599)   $('#add_contributor_btn').bind('click',on_click_add_contributor_btn);
600)   $('#add_contributor_submit').bind('click',on_valid_add_contributor_modal);
601)   $("#add_contributor_modal").on('shown.bs.modal',on_show_add_contributor_modal);
602)   $("#add_contributor_modal").on('hidden.bs.modal',on_close_add_contributor_modal);
603)   $("#add_contributor_modal form").on('submit',on_valid_add_contributor_modal);
604) 
Benjamin Renard Add edit contributor feature

Benjamin Renard authored 10 years ago

605)   $('#edit_contributor_btn').bind('click',on_edit_contributor_btn_click);
Benjamin Renard Initial commit

Benjamin Renard authored 10 years ago

606)   $('#del_contributor_btn').bind('click',on_click_del_contributor_btn);
607) 
608)   $('#add_contribution_btn').bind('click',on_click_add_contribution_btn);
609)   $('#add_contribution_submit').bind('click',on_valid_add_contribution_modal);
610)   $("#add_contribution_modal").on('shown.bs.modal',on_show_add_contribution_modal);
611)   $("#add_contribution_modal").on('hidden.bs.modal',on_close_add_contribution_modal);
612)   $("#add_contribution_modal form").on('submit',on_valid_add_contribution_modal);
613) 
614)   $("#display_balance_btn").bind('click',on_display_balance_btn_click);
615) 
616)   $('#remove_group_btn').bind('click',on_remove_group_btn_click);
Benjamin Renard Manage multiple screen part...

Benjamin Renard authored 10 years ago

617)   view_home();
Benjamin Renard Use pleaseWaitDialog in som...

Benjamin Renard authored 10 years ago

618)   pleaseWaitHide();