]> BookStack Code Mirror - bookstack/commitdiff
ZIP Exports: Reorganised files, added page md parsing
authorDan Brown <redacted>
Wed, 23 Oct 2024 09:48:26 +0000 (10:48 +0100)
committerDan Brown <redacted>
Wed, 23 Oct 2024 09:48:26 +0000 (10:48 +0100)
app/Exports/Controllers/PageExportController.php
app/Exports/ZipExports/Models/ZipExportAttachment.php [moved from app/Exports/ZipExportModels/ZipExportAttachment.php with 90% similarity]
app/Exports/ZipExports/Models/ZipExportImage.php [moved from app/Exports/ZipExportModels/ZipExportImage.php with 84% similarity]
app/Exports/ZipExports/Models/ZipExportModel.php [moved from app/Exports/ZipExportModels/ZipExportModel.php with 92% similarity]
app/Exports/ZipExports/Models/ZipExportPage.php [moved from app/Exports/ZipExportModels/ZipExportPage.php with 91% similarity]
app/Exports/ZipExports/Models/ZipExportTag.php [moved from app/Exports/ZipExportModels/ZipExportTag.php with 92% similarity]
app/Exports/ZipExports/ZipExportBuilder.php [moved from app/Exports/ZipExportBuilder.php with 94% similarity]
app/Exports/ZipExports/ZipExportFiles.php [moved from app/Exports/ZipExportFiles.php with 98% similarity]
app/Exports/ZipExports/ZipExportReferences.php [moved from app/Exports/ZipExportReferences.php with 83% similarity]
app/Exports/ZipExports/ZipReferenceParser.php [moved from app/Exports/ZipReferenceParser.php with 98% similarity]

index 01611fd2121db42c533b4b7058db88de2e0efead..34e67ffcf7075ede6b30a2842789ef8fa204c7f0 100644 (file)
@@ -6,7 +6,7 @@ use BookStack\Entities\Queries\PageQueries;
 use BookStack\Entities\Tools\PageContent;
 use BookStack\Exceptions\NotFoundException;
 use BookStack\Exports\ExportFormatter;
-use BookStack\Exports\ZipExportBuilder;
+use BookStack\Exports\ZipExports\ZipExportBuilder;
 use BookStack\Http\Controller;
 use Throwable;
 
similarity index 90%
rename from app/Exports/ZipExportModels/ZipExportAttachment.php
rename to app/Exports/ZipExports/Models/ZipExportAttachment.php
index d79a16cc10905f44fd1313e4338dbfabbfa832e6..8c89ae11f145bf03621d6e0316a2d5e8a785417f 100644 (file)
@@ -1,8 +1,8 @@
 <?php
 
-namespace BookStack\Exports\ZipExportModels;
+namespace BookStack\Exports\ZipExports\Models;
 
-use BookStack\Exports\ZipExportFiles;
+use BookStack\Exports\ZipExports\ZipExportFiles;
 use BookStack\Uploads\Attachment;
 
 class ZipExportAttachment extends ZipExportModel
similarity index 84%
rename from app/Exports/ZipExportModels/ZipExportImage.php
rename to app/Exports/ZipExports/Models/ZipExportImage.php
index 39f1d10129821d61ededab6fd6beab394e29bf78..05d828734a01f08254b9bed9d2b1f3aabbe00fb6 100644 (file)
@@ -1,8 +1,8 @@
 <?php
 
-namespace BookStack\Exports\ZipExportModels;
+namespace BookStack\Exports\ZipExports\Models;
 
-use BookStack\Exports\ZipExportFiles;
+use BookStack\Exports\ZipExports\ZipExportFiles;
 use BookStack\Uploads\Image;
 
 class ZipExportImage extends ZipExportModel
similarity index 92%
rename from app/Exports/ZipExportModels/ZipExportModel.php
rename to app/Exports/ZipExports/Models/ZipExportModel.php
index 26b994c018ef7e37e3f8f1bc7e0edc22c6b794a0..8d0c0a4370b4f6adc8bbcf6c1c4c16319e8d2557 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 
-namespace BookStack\Exports\ZipExportModels;
+namespace BookStack\Exports\ZipExports\Models;
 
 use JsonSerializable;
 
similarity index 91%
rename from app/Exports/ZipExportModels/ZipExportPage.php
rename to app/Exports/ZipExports/Models/ZipExportPage.php
index c7a9503546f5db33952c7f99ac2e3ae5d2238e15..bae46ca8225c96dd4b362f75d1961dd5ce19551d 100644 (file)
@@ -1,10 +1,10 @@
 <?php
 
