snipe-it/resources/views/livewire/personal-access-tokens.blade.php

194 lines
8.3 KiB
PHP
Raw Normal View History

2023-11-14 09:50:27 -08:00
<div>
<div class="panel panel-default">
<div class="panel-heading">
<div class="text-right" style="display: flex; justify-content: space-between; align-items: center;">
<a class="btn btn-info btn-sm action-link pull-right"
onclick="$('#modal-create-token').modal('show');"
wire:click="$emit('openModal')"
2023-11-14 09:50:27 -08:00
>
Create New Token
</a>
</div>
</div>
<div class="panel-body">
<!-- No Tokens Notice -->
@if($tokens->count() === 0)
<p class="m-b-none"
>
You have not created any personal access tokens.
</p>
@endif
<!-- Personal Access Tokens -->
<table class="table table-borderless m-b-none">
@if($tokens->count() > 0)
<thead>
<tr>
<th class="col-md-3">Name</th>
<th class="col-md-2">Created</th>
<th class="col-md-2">Expires</th>
<th class="col-md-2"><span class="sr-only">Delete</span></th>
</tr>
</thead>
@endif
@foreach($tokens as $token)
<tbody>
<tr>
<!-- Client Name -->
<td style="vertical-align: middle;">
{{ $token->name }}
</td>
<td style="vertical-align: middle;">
{{ $token->created_at }}
</td>
<td style="vertical-align: middle;">
{{ $token->expires_at }}
</td>
<!-- Delete Button -->
<td style="vertical-align: middle;" class="text-right">
2023-11-15 14:27:01 -08:00
<a class="action-link btn btn-danger btn-sm" wire:click="deleteToken('{{ $token->id }}')">
2023-11-14 09:50:27 -08:00
<i class="fas fa-trash"></i>
</a>
</td>
</tr>
</tbody>
2023-11-15 14:27:01 -08:00
@endforeach
2023-11-14 09:50:27 -08:00
</table>
</div>
</div>
<!-- Create Token Modal -->
2023-11-15 18:19:03 -08:00
<div wire:ignore.self class="modal fade" id="modal-create-token" tabindex="-1" role="dialog">
2023-11-15 14:51:09 -08:00
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h4 class="modal-title">
Create Token
</h4>
</div>
<div class="modal-body">
<!-- Form Errors -->
2023-11-15 18:29:14 -08:00
@if($errors->has('name'))
2023-11-15 14:51:09 -08:00
<div class="alert alert-danger"
>
<p><strong>Whoops!</strong> Something went wrong!</p>
<br>
<ul>
<li
>
2023-11-15 18:29:14 -08:00
@error('name') <span class="error">{{ $message }}</span> @enderror
2023-11-15 14:51:09 -08:00
</li>
</ul>
</div>
@endif
<!-- Create Token Form -->
<form class="form-horizontal" role="form"
>
<!-- Name -->
<div class="form-group">
<label class="col-md-4 control-label" for="name">Name</label>
<div class="col-md-6">
2023-11-15 20:35:20 -08:00
<input id="create-token-name" type="text" aria-label="name" class="form-control"
name="name"
2023-11-16 08:54:32 -08:00
wire:keydown.enter="createToken(name)"
2023-11-15 18:29:14 -08:00
{{-- defer because it's submitting as i type if i don't --}}
2023-11-15 14:51:09 -08:00
wire:model.defer="name"
autofocus
2023-11-15 14:51:09 -08:00
>
</div>
2023-11-15 18:29:14 -08:00
2023-11-15 14:51:09 -08:00
</div>
<!-- Scopes -->
2023-11-15 18:29:14 -08:00
{{-- Seems like scopes was never working, I couldn't figure out how to enable the feature if it was --}}
2023-11-15 14:51:09 -08:00
{{-- <div class="form-group"--}}
{{-- v-if="scopes.length > 0"--}}
{{-- >--}}
{{-- <label class="col-md-4 control-label">Scopes</label>--}}
{{-- <div class="col-md-6">--}}
{{-- <div--}}
{{-- v-for="scope in scopes"--}}
{{-- >--}}
{{-- <div class="checkbox">--}}
{{-- <label>--}}
{{-- <input type="checkbox"--}}
{{-- @click="toggleScope(scope.id)"--}}
{{-- :checked="scopeIsAssigned(scope.id)"--}}
{{-- >--}}
{{-- {{ scope.id }}--}}
{{-- </label>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- </div>--}}
{{-- </div>--}}
</form>
</div>
<!-- Modal Actions -->
<div class="modal-footer">
<button type="button" class="btn primary" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary"
2023-11-15 20:35:20 -08:00
wire:click="createToken(name)"
2023-11-15 14:51:09 -08:00
>
Create
</button>
</div>
</div>
</div>
</div>
2023-11-15 18:19:03 -08:00
2023-11-14 09:50:27 -08:00
<!-- View New Token Modal -->
2023-11-15 18:19:03 -08:00
<div class="modal fade" id="modal-access-token" tabindex="-1" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
2023-11-16 08:54:32 -08:00
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
2023-11-15 18:19:03 -08:00
<h4 class="modal-title">
Personal Access Token
</h4>
</div>
<div class="modal-body">
<p>
Here is your new personal access token. This is the only time it will be shown so don't lose it!
You may now use this token to make API requests.
</p>
2023-11-16 09:31:00 -08:00
<pre><code>{{ $newTokenString }}</code></pre>
2023-11-15 18:19:03 -08:00
</div>
<!-- Modal Actions -->
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
2023-11-15 20:35:20 -08:00
<script>
2023-11-16 09:31:00 -08:00
window.addEventListener('tokenCreated', token => {
2023-11-15 20:35:20 -08:00
$('#modal-create-token').modal('hide');
$('#modal-access-token').modal('show');
})
window.addEventListener('autoFocusModal', function() {
$('#modal-create-token').on('shown.bs.modal', function() {
$(this).find('[autofocus]').focus();
});
})
// was trying to do a submit on the form when enter was pressed
2023-11-16 08:54:32 -08:00
window.addEventListener("keydown", function (event) {
if (event.key === 'Enter') {
event.preventDefault();
}
})
2023-11-15 20:35:20 -08:00
</script>
2023-11-14 09:50:27 -08:00
</div>