44 Commits

Author SHA1 Message Date
Alcea 1219bebb22 Add files via upload
Tool to compare json mp4 vs list from any remote you desire to find missings on remote
2026-04-05 19:46:06 +02:00
Alcea 5579ae33df Add files via upload 2026-01-09 17:11:07 +01:00
Alcea 1d93f0cc67 Add files via upload
js clientside solution so you could theoretically use the archivesuite on a static website (need to upload video with {videoid}.mp4 prior to using it
2026-01-01 13:11:08 +01:00
Alcea ae2968461b Add files via upload 2025-09-27 19:00:03 +02:00
Alcea 8e9f8ae4b6 Add files via upload 2025-08-31 12:11:27 +02:00
Alcea 5341924972 Add files via upload
Add duplicate protection to backup.php
2025-08-31 11:59:38 +02:00
Alcea 720c91b052 Add files via upload
Add duplicate protection to backup.php
2025-08-31 11:53:33 +02:00
Alcea dea427c8d4 Add files via upload
Link support to stream from router via
--streamtplink.php--
<?php

if (!isset($_GET['path'])) {
    http_response_code(400);
    echo "Missing 'path' parameter.";
    exit;
}

$relativePath = ltrim($_GET['path'], '/');

// Validate file extension
if (strtolower(pathinfo($relativePath, PATHINFO_EXTENSION)) !== 'mp4') {
    http_response_code(403);
    echo "Only .mp4 files are allowed.";
    exit;
}

$ftpHost = '192.168.0.1';
$ftpPort = 21;
$ftpUser = 'anonymous';
$ftpPass = ''; // Typically anonymous password can be blank or email

// Connect to FTP
$conn = ftp_connect($ftpHost, $ftpPort, 10);
if (!$conn || !ftp_login($conn, $ftpUser, $ftpPass)) {
    http_response_code(500);
    echo "FTP connection failed.";
    exit;
}

// Get file size
$size = ftp_size($conn, $relativePath);
if ($size === -1) {
    ftp_close($conn);
    http_response_code(404);
    echo "File not found on FTP server.";
    exit;
}

$start = 0;
$end = $size - 1;
$length = $size;

if (isset($_SERVER['HTTP_RANGE']) &&
    preg_match('/bytes=(\d+)-(\d*)/', $_SERVER['HTTP_RANGE'], $matches)) {
    
    $start = intval($matches[1]);
    $end = ($matches[2] !== '') ? intval($matches[2]) : $end;

    if ($start > $end || $start >= $size) {
        ftp_close($conn);
        http_response_code(416);
        header("Content-Range: bytes */$size");
        exit;
    }

    $length = $end - $start + 1;
    http_response_code(206);
    header("Content-Range: bytes $start-$end/$size");
} else {
    http_response_code(200);
}

// Set headers
$filename = basename($relativePath);
header("Content-Type: video/mp4");
header("Content-Length: $length");
header("Accept-Ranges: bytes");
header("Content-Disposition: inline; filename=\"$filename\"");

// Open a temp stream
$tempHandle = fopen('php://temp', 'r+');

if (!ftp_fget($conn, $tempHandle, $relativePath, FTP_BINARY, 0)) {
    ftp_close($conn);
    http_response_code(500);
    echo "Failed to download file from FTP.";
    exit;
}
ftp_close($conn);

// Seek to the range offset
rewind($tempHandle);
if ($start > 0) {
    fseek($tempHandle, $start);
}

// Stream the requested range
$remaining = $length;
while (!feof($tempHandle) && $remaining > 0) {
    $chunkSize = min(8192, $remaining);
    $data = fread($tempHandle, $chunkSize);
    echo $data;
    flush();
    $remaining -= strlen($data);
}

fclose($tempHandle);
2025-08-23 01:55:16 +02:00
Alcea a31af3f34e Add files via upload 2025-08-22 19:01:09 +02:00
Alcea 79b101a9c3 Add files via upload
Total json parser rewrite
2025-08-09 08:25:39 +02:00
Alcea a8fc5cbd26 Add files via upload
Json debug suite
2025-08-07 21:55:31 +02:00
Alcea 7a8db252df Add files via upload
More robust parsing to catch
       "waybackurl": "https:\/\/web.archive.org\/web\/20250622154401\/https:\/\/alcea-wisteria.de\/ytarchive\/fin\/IwgICbILJ9o.mp4 "

(Which will break full video count)
2025-08-07 04:42:45 +02:00
Alcea a51a817b3a Add files via upload
More robust parsing to catch
       "waybackurl": "https:\/\/web.archive.org\/web\/20250622154401\/https:\/\/alcea-wisteria.de\/ytarchive\/fin\/IwgICbILJ9o.mp4 "

(Which will break full video count)
2025-08-07 04:16:09 +02:00
Alcea cfa5d23145 Add files via upload
Finally fixed issues with trailing json entries not showing up
2025-08-06 20:46:05 +02:00
Alcea 2d137f563e Add files via upload 2025-07-28 12:33:20 +02:00
Alcea 9ab1d43933 Add files via upload 2025-07-06 15:37:35 +02:00
Alcea b698f59ddf Add files via upload 2025-07-01 10:59:34 +02:00
Alcea a4050538ed Add files via upload 2025-07-01 10:31:14 +02:00
Alcea 954fca8e7a Add files via upload 2025-06-30 06:08:12 +02:00
Alcea eda1d346ad Add files via upload 2025-06-30 06:03:14 +02:00
alceawisteria 7d0e817063 Upload files to "/"
Increase upload Mem limit to over 128M
2025-06-29 17:18:06 +02:00
alceawisteria 21db7fd951 Upload files to "/" 2025-06-28 14:45:55 +02:00
alceawisteria fa1bbae9db Upload files to "/" 2025-06-27 18:48:48 +02:00
alceawisteria 85a4afa1cf Update index.html 2025-06-26 22:44:43 +02:00
alceawisteria c5da510d73 Upload files to "/" 2025-06-26 22:11:04 +02:00
alceawisteria cccd8f6413 Upload files to "/"
Preservetube addition
2025-06-25 22:50:18 +02:00
alceawisteria 538ca68b69 Upload files to "/" 2025-06-25 21:40:08 +02:00
alceawisteria 898bbc158b Update index.html 2025-06-25 17:09:29 +02:00
alceawisteria 6795698a1a Update backup.php 2025-06-24 21:39:19 +02:00
alceawisteria 27a3ebb7e7 Upload files to "/" 2025-06-24 21:24:37 +02:00
alceawisteria dd494b96b5 Upload files to "/"
Vidcompare added to check mp4 on server against json
2025-06-24 19:51:29 +02:00
alceawisteria e7ab7d5d8a Upload files to "/"
Added yturl extraction logic for filename in backup.php
2025-06-22 22:28:28 +02:00
alceawisteria 8c55349763 Upload files to "/" 2025-06-22 18:03:19 +02:00
alceawisteria 31ed541475 Upload files to "/"
Added youtube link to replace archive version with online one (if exists)
2025-06-22 17:16:24 +02:00
alceawisteria df8e222779 Upload files to "/"
Online check manual.
Takes too long otherwise
2025-06-22 16:29:40 +02:00
alceawisteria ac1d849b71 Upload files to "/"
Added realtimesearch to searchbar
2025-06-22 16:04:08 +02:00
alceawisteria b7251d51aa Upload files to "/" 2025-06-22 15:48:05 +02:00
alceawisteria 211a0fc0c4 Upload files to "/" 2025-06-22 15:14:53 +02:00
alceawisteria 33b3577b13 Upload files to "/"
Show number of archived videos in Searchbar
Wayback fixer php for nont-yet-timeststamp ed links
2025-06-22 14:39:28 +02:00
alceawisteria a694d8fd2f Upload files to "/" 2025-06-22 13:06:39 +02:00
alceawisteria 8e7eaad356 Upload files to "/"
Better offline handling
2025-06-22 12:13:29 +02:00
alceawisteria 3560e7fa8e Upload files to "/" 2025-06-22 10:22:56 +02:00
alceawisteria e6c9184c33 Upload files to "/" 2025-06-22 10:18:54 +02:00
alceawisteria c5ba30a087 Upload files to "/" 2025-06-22 10:14:49 +02:00