Commit 45e8f99e authored by Yassine Doghri's avatar Yassine Doghri
Browse files

fix(migrations): ignore invalid utf8 chars for media files metadata + update transcript parser

check that transcript parser constants are defined before declaring them
parent d807ab97
Loading
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -88,7 +88,7 @@ class BaseMedia extends Entity

        $this->attributes['type'] = $this->type;
        $this->attributes['file_mimetype'] = $file->getMimeType();
        $this->attributes['file_metadata'] = json_encode(lstat((string) $file));
        $this->attributes['file_metadata'] = json_encode(lstat((string) $file), JSON_INVALID_UTF8_IGNORE);
        $this->attributes['file_path'] = save_media(
            $file,
            $this->attributes['file_directory'],
+1 −1
Original line number Diff line number Diff line
@@ -61,7 +61,7 @@ class Image extends BaseMedia
            ];
        }

        $this->attributes['file_metadata'] = json_encode($metadata);
        $this->attributes['file_metadata'] = json_encode($metadata, JSON_INVALID_UTF8_IGNORE);

        $this->initFileProperties();
        $this->saveSizes();
+1 −1
Original line number Diff line number Diff line
@@ -58,7 +58,7 @@ class Transcript extends BaseMedia
            $metadata['json_path'] = $jsonFilePath;
        }

        $this->attributes['file_metadata'] = json_encode($metadata);
        $this->attributes['file_metadata'] = json_encode($metadata, JSON_INVALID_UTF8_IGNORE);

        return $this;
    }
+15 −4
Original line number Diff line number Diff line
@@ -30,10 +30,21 @@ class TranscriptParser
     */
    public function parseSrt(): string | false
    {
        if (! defined('SRT_STATE_SUBNUMBER')) {
            define('SRT_STATE_SUBNUMBER', 0);
        }

        if (! defined('SRT_STATE_TIME')) {
            define('SRT_STATE_TIME', 1);
        }

        if (! defined('SRT_STATE_TEXT')) {
            define('SRT_STATE_TEXT', 2);
        }

        if (! defined('SRT_STATE_BLANK')) {
            define('SRT_STATE_BLANK', 3);
        }

        $subs = [];
        $state = SRT_STATE_SUBNUMBER;