Blame view

app/services/MembresServ.js 1.51 KB
7a1fe62d   Geoffrey PREUD'HOMME   Consistence des noms
1
  var MembreModl = require('../models/MembreModl');
43b2778d   Geoffrey PREUD'HOMME   Rassemblement de ...
2
  var PolyUserServ = require('../services/PolyUserServ');
2f593328   Geoffrey PREUD'HOMME   Linting
3
  var async = require('async');
a7189c82   Geoffrey PREUD'HOMME   Membres comme con...
4
  
f661af15   Geoffrey PREUD'HOMME   Amelioré la gesti...
5
  var MembresServ = {};
a7189c82   Geoffrey PREUD'HOMME   Membres comme con...
6
  
f661af15   Geoffrey PREUD'HOMME   Amelioré la gesti...
7
  MembresServ.addData = function (membre, cb) {
43b2778d   Geoffrey PREUD'HOMME   Rassemblement de ...
8
      PolyUserServ.get(membre.login, function (err, nom) {
e4fff96c   Geoffrey PREUD'HOMME   Récupération des ...
9
10
          membre.nom = nom.nom;
          membre.section = nom.section;
20533c3a   Geoffrey PREUD'HOMME   Mise en valeur de...
11
12
13
14
          MembresServ.estBureau(membre.login, function (bureau) {
              membre.bureau = bureau;
              cb(err, membre);
          });
f661af15   Geoffrey PREUD'HOMME   Amelioré la gesti...
15
16
17
      });
  };
  
e4fff96c   Geoffrey PREUD'HOMME   Récupération des ...
18
  MembresServ.get = function (id, cb) {
f661af15   Geoffrey PREUD'HOMME   Amelioré la gesti...
19
20
21
22
23
24
25
26
27
      MembreModl.findById(id).lean().exec(function (err, membre) {
          if (err)
              cb(err);
          else
              MembresServ.addData(membre, cb);
      });
  };
  
  MembresServ.list = function (cb) {
7a1fe62d   Geoffrey PREUD'HOMME   Consistence des noms
28
      MembreModl.find({}).lean().exec(function (err, membres) {
f661af15   Geoffrey PREUD'HOMME   Amelioré la gesti...
29
          async.mapSeries(membres, MembresServ.addData, cb);
bc6e4c53   Geoffrey PREUD'HOMME   Affichage des nom...
30
      });
2f593328   Geoffrey PREUD'HOMME   Linting
31
  };
a7189c82   Geoffrey PREUD'HOMME   Membres comme con...
32
  
f661af15   Geoffrey PREUD'HOMME   Amelioré la gesti...
33
  MembresServ.add = function (data, cb) {
7a1fe62d   Geoffrey PREUD'HOMME   Consistence des noms
34
      MembreModl.create({
a7189c82   Geoffrey PREUD'HOMME   Membres comme con...
35
36
37
          login: data.login,
          role: data.role,
          section: data.section,
e4fff96c   Geoffrey PREUD'HOMME   Récupération des ...
38
      }, function (err, membre) {
f661af15   Geoffrey PREUD'HOMME   Amelioré la gesti...
39
40
          MembresServ.get(membre._id, cb);
      });
2f593328   Geoffrey PREUD'HOMME   Linting
41
  };
a7189c82   Geoffrey PREUD'HOMME   Membres comme con...
42
  
f661af15   Geoffrey PREUD'HOMME   Amelioré la gesti...
43
  MembresServ.remove = function (id, cb) {
7a1fe62d   Geoffrey PREUD'HOMME   Consistence des noms
44
      MembreModl.remove({
a7189c82   Geoffrey PREUD'HOMME   Membres comme con...
45
46
          _id: id
      }, cb);
2f593328   Geoffrey PREUD'HOMME   Linting
47
  };
a7189c82   Geoffrey PREUD'HOMME   Membres comme con...
48
  
0f7812f5   Geoffrey PREUD'HOMME   Reconaissance des...
49
50
51
52
  MembresServ.estBureau = function (login, cb) {
      MembreModl.findOne({
          login: login
      }, function (err, data) {
c1e8332d   Geoffrey PREUD'HOMME   Vérification plus...
53
          if (!err && data && ['Président', 'Vice-président', 'Trésorier', 'Secrétaire'].indexOf(data.role) > -1) {
0f7812f5   Geoffrey PREUD'HOMME   Reconaissance des...
54
              cb(true);
0f7812f5   Geoffrey PREUD'HOMME   Reconaissance des...
55
56
          } else {
              cb(false);
0f7812f5   Geoffrey PREUD'HOMME   Reconaissance des...
57
58
59
60
          }
      });
  };
  
f661af15   Geoffrey PREUD'HOMME   Amelioré la gesti...
61
  module.exports = MembresServ;