Show attachments to tags #2828

This commit is contained in:
James Cole 2020-03-19 18:51:47 +01:00
parent 64683647bd
commit 6dba44ba71
No known key found for this signature in database
GPG Key ID: C16961E655E74B5E
4 changed files with 28 additions and 9 deletions

View File

@ -242,6 +242,7 @@ class TagController extends Controller
$start = $start ?? session('start');
$end = $end ?? session('end');
$location = $this->repository->getLocation($tag);
$attachments = $this->repository->getAttachments($tag);
$subTitle = trans(
'firefly.journals_in_period_for_tag',
['tag' => $tag->tag, 'start' => $start->formatLocalized($this->monthAndDayFormat),
@ -263,7 +264,7 @@ class TagController extends Controller
$groups->setPath($path);
$sums = $this->repository->sumsOfTag($tag, $start, $end);
return view('tags.show', compact('tag', 'sums', 'periods', 'subTitle', 'subTitleIcon', 'groups', 'start', 'end', 'location'));
return view('tags.show', compact('tag', 'attachments', 'sums', 'periods', 'subTitle', 'subTitleIcon', 'groups', 'start', 'end', 'location'));
}
/**
@ -285,6 +286,7 @@ class TagController extends Controller
$subTitle = (string) trans('firefly.all_journals_for_tag', ['tag' => $tag->tag]);
$start = $this->repository->firstUseDate($tag) ?? new Carbon;
$end = new Carbon;
$attachments = $this->repository->getAttachments($tag);
$path = route('tags.show', [$tag->id, 'all']);
$location = $this->repository->getLocation($tag);
/** @var GroupCollectorInterface $collector */
@ -295,7 +297,7 @@ class TagController extends Controller
$groups->setPath($path);
$sums = $this->repository->sumsOfTag($tag, $start, $end);
return view('tags.show', compact('tag', 'sums', 'periods', 'subTitle', 'subTitleIcon', 'groups', 'start', 'end', 'location'));
return view('tags.show', compact('tag', 'attachments', 'sums', 'periods', 'subTitle', 'subTitleIcon', 'groups', 'start', 'end', 'location'));
}
/**

View File

@ -185,7 +185,7 @@ class TagRepository implements TagRepositoryInterface
public function getTagsInYear(?int $year): array
{
// get all tags in the year (if present):
$tagQuery = $this->user->tags()->with(['locations'])->orderBy('tags.tag');
$tagQuery = $this->user->tags()->with(['locations', 'attachments'])->orderBy('tags.tag');
// add date range (or not):
if (null === $year) {
@ -203,10 +203,11 @@ class TagRepository implements TagRepositoryInterface
foreach ($collection as $tag) {
// return value for tag cloud:
$return[$tag->id] = [
'tag' => $tag->tag,
'id' => $tag->id,
'created_at' => $tag->created_at,
'location' => $tag->locations->first(),
'tag' => $tag->tag,
'id' => $tag->id,
'created_at' => $tag->created_at,
'location' => $tag->locations->first(),
'attachments' => $tag->attachments,
];
}

View File

@ -37,8 +37,7 @@
style="font-weight: normal;font-size:0.9em;"
title="{{ tagInfo.created_at.formatLocalized(monthAndDayFormat) }}"
href="{{ route('tags.show',tagInfo.id) }}">{% if tagInfo.location %}<i
class="fa fa-fw fa-map-marker"></i>{% endif %}<i class="fa fa-fw fa-tag"></i>{{ tagInfo.tag }}</a></div>
href="{{ route('tags.show',tagInfo.id) }}">{% if tagInfo.location %}<i class="fa fa-fw fa-map-marker"></i>{% endif %}<i class="fa fa-fw fa-tag"></i>{{ tagInfo.tag }}{% if tagInfo.attachments.count > 0 %}<i class="fa fa-fw fa-paperclip"></i>{% endif %}</a></div>
{% endfor %}
</div>

View File

@ -111,6 +111,23 @@
</div>
</div>
</div>
{% if attachments.count > 0 %}
<div class="row">
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">
{{ 'attachments'|_ }}
</h3>
</div>
<div class="box-body table-responsive no-padding">
{% include 'list.attachments' %}
</div>
</div>
</div>
</div>
{% endif %}
{% if periods|length > 0 %}
<div class="row">
<div class="col-lg-offset-10 col-lg-2 col-md-offset-10 col-md-2 col-sm-12 col-xs-12">