Revize af0a94fc
Přidáno uživatelem Adam Mištera před téměř 5 roky(ů)
app/Http/Controllers/ArtefactController.php | ||
---|---|---|
12 | 12 |
|
13 | 13 |
class ArtefactController extends Controller |
14 | 14 |
{ |
15 |
const ORDER_COLUMN = 'page'; |
|
16 |
|
|
15 | 17 |
public function __construct() |
16 | 18 |
{ |
17 | 19 |
$this->middleware('auth'); |
... | ... | |
24 | 26 |
*/ |
25 | 27 |
public function default() |
26 | 28 |
{ |
27 |
$artefacts = Artefact::all(); |
|
29 |
$artefacts = Artefact::simplePaginate(1); |
|
30 |
foreach($artefacts as $artefact) |
|
31 |
{ |
|
32 |
$artefact['likes'] = Artefact::find($artefact->id)->users()->count(); |
|
33 |
$artefact['favourite'] = is_null(User::find(Auth::id())->likesArtefacts()->find($artefact->id)) ? false : true; |
|
34 |
$metadata = Artefact::find($artefact->id)->metadata()->orderBy(self::ORDER_COLUMN)->get(); |
|
35 |
|
|
36 |
foreach ($metadata as $item) |
|
37 |
{ |
|
38 |
$item['favourite'] = is_null(User::find(Auth::id())->likesMetadata()->find($item->id)) ? false : true; |
|
39 |
} |
|
40 |
|
|
41 |
$artefact['metadata'] = $metadata; |
|
42 |
} |
|
28 | 43 |
|
29 | 44 |
return view('artefact.default', ['artefacts' => $artefacts]); |
30 | 45 |
} |
resources/views/artefact/default.blade.php | ||
---|---|---|
9 | 9 |
|
10 | 10 |
|
11 | 11 |
@section('content') |
12 |
<div class="container"> |
|
13 |
<div class="jumbotron mt-5"> |
|
14 |
<div class="text-center"> |
|
15 |
<h1>Artefact list</h1> |
|
16 |
<p> |
|
17 |
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. |
|
18 |
Mauris dolor felis, sagittis at, luctus sed, aliquam non, tellus. |
|
19 |
Fusce tellus odio, dapibus id fermentum quis, suscipit id erat. |
|
20 |
Morbi scelerisque luctus velit. Vivamus porttitor turpis ac leo. |
|
21 |
Morbi scelerisque luctus velit. |
|
22 |
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. |
|
23 |
</p> |
|
24 |
</div> |
|
25 |
</div> |
|
26 |
|
|
27 |
@if (count($artefacts) === 0) |
|
28 |
<div class="text-center"> |
|
29 |
<h2>Currently no artefacts available.</h2> |
|
30 |
</div> |
|
31 |
@else |
|
32 |
@foreach ($artefacts as $artefact) |
|
33 |
<div class="artefacts-area mb-5"> |
|
34 |
<div class="card"> |
|
35 |
<svg class="bd-placeholder-img card-img-top" width="100%" height="180" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid slice" focusable="false" role="img" aria-label="Placeholder: Image cap"><title>Placeholder</title><rect width="100%" height="100%" fill="#868e96"></rect><text x="45%" y="50%" fill="#dee2e6" dy=".3em">Artefact image</text></svg> |
|
36 |
<div class="card-body"> |
|
37 |
<h5 class="card-title"><a href="{{ url('/artefact/' . $artefact->id) }}">{{$artefact->name}}</a> - {{$artefact->author}}</h5> |
|
38 |
<h6 class="card-subtitle mb-2 text-muted">{{$artefact->year}}, {{$artefact->pages}} pages</h6> |
|
39 |
<p class="card-text"> |
|
40 |
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. |
|
41 |
Mauris dolor felis, sagittis at, luctus sed, aliquam non, tellus. |
|
42 |
Fusce tellus odio, dapibus id fermentum quis, suscipit id erat. |
|
43 |
Morbi scelerisque luctus velit. Vivamus porttitor turpis ac leo. |
|
44 |
Morbi scelerisque luctus velit. |
|
45 |
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. |
|
46 |
</p> |
|
47 |
</div> |
|
48 |
</div> |
|
49 |
</div> |
|
50 |
@endforeach |
|
51 |
@endif |
|
52 |
</div> |
|
53 |
|
|
12 |
@component('components/books', ['artefacts' => $artefacts]) |
|
13 |
@endcomponent |
|
54 | 14 |
@endsection |
routes/web.php | ||
---|---|---|
17 | 17 |
|
18 | 18 |
Route::get('/artefact', 'ArtefactController@default'); |
19 | 19 |
Route::get('/artefact/{id}', 'ArtefactController@view'); |
20 |
Route::post('/artefact/like/{id}', 'ArtefactController@like');
|
|
21 |
Route::post('/artefact/unlike/{id}', 'ArtefactController@unlike');
|
|
20 |
Route::get('/artefact/like/{id}', 'ArtefactController@like');
|
|
21 |
Route::get('/artefact/unlike/{id}', 'ArtefactController@unlike');
|
|
22 | 22 |
Route::get('/category/{id}', 'ArtefactController@showCategory'); |
23 | 23 |
Route::get('/detail/like/{id}', 'DetailsController@like'); |
24 | 24 |
Route::get('/detail/unlike/{id}', 'DetailsController@unlike'); |
Také k dispozici: Unified diff
Issue #8050 @1h
[+] Vytvoření artefaktů pro desktop
[+] Napojení komponenty books
[+] Úprava route