mirror of
https://github.com/Kovah/LinkAce.git
synced 2025-02-24 19:22:35 +01:00
Add an alternative link view as cards, controllable via setting
This commit is contained in:
parent
bbd0ff0012
commit
3a35066bde
@ -17,6 +17,10 @@ return [
|
||||
'notes_private_default' => 'Private Notes by default',
|
||||
'notes_private_default_help' => 'Enabling this will make all new notes private by default',
|
||||
|
||||
'display_mode' => 'Display links as',
|
||||
'display_mode_standard' => 'rows with much details',
|
||||
'display_mode_cards' => 'cards with less details',
|
||||
|
||||
'sharing' => 'Link Sharing',
|
||||
'sharing_help' => 'Enable all services you want to display for links, to be able to share them easily with one click.',
|
||||
'sharing_toggle' => 'Toggle all on/off',
|
||||
|
@ -162,6 +162,31 @@
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="col">
|
||||
|
||||
<div class="form-group">
|
||||
<label for="link_display_mode">
|
||||
@lang('settings.display_mode')
|
||||
</label>
|
||||
<select id="link_display_mode" name="link_display_mode"
|
||||
class="custom-select{{ $errors->has('link_display_mode') ? ' is-invalid' : '' }}">
|
||||
<option value="0"
|
||||
@if($user->settings()->get('link_display_mode') === '0') selected @endif>
|
||||
@lang('settings.display_mode_standard')
|
||||
</option>
|
||||
<option value="1"
|
||||
@if($user->settings()->get('link_display_mode') === '1') selected @endif>
|
||||
@lang('settings.display_mode_cards')
|
||||
</option>
|
||||
</select>
|
||||
@if ($errors->has('link_display_mode'))
|
||||
<p class="invalid-feedback" role="alert">
|
||||
{{ $errors->first('link_display_mode') }}
|
||||
</p>
|
||||
@endif
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group mt-5 mb-5">
|
||||
|
@ -12,12 +12,18 @@
|
||||
</a>
|
||||
</header>
|
||||
|
||||
<section class="link-wrapper my-3">
|
||||
<section class="my-3">
|
||||
@if(!$links->isEmpty())
|
||||
|
||||
@foreach($links as $link)
|
||||
@include('models.links.partials.single')
|
||||
@endforeach
|
||||
<div class="link-wrapper {{ usersettings('link_display_mode') === '1' ? 'row' : '' }}">
|
||||
@foreach($links as $link)
|
||||
@if(usersettings('link_display_mode') === '1')
|
||||
@include('models.links.partials.single-cards')
|
||||
@else
|
||||
@include('models.links.partials.single')
|
||||
@endif
|
||||
@endforeach
|
||||
</div>
|
||||
|
||||
@else
|
||||
|
||||
|
72
resources/views/models/links/partials/single-cards.blade.php
Normal file
72
resources/views/models/links/partials/single-cards.blade.php
Normal file
@ -0,0 +1,72 @@
|
||||
<div class="col-12 col-sm-6 col-md-4 mb-4">
|
||||
<div class="h-100 card">
|
||||
<div class="card-header">
|
||||
<div class="d-flex align-items-top">
|
||||
<div class="mr-2">
|
||||
@if($link->is_private)
|
||||
<i class="fas fa-lock text-muted mr-1" title="@lang('link.private')"></i>
|
||||
@endif
|
||||
{!! $link->getIcon('mr-1') !!}
|
||||
<a href="{{ $link->url }}">{{ $link->title }}</a>
|
||||
<br>
|
||||
<small class="text-muted">({{ $link->shortUrl() }})</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ul class="list-group list-group-flush h-100">
|
||||
<li class="list-group-item">
|
||||
@if($link->category)
|
||||
<label class="small m-0">@lang('category.category'):</label>
|
||||
<a href="{{ route('categories.show', [$link->category->id]) }}" class="small">
|
||||
{{ $link->category->name }}
|
||||
</a>
|
||||
@else
|
||||
<label class="small">@lang('category.no_category')</label>
|
||||
@endif
|
||||
</li>
|
||||
<li class="list-group-item h-100">
|
||||
@if($link->tags->count() > 0)
|
||||
<label class="small m-0">@lang('tag.tags'):</label>
|
||||
@foreach($link->tags as $tag)
|
||||
<a href="{{ route('tags.show', [$tag->id]) }}" class="badge badge-light">
|
||||
{{ $tag->name }}
|
||||
</a>
|
||||
@endforeach
|
||||
@else
|
||||
<span class="small">@lang('tag.no_tags')</span>
|
||||
@endif
|
||||
</li>
|
||||
</ul>
|
||||
<div class="card-footer">
|
||||
<div>
|
||||
<small class="text-muted">
|
||||
@lang('linkace.added') {!! $link->addedAt() !!}
|
||||
</small>
|
||||
</div>
|
||||
|
||||
<div class="btn-group w-100 mt-2">
|
||||
<a href="{{ route('links.show', [$link->id]) }}" class="card-link" title="@lang('link.show')">
|
||||
<i class="fas fa-info fa-fw"></i>
|
||||
</a>
|
||||
|
||||
<a href="{{ route('links.edit', [$link->id]) }}" class="card-link" title="@lang('link.edit')">
|
||||
<i class="fas fa-edit fa-fw"></i>
|
||||
</a>
|
||||
|
||||
<a href="#" title="@lang('link.delete')" class="card-link"
|
||||
onclick="event.preventDefault();document.getElementById('link-delete-{{ $link->id }}').submit();">
|
||||
<i class="fas fa-trash-alt fa-fw"></i>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<form id="link-delete-{{ $link->id }}" method="POST" style="display: none;"
|
||||
action="{{ route('links.destroy', [$link->id]) }}">
|
||||
@method('DELETE')
|
||||
@csrf
|
||||
<input type="hidden" name="link_id" value="{{ $link->id }}">
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
Loading…
x
Reference in New Issue
Block a user