#!/bin/bash
#Mini Script zum automatischen Anlegen eines Home-Verzeichnisses
# (c) 2009 Daniel T. Bender invis-server.org
# (c) 2010 Stefan Schaefer invis-server.org
# Questions: stefan@invis-server.org 

# License: GPLv3
# Dieses Programm ist freie Software. Sie können es unter den Bedingungen der 
# GNU General Public License, wie von der Free Software Foundation veröffentlicht,
# weitergeben und/oder modifizieren, entweder gemäß Version 3 der Lizenz oder
# (nach Ihrer Option) jeder späteren Version.

# Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, daß es Ihnen
# von Nutzen sein wird, aber OHNE IRGENDEINE GARANTIE, sogar ohne die implizite 
# Garantie der MARKTREIFE oder der VERWENDBARKEIT FÜR EINEN BESTIMMTEN ZWECK. 
# Details finden Sie in der GNU General Public License.

# Sie sollten ein Exemplar der GNU General Public License zusammen mit diesem 
# Programm erhalten haben. Falls nicht, siehe <http://www.gnu.org/licenses/>. 

#Konfigurationsdaten
conffile="/etc/invis/invis.conf"
confdir="/etc/invis"
#passfile="/etc/invis/invis-pws.conf"

# Funktionen
# Werte aus Konfigurationsdatendatei extrahieren
# $1 = Konfigurationsdatei, $2 = Parameter, $3 Wert (Feld)
getconfdata() {
    cat $1 |grep "$2" | cut -d ":" -f $3
}

# Konfigurationsparameter tauschen
changevalues() {
    # Arg1 = Pfad, Arg2 = Datei, Arg3 = sed String
    cat $1/$2|sed "s%$3%g" > $1/$2.new
    mv $1/$2.new $1/$2
}

if [ $# -eq 1 ]; then
	USR=$1;
	DIR=/home/$USR;
	mkdir $DIR;
	cp -r /etc/skel/* $DIR;
	cp $confdir/templates/movelibdirs.cmd /srv/shares/service/Win_Scripts/mvlib$USR.cmd
	chown -R $USR:'Domain Users' $DIR;
	chmod u+rwx,g-rwx,o-rwx $DIR;
	cfile="mvlib$USR.cmd"
	path="/srv/shares/service/Win_Scripts/"
	string="USER%$USR"
	changevalues $path $cfile $string
	unix2dos $path$cfile

	DIR="/srv/shares/portal/downloads/$USR"
	mkdir $DIR
	chown -R $USR:'Domain Users' $DIR
	chmod u+rwx,g=rwsx,o=rx $DIR

	DIR="/srv/shares/portal/uploads/$USR"
	mkdir $DIR
	chown -R $USR:'Domain Users' $DIR
	chmod u+rwx,g=rwsx,o-rwx $DIR

else
	echo "Usage: $0 {username}";
fi

