<?php
   require("../../../../config/site.php");

//20191112 - use file type instead of getting mime_content_type, causes issues on LIVE - Rachel

   //print_r($_FILES);

	//ini_set('display_errors', '1');
	$type = $_REQUEST['type'];
   $strFileCategory = $_REQUEST["strFileCategory"];

	switch($type)
	{
      case "jsUploadFile":
         $strOutput = jsUploadFile($_FILES, $strFileCategory);
         echo $strOutput;
         die;
      break;

   	// case "jsUploadBankDetailFile":
    //   	$strOutput = jsUploadFile("tblDocumentBank", $_FILES, $_REQUEST);
    //   	echo $strOutput;
    //   	die;
   	// break;

    //   case "jsUploadCopyPassportFile":
    //      $strOutput = jsUploadFile("tblDocumentPassport", $_FILES, $_REQUEST);
    //      echo $strOutput;
    //      die;
    //   break;

    //   case "jsResidentialAddressFile":
    //      $strOutput = jsUploadFile("tblDocumentResidentialAddress", $_FILES, $_REQUEST);
    //      echo $strOutput;
    //      die;
    //   break;
	}
   function jsUploadFile($file, $strFileCategory)
   {
      global $DBH;

      $name = $file["file"]["name"];
      //20191112 - use file type instead of getting mime_content_type, causes issues on LIVE - Rachel
      // $mimetype = mime_content_type($file["file"]['tmp_name']);
      $mimetype = $file["file"]['type'];   
      $strLastUser = $_SESSION["CLIENT"]->FIRST_NAME." ".$_SESSION["CLIENT"]->SURNAME;
      $image = $file["file"]["tmp_name"];
      $image = base64_encode(file_get_contents(addslashes($image)));
      //20191022 - Add file type validation - Rachel
      $arrType = array("application/pdf","image/jpeg", "image/png", "image/tiff");

      if(!in_array($mimetype, $arrType)){
        return " Please upload pdf/tiffs/jpeg or png files";
      }


      $pdo = $DBH->query("SELECT * FROM tblDocuments WHERE strFileCategory LIKE '$strFileCategory' AND refRegistrationID = ".$_SESSION["CLIENT"]->USER_ID);
      $pdo->execute();
      $rst = $pdo->fetch();

      if($rst == null)
      {
         $pdo = $DBH->prepare("INSERT INTO tblDocuments 
            (
                  refRegistrationID
               ,  strMimeType
               ,  strFileName
               ,  strFileCategory
               ,  binFile
               ,  strLastUser
            ) VALUES 
            (
                  :refRegistrationID
               ,  :strMimeType
               ,  :strFileName
               ,  :strFileCategory
               ,  :binFile
               ,  :strLastUser
            )
         ");
         $pdo->execute(array(
               ":refRegistrationID" => $_SESSION["CLIENT"]->USER_ID
            ,  ":strMimeType" => $mimetype
            ,  ":strFileName" => $name
            ,  ":strFileCategory" => $strFileCategory
            ,  ":binFile" => $image
            ,  ":strLastUser" => $strLastUser
         ));
         
      }else{
         $DocumentID = $rst["DocumentID"];
         $pdo = $DBH->prepare("UPDATE tblDocuments SET strMimeType=? ,  strFileName=? ,  binFile=? ,  strLastUser=? WHERE DocumentID=? "); 
         $pdo->execute([$mimetype, $name, $image, $strLastUser , $DocumentID]);
      }
      return "Document uploaded";
   }

   // function jsUploadFile($table, $file, $request)
   // {
   //    global $DBH;

   //    $name = $file["file"]["name"];
   //    $mimetype = mime_content_type($file["file"]['tmp_name']);
   //    $strLastUser = $_SESSION["CLIENT"]->FIRST_NAME." ".$_SESSION["CLIENT"]->SURNAME;
   //    $image = $file["file"]["tmp_name"];
   //    $image = base64_encode(file_get_contents(addslashes($image)));

   //    $pdo = $DBH->query("SELECT * FROM $table WHERE refRegistrationID = ".$_SESSION["CLIENT"]->USER_ID);
   //    $pdo->execute();
   //    $rst = $pdo->fetch();

   //    if($rst == null)
   //    {
   //       $pdo = $DBH->prepare("INSERT INTO $table 
   //          (
   //                refRegistrationID
   //             ,  strMimeType
   //             ,  strFileName
   //             ,  binFile
   //             ,  strLastUser
   //          ) VALUES 
   //          (
   //                :refRegistrationID
   //             ,  :strMimeType
   //             ,  :strFileName
   //             ,  :binFile
   //             ,  :strLastUser
   //          )
   //       ");
   //       $pdo->execute(array(
   //             ":refRegistrationID" => $_SESSION["CLIENT"]->USER_ID
   //          ,  ":strMimeType" => $mimetype
   //          ,  ":strFileName" => $name
   //          ,  ":binFile" => $image
   //          ,  ":strLastUser" => $strLastUser
   //       ));
         
   //    }else{
   //       $DocumentID = $rst["DocumentID"];
   //       $pdo = $DBH->prepare("UPDATE $table SET strMimeType=? ,  strFileName=? ,  binFile=? ,  strLastUser=? WHERE DocumentID=? "); 
   //       $pdo->execute([$mimetype, $name, $image, $strLastUser , $DocumentID]);
   //    }
   // }
?>