<?php
	$CONFFILE = dirname($_ENV['SCRIPT_FILENAME'])."/dbconf.php";
	require_once("$CONFFILE");

	$RECPATH = dirname($_ENV['SCRIPT_FILENAME'])."/recordings";
	$SAYINTRO = 1; // Tell them what's happening

	if($_REQUEST['RecordingUrl'] != "") {
		$SAYINTRO = 0; // They've been here at least once. Skip it.
		// Get the recording.
		// This is having trouble. I need to wait for the status.
		// Another script is now doing this. I'm just logging it here for troubleshooting.
		// Log the current time in the word table.
		// Log the call for history
		// Log it
		$timeStamp = date('ymdHis', time());
		$fileName = "{$_GET['word']}${timeStamp}.wav";
		file_put_contents("$RECPATH/$fileName", file_get_contents($_REQUEST['RecordingUrl']));
		
		$mysqli = new mysqli("$DBHOST","$DBUSER","$DBPASS","$DBBASE");
		$query = "SELECT word_id FROM words WHERE word='$_GET[word]'";
		$result = $mysqli->query($query);
		if($result) {
			$dataArray = $result->fetch_assoc();
			$key= $dataArray['word_id'];
			
			$query = "INSERT INTO recordings (when, word_id, filename) VALUES (NOW(), $key, $fileName)";
			$result = $mysqli->query($query);
		}
		
		$mysqli = new mysqli("$DBHOST","$DBUSER","$DBPASS","$DBBASE");
		$query = "SELECT word_id FROM words WHERE word='$_GET[word]'";
		$result = $mysqli->query($query);
		if($result) {
			$dataArray = $result->fetch_assoc();
			$key= $dataArray['word_id'];			
			$query = "UPDATE words SET last=NOW() WHERE word_id='$key'";
			$result = $mysqli->query($query);
		}
		$mysqli->close;
	}
	
	//
	// GET WORD
	//
	$WORD = "";	
	$mysqli = new mysqli("$DBHOST","$DBUSER","$DBPASS","$DBBASE");
	$query = "
		SELECT * FROM (
			SELECT * from words
			ORDER BY last ASC
			LIMIT 5
		) as options
		ORDER BY RAND()
		LIMIT 1
	";
	$result = $mysqli->query($query);
	if($result) {
		$dataArray = $result->fetch_assoc();
		$WORD = $dataArray['word'];			
	}
	$mysqli->close;		
	
?>
<? echo '<?xml version="1.0" encoding="UTF-8"?>' ?>

<Response>
	<? if($SAYINTRO) { ?>
	<Say>Thank you for calling. Repeat the words you hear. Hang up when you are done.</Say>
	<? } ?>
	<Say><?=$WORD?></Say>
	<Record action="<?=$_SERVER["SCRIPT_URI"]?>?word=<?=$WORD?>" method="POST" maxLength="10" recordingStatusCallback="http://coldshadow.com/twilio/poi/saverecording.php?word=<?=$WORD?>" timeout="3" />
</Response>
