mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-02-21 00:47:26 +00:00
Improve and unit test errorsParser
This commit is contained in:
@@ -2,16 +2,25 @@
|
||||
angular.module("admin.utils").factory "ErrorsParser", ->
|
||||
new class ErrorsParser
|
||||
toString: (errors, defaultContent = "") =>
|
||||
return defaultContent unless errors?
|
||||
|
||||
errorsString = ""
|
||||
if errors.length > 0
|
||||
# it is an array of errors
|
||||
errorsString = error + "\n" for error in errors
|
||||
errorsString = this.arrayToString(errors)
|
||||
else
|
||||
# it is a hash of errors
|
||||
keys = Object.keys(errors)
|
||||
errorsString = ""
|
||||
for key in keys
|
||||
errorsString += error for error in errors[key]
|
||||
errorsString += this.arrayToString(errors[key])
|
||||
|
||||
errorsString = defaultContent if errorsString == ""
|
||||
this.defaultIfEmpty(errorsString, defaultContent)
|
||||
|
||||
errorsString
|
||||
arrayToString: (array) =>
|
||||
string = ""
|
||||
string += entry + "\n" for entry in array
|
||||
string
|
||||
|
||||
defaultIfEmpty: (content, defaultContent) =>
|
||||
return defaultContent if content == ""
|
||||
content
|
||||
|
||||
Reference in New Issue
Block a user