diff --git a/app/Entities/Models/BookChild.php b/app/Entities/Models/BookChild.php
index 91f62dc40..8b968cc8b 100644
--- a/app/Entities/Models/BookChild.php
+++ b/app/Entities/Models/BookChild.php
@@ -31,11 +31,10 @@ abstract class BookChild extends Entity
 
     /**
      * Get the book this page sits in.
-     * @return BelongsTo
      */
     public function book(): BelongsTo
     {
-        return $this->belongsTo(Book::class);
+        return $this->belongsTo(Book::class)->withTrashed();
     }
 
     /**
diff --git a/app/Entities/Models/Page.php b/app/Entities/Models/Page.php
index 52c64f048..739927aff 100644
--- a/app/Entities/Models/Page.php
+++ b/app/Entities/Models/Page.php
@@ -121,7 +121,7 @@ class Page extends BookChild
      */
     public function forJsonDisplay(): Page
     {
-        $refreshed = $this->refresh()->unsetRelations()->load(['tags', 'createdBy', 'updatedBy']);
+        $refreshed = $this->refresh()->unsetRelations()->load(['tags', 'createdBy', 'updatedBy', 'ownedBy']);
         $refreshed->setHidden(array_diff($refreshed->getHidden(), ['html', 'markdown']));
         $refreshed->html = (new PageContent($refreshed))->render();
         return $refreshed;
diff --git a/app/Http/Controllers/Api/BookApiController.php b/app/Http/Controllers/Api/BookApiController.php
index 1b25b9645..1b9bddbb1 100644
--- a/app/Http/Controllers/Api/BookApiController.php
+++ b/app/Http/Controllers/Api/BookApiController.php
@@ -37,7 +37,7 @@ class BookApiController extends ApiController
     {
         $books = Book::visible();
         return $this->apiListingResponse($books, [
-            'id', 'name', 'slug', 'description', 'created_at', 'updated_at', 'created_by', 'updated_by', 'image_id',
+            'id', 'name', 'slug', 'description', 'created_at', 'updated_at', 'created_by', 'updated_by', 'owned_by', 'image_id',
         ]);
     }
 
@@ -59,7 +59,7 @@ class BookApiController extends ApiController
      */
     public function read(string $id)
     {
-        $book = Book::visible()->with(['tags', 'cover', 'createdBy', 'updatedBy'])->findOrFail($id);
+        $book = Book::visible()->with(['tags', 'cover', 'createdBy', 'updatedBy', 'ownedBy'])->findOrFail($id);
         return response()->json($book);
     }
 
diff --git a/app/Http/Controllers/Api/BookshelfApiController.php b/app/Http/Controllers/Api/BookshelfApiController.php
index c4851b003..57461fce5 100644
--- a/app/Http/Controllers/Api/BookshelfApiController.php
+++ b/app/Http/Controllers/Api/BookshelfApiController.php
@@ -43,7 +43,7 @@ class BookshelfApiController extends ApiController
     {
         $shelves = Bookshelf::visible();
         return $this->apiListingResponse($shelves, [
-            'id', 'name', 'slug', 'description', 'created_at', 'updated_at', 'created_by', 'updated_by', 'image_id',
+            'id', 'name', 'slug', 'description', 'created_at', 'updated_at', 'created_by', 'updated_by', 'owned_by', 'image_id',
         ]);
     }
 
@@ -70,7 +70,7 @@ class BookshelfApiController extends ApiController
     public function read(string $id)
     {
         $shelf = Bookshelf::visible()->with([
-            'tags', 'cover', 'createdBy', 'updatedBy',
+            'tags', 'cover', 'createdBy', 'updatedBy', 'ownedBy',
             'books' => function (BelongsToMany $query) {
                 $query->visible()->get(['id', 'name', 'slug']);
             }
diff --git a/app/Http/Controllers/Api/ChapterApiController.php b/app/Http/Controllers/Api/ChapterApiController.php
index e69aecc2d..e58c1c8e1 100644
--- a/app/Http/Controllers/Api/ChapterApiController.php
+++ b/app/Http/Controllers/Api/ChapterApiController.php
@@ -43,7 +43,7 @@ class ChapterApiController extends ApiController
         $chapters = Chapter::visible();
         return $this->apiListingResponse($chapters, [
             'id', 'book_id', 'name', 'slug', 'description', 'priority',
-            'created_at', 'updated_at', 'created_by', 'updated_by',
+            'created_at', 'updated_at', 'created_by', 'updated_by', 'owned_by',
         ]);
     }
 
@@ -67,7 +67,7 @@ class ChapterApiController extends ApiController
      */
     public function read(string $id)
     {
-        $chapter = Chapter::visible()->with(['tags', 'createdBy', 'updatedBy', 'pages' => function (HasMany $query) {
+        $chapter = Chapter::visible()->with(['tags', 'createdBy', 'updatedBy', 'ownedBy', 'pages' => function (HasMany $query) {
             $query->visible()->get(['id', 'name', 'slug']);
         }])->findOrFail($id);
         return response()->json($chapter);
diff --git a/app/Http/Controllers/Api/PageApiController.php b/app/Http/Controllers/Api/PageApiController.php
index 0b3323ccd..a6db05833 100644
--- a/app/Http/Controllers/Api/PageApiController.php
+++ b/app/Http/Controllers/Api/PageApiController.php
@@ -47,7 +47,8 @@ class PageApiController extends ApiController
         return $this->apiListingResponse($pages, [
             'id', 'book_id', 'chapter_id', 'name', 'slug', 'priority',
             'draft', 'template',
-            'created_at', 'updated_at', 'created_by', 'updated_by',
+            'created_at', 'updated_at',
+            'created_by', 'updated_by', 'owned_by',
         ]);
     }
 
diff --git a/dev/api/responses/books-create.json b/dev/api/responses/books-create.json
index 0b4336ab2..124305c8c 100644
--- a/dev/api/responses/books-create.json
+++ b/dev/api/responses/books-create.json
@@ -3,6 +3,7 @@
   "description": "This is a book created via the API",
   "created_by": 1,
   "updated_by": 1,
+  "owned_by": 1,
   "slug": "my-new-book",
   "updated_at": "2020-01-12 14:05:11",
   "created_at": "2020-01-12 14:05:11",
diff --git a/dev/api/responses/books-list.json b/dev/api/responses/books-list.json
index 29e83b1c0..9900b5b04 100644
--- a/dev/api/responses/books-list.json
+++ b/dev/api/responses/books-list.json
@@ -9,6 +9,7 @@
       "updated_at": "2019-12-11 20:57:31",
       "created_by": 1,
       "updated_by": 1,
+      "owned_by": 1,
       "image_id": 3
     },
     {
@@ -20,6 +21,7 @@
       "updated_at": "2019-12-11 20:57:23",
       "created_by": 4,
       "updated_by": 3,
+      "owned_by": 3,
       "image_id": 34
     }
   ],
diff --git a/dev/api/responses/books-read.json b/dev/api/responses/books-read.json
index 815a71c35..0b0bce4e8 100644
--- a/dev/api/responses/books-read.json
+++ b/dev/api/responses/books-read.json
@@ -13,6 +13,10 @@
     "id": 1,
     "name": "Admin"
   },
+  "owned_by": {
+    "id": 1,
+    "name": "Admin"
+  },
   "tags": [
     {
       "id": 13,
diff --git a/dev/api/responses/books-update.json b/dev/api/responses/books-update.json
index 8f20b5b9f..fd93dc9ae 100644
--- a/dev/api/responses/books-update.json
+++ b/dev/api/responses/books-update.json
@@ -7,5 +7,6 @@
   "updated_at": "2020-01-12 14:16:10",
   "created_by": 1,
   "updated_by": 1,
+  "owned_by": 1,
   "image_id": 452
 }
\ No newline at end of file
diff --git a/dev/api/responses/chapters-create.json b/dev/api/responses/chapters-create.json
index 7aac27687..a990f278b 100644
--- a/dev/api/responses/chapters-create.json
+++ b/dev/api/responses/chapters-create.json
@@ -5,6 +5,7 @@
   "description": "This is a great new chapter that I've created via the API",
   "created_by": 1,
   "updated_by": 1,
+  "owned_by": 1,
   "slug": "my-fantastic-new-chapter",
   "updated_at": "2020-05-22 22:59:55",
   "created_at": "2020-05-22 22:59:55",
diff --git a/dev/api/responses/chapters-list.json b/dev/api/responses/chapters-list.json
index 0c1fc5fc2..72ed7534d 100644
--- a/dev/api/responses/chapters-list.json
+++ b/dev/api/responses/chapters-list.json
@@ -10,7 +10,8 @@
       "created_at": "2019-05-05 21:49:56",
       "updated_at": "2019-09-28 11:24:23",
       "created_by": 1,
-      "updated_by": 1
+      "updated_by": 1,
+      "owned_by": 1
     },
     {
       "id": 2,
@@ -22,7 +23,8 @@
       "created_at": "2019-05-05 21:58:07",
       "updated_at": "2019-10-17 15:05:34",
       "created_by": 3,
-      "updated_by": 3
+      "updated_by": 3,
+      "owned_by": 3
     }
   ],
   "total": 40
diff --git a/dev/api/responses/chapters-read.json b/dev/api/responses/chapters-read.json
index 0d16f4b6a..41fed80ef 100644
--- a/dev/api/responses/chapters-read.json
+++ b/dev/api/responses/chapters-read.json
@@ -15,6 +15,10 @@
     "id": 1,
     "name": "Admin"
   },
+  "owned_by": {
+    "id": 1,
+    "name": "Admin"
+  },
   "tags": [
     {
       "name": "Category",
diff --git a/dev/api/responses/chapters-update.json b/dev/api/responses/chapters-update.json
index a7edb15b0..11dedd0ca 100644
--- a/dev/api/responses/chapters-update.json
+++ b/dev/api/responses/chapters-update.json
@@ -9,6 +9,7 @@
   "updated_at": "2020-05-22 23:07:20",
   "created_by": 1,
   "updated_by": 1,
+  "owned_by": 1,
   "book": {
     "id": 1,
     "name": "BookStack User Guide",
diff --git a/dev/api/responses/pages-create.json b/dev/api/responses/pages-create.json
index 1f6c970fb..0b19fb473 100644
--- a/dev/api/responses/pages-create.json
+++ b/dev/api/responses/pages-create.json
@@ -16,6 +16,10 @@
 		"id": 1,
 		"name": "Admin"
 	},
+	"owned_by": {
+		"id": 1,
+		"name": "Admin"
+	},
 	"draft": false,
 	"markdown": "",
 	"revision_count": 1,
diff --git a/dev/api/responses/pages-list.json b/dev/api/responses/pages-list.json
index 973934516..9c162c6b6 100644
--- a/dev/api/responses/pages-list.json
+++ b/dev/api/responses/pages-list.json
@@ -12,7 +12,8 @@
 			"created_at": "2019-05-05 21:49:58",
 			"updated_at": "2020-07-04 15:50:58",
 			"created_by": 1,
-			"updated_by": 1
+			"updated_by": 1,
+			"owned_by": 1
 		},
 		{
 			"id": 2,
@@ -26,7 +27,8 @@
 			"created_at": "2019-05-05 21:53:30",
 			"updated_at": "2019-06-06 12:03:04",
 			"created_by": 1,
-			"updated_by": 1
+			"updated_by": 1,
+			"owned_by": 1
 		},
 		{
 			"id": 3,
@@ -40,7 +42,8 @@
 			"created_at": "2019-05-05 21:53:49",
 			"updated_at": "2019-12-18 21:56:52",
 			"created_by": 1,
-			"updated_by": 1
+			"updated_by": 1,
+			"owned_by": 1
 		}
 	],
 	"total": 322
diff --git a/dev/api/responses/pages-read.json b/dev/api/responses/pages-read.json
index c8acb520a..93f7770ac 100644
--- a/dev/api/responses/pages-read.json
+++ b/dev/api/responses/pages-read.json
@@ -16,6 +16,10 @@
 		"id": 1,
 		"name": "Admin"
 	},
