s4
changeset 228:ab1693ac909a
Avoid reusing variable
author | HIROSE Yuuji <yuuji@gentei.org> |
---|---|
date | Mon, 20 Jun 2016 18:56:42 +0859 |
parents | ce24afbd3139 |
children | 787a577cc3ce |
files | s4-funcs.sh |
diffstat | 1 files changed, 23 insertions(+), 8 deletions(-) [+] |
line diff
1.1 --- a/s4-funcs.sh Mon Jun 20 08:01:23 2016 +0859 1.2 +++ b/s4-funcs.sh Mon Jun 20 18:56:42 2016 +0859 1.3 @@ -1974,7 +1974,7 @@ 1.4 gname=(select gname from grp where rowid=$grid))) 1.5 a left join user_s on a.name=user_s.name and key='gecos' 1.6 order by coalesce(val,a.name);" 1.7 - err grpaction: `echo $sql` 1.8 + err grpaction: `echo "$sql"` 1.9 tf=$tmpd/title.$$ 1.10 echo "グループ[<a href=\"?grp+$grid\">$grp<a>]参加メンバーに対する操作" > $tf 1.11 cmmsg="<div class=\"fold\"> 1.12 @@ -1994,15 +1994,15 @@ 1.13 myhexteams=$(hexteams "$grp" "$user") 1.14 allhexteams=$(hexteams "$grp") 1.15 if [ -n "$myhexteams" ]; then 1.16 - rmteam="<div class=\"fold\"> 1.17 + rmteammsg="<div class=\"fold\"> 1.18 `cgi_radio rm rmteam 'id=\"cmrmteam\"'`<label 1.19 for=\"cmrmteam\">下でチェックした人からチーム属性を除去する</label> 1.20 -<div>チーム属性:`cgi_select_h rmteam $myhexteams` 1.21 +<div>チーム属性:`cgi_select_h rmteam \"2d2d2d\" $myhexteams` 1.22 を除去します: `cgi_checkbox teamconfirm yes` 確認 1.23 <p>この操作による通知は本人に行きません。 1.24 あらかじめ通知するか、登録解除してよい状況かしっかり確認してください。</p> 1.25 </div> 1.26 -</div> 1.27 +</div><!-- end of $rmteammsg --> 1.28 " 1.29 fi 1.30 b1='<label> <input type="checkbox" name="usel" value="' 1.31 @@ -2024,7 +2024,7 @@ 1.32 <div>チーム名:`cgi_text team "" 'id="inteam" list="teams"'` 1.33 `cgi_datalist_h teams $allhexteams` 1.34 </div></div> 1.35 -${rmteam} 1.36 +${rmteammsg} 1.37 <div class="fold"> 1.38 `cgi_radio rm send id="sendmsg"`<label 1.39 for="sendmsg">下でチェックした人にメッセージを送信する</label> 1.40 @@ -2391,16 +2391,31 @@ 1.41 ) 1.42 grp_rm_team() ( 1.43 # $1=grp-rowid $2=team $3...=user-rowid(s) 1.44 - grp=`getgroupbyid $1` 1.45 + grid=$1 1.46 + qgrp=$(sqlquote "`getgroupbyid $grid`") 1.47 team=$2; shift; shift 1.48 - [ -z "$grid" -o -z "$team" -o -z "$1" ] && return 1.49 + [ -z "$grid" -o -z "$team" ] && return 1.50 { echo "BEGIN;" 1.51 for user; do 1.52 echo "DELETE FROM grp_mem_m\ 1.53 - WHERE gname='$grp'\ 1.54 + WHERE gname=$qgrp \ 1.55 AND user=(SELECT name FROM user WHERE rowid=$user)\ 1.56 AND key='team' AND val='$team';" 1.57 done 1.58 + cat<<-EOF 1.59 + DELETE FROM blog_s 1.60 + WHERE rowid=( 1.61 + SELECT rowid 1.62 + FROM blog_s a 1.63 + WHERE key='team' 1.64 + AND id IN (SELECT id FROM blog_s WHERE key='owner' AND val=$qgrp) 1.65 + AND NOT EXISTS (SELECT * FROM grp_mem_m 1.66 + WHERE key='team' AND val=a.val -- a.val=team 1.67 + AND gname = (SELECT val FROM blog_s b 1.68 + WHERE a.id=b.id AND key='owner') 1.69 + )); 1.70 + EOF 1.71 + 1.72 echo "END;" 1.73 } | query 1.74 )