Compare commits

...

15 Commits

Author SHA1 Message Date
snipe 3e4152c966 Bumped version 2017-01-06 00:04:26 -08:00
snipe 1bf34d73f5 Use correct authorize rule in middleware for user delete 2017-01-06 00:02:46 -08:00
snipe d1e360d64d Fix logic to use gate instead of asking if superuser 2017-01-06 00:02:19 -08:00
snipe 3b5b19848c Added oauth keys to gitignore 2017-01-06 00:01:55 -08:00
snipe 93ba90e837 Merge remote-tracking branch 'origin/develop' 2016-12-12 19:24:00 -08:00
snipe fc70d79a17 Merge remote-tracking branch 'origin/develop' 2016-12-12 19:07:07 -08:00
snipe 65016a2383 Merge remote-tracking branch 'origin/develop' 2016-12-05 16:12:41 -08:00
snipe dbcb2ccb46 Merge remote-tracking branch 'origin/develop' 2016-12-05 15:09:49 -08:00
snipe 2afcfcc87c Set DB_SSL to false for config 2016-12-03 17:32:44 -08:00
snipe 1afef9416a Merge remote-tracking branch 'origin/develop'
# Conflicts:
#	config/version.php
2016-12-03 17:15:02 -08:00
snipe 4049143ebf Bumped version 2016-12-01 06:11:03 -08:00
snipe 4df53bdf8d Merge remote-tracking branch 'origin/develop'
# Conflicts:
#	config/version.php
#	resources/views/account/view-assets.blade.php
2016-12-01 06:10:50 -08:00
snipe d49a1ea304 More graceful error message if log doesn’t exist 2016-12-01 06:05:14 -08:00
snipe 521f4facd5 Bumped version 2016-12-01 05:56:24 -08:00
snipe b4653dfc15 Ignore npm log 2016-12-01 05:55:29 -08:00
5 changed files with 308 additions and 320 deletions
+2
View File
@@ -38,3 +38,5 @@ tests/_data/scenarios
tests/_output/*
tests/_support/_generated/*
/npm-debug.log
/storage/oauth-private.key
/storage/oauth-public.key
+4 -18
View File
@@ -425,17 +425,12 @@ class UsersController extends Controller
// Check if we are not trying to delete ourselves
if ($user->id === Auth::user()->id) {
// Prepare the error message
$error = trans('admin/users/message.error.delete');
// Redirect to the user management page
return redirect()->route('users')->with('error', $error);
return redirect()->route('users')->with('error', trans('admin/users/message.error.delete'));
}
// Do we have permission to delete this user?
if ((!Auth::user()->isSuperUser()) || (config('app.lock_passwords'))) {
// Redirect to the user management page
if ((Gate::denies('users.delete') || (config('app.lock_passwords')))) {
return redirect()->route('users')->with('error', 'Insufficient permissions!');
}
@@ -459,18 +454,11 @@ class UsersController extends Controller
// Delete the user
$user->delete();
// Prepare the success message
$success = trans('admin/users/message.success.delete');
// Redirect to the user management page
return redirect()->route('users')->with('success', $success);
} catch (UserNotFoundException $e) {
// Prepare the error message
$error = trans('admin/users/message.user_not_found', compact('id'));
// Redirect to the user management page
return redirect()->route('users')->with('error', $error);
} catch (UserNotFoundException $e) {
return redirect()->route('users')->with('error', trans('admin/users/message.user_not_found', compact('id')));
}
}
@@ -865,7 +853,6 @@ class UsersController extends Controller
'permissions' => '{"user":1}',
'notes' => 'Imported user'
);
//dd($newuser);
DB::table('users')->insert($newuser);
@@ -1107,7 +1094,6 @@ class UsersController extends Controller
$user = User::find($userId);
$destinationPath = config('app.private_uploads').'/users';
// the license is valid
if (isset($user->id)) {
if (!Company::isCurrentUserHasAccess($user)) {
+1 -1
View File
@@ -819,7 +819,7 @@ Route::group([ 'prefix' => 'admin','middleware' => ['web','auth']], function ()
Route::post('{userId}/edit', [ 'uses' => 'UsersController@postEdit', 'middleware' => ['authorize:users.edit'] ]);
Route::get('{userId}/clone', [ 'as' => 'clone/user', 'uses' => 'UsersController@getClone', 'middleware' => ['authorize:users.edit'] ]);
Route::post('{userId}/clone', [ 'uses' => 'UsersController@postCreate', 'middleware' => ['authorize:users.edit'] ]);
Route::get('{userId}/delete', [ 'as' => 'delete/user', 'uses' => 'UsersController@getDelete', 'middleware' => ['authorize:users.edit'] ]);
Route::get('{userId}/delete', [ 'as' => 'delete/user', 'uses' => 'UsersController@getDelete', 'middleware' => ['authorize:users.delete'] ]);
Route::get('{userId}/restore', [ 'as' => 'restore/user', 'uses' => 'UsersController@getRestore', 'middleware' => ['authorize:users.edit'] ]);
Route::get('{userId}/view', [ 'as' => 'view/user', 'uses' => 'UsersController@getView' , 'middleware' => ['authorize:users.view'] ]);
Route::get('{userId}/unsuspend', [ 'as' => 'unsuspend/user', 'uses' => 'UsersController@getUnsuspend', 'middleware' => ['authorize:users.edit'] ]);
+4 -4
View File
@@ -1,7 +1,7 @@
<?php
return array (
'app_version' => 'v3.6.2',
'build_version' => '18',
'hash_version' => 'g6f1e0d6',
'full_hash' => 'v3.6.2-18-g6f1e0d6',
'app_version' => 'v3.6.3',
'build_version' => '15',
'hash_version' => 'g1bf34d7',
'full_hash' => 'v3.6.3-15-g1bf34d7',
);
+297 -297
View File
@@ -2,310 +2,310 @@
{{-- Page title --}}
@section('title')
View Assets for {{ $user->fullName() }}
@parent
View Assets for {{ $user->fullName() }}
@parent
@stop
{{-- Account page content --}}
@section('content')
<div class="row">
<div class="col-md-12">
<div class="box box-default">
@if ($user->id)
<div class="box-header with-border">
<div class="box-heading">
<h3 class="box-title"> {{ trans('admin/users/general.assets_user', array('name' => $user->first_name)) }}</h3>
</div>
</div><!-- /.box-header -->
@endif
<div class="box-body">
<!-- checked out assets table -->
@if (count($user->assets) > 0)
<div class="table-responsive">
<table class="table table-striped">
<thead>
<tr>
<th class="col-md-4">{{ trans('admin/hardware/table.asset_model') }}</th>
<th class="col-md-2">{{ trans('admin/hardware/table.asset_tag') }}</th>
<th class="col-md-3">{{ trans('general.name') }}</th>
<th></th>
</tr>
</thead>
<tbody>
@foreach ($user->assets as $asset)
<tr>
<td>
@if ($asset->physical=='1') {{ $asset->model->name }}
@endif
</td>
<td>{{ $asset->asset_tag }}</td>
<td>{{ $asset->name }}</td>
<td>
@if (($asset->image) && ($asset->image!=''))
<img src="{{ config('app.url') }}/uploads/assets/{{ $asset->image }}" height="50" width="50">
@elseif (($asset->model) && ($asset->model->image!=''))
<img src="{{ config('app.url') }}/uploads/models/{{ $asset->model->image }}" height="50" width="50">
@endif
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@else
<div class="col-md-12">
<div class="alert alert-info alert-block">
<i class="fa fa-info-circle"></i>
{{ trans('general.no_results') }}
</div>
</div>
@endif
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="box box-default">
@if ($user->id)
<div class="box-header with-border">
<div class="box-heading">
<h3 class="box-title"> {{ trans('admin/users/general.software_user', array('name' => $user->first_name)) }}</h3>
</div>
</div><!-- /.box-header -->
@endif
<div class="box-body">
<!-- checked out licenses table -->
@if (count($user->licenses) > 0)
<div class="table-responsive">
<table class="table table-striped">
<thead>
<tr>
<th class="col-md-5">{{ trans('general.name') }}</th>
<th class="col-md-4">{{ trans('admin/hardware/form.serial') }}</th>
</tr>
</thead>
<tbody>
@foreach ($user->licenses as $license)
<tr>
<td>{{ $license->name }}</td>
<td>
@can('licenses.keys')
{{ mb_strimwidth($license->serial, 0, 50, "...") }}
@else
---
@endcan
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@else
<div class="col-md-12">
<div class="alert alert-info alert-block">
<i class="fa fa-info-circle"></i>
{{ trans('general.no_results') }}
</div>
</div>
@endif
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="box box-default">
@if ($user->id)
<div class="box-header with-border">
<div class="box-heading">
<h3 class="box-title"> {{ trans('general.consumables') }} </h3>
</div>
</div><!-- /.box-header -->
@endif
<div class="box-body">
<!-- checked out consumables table -->
@if (count($user->consumables) > 0)
<div class="table-responsive">
<table class="table table-striped">
<thead>
<tr>
<th class="col-md-12">{{ trans('general.name') }}</th>
</tr>
</thead>
<tbody>
@foreach ($user->consumables as $consumable)
<tr>
<td>{{ $consumable->name }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@else
<div class="col-md-12">
<div class="alert alert-info alert-block">
<i class="fa fa-info-circle"></i>
{{ trans('general.no_results') }}
</div>
</div>
@endif
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="box box-default">
@if ($user->id)
<div class="box-header with-border">
<div class="box-heading">
<h3 class="box-title"> {{ trans('general.accessories') }}</h3>
</div>
</div><!-- /.box-header -->
@endif
<div class="box-body">
<!-- checked out licenses table -->
@if (count($user->accessories) > 0)
<div class="table-responsive">
<table class="table table-striped">
<thead>
<tr>
<th class="col-md-12">Name</th>
</tr>
</thead>
<tbody>
@foreach ($user->accessories as $accessory)
<tr>
<td>{{ $accessory->name }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@else
<div class="col-md-12">
<div class="alert alert-info alert-block">
<i class="fa fa-info-circle"></i>
{{ trans('general.no_results') }}
</div>
</div>
@endif
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="box box-default">
@if ($user->id)
<div class="box-header with-border">
<div class="box-heading">
<h3 class="box-title"> History</h3>
</div>
</div><!-- /.box-header -->
@endif
<div class="box-body">
@if (count($userlog) > 0)
<div class="table-responsive">
<table class="table table-striped" id="example">
<thead>
<tr>
<th class="col-md-1"></th>
<th class="col-md-2"><span class="line"></span>{{ trans('table.action') }}</th>
<th class="col-md-4"><span class="line"></span>{{ trans('general.asset') }}</th>
<th class="col-md-2"><span class="line"></span>{{ trans('table.by') }}</th>
<th class="col-md-3">{{ trans('general.date') }}</th>
</tr>
</thead>
<tbody>
@foreach ($userlog as $log)
<tr>
<td class="text-center">
@if ($log->itemType()=="asset")
<i class="fa fa-barcode"></i>
@elseif ($log->itemType()=="accessory")
<i class="fa fa-keyboard-o"></i>
@elseif ($log->itemType()=="consumable")
<i class="fa fa-tint"></i>
@elseif ($log->itemType()=="license")
<i class="fa fa-floppy-o"></i>
@else
<i class="fa fa-times"></i>
@endif
</td>
<td>
{{ strtolower(trans('general.'.str_replace(' ','_',$log->action_type))) }}
</td>
<td>
@if (($log->item) && ($log->itemType()=="asset"))
@if ($log->item->deleted_at=='')
{{ $log->item->showAssetName() }}
@else
<del>{{ $log->item->showAssetName() }}</del> (deleted)
@endif
@elseif ($log->item)
@if ($log->item->deleted_at=='')
{{ $log->item->name }}
@else
<del>{{ $log->item->name }}</del> (deleted)
@endif
@else
{{ trans('general.bad_data') }}
@endif
</td>
<td>
@if ($log->user)
{{ $log->user->fullName() }}
@endif
</td>
<td>{{ $log->created_at }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@else
<div class="row">
<div class="col-md-12">
<div class="alert alert-info alert-block">
<i class="fa fa-info-circle"></i>
{{ trans('general.no_results') }}
<div class="box box-default">
@if ($user->id)
<div class="box-header with-border">
<div class="box-heading">
<h3 class="box-title"> {{ trans('admin/users/general.assets_user', array('name' => $user->first_name)) }}</h3>
</div>
</div><!-- /.box-header -->
@endif
<div class="box-body">
<!-- checked out assets table -->
@if (count($user->assets) > 0)
<div class="table-responsive">
<table class="table table-striped">
<thead>
<tr>
<th class="col-md-4">{{ trans('admin/hardware/table.asset_model') }}</th>
<th class="col-md-2">{{ trans('admin/hardware/table.asset_tag') }}</th>
<th class="col-md-3">{{ trans('general.name') }}</th>
<th></th>
</tr>
</thead>
<tbody>
@foreach ($user->assets as $asset)
<tr>
<td>
@if ($asset->physical=='1') {{ $asset->model->name }}
@endif
</td>
<td>{{ $asset->asset_tag }}</td>
<td>{{ $asset->name }}</td>
<td>
@if (($asset->image) && ($asset->image!=''))
<img src="{{ config('app.url') }}/uploads/assets/{{ $asset->image }}" height="50" width="50">
@elseif (($asset->model) && ($asset->model->image!=''))
<img src="{{ config('app.url') }}/uploads/models/{{ $asset->model->image }}" height="50" width="50">
@endif
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@else
<div class="col-md-12">
<div class="alert alert-info alert-block">
<i class="fa fa-info-circle"></i>
{{ trans('general.no_results') }}
</div>
</div>
@endif
</div>
</div>
</div>
@endif
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="box box-default">
@if ($user->id)
<div class="box-header with-border">
<div class="box-heading">
<h3 class="box-title"> {{ trans('admin/users/general.software_user', array('name' => $user->first_name)) }}</h3>
</div>
</div><!-- /.box-header -->
@endif
<div class="box-body">
<!-- checked out licenses table -->
@if (count($user->licenses) > 0)
<div class="table-responsive">
<table class="table table-striped">
<thead>
<tr>
<th class="col-md-5">{{ trans('general.name') }}</th>
<th class="col-md-4">{{ trans('admin/hardware/form.serial') }}</th>
</tr>
</thead>
<tbody>
@foreach ($user->licenses as $license)
<tr>
<td>{{ $license->name }}</td>
<td>
@can('licenses.keys')
{{ mb_strimwidth($license->serial, 0, 50, "...") }}
@else
---
@endcan
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@else
<div class="col-md-12">
<div class="alert alert-info alert-block">
<i class="fa fa-info-circle"></i>
{{ trans('general.no_results') }}
</div>
</div>
@endif
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="box box-default">
@if ($user->id)
<div class="box-header with-border">
<div class="box-heading">
<h3 class="box-title"> {{ trans('general.consumables') }} </h3>
</div>
</div><!-- /.box-header -->
@endif
<div class="box-body">
<!-- checked out consumables table -->
@if (count($user->consumables) > 0)
<div class="table-responsive">
<table class="table table-striped">
<thead>
<tr>
<th class="col-md-12">{{ trans('general.name') }}</th>
</tr>
</thead>
<tbody>
@foreach ($user->consumables as $consumable)
<tr>
<td>{{ $consumable->name }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@else
<div class="col-md-12">
<div class="alert alert-info alert-block">
<i class="fa fa-info-circle"></i>
{{ trans('general.no_results') }}
</div>
</div>
@endif
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="box box-default">
@if ($user->id)
<div class="box-header with-border">
<div class="box-heading">
<h3 class="box-title"> {{ trans('general.accessories') }}</h3>
</div>
</div><!-- /.box-header -->
@endif
<div class="box-body">
<!-- checked out licenses table -->
@if (count($user->accessories) > 0)
<div class="table-responsive">
<table class="table table-striped">
<thead>
<tr>
<th class="col-md-12">Name</th>
</tr>
</thead>
<tbody>
@foreach ($user->accessories as $accessory)
<tr>
<td>{{ $accessory->name }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@else
<div class="col-md-12">
<div class="alert alert-info alert-block">
<i class="fa fa-info-circle"></i>
{{ trans('general.no_results') }}
</div>
</div>
@endif
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="box box-default">
@if ($user->id)
<div class="box-header with-border">
<div class="box-heading">
<h3 class="box-title"> History</h3>
</div>
</div><!-- /.box-header -->
@endif
<div class="box-body">
@if (count($userlog) > 0)
<div class="table-responsive">
<table class="table table-striped" id="example">
<thead>
<tr>
<th class="col-md-1"></th>
<th class="col-md-2"><span class="line"></span>{{ trans('table.action') }}</th>
<th class="col-md-4"><span class="line"></span>{{ trans('general.asset') }}</th>
<th class="col-md-2"><span class="line"></span>{{ trans('table.by') }}</th>
<th class="col-md-3">{{ trans('general.date') }}</th>
</tr>
</thead>
<tbody>
@foreach ($userlog as $log)
<tr>
<td class="text-center">
@if ($log->itemType()=="asset")
<i class="fa fa-barcode"></i>
@elseif ($log->itemType()=="accessory")
<i class="fa fa-keyboard-o"></i>
@elseif ($log->itemType()=="consumable")
<i class="fa fa-tint"></i>
@elseif ($log->itemType()=="license")
<i class="fa fa-floppy-o"></i>
@else
<i class="fa fa-times"></i>
@endif
</td>
<td>
{{ strtolower(trans('general.'.str_replace(' ','_',$log->action_type))) }}
</td>
<td>
@if (($log->item) && ($log->itemType()=="asset"))
@if ($log->item->deleted_at=='')
{{ $log->item->showAssetName() }}
@else
<del>{{ $log->item->showAssetName() }}</del> (deleted)
@endif
@elseif ($log->item)
@if ($log->item->deleted_at=='')
{{ $log->item->name }}
@else
<del>{{ $log->item->name }}</del> (deleted)
@endif
@else
{{ trans('general.bad_data') }}
@endif
</td>
<td>
@if ($log->user)
{{ $log->user->fullName() }}
@endif
</td>
<td>{{ $log->created_at }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@else
<div class="col-md-12">
<div class="alert alert-info alert-block">
<i class="fa fa-info-circle"></i>
{{ trans('general.no_results') }}
</div>
</div>
@endif
</div>
</div>
</div>
</div>
@stop