@@ -3,37 +3,45 @@ var router = require('express').Router();
3
3
var MetabolicModel = App . Model ( 'metabolicmodel' ) ;
4
4
5
5
function compareMetabolites ( specieId , masterMetabolites ) {
6
+
7
+ // Build dict with id:metabolite
8
+ var masterMetabolitesIds = new Object ( ) ;
9
+ masterMetabolites . forEach ( function ( metabolite ) {
10
+ masterMetabolitesIds [ metabolite . id ] = metabolite ;
11
+ } ) ;
12
+
6
13
MetabolicModel . findOne ( { id : specieId } , function ( err , model ) {
7
14
model . metabolites . forEach ( function ( metabolite ) {
8
-
9
- if ( metabolite . id in masterMetabolites ) {
15
+ if ( metabolite . id in masterMetabolitesIds ) {
10
16
console . log ( specieId , metabolite . id ) ;
11
17
}
12
18
} )
13
19
} ) ;
14
20
}
15
21
16
22
function createCommunity ( req , res , next ) {
17
- MetabolicModel . findOne ( { id : req . body . master } , function ( err , model ) {
23
+ // Retrieve Master model for Master Metabolites
24
+ MetabolicModel . findOne ( { id : req . body . master } , function ( err , masterModel ) {
18
25
if ( err ) {
19
26
res . status ( 500 ) . send ( '500 Internal Server Error' ) ;
20
27
return ;
21
28
}
22
29
23
- var masterMetabolites = new Object ( ) ;
24
-
25
- model . metabolites . forEach ( function ( metabolite ) {
26
- masterMetabolites [ metabolite . id ] = metabolite ;
27
- } ) ;
30
+ // var masterMetabolites = new Object();
31
+ //
32
+ // model.metabolites.forEach(function(metabolite) {
33
+ // masterMetabolites[metabolite.id] = metabolite;
34
+ // });
28
35
29
36
req . body . species . forEach ( function ( specie ) {
37
+ // Compare everything but master with master
30
38
if ( specie !== req . body . master ) {
31
39
console . log ( specie ) ;
32
- compareMetabolites ( specie , masterMetabolites ) ;
40
+ compareMetabolites ( specie , masterModel . metabolites ) ;
33
41
}
34
42
} )
35
43
36
- res . send ( masterMetabolites ) ;
44
+ res . send ( 'Creating community' ) ;
37
45
} ) ;
38
46
}
39
47
0 commit comments