s4
changeset 240:3ba9493977e1
email4groupbyuid now accepts uname(email) as well as gname
author | HIROSE Yuuji <yuuji@gentei.org> |
---|---|
date | Thu, 30 Jun 2016 12:42:16 +0859 |
parents | 25e0b1eaf04d |
children | 0c817d4a549a |
files | s4-funcs.sh |
diffstat | 1 files changed, 15 insertions(+), 6 deletions(-) [+] |
line diff
1.1 --- a/s4-funcs.sh Thu Jun 30 12:41:10 2016 +0859 1.2 +++ b/s4-funcs.sh Thu Jun 30 12:42:16 2016 +0859 1.3 @@ -1126,11 +1126,20 @@ 1.4 err em4gbid-IN: "\$1=$1 qgrp=$qgrp" 1.5 uids=`echo "$@"` 1.6 uids=`echo $uids|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 1.11 - (select name from user where rowid in ($uids));" 1.12 + sql="WITH 1.13 + grpemails AS ( 1.14 + SELECT gname, user, val email 1.15 + FROM grp_mem NATURAL JOIN grp_mem_s 1.16 + WHERE key='email' AND gname=$qgrp), 1.17 + useremails AS ( 1.18 + SELECT user.rowid rid, user.name, val email 1.19 + FROM user 1.20 + LEFT JOIN user_s 1.21 + ON user.name=user_s.name AND user_s.key='email') 1.22 + SELECT DISTINCT coalesce(g.email, u.name) 1.23 + FROM useremails u LEFT JOIN grpemails g 1.24 + ON u.name=g.user 1.25 + WHERE u.rid in ($uids);" 1.26 err email4gByid `echo $sql` 1.27 query "$sql" 1.28 } 1.29 @@ -1385,7 +1394,7 @@ 1.30 max(time, 1.31 coalesce((SELECT time FROM acclog 1.32 WHERE user='$user' and tbl='blog' 1.33 - AND tblrowid=$blogreadflagrowid), 0)) time 1.34 + AND tblrowid=$blogreadflagrowid), " ")) time 1.35 FROM acclog 1.36 WHERE user='$user' AND tbl='blog' 1.37 ), blogall as (