#!/bin/sh -efu

. girar-sh-functions
. shell-quote
. shell-args

if [ "${1-}" = '--help' ]; then
	echo 'Usage: $PROG item acl_packages acl_groups'
	exit 0
fi
[ "$#" -ge 3 ] || show_usage 'Not enough arguments.'
[ "$#" -le 3 ] || show_usage 'Too many arguments.'

item="$1"; shift
[ -n "$item" ] ||
	fatal 'Empty item'

acl_packages="$1"; shift
acl_groups="$1"; shift

deny()
{
	printf '%s\n' "$*"
	exit 1
}

if [ -z "${item##@*}" ]; then
	item_type='Group'
	item_acl="$acl_groups"
else
	item_type='Project'
	item_acl="$acl_packages"
fi

quote_sed_regexp_variable qitem "$item"
owners="$(sed -n "s/^$qitem[[:space:]]\+//p" "$item_acl")"
[ -n "$owners" ] ||
	deny "$item: $item_type not found in ${item_acl##*/}"

leader="${owners%% *}"
[ -n "$leader" ] ||
	deny "$item: $item_type leader not found in ${item_acl##*/}"
