FIX: allow underscore and dash in username search

_ and - are technically punctuations, but we allow them in usernames so
accept them in search
This commit is contained in:
Sam 2019-03-01 15:23:45 +11:00
parent 63cba2055f
commit 03a70ef69c
2 changed files with 4 additions and 2 deletions

View File

@ -112,13 +112,13 @@ function organizeResults(r, options) {
return results;
}
// all punctuations except for . which is allowed in usernames
// all punctuations except for -, _ and . which are allowed in usernames
// note: these are valid in names, but will end up tripping search anyway so just skip
// this means searching for `sam saffron` is OK but if my name is `sam$ saffron` autocomplete
// will not find me, which is a reasonable compromise
//
// we also ignore if we notice a double space or a string that is only a space
const ignoreRegex = /([\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,\-\/:;<=>?\[\]^_`{|}~])|\s\s|^\s$/;
const ignoreRegex = /([\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,\/:;<=>?\[\]^`{|}~])|\s\s|^\s$/;
function skipSearch(term, allowEmails) {
if (term.indexOf("@") > -1 && !allowEmails) {

View File

@ -89,6 +89,8 @@ QUnit.test("it skips a search depending on punctuations", async assert => {
let allowedTerms = [
"@sam sam", // double space is not allowed
"@sam.sam",
"@sam_sam",
"@sam-sam",
"@"
];