#
# thomas@linuxmuster.net
# 13.02.2014
#

echo "### 17_admins prepatch"

# create admin users & groups

if [ "$1" = "--first" ]; then

  # wait until cyrus is ready
  sleep 10

  # delete old mailboxes
  if ls /var/spool/cyrus/mail/*/user/ &> /dev/null; then
    users=`ls /var/spool/cyrus/mail/*/user/ | grep -v :`
    for i in $users; do
      $SCRIPTSDIR/cyrus-mbox -d $i
    done
  fi

  # set passwords for admins
  if which sophomorix-passwd &> /dev/null; then
   sophomorix-passwd --force --user $DOMADMIN --pass $adminpw
   sophomorix-passwd --user $ADMINISTRATOR --pass $adminpw
   sophomorix-passwd --user $PGMADMIN --pass $adminpw
   sophomorix-passwd --user $WWWADMIN --pass $adminpw
   sophomorix-usermod -I wwwadmin
  else
   for i in $ADMINISTRATOR $PGMADMIN $WWWADMIN; do
    mkdir -p $ADMINSHOME/$i
    chown $i:$ADMINGROUP $ADMINSHOME/$i
   done
   echo -e "$adminpw\n$adminpw\n" | smbldap-passwd -s $DOMADMIN
   echo -e "$adminpw\n$adminpw\n" | smbldap-passwd -s $ADMINISTRATOR
   echo -e "$adminpw\n$adminpw\n" | smbldap-passwd -s $PGMADMIN
   echo -e "$adminpw\n$adminpw\n" | smbldap-passwd -s $WWWADMIN
   smbldap-usermod -I $WWWADMIN
  fi

  # create mailboxes again
  mailquota=`grep ^$ADMINISTRATOR $MAILQUOTACONF | awk -F: '{ print $2 }'`
  $SCRIPTSDIR/cyrus-mbox -q $mailquota -c $ADMINISTRATOR
  mailquota=`grep ^$PGMADMIN $MAILQUOTACONF | awk -F: '{ print $2 }'`
  $SCRIPTSDIR/cyrus-mbox -q $mailquota -c $PGMADMIN
  mailquota=`grep ^$WWWADMIN $MAILQUOTACONF | awk -F: '{ print $2 }'`
  $SCRIPTSDIR/cyrus-mbox -q $mailquota -c $WWWADMIN

else

  # prevent access.conf from being patched
  mv access.conf.target access.conf.target.nopatch

fi

# put administrator in teachersgroup
smbldap-groupshow $TEACHERSGROUP | grep memberUid: | grep -qw $ADMINISTRATOR || smbldap-usermod -G $ADMINGROUP,$PRINTERADMINS,$TEACHERSGROUP $ADMINISTRATOR

# reparing admin accounts, obsolete
#$SCRIPTSDIR/repair-admins.sh