+	"owned_by": {
+		"id": 1,
+		"name": "Admin"
+	},
 	"draft": false,
 	"markdown": "# How this is built\r\n\r\nThis page is written in markdown. BookStack stores the page data in HTML.\r\n\r\nHere's a cute picture of my cat:\r\n\r\n[![yXSrubes.jpg](http://example.com/uploads/images/gallery/2020-04/scaled-1680-/yXSrubes.jpg)](http://example.com/uploads/images/gallery/2020-04/yXSrubes.jpg)",
 	"revision_count": 5,
diff --git a/dev/api/responses/pages-update.json b/dev/api/responses/pages-update.json
index 23f8d221c..ae5c0ea3f 100644
--- a/dev/api/responses/pages-update.json
+++ b/dev/api/responses/pages-update.json
@@ -16,6 +16,10 @@
 		"id": 1,
 		"name": "Admin"
 	},
+	"owned_by": {
+		"id": 1,
+		"name": "Admin"
+	},
 	"draft": false,
 	"markdown": "",
 	"revision_count": 5,
diff --git a/dev/api/responses/shelves-create.json b/dev/api/responses/shelves-create.json
index 64f3c7f53..fafa4c9cd 100644
--- a/dev/api/responses/shelves-create.json
+++ b/dev/api/responses/shelves-create.json
@@ -3,6 +3,7 @@
   "description": "This is my shelf with some books",
   "created_by": 1,
   "updated_by": 1,
