<?php
// POST'tan gelen HTML ve PDF adı
$html      = $_POST['html'] ?? '';
$filename  = $_POST['filename'] ?? 'teklif.pdf';

// Kullanıcı .pdf yazmadıysa eklensin (PHP 5.6/7 uyumlu)
if (substr(strtolower($filename), -4) !== ".pdf") {
    $filename .= ".pdf";
}

// LOGO BASE64 DÖNÜŞTÜRME
$logoPath = __DIR__ . "/logo.png";

if (file_exists($logoPath)) {
    $logoBase64 = base64_encode(file_get_contents($logoPath));
    $logoUri = "data:image/png;base64," . $logoBase64;

    $html = str_replace('src="/logo.png"', 'src="' . $logoUri . '"', $html);
} else {
    die("Logo bulunamadı: $logoPath");
}


// ====================================================================
// =  PDF ÜRETİMİ (API2PDF)
// ====================================================================
$apiKey = "1d4814f7-2b49-46bd-aeaa-a6540706269b";
$url = "https://v2018.api2pdf.com/chrome/html";

$payload = [
    "html" => $html,
    "inlinePdf" => false,
    "fileName" => $filename
];

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Content-Type: application/json",
    "Authorization: $apiKey"
]);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = json_decode(curl_exec($ch), true);

if (!isset($response["pdf"])) {
    die("API2PDF Hatası: " . print_r($response, true));
}

$pdfUrl = $response["pdf"];


// ====================================================================
// =  PDF'i SUNUCUYA KAYDETME
// ====================================================================

// 1) Kayıt yolu (kullanıcının verdiği isim)
$kayitYolu = __DIR__ . "/teklifler/" . $filename;

// 2) Klasör yoksa oluştur
if (!is_dir(__DIR__ . "/teklifler")) {
    mkdir(__DIR__ . "/teklifler", 0777, true);
}

// 3) PDF’i URL’den indir → diske yaz
$pdfIcerik = file_get_contents($pdfUrl);

if (!$pdfIcerik) {
    die("PDF indirilemedi: " . $pdfUrl);
}

$kayitDurumu = file_put_contents($kayitYolu, $pdfIcerik);

if (!$kayitDurumu) {
    die("PDF kaydedilemedi: " . $kayitYolu);
}


// ====================================================================
// =  FRONTEND'E PDF'i DÖNDÜR (inline göster)
// ====================================================================
header("Content-Type: application/pdf");
header("Content-Disposition: inline; filename=\"$filename\"");
echo $pdfIcerik;
exit;
