s4

changeset 246:de0a9f5cc1cf

Listing users in a group couldn't show "next-30", fixed
author HIROSE Yuuji <yuuji@gentei.org>
date Tue, 12 Jul 2016 10:04:34 +0859
parents b915381669d6
children d0984b8e9f4c
files s4-funcs.sh
diffstat 1 files changed, 26 insertions(+), 12 deletions(-) [+]
line diff
     1.1 --- a/s4-funcs.sh	Sun Jul 10 23:25:49 2016 +0859
     1.2 +++ b/s4-funcs.sh	Tue Jul 12 10:04:34 2016 +0859
     1.3 @@ -43,6 +43,12 @@
     1.4      レポート提出管理
     1.5  ひとつのarticleをheadingにして新規ツリーを作成、あるといいかも。
     1.6  
     1.7 +[2016]
     1.8 +7/12	根本への反省
     1.9 +	* cgi自身の $1, $2 での切り替えでなく、CGI変数での受け渡しにすべき。
    1.10 +	  arg1/arg2/arg3 的に $1 に / 区切りでつけた方がよかったかな。
    1.11 +
    1.12 +[以下2015]
    1.13  8/4	○グループに承認加入モードを追加
    1.14  	○グループに参加していない場合は grpaction できない
    1.15  	Web
    1.16 @@ -1612,10 +1618,10 @@
    1.17    echo "<a href=\"$href\"><img title=\"$title\" src=\"$src\">$@</a>"
    1.18  )
    1.19  listentry() (
    1.20 -  # $1=user/group $2=SearchKeyword $3=condition(if any)
    1.21 +  # $1=user/group $2=SearchKeyword $3=condition(if any) $4=grprowid(if in grp)
    1.22    # Referring variable $iamowner=$grp to attach owner-request links
    1.23  err listentry: \$1=$1 \$2=$2 \$3=$3
    1.24 -  cond=''
    1.25 +  cond='' hiddens=''
    1.26    offset=`getpar offset`
    1.27    offset=${offset%%[!0-9]*}
    1.28    offset=$((offset + 0))	# change to numeric forcibly
    1.29 @@ -1625,7 +1631,8 @@
    1.30    if [ x"$1" = x"user" ]; then
    1.31      hrb="$myname?home"
    1.32      deficon=person-default.png
    1.33 -    entity="ユーザ" tbl=user link=rowid nm=name stage=mems
    1.34 +    entity="ユーザ" tbl=user link=rowid nm=name # stage=mems
    1.35 +    [ -n "$4" ] && hiddens=`cgi_hidden grid $4`
    1.36      gcs=gecos
    1.37    else				# if group
    1.38      hrb="$myname?grp"
    1.39 @@ -1688,6 +1695,9 @@
    1.40  EOF
    1.41      echo '</div>'
    1.42    fi
    1.43 +  hiddens="$hiddens
    1.44 +	`cgi_hidden kwd \"$kwd\"`
    1.45 +	`cgi_hidden stage \"$stage\"`"
    1.46    cat<<EOF
    1.47    <p>${total}件中の$((offset+1))件めから${kwd:+" - 検索語: $kwd"}</p>
    1.48  EOF
    1.49 @@ -1696,8 +1706,7 @@
    1.50      cat<<EOF
    1.51  <div class="right clear"><form action="$myname" method="POST">
    1.52  `cgi_submit 次の${limit}件`
    1.53 -`cgi_hidden kwd "$kwd"`
    1.54 -`cgi_hidden stage "$stage"`
    1.55 +$hiddens
    1.56  `cgi_hidden offset $((offset + limit))`</form></div>
    1.57  EOF
    1.58  	   )
    1.59 @@ -1707,8 +1716,7 @@
    1.60      cat<<EOF
    1.61  <form action="$myname" method="POST">
    1.62  `cgi_submit 前の${limit}件`
    1.63 -`cgi_hidden stage "$stage"`
    1.64 -`cgi_hidden kwd "$kwd"`
    1.65 +$hiddens
    1.66  `cgi_hidden offset $((offset - limit))`</form>
    1.67  EOF
    1.68      )
    1.69 @@ -1717,7 +1725,6 @@
    1.70    echo $pnbtn
    1.71  
    1.72    err ListEntry: `echo "$sql"\;`
    1.73 -
    1.74    query "$sql limit $limit ${offset:+offset $offset};" \
    1.75        | while IFS='|' read id lnk name gecos tag ownerp; do
    1.76  err name=$name owner=$ownerp lnk=$lnk
    1.77 @@ -1765,12 +1772,19 @@
    1.78  #     fi
    1.79  #     par2table $formdir/grp.def
    1.80  #   fi
    1.81 -  grp=`getgroupbyid $1`
    1.82 +  if [ -z "$1" ]; then
    1.83 +    grid=`getpar grid`
    1.84 +    grid=${grid%%[!0-9]*}
    1.85 +    [ -n "$grid" ] && grp=`getgroupbyid $grid`
    1.86 +  else
    1.87 +    grid=$1
    1.88 +  fi
    1.89 +  grp=`getgroupbyid $grid`
    1.90  err showgroup2: grp=$grp qgrp="[$(sqlquote $grp)]"
    1.91    if isgroup "$grp"; then
    1.92      tf=$tmpd/title.$$
    1.93      echo "グループ $grp" > $tf
    1.94 -    showgroupsub $formdir/grp.def "$1" | \
    1.95 +    showgroupsub $formdir/grp.def "$grid" | \
    1.96  	_m4 -D_TITLE_="spaste(\`$tf')" \
    1.97  	    -D_FORM_="syscmd(\`cat')" \
    1.98  	    -D_DUMPTABLE_="" \
    1.99 @@ -1859,9 +1873,9 @@
   1.100  	 DT_VIEW=replyblog dumptable html blog 'ctime team title heading' "$cond"
   1.101  
   1.102    getgname="(select gname from grp where rowid=$rowid)"
   1.103 -  c="group by b.name having b.name in (select user from grp_mem where gname=$getgname)"
   1.104 +  c="group by a.name having a.name in (select user from grp_mem where gname=$getgname)"
   1.105    cm="?commission+$rowid"
   1.106 -  thumbxy=50x50 listmember "" "$c" \
   1.107 +  thumbxy=50x50 listmember "" "$c" "$rowid" \
   1.108        |sed -e "s|\(<br>\),not=\(.*\)|\1|"	# 間違って押しやすい
   1.109    # team list
   1.110    hexteams=`hexteams "$grp"`