#!/bin/sh

check_parameter()
{
	local pname="$1"
	if eval "test -z \"\$$pname\"";then
		scrname="`basename "$0"`"
		echo "$scrname: no $pname parameter specified for application"
		exit 1
	fi
}

check_params()
{
	for pname in vhost_path domain_name install_prefix ssl_target_directory \
			nuke_dbuser nuke_dbpasswd nuke_dbname \
			nuke_admin_login nuke_admin_passwd nuke_admin_email; do 
		check_parameter "$pname"
	done

}



read_conf()
{
	if test -r /etc/psa/psa.conf; then
		while read var val; do
			case "$var" in
				[A-Z]*) eval "$var"='"$val"';;
			esac; 
		done </etc/psa/psa.conf
	else
		echo /etc/psa/psa.conf not found
		exit 1
	fi
}
parse_standard_parameters()
{
	if [ "X${ssl_target_directory}" = "Xtrue" ]; then
		documents_directory="httpsdocs"
		proto="https"
	else
		documents_directory="httpdocs"
		proto="http"
	fi
	root_d="${vhost_path}/${documents_directory}/${install_path}"

}

edit_sql()
{
	sql_file="${root_d}/tmp_sql_update_file.sql"
	sql="update pn_users set pn_uname = '${nuke_admin_login}', pn_email = '${nuke_admin_email}'"
	if [ "X${nuke_admin_passwd}"!="XNone" ]; then
		sql="${sql}, pn_pass = '${nuke_admin_passwd}'"
	fi
	sql="${sql} where pn_uid=2;"
	echo -n ${sql} >${sql_file}

${MYSQL_BIN_D}/mysql -u${nuke_dbuser} -p${nuke_dbpasswd} ${nuke_dbname} <${sql_file}
rm -f ${sql_file}

};

var=`cat | awk '{
	eqpos=index($0, "=");
	if (eqpos>1) {
		var=substr($0, 1, eqpos-1);
		val=substr($0, eqpos+1);

		tmp="[\x5c\x5c]";
		tmp2="\x5c\x5c\x5c\x5c";
		gsub(tmp,tmp2,val);


		tmp2="\x5c\x5c\x5c\x22";
		gsub("\"",tmp2,val);
		print var "=\"" val "\"";
	};
}'`

eval $var

read_conf
check_params
parse_standard_parameters
edit_sql

exit 0
