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; 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 // 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 // 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 // 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 // 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) { function skipSearch(term, allowEmails) {
if (term.indexOf("@") > -1 && !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 = [ let allowedTerms = [
"@sam sam", // double space is not allowed "@sam sam", // double space is not allowed
"@sam.sam", "@sam.sam",
"@sam_sam",
"@sam-sam",
"@" "@"
]; ];