+  "owned_by": 1,
   "slug": "my-shelf",
   "updated_at": "2020-04-10 13:24:09",
   "created_at": "2020-04-10 13:24:09",
diff --git a/dev/api/responses/shelves-list.json b/dev/api/responses/shelves-list.json
index bccd08626..f5e9d03bb 100644
--- a/dev/api/responses/shelves-list.json
+++ b/dev/api/responses/shelves-list.json
@@ -9,6 +9,7 @@
       "updated_at": "2020-04-10 13:00:45",
       "created_by": 4,
       "updated_by": 1,
+      "owned_by": 1,
       "image_id": 31
     },
     {
@@ -20,6 +21,7 @@
       "updated_at": "2020-04-10 13:00:58",
       "created_by": 4,
       "updated_by": 1,
+      "owned_by": 1,
       "image_id": 28
     },
     {
@@ -31,6 +33,7 @@
       "updated_at": "2020-04-10 13:00:53",
       "created_by": 4,
       "updated_by": 1,
+      "owned_by": 4,
       "image_id": 30
     }
   ],
diff --git a/dev/api/responses/shelves-read.json b/dev/api/responses/shelves-read.json
index b0487debe..d663e82c5 100644
--- a/dev/api/responses/shelves-read.json
+++ b/dev/api/responses/shelves-read.json
@@ -11,6 +11,10 @@
     "id": 1,
     "name": "Admin"
   },
