#!/bin/bash

if [ $# -lt 1 ]; then
	echo "Usage: $0 <user>@<domain>"
	exit 1
fi

DOMAINS=`ldapsearch -LLL -x '(objectClass=organizationalUnit)' ou | grep ^dn`
TMP=`echo $DOMAINS | grep -o "dn: ou=$2,dc=ldap"`
USER=`echo "$@" | cut -f 1 -d '@'`
DOMAIN=`echo "$@" | cut -f 2 -d '@'`

read -p "Enter the LDAP password: " -s PASSWORD
echo

function addDomain()
{
	echo "Adding new domain..."
	TEMPFILE=`tempfile`
	sed s/domen/$DOMAIN/g domain.ldif >$TEMPFILE
	ldapadd -w "$PASSWORD" -x -D "cn=root,dc=ldap" -f $TEMPFILE
	rm -f $TEMPFILE
	echo -e "New domain added\n"
}


function addUser()
{
	echo "Adding new user..."
	TEMPFILE=`tempfile`
	sed -e s/korisnik/$USER/g -e s/domen/$DOMAIN/g user.ldif >$TEMPFILE
	ldapadd -w "$PASSWORD" -x -D "cn=root,dc=ldap" -f $TEMPFILE
	ldappasswd -w "$PASSWORD" -s lozinka -x -D "cn=root,dc=ldap" "uid=$USER,ou=$DOMAIN,dc=ldap"
	rm -f $TEMPFILE
	echo -e "New user added\n"
}

if [ -z "$TMP" ]; then
	addDomain
fi
addUser