s4
changeset 646:d9bce34a863b
Email4group should use same algorithm as email4groupbyuid
author | HIROSE Yuuji <yuuji@gentei.org> |
---|---|
date | Thu, 07 May 2020 23:03:33 +0900 |
parents | 21522dcada92 |
children | a8a5e6437f1a |
files | s4-funcs.sh |
diffstat | 1 files changed, 10 insertions(+), 14 deletions(-) [+] |
line diff
1.1 --- a/s4-funcs.sh Thu May 07 20:47:08 2020 +0900 1.2 +++ b/s4-funcs.sh Thu May 07 23:03:33 2020 +0900 1.3 @@ -1401,34 +1401,30 @@ 1.4 qgrp=`sqlquote "$1"`; shift 1.5 users=`for i; do sqlquote "$i"; done` 1.6 users=`echo $users|tr ' ' ','` 1.7 - sql="select coalesce(s.val, g.user) from grp_mem g 1.8 - left join grp_mem_s s on g.gname=s.gname and g.user=s.user 1.9 - and s.key='email' 1.10 - where g.gname=$qgrp and g.user in ($users);" 1.11 - query "$sql" 1.12 -} 1.13 -email4groupbyuid() { 1.14 - # Get for-$1=group email address(es) for $2...=user-ids 1.15 - qgrp=`sqlquote "$1"`; shift 1.16 - uids=`echo "$@"` 1.17 - uids=`echo $uids|tr ' ' ','` 1.18 sql="WITH 1.19 grpemails AS ( 1.20 SELECT gname, user, val email 1.21 FROM grp_mem NATURAL JOIN grp_mem_s 1.22 WHERE key='email' AND gname=$qgrp), 1.23 useremails AS ( 1.24 - SELECT user.rowid rid, user.name, val email 1.25 + SELECT user.name, val email 1.26 FROM user 1.27 LEFT JOIN user_m 1.28 ON user.name=user_m.name AND user_m.key='email') 1.29 SELECT DISTINCT coalesce(g.email, u.email, u.name) 1.30 FROM useremails u LEFT JOIN grpemails g 1.31 ON u.name=g.user 1.32 - WHERE u.rid in ($uids);" 1.33 - ## err email4gByid `echo $sql` 1.34 + WHERE u.name in ($users);" 1.35 query "$sql" 1.36 } 1.37 +email4groupbyuid() { 1.38 + # Get for-$1=group email address(es) for $2...=user-ids 1.39 + g=$1; shift 1.40 + uids=`echo "$@"` 1.41 + uids=`echo $uids|tr ' ' ','` 1.42 + sql="SELECT DISTINCT name FROM user WHERE rowid IN ($uids);" 1.43 + email4group "$1" `query "$sql"` 1.44 +} 1.45 collectmembersbyid() { 1.46 # Collect user names of group specified by grid 1.47 rid=${1%%[!0-9]*} # Cleaning