+  "owned_by": {
+    "id": 1,
+    "name": "Admin"
+  },
   "created_at": "2020-04-10 13:24:09",
   "updated_at": "2020-04-10 13:31:04",
   "tags": [
diff --git a/dev/api/responses/shelves-update.json b/dev/api/responses/shelves-update.json
index 4820150eb..4bde44b54 100644
--- a/dev/api/responses/shelves-update.json
+++ b/dev/api/responses/shelves-update.json
@@ -5,6 +5,7 @@
   "description": "This is my update shelf with some books",
   "created_by": 1,
   "updated_by": 1,
+  "owned_by": 1,
   "image_id": 501,
   "created_at": "2020-04-10 13:24:09",
   "updated_at": "2020-04-10 13:48:22"
diff --git a/resources/js/components/page-editor.js b/resources/js/components/page-editor.js
index 266e19182..a0d8d38b1 100644
--- a/resources/js/components/page-editor.js
+++ b/resources/js/components/page-editor.js
@@ -12,7 +12,7 @@ class PageEditor {
         this.editorType = this.$opts.editorType;
         this.pageId = Number(this.$opts.pageId);
         this.isNewDraft = this.$opts.pageNewDraft === 'true';
-        this.hasDefaultTitle = this.$opts.isDefaultTitle || false;
+        this.hasDefaultTitle = this.$opts.hasDefaultTitle || false;
 
         // Elements
         this.container = this.$el;
@@ -74,6 +74,7 @@ class PageEditor {
     }
 
     setInitialFocus() {
+        console.log({'HAS': this.hasDefaultTitle});
         if (this.hasDefaultTitle) {
             return this.titleElem.select();
         }
diff --git a/tests/Api/BooksApiTest.php b/tests/Api/BooksApiTest.php
index de4db1469..a36acdd02 100644
--- a/tests/Api/BooksApiTest.php
+++ b/tests/Api/BooksApiTest.php
@@ -75,7 +75,10 @@ class BooksApiTest extends TestCase
             ],
             'updated_by' => [
                 'name' => $book->createdBy->name,
-            ]
+            ],
+            'owned_by' => [
+                'name' => $book->ownedBy->name
+            ],
         ]);
     }
 
diff --git a/tests/Api/ChaptersApiTest.php b/tests/Api/ChaptersApiTest.php
index 422631c3a..c7368eaee 100644
--- a/tests/Api/ChaptersApiTest.php
+++ b/tests/Api/ChaptersApiTest.php
@@ -106,6 +106,9 @@ class ChaptersApiTest extends TestCase
             'updated_by' => [
                 'name' => $chapter->createdBy->name,
             ],
+            'owned_by' => [
+                'name' => $chapter->ownedBy->name
+            ],
             'pages' => [
                 [
                     'id' => $page->id,
diff --git a/tests/Api/PagesApiTest.php b/tests/Api/PagesApiTest.php
index 44fbf5e79..e08e9b1b7 100644
--- a/tests/Api/PagesApiTest.php
+++ b/tests/Api/PagesApiTest.php
@@ -136,6 +136,9 @@ class PagesApiTest extends TestCase
             'updated_by' => [
                 'name' => $page->createdBy->name,
             ],
+            'owned_by' => [
+                'name' => $page->ownedBy->name
+            ],
         ]);
     }
 
diff --git a/tests/Api/ShelvesApiTest.php b/tests/Api/ShelvesApiTest.php
index 4c5600d15..32715dd0a 100644
--- a/tests/Api/ShelvesApiTest.php
+++ b/tests/Api/ShelvesApiTest.php
@@ -85,7 +85,10 @@ class ShelvesApiTest extends TestCase
             ],
             'updated_by' => [
                 'name' => $shelf->createdBy->name,
-            ]
+            ],
+            'owned_by' => [
+                'name' => $shelf->ownedBy->name
+            ],
         ]);
     }