Consistent menu's all around.

This commit is contained in:
James Cole
2026-07-30 19:42:13 +02:00
parent 40751eec31
commit 1c8e30df69
12 changed files with 87 additions and 99 deletions
+1
View File
@@ -238,6 +238,7 @@ return [
'expected_total' => 'expected total',
'reconciliation_account_name' => ':name reconciliation (:currency)',
'saved' => 'Saved',
'save' => 'Save',
'advanced_options' => 'Advanced options',
'advanced_options_explain' => 'Some pages in Firefly III have advanced options hidden behind this button. This page doesn\'t have anything fancy here, but do check out the others!',
'here_be_dragons' => 'Hic sunt dracones',
+1 -1
View File
@@ -371,7 +371,7 @@
<div class="dropdown">
<button class="btn btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
<button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
{{ __('firefly.actions') }}
</button>
<ul class="dropdown-menu">
@@ -38,7 +38,7 @@
@foreach($accounts as $account)
<tr class="sortable-object" data-id="{{ $account->id }}" data-order="{{ $account->order }}" data-position="{{ $loop->index }}">
<td class="hidden-sm hidden-xs">
<span class="bi bi-list object-handle"></span>
<span class="btn btn-sm bi bi-list object-handle"></span>
</td>
<td>
<a href="{{ route('accounts.show',$account->id) }}">{{ $account->name }}</a>
@@ -4,25 +4,19 @@
<table class="table table-hover sortable">
<thead>
<tr>
<th data-defaultsort="disabled">&nbsp;</th>
<th data-defaultsign="az">{{ trans('list.name') }}</th>
<th data-defaultsign="month" class="hidden-sm hidden-xs">{{ trans('list.lastActivity') }}</th>
<th data-defaultsort="disabled">&nbsp;</th>
</tr>
</thead>
<tbody>
<tr>
<td>&nbsp;</td>
<td><a href="{{ route('categories.no-category') }}"><em>{{ __('firefly.without_category') }}</em></a></td>
<td class="hidden-sm hidden-xs">&nbsp;</td>
<td>&nbsp;</td>
</tr>
@foreach($categories as $category)
<tr>
<td>
<div class="btn-group btn-group-sm">
<a href="{{ route('categories.edit', [$category->id]) }}" class="btn btn-outline-secondary btn-xs"><span class="bi bi-pencil"></span></a>
<a href="{{ route('categories.delete', [$category->id]) }}" class="btn btn-danger btn-xs"><span class="bi bi-trash"></span></a>
</div>
</td>
<td data-value="{{ $category->name }}">
<a href="{{ route('categories.show', [$category->id]) }}" title="{{ $category->name }}">{{ $category->name }}</a>
@if($category->attachments->count() > 0)
@@ -38,6 +32,17 @@
<em>{{ __('firefly.never') }}</em>
</td>
@endif
<td class="text-end">
<div class="dropdown">
<button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
{{ __('firefly.actions') }}
</button>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="{{ route('categories.edit', [$category->id]) }}"><span class="bi bi-pencil"></span> {{ __('firefly.edit') }}</a></li>
<li><a class="dropdown-item text-danger" href="{{ route('categories.delete', [$category->id]) }}"><span class="bi bi-trash"></span> {{ __('firefly.delete') }}</a></li>
</ul>
</div>
</td>
</tr>
@endforeach
</tbody>
@@ -29,7 +29,7 @@
@foreach($objectGroup['piggy_banks'] as $piggy)
<tr class="piggy-sortable" data-id="{{ $piggy['id'] }}" data-name="{{ $piggy['name'] }}" data-order="{{ $piggy['order'] }}">
<td class="d-none d-md-table-cell">
<a class="btn btn-md bi bi-list piggy-handle"></a>
<a class="btn btn-sm bi bi-list piggy-handle"></a>
<span class="loadSpin"></span>
</td>
<!--
@@ -114,7 +114,7 @@
</td>
<td style="width:100px;" class="text-end">
<div class="dropdown">
<button class="btn btn-md btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
<button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
{{__('firefly.actions')}}
</button>
<ul class="dropdown-menu">
+20 -25
View File
@@ -17,39 +17,15 @@
<table class="table table-striped table-hover">
<thead>
<tr>
<th>&nbsp;</th>
<th>{{ __('firefly.currency') }}</th>
<th>{{ __('firefly.number_of_decimals') }}</th>
<th>&nbsp;</th>
</tr>
</thead>
<tbody>
@foreach($currencies as $currency)
<tr>
<td>
<div class="btn-group btn-group-sm">
@if($isOwner)
<a class="btn btn-outline-secondary" href="{{ route('currencies.edit',[$currency['id']]) }}"><span
class="bi bi-pencil"></span></a>
<a class="btn btn-danger" href="{{ route('currencies.delete',[$currency['id']]) }}"><span
class="bi bi-trash"></span></a>
@endif
{{-- Disable the currency. --}}
@if($currency->userGroupEnabled)
<a class="btn btn-outline-secondary disable-currency" data-code="{{ $currency['code'] }}"
href="#">
<span class="bi bi-app"></span>
{{ __('firefly.disable_currency') }}</a>
@endif
{{-- Enable the currency. --}}
@if(!$currency->userGroupEnabled)
<a class="btn btn-outline-secondary enable-currency" data-code="{{ $currency['code'] }}"
href="#">
<span class="bi bi-check"></span>
{{ __('firefly.enable_currency') }}</a>
@endif
</div>
</td>
<td>
@if(!$currency->userGroupEnabled)<span class="text-muted">@endif
{{ $currency->name }} ({{ $currency->code }}) ({{ $currency->symbol }})
@@ -61,6 +37,25 @@
</td>
<td>{{ $currency->decimal_places }}</td>
<td class="text-end">
<div class="dropdown">
<button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
{{ __('firefly.actions') }}
</button>
<ul class="dropdown-menu">
@if($isOwner)
<li><a class="dropdown-item" href="{{ route('currencies.edit',[$currency['id']]) }}"><span class="bi bi-pencil"></span> {{ __('firefly.edit') }}</a></li>
<li><a class="dropdown-item text-danger" href="{{ route('currencies.delete',[$currency['id']]) }}"><span class="bi bi-trash"></span> {{ __('firefly.delete') }}</a></li>
@endif
@if($currency->userGroupEnabled)
<li><a class="dropdown-item disable-currency" href="#" data-code="{{ $currency['code'] }}"><span class="bi bi-app"></span> {{ __('firefly.disable_currency') }}</a></li>
@endif
@if(!$currency->userGroupEnabled)
<li><a class="dropdown-item enable-currency" href="#" data-code="{{ $currency['code'] }}"><span class="bi bi-check"></span> {{ __('firefly.enable_currency') }}</a></li>
@endif
</ul>
</div>
</td>
</tr>
@endforeach
</tbody>
@@ -48,15 +48,6 @@
x-text="i18next.t('firefly.exchange_rates_from_to', {from: currency.name, to: sub.name})"></a>
</li>
</template>
{{--
<template x-show="sub.id !== currency.id">
<li>
<a :href="'exchange-rates/' + currency.code + '/' + sub.code"
:title="i18next.t('firefly.exchange_rates_from_to', {from: currency.name, to: sub.name})"
x-text="i18next.t('firefly.exchange_rates_from_to', {from: currency.name, to: sub.name})"></a>
</li>
</template>
--}}
</template>
</ul>
</template>
+8 -11
View File
@@ -100,18 +100,15 @@
<!-- (<span v-text="rate.inverse_id"></span>) -->
<input type="number" class="form-control" min="0" step="any" x-model="rate.inverse">
</td>
<td>
<div class="btn-group">
<button
:disabled="saveButtonDisabled(index)"
class="btn btn-default" :title="i18next.t('firefly.submit')"
@click="updateRate(index)">
<em class="bi bi-floppy"></em>
</button>
<button class="btn btn-danger" :title="i18next.t('firefly.delete')"
@click="deleteRate(index)">
<em class="bi bi-trash"></em>
<td class="text-end">
<div class="dropdown">
<button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
{{ __('firefly.actions') }}
</button>
<ul class="dropdown-menu">
<li><button :disabled="saveButtonDisabled(index)" @click="updateRate(index)" :title="i18next.t('firefly.submit')" class="dropdown-item" href="#"><em class="bi bi-floppy"></em> {{ __('firefly.save') }}</button></li>
<li><button @click="deleteRate(index)" :title="i18next.t('firefly.delete')" class="dropdown-item text-danger" href="#"><em class="bi bi-trash"></em> {{ __('firefly.delete') }}</button></li>
</ul>
</div>
</td>
</tr>
+10 -9
View File
@@ -25,7 +25,7 @@
<tbody>
@foreach($objectGroups as $objectGroup)
<tr class="group-sortable" data-id="{{ $objectGroup['id'] }}" data-name="{{ e($objectGroup['title']) }}" data-order="{{ $objectGroup['order'] }}">
<td><span class="bi bi-list group-handle"></span></td>
<td><span class="btn btn-sm bi bi-list group-handle"></span></td>
<td>
<strong>{{ $objectGroup['title'] }}</strong><br/>
@foreach($objectGroup['piggyBanks'] as $piggyBank)
@@ -35,14 +35,15 @@
- {{ __('firefly.bill') }}: <a href="{{ route('subscriptions.show', [$subscription['id']]) }}">{{ $subscription['name'] }}</a><br>
@endforeach
</td>
<td>
<div class="btn-group btn-group-sm">
<a class="btn btn-outline-secondary" href="{{ route('object-groups.edit', [$objectGroup['id']]) }}">
<span class="bi bi-pencil"></span>
</a>
<a class="btn btn-danger" href="{{ route('object-groups.delete', [$objectGroup['id']]) }}">
<span class="bi bi-trash"></span>
</a>
<td class="text-end">
<div class="dropdown">
<button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
{{ __('firefly.actions') }}
</button>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="{{ route('object-groups.edit', [$objectGroup['id']]) }}"><span class="bi bi-pencil"></span> {{ __('firefly.edit') }}</a></li>
<li><a class="dropdown-item text-danger" href="{{ route('object-groups.delete', [$objectGroup['id']]) }}"><span class="bi bi-trash"></span> {{ __('firefly.delete') }}</a></li>
</ul>
</div>
</td>
</tr>
+12 -9
View File
@@ -21,24 +21,16 @@
<table class="table table-responsive table-hover sortable">
<thead>
<tr>
<th class="hidden-sm hidden-xs" data-defaultsort="disabled">&nbsp;</th>
<th data-defaultsign="az">{{ trans('list.title') }}</th>
<th data-defaultsort="disabled">{{ trans('list.transaction_s') }}</th>
<th data-defaultsort="disabled">{{ trans('list.repetitions') }}</th>
<th data-defaultsign="month" data-dateformat="{{ $madMomentJS }}">{{ trans('list.next_due') }}</th>
<th class="hidden-sm hidden-xs" data-defaultsort="disabled">&nbsp;</th>
</tr>
</thead>
<tbody>
@foreach($paginator as $rt)
<tr>
<td class="hidden-sm hidden-xs">
<div class="btn-group btn-group-sm edit_tr_buttons">
<a class="btn btn-outline-secondary btn-xs" title="{{ __('firefly.edit') }}" href="{{ route('recurring.edit',$rt['id']) }}"><span
class="bi bi-pencil"></span></a><a class="btn btn-danger btn-xs" title="{{ __('firefly.delete') }}"
href="{{ route('recurring.delete',$rt['id']) }}"><span
class="bi bi-trash"></span></a>
</div>
</td>
<td data-value="{{ $rt['title'] }}">
@if($rt['attachments'] > 0)
<span class="bi bi-paperclip"></span>
@@ -119,6 +111,17 @@
@endforeach
</ul>
</td>
<td class="hidden-sm hidden-xs text-end">
<div class="dropdown">
<button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
{{ __('firefly.actions') }}
</button>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="{{ route('recurring.edit',$rt['id']) }}"><span class="bi bi-pencil"></span> {{ __('firefly.edit') }}</a></li>
<li><a class="dropdown-item text-danger" href="{{ route('recurring.delete',$rt['id']) }}"><span class="bi bi-trash"></span> {{ __('firefly.delete') }}</a></li>
</ul>
</div>
</td>
</tr>
@endforeach
</tbody>
+18 -23
View File
@@ -60,11 +60,10 @@
<thead>
<tr>
<th class="five">&nbsp;</th>
<th class="ten">&nbsp;</th>
<th class="ten">&nbsp;</th>
<th class="quarter">{{ __('firefly.rule_name') }}</th>
<th class="quarter d-xs-none">{{ __('firefly.rule_triggers') }}</th>
<th class="quarter d-xs-none">{{ __('firefly.rule_actions') }}</th>
<th class="w-20">&nbsp;</th>
</tr>
</thead>
<tbody class="rule-connected-list">
@@ -72,30 +71,10 @@
<tr class="single-rule" data-order="{{ $rule->order }}" data-id="{{ $rule->id }}" data-group-id="{{ $ruleGroup->id }}" data-position="{{ $loop->index }}">
<td>
<div class="btn-group btn-group-sm prio_buttons">
<span class="bi bi-list rule-handle"></span>
<a class="btn btn-sm bi bi-list rule-handle"></a>
</div>
</td>
<td>
<div class="btn-group btn-group-sm edit_buttons">
<a title="{{ __('firefly.edit') }}" href="{{ route('rules.edit', $rule->id) }}"
class="btn btn-outline-secondary"><span
class="bi bi-pencil"></span></a>
<a title="{{ __('firefly.delete') }}" href="{{ route('rules.delete', $rule->id) }}" class="btn btn-danger"><span class="bi bi-trash"></span></a>
</div>
</td>
<td>
<div class="btn-group btn-group-sm test_buttons">
{{-- show which transactions would match --}}
<a href="{{ route('rules.search',$rule->id) }}" class="btn btn-outline-secondary @if(false === $rule->strict) test_rule_triggers @endif" data-id="{{ $rule->id }}" title="{{ __('firefly.test_rule_triggers') }}"><span data-id="{{ $rule->id }}" class="bi bi-flask"></span></a>
@if($rule->active)
{{-- actually execute rule --}}
<a href="{{ route('rules.select-transactions',$rule->id) }}" class="btn btn-outline-secondary" title=" {{ trans('firefly.apply_rule_selection', ['title' => $rule->title]) }}"><span class="bi bi-power "></span></a>
@endif
{{-- duplicate rule --}}
<a href="#" class="btn btn-outline-secondary duplicate-rule" data-id="{{ $rule->id }}" title=" {{ trans('firefly.duplicate_rule', ['title' => $rule->title]) }}"><span class="bi bi-copy"></span></a>
</div>
</td>
<td class="markdown">
@if($rule->active)
{{ $rule->title }}
@@ -158,6 +137,22 @@
</ul>
@endif
</td>
<td>
<div class="dropdown">
<button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
{{ __('firefly.actions') }}
</button>
<ul class="dropdown-menu">
<li><a class="dropdown-item" title="{{ __('firefly.edit') }}" href="{{ route('rules.edit', $rule->id) }}"><span class="bi bi-pencil"></span> {{ __('firefly.edit') }} </a></li>
<li><a class="dropdown-item text-danger" title="{{ __('firefly.delete') }}" href="{{ route('rules.delete', $rule->id) }}"><span class="bi bi-trash"></span> {{ __('firefly.delete') }}</a></li>
<li><a class="dropdown-item @if(false === $rule->strict) test_rule_triggers @endif" data-id="{{ $rule->id }}" href="{{ route('rules.search',$rule->id) }}"><span data-id="{{ $rule->id }}" class="bi bi-flask"></span> {{ __('firefly.test_rule_triggers') }}</a></li>
@if($rule->active)
<li><a class="dropdown-item" href="{{ route('rules.select-transactions',$rule->id) }}"><span class="bi bi-power"></span> {{ trans('firefly.apply_rule_selection', ['title' => $rule->title]) }}</a></li>
@endif
<li><a class="dropdown-item duplicate-rule" data-id="{{ $rule->id }}" title="{{ trans('firefly.duplicate_rule', ['title' => $rule->title]) }}"><span class="bi bi-copy"></span> {{ trans('firefly.duplicate_rule', ['title' => $rule->title]) }}</a></li>
</ul>
</div>
</td>
</tr>
@endforeach
</tbody>
+1 -1
View File
@@ -86,7 +86,7 @@
<code :title="webhook.full_url" x-text="webhook.url"></code>
</td>
<td class="hidden-sm hidden-xs">
<td class="hidden-sm hidden-xs text-end">
<div class="dropdown">
<button class="btn btn-sm btn-secondary-outline dropdown-toggle" type="button" :id="'webhook_menu_' + webhook.id" data-bs-toggle="dropdown" aria-expanded="false">
{{ __('firefly.actions') }}