#!/bin/sh


#start initMySQL()
DA_MYSQL=/usr/local/directadmin/conf/mysql.conf
if [ ! -s ${DA_MYSQL} ]; then
	echo "Cannot find ${DA_MYSQL} so cannot create PMA tables";
	exit 1;
fi

MYSQLUSER=`grep -m1 "^user=" ${DA_MYSQL} | cut -d= -f2`
MYSQLPASSWORD=`grep -m1 "^passwd=" ${DA_MYSQL} | cut -d= -f2`

PHPMYADMIN_USER=da_phpmyadmin
PHPMYADMIN_PASS=`perl -le'print map+(A..Z,a..z,0..9)[rand 62],0..15'`;

if [ `grep -m1 -c -e "^host=" ${DA_MYSQL}` -gt "0" ]; then
	MYSQLHOST=`grep -m1 "^host=" ${DA_MYSQL} | cut -d= -f2`
else
	MYSQLHOST=localhost
fi

MYSQL_ACCESS_HOST=localhost
if [ "$MYSQLHOST" != "localhost" ]; then
	#its a remote databsae, so connections would come from the server IP.
	if [ -s ${WORKDIR}/scripts/setup.txt ]; then
		MYSQL_ACCESS_HOST=`cat ${WORKDIR}/scripts/setup.txt | grep -m1 -e '^ip=' | cut -d= -f2`
	fi
	
	#if we're on a LAN, then things change.
	if [ -s ${DA_MYSQL} ]; then
		if [ `grep -m1 -c -e "^access_host=" ${DA_MYSQL}` = "0" ]; then
			MYSQL_ACCESS_HOST=`grep -m1 "^access_host=" ${DA_MYSQL} | cut -d= -f2`
		fi
	fi
fi

#end initMySQL()


SQL=/var/www/html/phpMyAdmin/examples/create_tables.sql
if [ ! -s ${SQL} ]; then
	SQL=/var/www/html/phpMyAdmin/sql/create_tables.sql
	if [ ! -s ${SQL} ]; then
		echo "Cannot find $SQL so cannot create PMA tables";
		exit 2;
	fi
fi

mysql -u${MYSQLUSER} -p${MYSQLPASSWORD} < ${SQL}
mysql -e "GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER,LOCK TABLES,INDEX ON phpmyadmin.* TO '${PHPMYADMIN_USER}'@'${MYSQL_ACCESS_HOST}' IDENTIFIED BY '${PHPMYADMIN_PASS}';" --host=${MYSQLHOST} --user=${MYSQLUSER} --password=${MYSQLPASSWORD}
mysql -e "SET PASSWORD FOR '${PHPMYADMIN_USER}'@'${MYSQL_ACCESS_HOST}' = PASSWORD('${PHPMYADMIN_PASS}');" --host=${MYSQLHOST} --user=${MYSQLUSER} --password=${MYSQLPASSWORD}
mysql -e "FLUSH PRIVILEGES;" --host=${MYSQLHOST} --user=${MYSQLUSER} --password=${MYSQLPASSWORD}

CONFIG=/var/www/html/phpMyAdmin/config.inc.php

#uncomment everything first:
for v in controlhost controluser controlpass pmadb bookmarktable relation table_info table_coords pdf_pages column_info history table_uiprefs tracking designer_coords userconfig recent favorite users usergroups navigationhiding savedsearches central_columns designer_settings export_templates; do
{
	perl -pi -e "s#// \\\$cfg\['Servers'\]\[\\\$i\]\['$v'\]#\\\$cfg\['Servers'\]\[\\\$i\]\['$v'\]#" ${CONFIG}
};
done;

perl -pi -e "s#\\\$cfg\['Servers'\]\[\\\$i\]\['controlhost'\] = .*#\\\$cfg\['Servers'\]\[\\\$i\]\['controlhost'\] = '${MYSQLHOST}';#" ${CONFIG}
perl -pi -e "s#\\\$cfg\['Servers'\]\[\\\$i\]\['controluser'\] = .*#\\\$cfg\['Servers'\]\[\\\$i\]\['controluser'\] = '${PHPMYADMIN_USER}';#" ${CONFIG}
perl -pi -e "s#\\\$cfg\['Servers'\]\[\\\$i\]\['controlpass'\] = .*#\\\$cfg\['Servers'\]\[\\\$i\]\['controlpass'\] = '${PHPMYADMIN_PASS}';#" ${CONFIG}

#set the permissions for security:
chown webapps:apache ${CONFIG}
chmod 440 ${CONFIG}
