mirror of
https://github.com/stonith404/pingvin-share.git
synced 2025-01-15 01:14:27 -05:00
fix: omit invalid username characters in oidc registration
This commit is contained in:
parent
61edc4f4f6
commit
adc4af996d
1 changed files with 4 additions and 2 deletions
|
@ -108,8 +108,10 @@ export class OAuthService {
|
||||||
}
|
}
|
||||||
|
|
||||||
private async getAvailableUsername(preferredUsername: string) {
|
private async getAvailableUsername(preferredUsername: string) {
|
||||||
// only remove + and - from preferred username for now (maybe not enough)
|
// Only keep letters, numbers, dots, and underscores. Truncate to 20 characters.
|
||||||
let username = preferredUsername.replace(/[+-]/g, "").substring(0, 20);
|
let username = preferredUsername
|
||||||
|
.replace(/[^a-zA-Z0-9._]/g, "")
|
||||||
|
.substring(0, 20);
|
||||||
while (true) {
|
while (true) {
|
||||||
const user = await this.prisma.user.findFirst({
|
const user = await this.prisma.user.findFirst({
|
||||||
where: {
|
where: {
|
||||||
|
|
Loading…
Add table
Reference in a new issue