1
1
// Use this hook to manipulate incoming or outgoing data.
2
2
// For more information on hooks see: http://docs.feathersjs.com/api/hooks.html
3
3
4
+ /**
5
+ * TODO: Refactor and test that hook
6
+ */
4
7
const errors = require ( 'feathers-errors' ) ;
5
8
const { isEmpty } = require ( 'lodash' ) ;
6
9
const fs = require ( 'fs' ) ;
@@ -78,8 +81,10 @@ module.exports = function (options = []) { // eslint-disable-line no-unused-vars
78
81
resolve ( hook ) ;
79
82
}
80
83
} catch ( err ) {
84
+ loading -- ;
85
+ hook . data [ field ] = null ;
81
86
hook . app . error ( err ) ;
82
- reject ( err ) ;
87
+ // reject(err);
83
88
}
84
89
} else if ( validUrl . isUri ( hook . data [ field ] ) ) {
85
90
// hook.app.debug('SAVE REMOTE IMAGES HOOK');
@@ -91,14 +96,17 @@ module.exports = function (options = []) { // eslint-disable-line no-unused-vars
91
96
} , ( err , res , body ) => {
92
97
if ( err ) {
93
98
hook . app . error ( err ) ;
94
- reject ( err ) ;
99
+ loading -- ;
100
+ hook . data [ field ] = null ;
101
+ return ;
102
+ // reject(err);
95
103
}
96
104
// hook.app.debug(`###got answer for: ${hook.data[field]}`);
97
105
try {
98
106
const mimeType = res . headers [ 'content-type' ] ;
99
107
if ( mimeType . indexOf ( 'image' ) !== 0 ) {
100
108
hook . app . error ( 'its not an image' ) ;
101
- reject ( new Error ( 'its not an image' ) ) ;
109
+ // reject(new Error('its not an image'));
102
110
}
103
111
104
112
const ext = mime . getExtension ( mimeType ) ;
@@ -121,7 +129,9 @@ module.exports = function (options = []) { // eslint-disable-line no-unused-vars
121
129
}
122
130
} catch ( err ) {
123
131
hook . app . error ( err ) ;
124
- reject ( err ) ;
132
+ loading -- ;
133
+ hook . data [ field ] = null ;
134
+ // reject(err);
125
135
}
126
136
} ) ;
127
137
} else {
@@ -138,10 +148,11 @@ module.exports = function (options = []) { // eslint-disable-line no-unused-vars
138
148
resolve ( hook ) ;
139
149
}
140
150
} catch ( err ) {
141
- // reject(err);
151
+ // // reject(err);
142
152
if ( imgCount ) {
143
153
hook . app . error ( 'Thumbnail download failed' ) ;
144
- throw new errors . Unprocessable ( 'Thumbnail download failed' , { errors : err , urls : urls } ) ;
154
+ // throw new errors.Unprocessable('Thumbnail download failed', { errors: err, urls: urls });
155
+ resolve ( hook ) ;
145
156
} else {
146
157
resolve ( hook ) ;
147
158
}
0 commit comments