29 lines
1.1 KiB
PHP
29 lines
1.1 KiB
PHP
<?php
|
|
header("Content-Type: text/plain");
|
|
// Extract the big script from wevia.html and try to parse it
|
|
$wevia = @file_get_contents("/var/www/html/wevia.html");
|
|
// Find the main script starting around line 718
|
|
$pos = 0;
|
|
$scripts = [];
|
|
while (($start = strpos($wevia, "<script>", $pos)) !== false) {
|
|
$end = strpos($wevia, "</script>", $start);
|
|
if ($end === false) break;
|
|
$content = substr($wevia, $start + 8, $end - $start - 8);
|
|
if (strlen($content) > 5000) { // only big scripts
|
|
$line_start = substr_count(substr($wevia, 0, $start), "\n") + 1;
|
|
$scripts[] = ["start_line" => $line_start, "size" => strlen($content), "content" => $content];
|
|
}
|
|
$pos = $end + 9;
|
|
}
|
|
|
|
echo "Big scripts found: " . count($scripts) . "\n";
|
|
foreach ($scripts as $i => $s) {
|
|
$tmp = "/tmp/wevia-script-$i.js";
|
|
file_put_contents($tmp, $s["content"]);
|
|
echo "Script $i: line $s[start_line], $s[size]B → $tmp\n";
|
|
|
|
// Parse with node to find syntax errors
|
|
$parse_result = @shell_exec("node --check $tmp 2>&1");
|
|
echo " Parse: " . substr($parse_result, 0, 500) . "\n\n";
|
|
}
|