#!/bin/bash
#########################################################
# 							#
# This is BashStyle-NG  				#
#							#
# Licensed under GNU GENERAL PUBLIC LICENSE v3    	#
#							#
# Copyright 2007 - 2013 Christopher Bratusek		#
#							#
#########################################################

. gettext.sh
TEXTDOMAIN="bs-ng-wizard"

source $BSNG_RC_DIR/internal/misc

MODULES=( ini basic cdwriter git lscd reprepro svn user )
for mod in ${MODULES[@]}; do
	source $BSNG_RC_DIR/wizard/$mod
done

CURRENT_WIZARD=1

if [[ ! -e $HOME/.bs-ng-wizard.ini ]]; then
	cp $BSNG_DATA_DIR/bashstyle-ng/bs-ng-wizard.ini $HOME/.bs-ng-wizard.ini
	STAGE=INIT
elif [[ $(wizard_get ini_version) < $CURRENT_WIZARD ]]; then
	bs-ng-wizard.update
	STAGE=UPDATE
elif [[ $(wizard_get ini_version) == $CURRENT_WIZARD ]]; then
	STAGE=KEEP
fi

if [[ $1 == *force ]]; then
	cp $BSNG_DATA_DIR/bashstyle-ng/bs-ng-wizard.ini $HOME/.bs-ng-wizard.ini
	STAGE=INIT
	shift
fi

export RC_FILE=$HOME/.bashstyle.wizard

case $STAGE in

	INIT )
		CONF_MODULES=ALL
	;;

	UPDATE )
		CONF_MODULES=$(seq $(($(wizard_get ini_version)+1)) $CURRENT_WIZARD)
	;;

	KEEP )
		exit 0
	;;

esac

for mod in $CONF_MODULES ; do
	case $mod in

		ALL )
			wizard_start
			wizard_base
			wizard_lscd
			wizard_cdwriter
			wizard_git_base
			wizard_git_accounts
			wizard_svn_accounts
			wizard_reprepro
			wizard_user
			wizard_end
		;;

	esac
done
