fix roles

This commit is contained in:
Ludovic CANDELLIER
2022-01-30 00:30:21 +01:00
parent b4057c28d0
commit 5799eb36fc
32 changed files with 206 additions and 330 deletions

View File

@@ -14,19 +14,28 @@
<a href="{{ route("boilerplate.roles.index") }}" class="btn btn-default" title="@lang('boilerplate::role.list.title')">
<span class="far fa-arrow-alt-circle-left text-muted"></span>
</a>
@if($role->name !== 'admin')
<span class="btn-group float-right">
<button type="submit" class="btn btn-primary">
@lang('boilerplate::role.savebutton')
</button>
</span>
@endif
</div>
</div>
<div class="row">
<div class="col-md-5">
@component('boilerplate::card', ['title' => __('boilerplate::role.parameters')])
{!! $errors->first('name','<p class="text-danger"><strong>:message</strong></p>') !!}
@component('boilerplate::input', ['name' => 'display_name', 'label' => 'boilerplate::role.label', 'value' => $role->display_name])@endcomponent
@component('boilerplate::input', ['name' => 'description', 'label' => 'boilerplate::role.description', 'value' => $role->description])@endcomponent
@if($role->name === 'admin' || $role->name === 'backend_user')
<p><strong>@lang('boilerplate::role.label')</strong><br>{{ $role->display_name }}</p>
<p><strong>@lang('boilerplate::role.description')</strong><br>{{ $role->description }}</p>
@component('boilerplate::input', ['type' => 'hidden', 'name' => 'display_name', 'value' => $role->getAttributes()['display_name']])@endcomponent
@component('boilerplate::input', ['type' => 'hidden', 'name' => 'description', 'value' => $role->getAttributes()['description'] ])@endcomponent
@else
@component('boilerplate::input', ['name' => 'display_name', 'label' => 'boilerplate::role.label', 'value' => $role->display_name])@endcomponent
@component('boilerplate::input', ['name' => 'description', 'label' => 'boilerplate::role.description', 'value' => $role->description])@endcomponent
@endif
@endcomponent
</div>
@if(count($permissions_categories) > 0)
@@ -52,9 +61,12 @@
</div>
</td>
<td>
{{ Form::label('permission_'.$permission->id, $permission->display_name, ['class' => 'mb-0', 'data-toggle' => 'tooltip', 'data-title' => $permission->name]) }}<br />
{{ Form::label('permission_'.$permission->id, $permission->display_name, ['class' => 'mb-0']) }}<br />
<small class="text-muted">{{ $permission->description }}</small>
</td>
<td class="text-right visible-on-hover">
<span class="badge badge-secondary badge-pill">{{ $permission->name }}</span>
</td>
</tr>
@endforeach
</tbody>

View File

@@ -13,82 +13,6 @@
</div>
</div>
@component('boilerplate::card')
<div class="table-responsive">
<table class="table table-striped table-hover va-middle" id="roles-table" style="width:100%">
<thead>
<tr>
<th>{{ __('boilerplate::role.label') }}</th>
<th>{{ __('boilerplate::role.description') }}</th>
<th>{{ __('boilerplate::role.permissions') }}</th>
<th>{{ __('boilerplate::role.list.nbusers') }}</th>
<th>{{-- buttons --}}</th>
</tr>
</thead>
<tbody>
@foreach($roles as $role)
<tr>
<td>
<strong data-toggle="tooltip" data-title="{{ $role->name }}">{{ $role->display_name }}</strong>
</td>
<td>
{{ $role->description }}<br />
</td>
<td>
{!! $role->permissions->implode('display_name', ', ') !!}
</td>
<td>
{{ $role->getNbUsers() }}
</td>
<td class="visible-on-hover" style="width:80px">
<a href="{{ route('boilerplate.roles.edit', $role->id) }}" class="btn btn-sm btn-primary">
<span class="fa fa-fw fa-pencil-alt"></span>
</a>
@if($role->name !== 'admin' &&
!(config('boilerplate.auth.register') && $role->name === config('boilerplate.auth.register_role')) &&
$role->getNbUsers() === 0)
<a href="{{ route('boilerplate.roles.destroy', $role->id) }}" class="btn btn-sm btn-danger destroy">
<span class="fa fa-fw fa-trash"></span>
</a>
@endif
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
<x-boilerplate::datatable name="roles" />
@endcomponent
@endsection
@include('boilerplate::load.datatables')
@push('js')
<script>
$(function () {
$('#roles-table').dataTable({
ordering: false
});
$('#roles-table').on('click', '.destroy', function (e) {
e.preventDefault();
var href = $(this).attr('href');
var line = $(this).closest('tr');
bootbox.confirm("{{ __('boilerplate::role.list.confirmdelete') }}", function (result) {
if (result === false) return;
$.ajax({
url: href,
method: 'delete',
headers: {'X-CSRF-TOKEN': '{{ csrf_token() }}'},
success: function(){
line.remove();
growl("{{ __('boilerplate::role.list.deletesuccess') }}", 'success');
}
});
});
});
});
</script>
@endpush