Pith - miter
miter/back/miter/miter.php [2.0 kb]
Modified: 17:48:40 114 026 (11 Jul 026)
14 Days Ago
<?php
declare(strict_types=1);
session_start();

if (empty($_SESSION['miter'])) {
    header('Location: ../../index.php');
    exit;
}

require_once __DIR__ . '/../admin/otc.php';

if (!isset($o_file_date) || empty($o_file_date)) {
    error_log('miter.php: Critical failure - otc.php did not provide $o_file_date.');
    http_response_code(500);
    exit('Critical System Error: Timestamp generation failed.');
}

$img_path = '';

if (!empty($_FILES['upload']['name']) && $_FILES['upload']['error'] === UPLOAD_ERR_OK) {
    $tmp_name = $_FILES['upload']['tmp_name'];
    $finfo = new finfo(FILEINFO_MIME_TYPE);
    $mime_type = $finfo->file($tmp_name);
    
    $allowed_mimes = [
        'image/jpeg' => 'jpg',
        'image/png'  => 'png',
        'image/gif'  => 'gif',
        'image/webp' => 'webp',
        'image/avif' => 'avif'
    ];

    if (array_key_exists($mime_type, $allowed_mimes)) {
        $safe_filename = uniqid('img_', true) . '.' . $allowed_mimes[$mime_type];
        $upload_dest = __DIR__ . '/../../images/' . $safe_filename;

        if (move_uploaded_file($tmp_name, $upload_dest)) {
            $img_path = $safe_filename;
        }
    }
}

$g_date = date('Y-m-d H:i:s');
$raw_miter = $_POST['miter'] ?? '';
$miter_post = str_replace(["\r\n", "\r", "\n"], '<br>', trim($raw_miter));

$safe_file_id = basename((string)$o_file_date);
$miter_file = __DIR__ . '/../../miters/' . $safe_file_id . '.txt';

$miter_data_array = [
    $miter_post,
    trim($_POST['url'] ?? ''),
    $img_path,
    '', // unused
    $o_date ?? $g_date,
    $g_date,
    $g_date
];

if (empty($miter_post)) {
    http_response_code(400);
    exit('Error: Miter content cannot be empty.');
}

if (file_put_contents($miter_file, implode("\n", $miter_data_array), LOCK_EX) === false) {
    error_log('miter.php: Atomic write failed for ' . $miter_file);
    http_response_code(500);
    exit('Write failure.');
}

header('Location: ../../index.php', true, 303);
exit;
?>
Updates
Wedge - Android 126.026
Wedge - Linux 124.026
Shim - Android 117.026
Miter - 114.026
Kerf - Android 112.026
Dev
TVShow (227) 'CSA'
TVShow (228) 'APT'
TVProgram (83) 'BXT'
Miter Update(s)
Peen (Messaging)

Menu
Calendar
Project Tin (024/029)
Miter
RSS Feed
User Avatar
@vgmlr
=SUM(parts)