diff --git a/app/Http/Controllers/PageController.php b/app/Http/Controllers/PageController.php index fc4b463e1..41525ac30 100644 --- a/app/Http/Controllers/PageController.php +++ b/app/Http/Controllers/PageController.php @@ -364,15 +364,17 @@ class PageController extends Controller */ public function showRecentlyUpdated() { - $pages = Page::visible()->orderBy('updated_at', 'desc') + $pages = Page::visible()->with('updatedBy') + ->orderBy('updated_at', 'desc') ->paginate(20) ->setPath(url('/pages/recently-updated')); $this->setPageTitle(trans('entities.recently_updated_pages')); return view('common.detailed-listing-paginated', [ - 'title' => trans('entities.recently_updated_pages'), - 'entities' => $pages, + 'title' => trans('entities.recently_updated_pages'), + 'entities' => $pages, + 'showUpdatedBy' => true, ]); } diff --git a/resources/views/entities/list-item.blade.php b/resources/views/entities/list-item.blade.php index aa4f6c1e8..44e06753d 100644 --- a/resources/views/entities/list-item.blade.php +++ b/resources/views/entities/list-item.blade.php @@ -20,4 +20,13 @@ @endif +@if(($showUpdatedBy ?? false) && $entity->relationLoaded('updatedBy') && $entity->updatedBy) + + {!! trans('entities.meta_updated_name', [ + 'timeLength' => $entity->updated_at->diffForHumans(), + 'user' => e($entity->updatedBy->name) + ]) !!} + +@endif + @endcomponent \ No newline at end of file diff --git a/tests/Entity/PageTest.php b/tests/Entity/PageTest.php index 32459a84a..1d7806047 100644 --- a/tests/Entity/PageTest.php +++ b/tests/Entity/PageTest.php @@ -261,6 +261,21 @@ class PageTest extends TestCase ->assertElementContains('.entity-list .page:nth-child(1)', $content['page']->name); } + public function test_recently_updated_pages_view_shows_updated_by_details() + { + $user = $this->getEditor(); + /** @var Page $page */ + $page = Page::query()->first(); + + $this->actingAs($user)->put($page->getUrl(), [ + 'name' => 'Updated title', + 'html' => '

Updated content

', + ]); + + $resp = $this->asAdmin()->get('/pages/recently-updated'); + $resp->assertElementContains('.entity-list .page:nth-child(1)', 'Updated 1 second ago by ' . $user->name); + } + public function test_recently_updated_pages_on_home() { /** @var Page $page */