This is an automated email from the ASF dual-hosted git repository.
sebb pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/whimsy.git
The following commit(s) were added to refs/heads/master by this push:
new 49082f48 Allow for single letter filter
49082f48 is described below
commit 49082f48fab821bdf405884352703a8d027c5baa
Author: sebbASF <[email protected]>
AuthorDate: Tue Mar 28 08:41:16 2023 +0100
Allow for single letter filter
---
www/members/mailing_lists.cgi | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/www/members/mailing_lists.cgi b/www/members/mailing_lists.cgi
index 78edec07..c54240af 100755
--- a/www/members/mailing_lists.cgi
+++ b/www/members/mailing_lists.cgi
@@ -43,11 +43,15 @@ query = ENV['QUERY_STRING']
# Only allow letters in the query string so it is safe to use
if query =~ %r{^filter=([a-zA-Z]+)$}
# Convert xmU into m.......U..x
- letters = []
- $1.split('').sort_by(&:upcase).each_cons(2).with_index do |(a, b), i|
- letters << a if i == 0
- (b.upcase.ord - a.upcase.ord - 1).times {letters << '.'}
- letters << b
+ if $1.length > 1
+ letters = []
+ $1.split('').sort_by(&:upcase).each_cons(2).with_index do |(a, b), i|
+ letters << a if i == 0
+ (b.upcase.ord - a.upcase.ord - 1).times {letters << '.'}
+ letters << b
+ end
+ else
+ letters << $1
end
filter = Regexp.new(letters.join)
else