Your IP : 216.73.217.79


Current Path : /var/www/cesa.co.za/contracts/
Upload File :
Current File : /var/www/cesa.co.za/contracts/final.php

<?php

//ini_set('display_errors', 1);
//error_reporting(E_ALL);

include_once($_SERVER['DOCUMENT_ROOT'] . "/php/inc_db.php");

if (!isset($ContractPurchaseID))
    $ContractPurchaseID = intval($_GET["id"]);

require_once('fpdf184/fpdf.php');
require_once('FPDI-2.3.6/src/autoload.php');

$pdf = new setasign\Fpdi\Fpdi('P', 'mm', 'A4');

$sql = "SELECT ContractPurchases.*, ContractTypes.PDFTemplate "
        . "FROM ContractPurchases join ContractTypes on (ContractPurchases.ContractType=ContractTypes.ContractTypeID) "
        . "WHERE ContractPurchaseID=" . $ContractPurchaseID;

$rec = mysqli_query($conni, $sql);
$sFilename = "";
if ($rec && $row = mysqli_fetch_assoc($rec)) {

//    echo '<br />' . $_SERVER['DOCUMENT_ROOT'] . '/contracts/c0ntr4ct5/' . $row["PDFTemplate"] . '<br />';
//    exit;

    $pagecount = $pdf->setSourceFile($_SERVER['DOCUMENT_ROOT'] . '/contracts/c0ntr4ct5/' . $row["PDFTemplate"]);

//    echo '<br />about to loop!';
//    exit;
    for ($i = 1; $i <= $pagecount; $i++) {
        $tplidx = $pdf->importPage($i, '/MediaBox');
        $pdf->AddPage();
        $pdf->SetMargins(255, 255, 255);
        $pdf->useTemplate($tplidx, 0, 0, 215);
        $pdf->SetTextColor(153, 153, 153);

        $pdf->SetTextColor(0, 0, 0);
        $sql = "SELECT ContractData.DataValue, ContractFields.* FROM ContractPurchases, ContractFields, ContractData
		WHERE ContractPurchases.ContractPurchaseID=" . $row["ContractPurchaseID"] . "
		AND ContractPurchases.ContractPurchaseID=ContractData.ContractPurchaseID
		AND ContractPurchases.ContractType=ContractFields.ContractTypeID
		AND ContractData.DataField=ContractFields.DataField
		AND ContractFields.PageNum=" . $i;
        $recD = mysqli_query($conni, $sql);
        while ($rowD = mysqli_fetch_assoc($recD)) {

//            var_dump(array_keys($rowD));
//            echo '<br />' . $rowD['ContractTypeID'] . ' - ' . $rowD['DataField'];
            if ($rowD['ContractTypeID'] == 9 && $rowD["DataField"] == 'Field18' && isset($rowD["DataValue"]) && strlen($rowD["DataValue"]) > 0) {

//                echo $rowD["DataValue"] . '<br />';

                $image = imagecreatefromstring(base64_decode($rowD["DataValue"]));
                $imgSize = getimagesizefromstring(base64_decode($rowD["DataValue"]));
                $extArr = explode('/', $imgSize['mime']);
//                var_dump($extArr[1]);
//                exit;
                $fileName = sys_get_temp_dir() . '/contract-' . $rowD['ContractTypeID'] . '.' . $extArr[1];

                file_put_contents($fileName, base64_decode($rowD["DataValue"]));
//                echo $fileName . '<br />';
//                exit;
//                $pdf->Image($fileName, $rowD["PosX"], $rowD["PosY"]);
                $pdf->Image($fileName, 130, 100);
            } else {

                if ($rowD['ContractTypeID'] == 7 && $rowD["DataField"] == 'Field20') {
                    $value = str_replace(" ", "\n", str_replace("  ", " ", str_replace("  ", " ", $rowD["DataValue"])));
                    // $value = $rowD["DataField"] . ': ' . $value;
                } else {
                    $value = str_replace("\r\n", "\n", $rowD["DataValue"]);
                    // $value = $rowD["DataField"] . ': ' . $value;
                }
                
                $pdf->SetFont('Arial', '', $rowD["FontSize"]);
                $pdf->SetXY($rowD["PosX"], $rowD["PosY"]);
                $pdf->MultiCell($rowD["CellWidth"], 4, $value);
            }
        } //while
    } //for
    $sFilename = $ContractPurchaseID . '_final_' . $row["PDFTemplate"];
    $pdf->Output($_SERVER['DOCUMENT_ROOT'] . '/contracts/c0ntr4ct5/' . $sFilename, 'F');

    $sOutputFile = '"' . $_SERVER['DOCUMENT_ROOT'] . '/contracts/c0ntr4ct5/' . 'sec_' . $sFilename . '"';
    $sFilelist = ' "' . $_SERVER['DOCUMENT_ROOT'] . '/contracts/c0ntr4ct5/' . $sFilename . '"';

//    echo '<br />about to execute!';
//    exit;

    exec('gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOwnerPassword=C354 -dKeyLength=128 -dEncryptionR=3 -dPermissions=-1852 -sOutputFile=' . $sOutputFile . $sFilelist);

    unlink($_SERVER['DOCUMENT_ROOT'] . '/contracts/c0ntr4ct5/' . $sFilename);

    $sFilename = 'sec_' . $ContractPurchaseID . '_final_' . $row["PDFTemplate"];

    $sFullName = $row["FullName"];
    $sEmail = $row["EmailAddress"];
    mysqli_query($conni, "UPDATE ContractPurchases SET FinalFile='" . $sFilename . "' WHERE ContractPurchaseID=" . $ContractPurchaseID);
}