Mercurial > hgrepos > hgweb.cgi > s4
view scripts/add-group-csv.sh @ 714:d7c5f86d9c75
Auth check more rigidly
author | HIROSE Yuuji <yuuji@gentei.org> |
---|---|
date | Sat, 30 May 2020 11:28:01 +0900 |
parents | 2a48690b8cbc |
children | 789258aa857a |
line wrap: on
line source
#!/bin/sh if [ -z "$1" ]; then cat<<-EOF >&2 Usage: $0 CSVfile $0 -a CSVfile # for al Csv file should be the form of: GroupName,UserName(email) EOF exit 1 fi cd `dirname $0`/.. if ! . ./s4-funcs.sh; then echo "Cannot find s4-funcs.sh, which should be located in $mydir/.." exit 1 fi target=$(cd `dirname "$1"`; pwd)/`basename $1` query<<-EOF .mode csv CREATE TEMPORARY TABLE _gusers(gname, user, admin); .import $target _gusers REPLACE INTO grp SELECT distinct gname FROM _gusers; CREATE TEMPORARY TABLE _default_grp_attr(key, val); INSERT INTO _default_grp_attr VALUES ('tag', 'lecture'), ('mtime', datetime('now', 'localtime')); REPLACE INTO grp_s SELECT gname, key, 'string', val, NULL FROM (SELECT distinct gname FROM _gusers) JOIN _default_grp_attr; REPLACE INTO grp_mem SELECT gname, user FROM _gusers; REPLACE INTO grp_adm SELECT gname, user FROM _gusers WHERE admin LIKE 'admin'; EOF