@@ -86,29 +86,50 @@ angular.module('codeSearchApp')
8686 console . log ( 'sOpts' , searchOptions ) ;
8787 console . log ( 'sQuer' , searchQuery ) ;
8888
89- var snippitsToReturn = [ ] ;
89+ var snippitPaths = [ ] ;
90+ var snippitsArray ;
9091
9192 async . map ( files , snippIterator , function ( err , snippitsArr ) {
9293 snippitsArr = _ . flatten ( snippitsArr ) ;
9394 console . log ( 'done iterating through snippits' , snippitsArr . length ) ;
94- console . log ( snippitsArr ) ;
9595 console . log ( 'populating snippit ids' ) ;
9696
97- var popData = snippitsArr . forEach ( function ( el ) {
98- snippitsToReturn . push ( {
99- snippit : el . snippit ,
97+ snippitsArr . forEach ( function ( el ) {
98+ snippitPaths . push ( {
10099 filePath : el . filePath
101100 } ) ;
102101 } ) ;
102+ snippitsArray = snippitsArr ;
103103 } ) ;
104104
105- return snippitsToReturn ;
105+ return [ snippitsArray , snippitPaths ] ;
106106 } )
107- . then ( function ( snippitsToReturn ) {
108- return $http . post ( '/api/popSnips' , { data : snippitsToReturn } )
109- . then ( function ( data ) {
107+ . then ( function ( results ) {
108+ return $http . post ( '/api/popSnips' ,
109+ { data : results [ 1 ] } )
110+ . then ( function ( data ) {
110111 var parsedData = angular . fromJson ( data ) ;
111- parsedData . data . snippits . sort ( function ( a , b ) {
112+ var popSnippits = parsedData . data . snippits ;
113+ var snippitsArr = results [ 0 ] ;
114+
115+ for ( var i = 0 ; i < popSnippits . length ; i ++ ) {
116+ if ( popSnippits [ i ] . pops &&
117+ popSnippits [ i ] . pops . length > 0 ) {
118+
119+ for ( var j = 0 ; j < popSnippits [ i ] . pops . length ; j ++ ) {
120+ if ( snippitsArr [ i ] . snippit === popSnippits [ i ] . pops [ j ] . snippit ) {
121+ snippitsArr [ i ] . snippitScore = popSnippits [ i ] . pops [ j ] . score ;
122+ snippitsArr [ i ] . snippitVoters = popSnippits [ i ] . pops [ j ] . github_id ;
123+ }
124+ }
125+
126+ } else {
127+ snippitsArr [ i ] . snippitScore = 0 ;
128+ snippitsArr [ i ] . snippitVoters = { } ;
129+ }
130+ }
131+
132+ snippitsArr . sort ( function ( a , b ) {
112133 if ( a . snippitScore < b . snippitScore ) {
113134 return 1 ;
114135 } else if ( a . snippitScore > b . snippitScore ) {
@@ -119,7 +140,7 @@ angular.module('codeSearchApp')
119140 } ) ;
120141
121142 var snippitsReturned = { } ;
122- snippitsReturned . codeSnippits = parsedData . data . snippits ;
143+ snippitsReturned . codeSnippits = snippitsArr ;
123144
124145 var pages = Math . ceil ( snippitsReturned . codeSnippits . length / 10 ) ;
125146 snippitsReturned . pageArray = [ ] ;
@@ -130,9 +151,9 @@ angular.module('codeSearchApp')
130151
131152 return snippitsReturned
132153 } ) ;
133- return data ;
154+
134155 } ) ;
135- }
156+ } ;
136157
137158 return apiRequest
138159
0 commit comments