Skip to content

Commit 7afd9b2

Browse files
committed
Tweak for new response from identity service
1 parent 8fb9cee commit 7afd9b2

File tree

1 file changed

+26
-11
lines changed

1 file changed

+26
-11
lines changed

web-assets/js/signup.js

Lines changed: 26 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -50,11 +50,6 @@ $(document).ready(function () {
5050
dataType: 'json',
5151
success: function (result) {
5252
console.log(JSON.stringify(result));
53-
if (result && result.statusCode === 409) {
54-
$("#error").html(result.message);
55-
$("#error").closest(".message").fadeIn();
56-
return;
57-
}
5853
if (result && result.valid && submit_flag) {
5954
$("#error").closest(".message").fadeOut();
6055
$("#error").html("");
@@ -77,13 +72,33 @@ $(document).ready(function () {
7772
//setContinueButtonDisabledStatus(true);
7873
}
7974
},
80-
error: function (result) {
81-
console.log(JSON.stringify(result));
82-
if (result && result.statusCode === 409) {
83-
$("#error").html(result.message);
84-
$("#error").closest(".message").fadeIn();
85-
return;
75+
error: function (jqXHR) {
76+
// Try to extract server-provided message from JSON body
77+
var message = null;
78+
try {
79+
if (jqXHR && jqXHR.responseJSON && jqXHR.responseJSON.message) {
80+
message = jqXHR.responseJSON.message;
81+
} else if (jqXHR && jqXHR.responseText) {
82+
var parsed = JSON.parse(jqXHR.responseText);
83+
if (parsed && parsed.message) {
84+
message = parsed.message;
85+
}
86+
}
87+
} catch (e) {
88+
// fall through to default message
8689
}
90+
91+
if (!message) {
92+
// Provide a sensible fallback when no message is available
93+
if (jqXHR && jqXHR.status === 409) {
94+
message = "Handle is already taken.";
95+
} else {
96+
message = "An error occurred. Please try again.";
97+
}
98+
}
99+
100+
$("#error").html(message);
101+
$("#error").closest(".message").fadeIn();
87102
}
88103
});
89104
return false;

0 commit comments

Comments
 (0)