# $Header: /home/cvsd/magellan-cvs/magellan-src/installer/gtk-gui/usermanagement.sh,v 1.2 2008-09-24 10:44:21 niro Exp $ export ROOT_PASSWORD_DIALOG=' data/header.png echo "${ROOT_PASSWORD}" ROOT_PASSWORD echo "${ROOT_PASSWORD_RETYPE}" ROOT_PASSWORD_RETYPE ' #check_password "${ROOT_PASSWORD}" "${ROOT_PASSWORD_RETYPE}" # ROOT_PASSWORD export ADD_USER_DIALOG=' data/header.png echo "${USER_NAME}" USER_NAME echo "${USER_PASSWORD}" USER_PASSWORD echo "${USER_PASSWORD_RETYPE}" USER_PASSWORD_RETYPE ' check_password() { local pass1="$1" local pass2="$2" echo "DEBUG: pass1='${pass1}'" if [[ -z ${pass1} ]] then # echo "Empty Password given." FAILURE_MESSAGE="Empty password given!" rundialog FAILURE_DIALOG return 1 fi if [[ ${pass1} = ${pass2} ]] then # echo "Password match." return 0 else FAILURE_MESSAGE="Password did not match!" rundialog FAILURE_DIALOG # echo "DEBUG: pass1='${pass1}'" # echo "DEBUG: pass2='${pass2}'" # echo "Password did *not* match. return 1 fi } # needed to be available in the gtk-dialog export -f check_password ## main programm ## rundialog_root_password_dialog() { rundialog ROOT_PASSWORD_DIALOG echo "DEBUG: EXIT='${EXIT}'" # save given variables in env # they will be shown as default on error export ROOT_PASSWORD export ROOT_PASSWORD_RETYPE case ${EXIT} in abort) echo "Aborted by user." exit 1 ;; back) # placeholder return 1 ;; next) if ! check_password "${ROOT_PASSWORD}" "${ROOT_PASSWORD_RETYPE}" then rundialog_root_password_dialog fi ;; esac } rundialog_add_user_dialog() { rundialog ADD_USER_DIALOG echo "DEBUG: EXIT='${EXIT}'" # save given variables in env # they will be shown as default on error export USER_NAME export USER_PASSWORD export USER_PASSWORD_RETYPE case ${EXIT} in abort) echo "Aborted by user." exit 1 ;; back) rundialog_root_password_dialog rundialog_add_user_dialog ;; next) if [[ -z ${USER_NAME} ]] then rundialog USERNAME_FAILURE rundialog_add_user_dialog fi if ! check_password "${USER_PASSWORD}" "${USER_PASSWORD_RETYPE}" then rundialog_add_user_dialog fi ;; esac } main_usermanagement() { rundialog_root_password_dialog rundialog_add_user_dialog # export all variables export ROOT_PASSWORD export USER_NAME export USER_PASSWORD }