nsbin/eth/user/isg_order

98 lines
2.3 KiB
Text
Raw Normal View History

#!/bin/sh
#
# 2010 Nico Schottelius (nico-nsbin at schottelius.org)
#
# This file is part of nsbin.
#
# nsbin is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# nsbin is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with nsbin. If not, see <http://www.gnu.org/licenses/>.
#
#
# Order device at ISG
#
# ETHZ_FOND_TABLE:
#
# name lz fond
#
#
# Standard variables (stolen from cconf)
#
__pwd="$(pwd -P)"
__mydir="${0%/*}"; __abs_mydir="$(cd "$__mydir" && pwd -P)"
__myname=${0##*/}; __abs_myname="$__abs_mydir/$__myname"
if [ -z "$NETHZ_USERNAME" -o -z "$ETHZ_FOND_TABLE" ]; then
echo "Error: Set \$NETHZ_USERNAME to your username"
echo "Error: Set \$ETHZ_FOND_TABLE to the fond table"
exit 1
fi
all_profs="$(echo $(awk '{ print $1 }' "$ETHZ_FOND_TABLE"))"
if [ $# -lt 4 ]; then
cat << eof
$__myname: <fond> <vendor> <device> <office> [comment]
fond: a prof like $all_profs
device: as found on vendor site
Requires NETHZ_USERNAME and ETHZ_FOND_TABLE to be set.
Example: NETHZ_USERNAME="nicosc" ETHZ_FOND_TABLE="/path/to/it" $__myname myprof Banana 'Yellow, not green' 'trac: #42'
eof
exit 1
fi
sendmail="/usr/sbin/sendmail"
to="support@inf.ethz.ch nicosc@ethz.ch"
from="${NETHZ_USERNAME}@ethz.ch"
prof="$1"; shift
vendor="$1"; shift
device="$1"; shift
office="$1"; shift
lz="$(awk "/$prof/ { print \$2 }" "$ETHZ_FOND_TABLE")"
fond="$(awk "/$prof/ { print \$3 }" "$ETHZ_FOND_TABLE")"
cat << eof | $sendmail -f "$from" $to
To: support@inf.ethz.ch
Subject: Best. $vendor ($NETHZ_USERNAME, $lz)
Dear support@inf.ethz.ch,
here is the form data from $__myname.
Cost center: $lz
Description: Hoi Thomas!
Bitte folgendes von $vendor bestellen:
$device
und in Büro $office liefern.
$@
Viele Gruesse,
$USER
Fond: $fond
eof