-namespace BookStack\Exports\ZipExportModels;
+namespace BookStack\Exports\ZipExports\Models;
 
 use BookStack\Entities\Models\Page;
 use BookStack\Entities\Tools\PageContent;
-use BookStack\Exports\ZipExportFiles;
+use BookStack\Exports\ZipExports\ZipExportFiles;
 
 class ZipExportPage extends ZipExportModel
 {
similarity index 92%
rename from app/Exports/ZipExportModels/ZipExportTag.php
rename to app/Exports/ZipExports/Models/ZipExportTag.php
index 09ae9f06cbe8a23f1a370b0d45a51cba2b38c8d9..d4e3c4290b33007150482aa6ce96b58c8ce33bd1 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 
-namespace BookStack\Exports\ZipExportModels;
+namespace BookStack\Exports\ZipExports\Models;
 
 use BookStack\Activity\Models\Tag;
 
similarity index 94%
rename from app/Exports/ZipExportBuilder.php
rename to app/Exports/ZipExports/ZipExportBuilder.php
index 5c56e531b40a679720246ff70709d1bf0fe99be5..15edebea574fb344f3440e3e6cb6951fdab51b03 100644 (file)
@@ -1,10 +1,10 @@
 <?php
 
-namespace BookStack\Exports;
+namespace BookStack\Exports\ZipExports;
 
 use BookStack\Entities\Models\Page;
 use BookStack\Exceptions\ZipExportException;
-use BookStack\Exports\ZipExportModels\ZipExportPage;
+use BookStack\Exports\ZipExports\Models\ZipExportPage;
 use ZipArchive;
 
 class ZipExportBuilder
similarity index 98%
rename from app/Exports/ZipExportFiles.php
rename to app/Exports/ZipExports/ZipExportFiles.php
index 27b6f937a385c3772ff51acaf30ac2da12531424..8f0a6bd40310915fec8db92286d5f0d349cb0305 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 
-namespace BookStack\Exports;
+namespace BookStack\Exports\ZipExports;
 
 use BookStack\Uploads\Attachment;
 use BookStack\Uploads\AttachmentService;
similarity index 83%
rename from app/Exports/ZipExportReferences.php
rename to app/Exports/ZipExports/ZipExportReferences.php
index 19672db0a0ebe1dff1058e68b9d1e45cadc6146a..c3565aaa38347e9a53e363b3cff90df699cb639f 100644 (file)
@@ -1,13 +1,12 @@
 <?php
 
-namespace BookStack\Exports;
+namespace BookStack\Exports\ZipExports;
 
 use BookStack\App\Model;
-use BookStack\Entities\Models\Page;
-use BookStack\Exports\ZipExportModels\ZipExportAttachment;
-use BookStack\Exports\ZipExportModels\ZipExportImage;
-use BookStack\Exports\ZipExportModels\ZipExportModel;
-use BookStack\Exports\ZipExportModels\ZipExportPage;
+use BookStack\Exports\ZipExports\Models\ZipExportAttachment;
+use BookStack\Exports\ZipExports\Models\ZipExportImage;
+use BookStack\Exports\ZipExports\Models\ZipExportModel;
+use BookStack\Exports\ZipExports\Models\ZipExportPage;
 use BookStack\Uploads\Attachment;
 use BookStack\Uploads\Image;
 
@@ -44,12 +43,16 @@ class ZipExportReferences
 
     public function buildReferences(ZipExportFiles $files): void
     {
-        // TODO - Parse page MD & HTML
+        // Parse page content first
         foreach ($this->pages as $page) {
-            $page->html = $this->parser->parse($page->html ?? '', function (Model $model) use ($files, $page) {
+            $handler = function (Model $model) use ($files, $page) {
                 return $this->handleModelReference($model, $page, $files);
-            });
-            // TODO - markdown
+            };
+
+            $page->html = $this->parser->parse($page->html ?? '', $handler);
+            if ($page->markdown) {
+                $page->markdown = $this->parser->parse($page->markdown, $handler);
+            }
         }
 
 //        dd('end');
similarity index 98%
rename from app/Exports/ZipReferenceParser.php
rename to app/Exports/ZipExports/ZipReferenceParser.php
index 820920da28d89433463aa09bb8635b09828efd35..4d16dbc6110f0db34fecf237d322c5ec55e2b9a1 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 
-namespace BookStack\Exports;
+namespace BookStack\Exports\ZipExports;
 
 use BookStack\App\Model;
 use BookStack\Entities\Queries\EntityQueries;