mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-14 05:07:22 +01:00
Compare commits
19 Commits
fiz/fix-mo
...
fiz/respon
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4ecd13fbdc | ||
|
|
8ac414a184 | ||
|
|
c4c0cca369 | ||
|
|
326843fdc5 | ||
|
|
0df9ea32fb | ||
|
|
bd3625aa4b | ||
|
|
0654d59752 | ||
|
|
0f901c9007 | ||
|
|
30b6584a47 | ||
|
|
846250e4b8 | ||
|
|
0d1a5b6a7c | ||
|
|
c97845329a | ||
|
|
5adbf536f5 | ||
|
|
d9e76fcb3f | ||
|
|
1efe30b7a7 | ||
|
|
4e2a8eb550 | ||
|
|
c3fd1fdd66 | ||
|
|
0ec74582f0 | ||
|
|
69bf75322f |
@@ -44,7 +44,7 @@ describe('POST /user/auth/local/login', () => {
|
|||||||
})).to.eventually.be.rejected.and.eql({
|
})).to.eventually.be.rejected.and.eql({
|
||||||
code: 401,
|
code: 401,
|
||||||
error: 'NotAuthorized',
|
error: 'NotAuthorized',
|
||||||
message: t('accountSuspended', { communityManagerEmail: nconf.get('EMAILS_COMMUNITY_MANAGER_EMAIL'), userId: user._id }),
|
message: t('accountSuspended', { communityManagerEmail: nconf.get('EMAILS_COMMUNITY_MANAGER_EMAIL'), userId: user._id, username: user.auth.local.username }),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -203,6 +203,9 @@ export default {
|
|||||||
|
|
||||||
return response;
|
return response;
|
||||||
}, error => { // Set up Error interceptors
|
}, error => { // Set up Error interceptors
|
||||||
|
if (!error.response) {
|
||||||
|
return Promise.reject(error);
|
||||||
|
}
|
||||||
if (error.response.status >= 400) {
|
if (error.response.status >= 400) {
|
||||||
const isBanned = this.checkForBannedUser(error);
|
const isBanned = this.checkForBannedUser(error);
|
||||||
if (isBanned === true) return null; // eslint-disable-line consistent-return
|
if (isBanned === true) return null; // eslint-disable-line consistent-return
|
||||||
|
|||||||
@@ -43,9 +43,11 @@ export default {
|
|||||||
const AUTH_SETTINGS = localStorage.getItem(LOCALSTORAGE_AUTH_KEY);
|
const AUTH_SETTINGS = localStorage.getItem(LOCALSTORAGE_AUTH_KEY);
|
||||||
const parseSettings = JSON.parse(AUTH_SETTINGS);
|
const parseSettings = JSON.parse(AUTH_SETTINGS);
|
||||||
const userId = parseSettings ? parseSettings.auth.apiId : '';
|
const userId = parseSettings ? parseSettings.auth.apiId : '';
|
||||||
|
const username = this.$store?.state?.user?.data?.auth?.local?.username || '';
|
||||||
|
|
||||||
return this.$t('accountSuspended', {
|
return this.$t('accountSuspended', {
|
||||||
userId,
|
userId,
|
||||||
|
username,
|
||||||
communityManagerEmail: COMMUNITY_MANAGER_EMAIL,
|
communityManagerEmail: COMMUNITY_MANAGER_EMAIL,
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -851,7 +851,7 @@ export default {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (this.genericPurchase) {
|
if (this.genericPurchase) {
|
||||||
this.makeGenericPurchase(this.item, 'buyModal', this.selectedAmountToBuy);
|
await this.makeGenericPurchase(this.item, 'buyModal', this.selectedAmountToBuy);
|
||||||
await this.purchased(this.item.text);
|
await this.purchased(this.item.text);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,7 +35,7 @@
|
|||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
class="btn btn-secondary d-flex align-items-center justify-content-center"
|
class="btn btn-secondary d-flex align-items-center justify-content-center"
|
||||||
:class="{disabled: !canSave}"
|
:class="{'btn-disabled': !canSave}"
|
||||||
type="button"
|
type="button"
|
||||||
@click="submit()"
|
@click="submit()"
|
||||||
>
|
>
|
||||||
@@ -162,13 +162,13 @@
|
|||||||
>
|
>
|
||||||
<div
|
<div
|
||||||
class="habit-option-icon svg-icon no-transition"
|
class="habit-option-icon svg-icon no-transition"
|
||||||
:class="task.up ? '' : 'disabled'"
|
:class="task.up ? '' : 'icon-disabled'"
|
||||||
v-html="icons.positive"
|
v-html="icons.positive"
|
||||||
></div>
|
></div>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="habit-option-label no-transition"
|
class="habit-option-label no-transition"
|
||||||
:class="task.up ? cssClass('icon') : 'disabled'"
|
:class="task.up ? cssClass('icon') : 'label-disabled'"
|
||||||
>
|
>
|
||||||
{{ $t('positive') }}
|
{{ $t('positive') }}
|
||||||
</div>
|
</div>
|
||||||
@@ -188,13 +188,13 @@
|
|||||||
>
|
>
|
||||||
<div
|
<div
|
||||||
class="habit-option-icon no-transition svg-icon negative mx-auto"
|
class="habit-option-icon no-transition svg-icon negative mx-auto"
|
||||||
:class="task.down ? '' : 'disabled'"
|
:class="task.down ? '' : 'icon-disabled'"
|
||||||
v-html="icons.negative"
|
v-html="icons.negative"
|
||||||
></div>
|
></div>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="habit-option-label no-transition"
|
class="habit-option-label no-transition"
|
||||||
:class="task.down ? cssClass('icon') : 'disabled'"
|
:class="task.down ? cssClass('icon') : 'label-disabled'"
|
||||||
>
|
>
|
||||||
{{ $t('negative') }}
|
{{ $t('negative') }}
|
||||||
</div>
|
</div>
|
||||||
@@ -592,7 +592,7 @@
|
|||||||
<button
|
<button
|
||||||
class="btn btn-primary btn-footer
|
class="btn btn-primary btn-footer
|
||||||
d-flex align-items-center justify-content-center"
|
d-flex align-items-center justify-content-center"
|
||||||
:class="{disabled: !canSave}"
|
:class="{'btn-disabled': !canSave}"
|
||||||
type="button"
|
type="button"
|
||||||
@click="submit()"
|
@click="submit()"
|
||||||
>
|
>
|
||||||
@@ -881,12 +881,14 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.disabled {
|
.btn-disabled {
|
||||||
background-color: $white;
|
background-color: $white;
|
||||||
border: 2px solid transparent;
|
border: 2px solid transparent;
|
||||||
color: $gray-200;
|
color: $gray-200;
|
||||||
line-height: 1.714;
|
line-height: 1.714;
|
||||||
box-shadow: 0px 1px 3px 0px rgba(26, 24, 29, 0.12), 0px 1px 2px 0px rgba(26, 24, 29, 0.24);
|
box-shadow: 0px 1px 3px 0px rgba(26, 24, 29, 0.12), 0px 1px 2px 0px rgba(26, 24, 29, 0.24);
|
||||||
|
cursor: not-allowed;
|
||||||
|
opacity: 0.6;
|
||||||
|
|
||||||
&:focus {
|
&:focus {
|
||||||
background-color: $white;
|
background-color: $white;
|
||||||
@@ -948,7 +950,7 @@
|
|||||||
height: 10px;
|
height: 10px;
|
||||||
color: $white;
|
color: $white;
|
||||||
|
|
||||||
&.disabled {
|
&.icon-disabled {
|
||||||
color: $gray-200;
|
color: $gray-200;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -962,7 +964,7 @@
|
|||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
|
||||||
&.disabled {
|
&.label-disabled {
|
||||||
color: $gray-100;
|
color: $gray-100;
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
}
|
}
|
||||||
@@ -1018,7 +1020,7 @@
|
|||||||
border: 0;
|
border: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.disabled .input-group-text {
|
.input-group-outer.disabled .input-group-text {
|
||||||
color: $gray-200;
|
color: $gray-200;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -116,7 +116,7 @@
|
|||||||
.toggle-switch-inner:before {
|
.toggle-switch-inner:before {
|
||||||
content: "";
|
content: "";
|
||||||
padding-left: 10px;
|
padding-left: 10px;
|
||||||
background-color: $green-10;
|
background-color: $green-50;
|
||||||
}
|
}
|
||||||
|
|
||||||
.toggle-switch-inner:after {
|
.toggle-switch-inner:after {
|
||||||
|
|||||||
@@ -133,7 +133,7 @@
|
|||||||
"passwordReset": "If we have your email or username on file, instructions for setting a new password have been sent to your email.",
|
"passwordReset": "If we have your email or username on file, instructions for setting a new password have been sent to your email.",
|
||||||
"invalidLoginCredentialsLong": "Your email, username, or password are incorrect. Please try again or use \"Forgot Password.\"",
|
"invalidLoginCredentialsLong": "Your email, username, or password are incorrect. Please try again or use \"Forgot Password.\"",
|
||||||
"invalidCredentials": "There is no account that uses those credentials.",
|
"invalidCredentials": "There is no account that uses those credentials.",
|
||||||
"accountSuspended": "This account, User ID \"<%= userId %>\", has been blocked for breaking the Community Guidelines (https://habitica.com/static/community-guidelines) or Terms of Service (https://habitica.com/static/terms). For details or to ask to be unblocked, please email our Community Manager at <%= communityManagerEmail %> or ask your parent or guardian to email them. Please include your @Username in the email.",
|
"accountSuspended": "Your account @<%= username %> has been blocked. For additional information, or to request an appeal, email admin@habitica.com with your Habitica username or User ID.",
|
||||||
"accountSuspendedTitle": "Account has been suspended",
|
"accountSuspendedTitle": "Account has been suspended",
|
||||||
"unsupportedNetwork": "This network is not currently supported.",
|
"unsupportedNetwork": "This network is not currently supported.",
|
||||||
"cantDetachSocial": "Account lacks another authentication method; can't detach this authentication method.",
|
"cantDetachSocial": "Account lacks another authentication method; can't detach this authentication method.",
|
||||||
|
|||||||
@@ -17,7 +17,11 @@ export function loginRes (user, req, res) {
|
|||||||
if (user.auth.blocked) {
|
if (user.auth.blocked) {
|
||||||
throw new NotAuthorized(res.t(
|
throw new NotAuthorized(res.t(
|
||||||
'accountSuspended',
|
'accountSuspended',
|
||||||
{ communityManagerEmail: COMMUNITY_MANAGER_EMAIL, userId: user._id },
|
{
|
||||||
|
communityManagerEmail: COMMUNITY_MANAGER_EMAIL,
|
||||||
|
userId: user._id,
|
||||||
|
username: user.auth.local.username,
|
||||||
|
},
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
const urlPath = url.parse(req.url).pathname;
|
const urlPath = url.parse(req.url).pathname;
|
||||||
|
|||||||
@@ -100,6 +100,7 @@ export function authWithHeaders (options = {}) {
|
|||||||
throw new NotAuthorized(common.i18n.t('accountSuspended', {
|
throw new NotAuthorized(common.i18n.t('accountSuspended', {
|
||||||
communityManagerEmail: COMMUNITY_MANAGER_EMAIL,
|
communityManagerEmail: COMMUNITY_MANAGER_EMAIL,
|
||||||
userId: user._id,
|
userId: user._id,
|
||||||
|
username: user.auth.local.username,
|
||||||
}, language));
|
}, language));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user