]> _ Git - fluidbook-toolbox.git/commitdiff
wait #5770 @1
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Thu, 2 Mar 2023 16:47:37 +0000 (17:47 +0100)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Thu, 2 Mar 2023 16:47:37 +0000 (17:47 +0100)
app/Fluidbook/Links.php
app/Jobs/FluidbookDocumentUpload.php
app/Models/FluidbookDocument.php

index 0f76aa7e5de1d1900fddca2cca3ba6b350b0d60b..030a6d04101a0b5232a520b195c2d1843c3a68cc 100644 (file)
@@ -147,13 +147,14 @@ class Links
         if ($time === 'latest' && !file_exists($file)) {
             $versions = self::getLinksVersions($book_id);
             foreach ($versions as $version => $m) {
-                try {
-                    copy(Files::firstThatExists($dir . '/' . $version . '.links3.gz', $dir . '/' . $version . '.links.gz'), $dir . '/latest.links3.gz');
-                    copy(Files::firstThatExists($dir . '/' . $version . '.meta3.gz', $dir . '/' . $version . '.meta.gz'), $dir . '/latest.meta3.gz');
-                    break;
-                } catch (\Exception $e) {
-
+                $lf = Files::firstThatExists($dir . '/' . $version . '.links3.gz', $dir . '/' . $version . '.links.gz');
+                $mf = Files::firstThatExists($dir . '/' . $version . '.meta3.gz', $dir . '/' . $version . '.meta.gz');
+                if (!file_exists($lf) || !file_exists($mf)) {
+                    continue;
                 }
+                copy($lf, $dir . '/latest.links3.gz');
+                copy($mf, $dir . '/latest.meta3.gz');
+                break;
             }
         }
         if (!file_exists($file)) {
index e66790bdb5f33f1659eafd53c7c5bb867d8632e6..6fb7507ca867f2861299574ebf61db814511be81 100644 (file)
@@ -41,8 +41,9 @@ class FluidbookDocumentUpload extends Base
             FluidbookDocumentUpload::updateProgression($this->uploadID, $this->document->id, __('Début du traitement du document'), 1.25);
             $this->document->processUpload($this->uploadID, $sync);
             Links::addLinksFromPDF($this->fluidbook_id);
-        } catch (\Exception $e) {
+        } catch (\Throwable $e) {
             error_log($e);
+            FluidbookDocumentUpload::updateProgression($this->uploadID, $this->document->id, __('Une erreur s\'est produite :error', ['error' => $e->getMessage()]), -1);
         }
     }
 
index 6e6c724742662629cc81338bdada3ab3e113ab4f..ec9d0a375923856a461bacd6847fe11a04e63a12 100644 (file)
@@ -15,6 +15,7 @@ use Cubist\PDF\PDFTools;
 use Cubist\Util\Gzip;
 use Cubist\Util\Math;
 use Illuminate\Support\Facades\Cache;
+
 // __('!!Paramètres des fluidbooks')
 class FluidbookDocument extends ToolboxModel
 {
@@ -159,11 +160,11 @@ class FluidbookDocument extends ToolboxModel
     }
 
 
-
     public function checkInfos($force = false)
     {
         if ($force || null === $this->pdf_data) {
             $infos = $this->_getInfos();
+
             $this->pages = $infos->pages;
             $this->pdf_data = $infos->pdf_data;
             $this->bookmarks = $infos->bookmarks;
@@ -401,6 +402,8 @@ class FluidbookDocument extends ToolboxModel
 
     public function cutDocument($mode)
     {
+
+
         $fwstk = new FWSTK();
         $fwstk->setArg('--input ' . $this->getPDFSource('fixed'));
         $fwstk->setArg('--cut ' . $mode);
@@ -410,6 +413,7 @@ class FluidbookDocument extends ToolboxModel
 
     public function trimDocument()
     {
+
         $fwstk = new FWSTK();
         $fwstk->setArg('--input ' . $this->getPDFSource('fixed'));
         $fwstk->setArg('--trim');
@@ -419,8 +423,7 @@ class FluidbookDocument extends ToolboxModel
 
     public function lnCrop()
     {
-        $root = $this->path();
-        `cd $root;ln -s fixed.pdf crop.pdf`;
+        link($this->getPDFSource('crop'), $this->getPDFSource('fixed'));
     }
 
     protected function isCropped()
@@ -446,6 +449,7 @@ class FluidbookDocument extends ToolboxModel
         if ($this->autocrop == 'trim') {
             $this->trimDocument();
         }
+
         return false;
     }
 
@@ -501,22 +505,6 @@ class FluidbookDocument extends ToolboxModel
             }
         }
 
-        if ($first == $last && $last == $second) {
-            $ratio = $first[0] / $first[1];
-            $this->autocut = false;
-            if ($ratio <= 1) {
-                $this->manualcut = false;
-            } elseif ($ratio >= 6) {
-                $this->manualcut = 'L8';
-            } elseif ($ratio >= 3) {
-                $this->manualcut = 'L4';
-            } elseif ($ratio >= 2) {
-                $this->manualcut = 'L3';
-            } else {
-                $this->manualcut = '14-23';
-            }
-            return;
-        }
         $this->manualcut = false;
         if (self::compareSizes($last, $first) && Math::compare($first[0] * 2, $second[0], 0.9)) {
             $this->autocut = '1-23-4';