#!/bin/sh
#
# koha-passwd -- show a Koha instance's password
# Copyright 2014  KohaAloha, Ltd
#
# This program 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.
#
# This program 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 this program.  If not, see <http://www.gnu.org/licenses/>.


set -e

# include helper functions
if [ -f "/usr/share/koha/bin/koha-functions.sh" ]; then
    . "/usr/share/koha/bin/koha-functions.sh"
else
    echo "Error: /usr/share/koha/bin/koha-functions.sh not present." 1>&2
    exit 1
fi

usage()
{
    local scriptname=$0
    cat <<EOF
Displays a Koha instance's password.

Usage: $scriptname instancename1 instancename2...

EOF
}

# Parse command line.
[ $# -ge 1 ] || ( usage ; die "Missing instance name..." )


for name in "$@"
do
    if is_instance $name ; then
        user=$(xmlstarlet sel -t -v 'yazgfs/config/user' /etc/koha/sites/$name/koha-conf.xml);
        passwd=$(xmlstarlet sel -t -v 'yazgfs/config/pass' /etc/koha/sites/$name/koha-conf.xml);
        if [ -t 1 ]; then
            echo "Username for $name: $user"
            echo "Password for $name: $passwd"
            echo "Press enter to clear the screen..."
            read anykey
            clear
        else
            echo "$passwd"
        fi
    else
        warn "Unknown instance $name."
    fi
done

exit 0
