43 lines
822 B
JavaScript
Executable file
43 lines
822 B
JavaScript
Executable file
'use strict';
|
|
|
|
/**
|
|
* Get unique error field name
|
|
*/
|
|
var getUniqueErrorMessage = function(err) {
|
|
var output;
|
|
|
|
try {
|
|
var fieldName = err.err.substring(err.err.lastIndexOf('.$') + 2, err.err.lastIndexOf('_1'));
|
|
output = fieldName.charAt(0).toUpperCase() + fieldName.slice(1) + ' already exists';
|
|
|
|
} catch (ex) {
|
|
output = 'Unique field already exists';
|
|
}
|
|
|
|
return output;
|
|
};
|
|
|
|
/**
|
|
* Get the error message from error object
|
|
*/
|
|
exports.getErrorMessage = function(err) {
|
|
var message = '';
|
|
|
|
if (err.code) {
|
|
switch (err.code) {
|
|
case 11000:
|
|
case 11001:
|
|
message = getUniqueErrorMessage(err);
|
|
break;
|
|
default:
|
|
message = 'Something went wrong';
|
|
}
|
|
} else {
|
|
for (var errName in err.errors) {
|
|
if (err.errors[errName].message) message = err.errors[errName].message;
|
|
}
|
|
}
|
|
|
|
return message;
|
|
};
|