|
|
@@ -3,6 +3,9 @@ set_time_limit(0);
|
|
|
require '../../vendor/autoload.php';
|
|
|
$GLOBALS["videoExt"] = array('mp4', 'avi');
|
|
|
$GLOBALS["pdfExt"] = array('doc', 'docx', 'ppt', 'pptx', 'pdf');
|
|
|
+$isAJAX = false;
|
|
|
+$GLOBALS["output"] = "";
|
|
|
+$GLOBALS["ajax"] = [];
|
|
|
|
|
|
use NcJoes\OfficeConverter\OfficeConverter;
|
|
|
use Streaming\Representation;
|
|
|
@@ -15,9 +18,22 @@ $ffmpeg = Streaming\FFMpeg::create([
|
|
|
|
|
|
$GLOBALS["ffmpeg"] = $ffmpeg;
|
|
|
|
|
|
-$root = '../../assets';
|
|
|
-$folder = 'API';
|
|
|
+$root = '../../assets/API/Universal';
|
|
|
+//$root = '../../上傳測試/Revit';
|
|
|
+$folder = 'Revit/托放元件';
|
|
|
+
|
|
|
+if (isset($_POST["APIName"])) {
|
|
|
+ $folder = $APIName;
|
|
|
+ $root .= ('/'.$_POST['software']);
|
|
|
+ $isAJAX = true;
|
|
|
+}
|
|
|
FindPath($root, $folder, $ffmpeg);
|
|
|
+if (!$isAJAX) {
|
|
|
+ echo ($GLOBALS["output"]);
|
|
|
+}else{
|
|
|
+ echo (implode(",",$GLOBALS["ajax"]));
|
|
|
+}
|
|
|
+
|
|
|
|
|
|
function ConvertVideo($file_path, $ffmpeg)
|
|
|
{
|
|
|
@@ -33,10 +49,12 @@ function ConvertVideo($file_path, $ffmpeg)
|
|
|
->x264()
|
|
|
->setHlsTime(300)
|
|
|
->addRepresentations([$r_1080p])
|
|
|
- ->save("../." . $dir_name . '/' . $file_name . ".m3u8");
|
|
|
- echo "<span style='color:red;'>";
|
|
|
- echo " " . $ext . " ==> m3u8";
|
|
|
- echo "</span>";
|
|
|
+ ->save("../." . $dir_name . '/' . $file_name . ".m3u8");
|
|
|
+
|
|
|
+ $GLOBALS["output"] .= "<span style='color:red;'>";
|
|
|
+ $GLOBALS["output"] .= " " . $ext . " ==> m3u8";
|
|
|
+ $GLOBALS["output"] .= "</span>";
|
|
|
+ array_push($GLOBALS["ajax"],$file_name);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -48,9 +66,9 @@ function ConvertPdf($file_path)
|
|
|
if (!file_exists("../." . $dir_name . '/' . $file_name . ".pdf")) {
|
|
|
$converter = new OfficeConverter("../." . $file_path, "./", "soffice.bin ", false);
|
|
|
$converter->convertTo("../." . $dir_name . '/' . $file_name . ".pdf");
|
|
|
- echo "<span style='color:red;'>";
|
|
|
- echo " " . $ext . " ==> pdf";
|
|
|
- echo "</span>";
|
|
|
+ $GLOBALS["output"] .= "<span style='color:red;'>";
|
|
|
+ $GLOBALS["output"] .= " " . $ext . " ==> pdf";
|
|
|
+ $GLOBALS["output"] .= "</span>";
|
|
|
}
|
|
|
if (!file_exists("../." . $dir_name . '/' . $file_name . ".jpg")) {
|
|
|
$root = $_SERVER['DOCUMENT_ROOT'] . '/BIM-Monitor' . substr($dir_name, 1) . '/' . $file_name;
|
|
|
@@ -61,9 +79,9 @@ function ConvertPdf($file_path)
|
|
|
$im->writeImage($root . '.jpg');
|
|
|
$im->clear();
|
|
|
$im->destroy();
|
|
|
- echo "<span style='color:red;'>";
|
|
|
- echo " pdf ==> jpg";
|
|
|
- echo "</span>";
|
|
|
+ $GLOBALS["output"] .= "<span style='color:red;'>";
|
|
|
+ $GLOBALS["output"] .= " pdf ==> jpg";
|
|
|
+ $GLOBALS["output"] .= "</span>";
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -73,14 +91,14 @@ function FindPath($root, $folder, $ffmpeg)
|
|
|
$rootPath = $root . '/' . $folder;
|
|
|
$paths = array_diff(scandir($root . '/' . $folder), array('.', '..', 'Thumbs.db'));
|
|
|
natsort($paths);
|
|
|
- echo ("<ul>");
|
|
|
+ $GLOBALS["output"] .= ("<ul>");
|
|
|
foreach ($paths as $path) {
|
|
|
if (str_contains($path, '.')) {
|
|
|
- echo ("<li data-jstree='{ " . '"type" : "file"' . " }' >");
|
|
|
+ $GLOBALS["output"] .= ("<li data-jstree='{ " . '"type" : "file"' . " }' >");
|
|
|
$title = explode(".", $path)[0];
|
|
|
$file_path = substr($rootPath, 4) . "/" . $path;
|
|
|
$path = "title:" . $title . "path:" . $file_path . " dir_id:" . $folder;
|
|
|
- echo ($path);
|
|
|
+ $GLOBALS["output"] .= ($path);
|
|
|
|
|
|
$ext = pathinfo($file_path, PATHINFO_EXTENSION);
|
|
|
if (in_array($ext, $GLOBALS["videoExt"])) {
|
|
|
@@ -88,13 +106,13 @@ function FindPath($root, $folder, $ffmpeg)
|
|
|
} else if (in_array($ext, $GLOBALS["pdfExt"])) {
|
|
|
//ConvertPdf($file_path);
|
|
|
}
|
|
|
- echo ("</li>");
|
|
|
+ $GLOBALS["output"] .= ("</li>");
|
|
|
} else {
|
|
|
- echo ("<li>");
|
|
|
- echo ("dir_name: " . $path . "parent: " . $folder);
|
|
|
+ $GLOBALS["output"] .= ("<li>");
|
|
|
+ $GLOBALS["output"] .= ("dir_name: " . $path . "parent: " . $folder);
|
|
|
FindPath($rootPath, $path, $ffmpeg);
|
|
|
- echo ("</li>");
|
|
|
+ $GLOBALS["output"] .= ("</li>");
|
|
|
}
|
|
|
}
|
|
|
- echo ("</ul>");
|
|
|
+ $GLOBALS["output"] .= ("</ul>");
|
|
|
}
|