@@ -42,23 +42,29 @@ function joinReputations(ownerNodes) {
4242/* this function requires bulk input */
4343function searchTransform ( context , params , input ) {
4444 var outputObject = input . toObject ( ) ;
45+ if ( outputObject . owner === undefined ) {
46+ outputObject . owner = {
47+ id : "unknown" ,
48+ userName : "unknown" ,
49+ displayName : "unknown" ,
50+ reputation : 0
51+ } ;
52+ }
4553 var ownerNodes = input . xpath ( ".//owner" ) ;
4654 if ( ownerNodes . count > 0 ) {
4755 var joinedOwners = joinReputations ( ownerNodes ) ;
4856 outputObject . owner = joinedOwners [ outputObject . owner . id ] ;
49- if ( outputObject . owner === undefined ) {
50- outputObject . owner = {
51- id : "unknown" ,
52- userName : "unknown" ,
53- displayName : "unknown" ,
54- reputation : 0
55- } ;
56- }
5757 if ( outputObject . answers !== undefined ) {
5858 for ( var i = 0 ; i < outputObject . answers . length ; i ++ ) {
5959 var answer = outputObject . answers [ i ] ;
60- if ( answer . owner !== undefined ) {
61- answer . owner = joinedOwners [ answer . owner . id ] ;
60+ answer . owner = joinedOwners [ answer . owner . id ] ;
61+ if ( answer . owner === undefined ) {
62+ answer . owner = {
63+ id : "unknown" ,
64+ userName : "unknown" ,
65+ displayName : "unknown" ,
66+ reputation : 0
67+ } ;
6268 }
6369 }
6470 }
@@ -71,7 +77,7 @@ function searchTransform(context, params, input) {
7177 } else {
7278 for ( var i = 0 ; i < results . length ; i ++ ) {
7379 var result = results [ i ] ;
74- var matches = result . matches ; // HEAD will need snippets here
80+ var matches = result . matches ;
7581 var uri = result . uri ;
7682 var sourceDoc = fn . doc ( uri ) . next ( ) . value ;
7783 for ( var j = 0 ; j < matches . length ; j ++ ) {
@@ -109,6 +115,7 @@ function searchTransform(context, params, input) {
109115 delete match . path ;
110116 }
111117 }
118+ delete outputObject . owner ; // from spurious cleanup action at start of function. TODO ensure all data have owner object on root.
112119 return outputObject ;
113120 }
114121 }
0 commit comments