40 lines
982 B
JavaScript
40 lines
982 B
JavaScript
const errors = require('./errors.json')
|
|
|
|
class ErrorManager {
|
|
constructor() {
|
|
this.errors = errors
|
|
}
|
|
|
|
getErrorText(errorName, parameters, language) {
|
|
if (!this.errors.hasOwnProperty(errorName)) {
|
|
return 'Error not found.'
|
|
}
|
|
|
|
const error = this.errors[errorName]
|
|
let errorMessage = ''
|
|
|
|
if (language === 'english') {
|
|
errorMessage = error.english
|
|
} else if (language === 'persian') {
|
|
errorMessage = error.persian
|
|
} else {
|
|
return 'Unsupported language.'
|
|
}
|
|
|
|
if (parameters) {
|
|
for (const param in parameters) {
|
|
if (parameters.hasOwnProperty(param)) {
|
|
errorMessage = errorMessage.replace(
|
|
`#${param}#`,
|
|
parameters[param]
|
|
)
|
|
}
|
|
}
|
|
}
|
|
|
|
return errorMessage
|
|
}
|
|
}
|
|
|
|
module.exports = ErrorManager
|