]> BookStack Code Mirror - bookstack/blob - app/Http/Controllers/HomeController.php
replace GPL diff lib with MIT lib
[bookstack] / app / Http / Controllers / HomeController.php
1 <?php
2
3 namespace BookStack\Http\Controllers;
4
5 use Activity;
6 use BookStack\Repos\EntityRepo;
7 use BookStack\Http\Requests;
8 use Views;
9
10 class HomeController extends Controller
11 {
12     protected $entityRepo;
13
14     /**
15      * HomeController constructor.
16      * @param EntityRepo $entityRepo
17      */
18     public function __construct(EntityRepo $entityRepo)
19     {
20         $this->entityRepo = $entityRepo;
21         parent::__construct();
22     }
23
24
25     /**
26      * Display the homepage.
27      * @return Response
28      */
29     public function index()
30     {
31         $activity = Activity::latest(10);
32         $draftPages = $this->signedIn ? $this->entityRepo->getUserDraftPages(6) : [];
33         $recentFactor = count($draftPages) > 0 ? 0.5 : 1;
34         $recents = $this->signedIn ? Views::getUserRecentlyViewed(12*$recentFactor, 0) : $this->entityRepo->getRecentlyCreatedBooks(10*$recentFactor);
35         $recentlyCreatedPages = $this->entityRepo->getRecentlyCreatedPages(5);
36         $recentlyUpdatedPages = $this->entityRepo->getRecentlyUpdatedPages(5);
37         return view('home', [
38             'activity' => $activity,
39             'recents' => $recents,
40             'recentlyCreatedPages' => $recentlyCreatedPages,
41             'recentlyUpdatedPages' => $recentlyUpdatedPages,
42             'draftPages' => $draftPages
43         ]);
44     }
45
46 }