$main_smarty->assign('pagename', pagename);
//define upload direction
//$upload_dir =get_misc_data('raw_data_directory');
// determine which step of the submit process we are on
if (isset($_POST["phase"]) && is_numeric($_POST["phase"])) {
    $phase = $_POST["phase"];
} else {
    if (isset($_GET["phase"]) && is_numeric($_GET["phase"])) {
        $phase = $_GET["phase"];
    } else {
        $phase = 0;
    }
}
switch ($phase) {
    case 0:
        upload_0();
        break;
    case 1:
        upload_1();
        break;
    case 2:
        upload_2();
        break;
}
function upload_0()
{
    global $main_smarty, $the_template;
    //show the template
    $main_smarty->assign('tpl_center', $the_template . '/upload_file');
    $main_smarty->display($the_template . '/pligg.tpl');
}
// When mime type is application/octet-stream, parse input stream to get params.
$params = array();
parse_raw_http_request($params);
if (count($params) == 0) {
    // Params are from $_POST.
    $params = $_POST;
}
$sid = $params['sid'];
$uploadTimestamp = $params['uploadTimestamp'];
$fileType = $params['fileType'];
//TODO FIXME: once appeding of files is resolved uncomment here;
$excelFileMode = "join";
//$params['excelFileMode'];
$dbType = $params['dbType'];
$logger->info($_FILES);
upload_0($sid, $uploadTimestamp, $fileType, $excelFileMode, $dbType);
function upload_0($sid, $uploadTimestamp, $fileType, $excelFileMode, $dbType)
{
    $_SESSION["excelFileMode_{$sid}"] = $excelFileMode;
    // check file type
    $explodeRes = explode(".", $_FILES["upload_file"]["name"]);
    $extension = end($explodeRes);
    $mimes = array('xls', 'xlsx', 'csv', 'sql', 'zip');
    if (count($_FILES) <= 0) {
        $error = "ERROR: No file was uploaded.";
        $_SESSION["upload_file_{$sid}"]['error'] = $error;
    } else {
        if (!in_array($extension, $mimes)) {
            $error = "ERROR: please upload excel, csv, sql, or zip file.";
            $_SESSION["upload_file_{$sid}"]['error'] = $error;
        } else {