#!/bin/bash

# mTicket update script 1 -> 2
# comment as list attribute

# check parameter
usage="upgrade"

# check version
version=$(mysql -umticket -pmTicket -N mticket <<<"select * from version")
echo "mTicket version $version found."
#if [ $version -lt 4 ]
#then
#	echo "Main version ${version%%.*} found. Upgrade not supported."
#	exit 1
#fi

if [ $version -eq 2 ]
then
	echo "Main version ${version%%.*} found. No upgrade necessary."
	exit 0
fi


echo "Dump database"
mysqldump --default-character-set=utf8 mticket -umticket -pmTicket >mticket.dump || exit 1

echo "Rename tables in current database"
mysql -umticket -pmTicket mticket <<END1 || exit 1
ALTER TABLE ticket DROP FOREIGN KEY ticket_FK_1;
RENAME TABLE 
	ticket TO ticket_old,
	category     TO category_old;
END1

echo "Create new schema"
mysql -umticket -pmTicket mticket </usr/share/php/mTicket/AWK/impl/data/build/sql/schema.sql || exit 1

echo "Upgrade data"
mysql -umticket -pmTicket mticket <<'END2' || exit 1
	START TRANSACTION;
	
	INSERT INTO category
	SELECT * FROM category_old; 
	
	INSERT INTO ticket
	SELECT `id`,`mod`,initiator,email,cat_id,status,description,last_update FROM ticket_old;
	
	INSERT INTO comment
	SELECT NULL,1,last_update,comments,`id` from ticket_old;

	drop table ticket_old;
	drop table category_old;
	
	UPDATE version set db_version = 2;
	
	COMMIT;
END2

