diff --git a/flexiapi/app/Http/Controllers/Account/DeviceController.php b/flexiapi/app/Http/Controllers/Account/DeviceController.php
new file mode 100644
index 0000000..5b7ec1e
--- /dev/null
+++ b/flexiapi/app/Http/Controllers/Account/DeviceController.php
@@ -0,0 +1,39 @@
+ $connector->getDevices($request->user()->identifier)
+ ->keyBy('uuid')
+ ]);
+ }
+
+ public function delete(Request $request, string $uuid)
+ {
+ $connector = new FlexisipConnector;
+
+ return view('account.devices.delete',
+ ['device' => $connector->getDevices($request->user()->identifier)
+ ->keyBy('uuid')
+ ->where('uuid', $uuid)
+ ]);
+ }
+
+ public function destroy(string $uuid)
+ {
+ $connector = new FlexisipConnector;
+ $connector->deleteDevice($request->user()->identifier, $uuid);
+
+ return redirect()->route('account.device.index');
+ }
+}
diff --git a/flexiapi/resources/views/account/devices/delete.blade.php b/flexiapi/resources/views/account/devices/delete.blade.php
new file mode 100644
index 0000000..c7eb8f6
--- /dev/null
+++ b/flexiapi/resources/views/account/devices/delete.blade.php
@@ -0,0 +1,29 @@
+@extends('layouts.account')
+
+@section('breadcrumb')
+
+ Devices
+
+Delete
+@endsection
+
+@section('content')
+
+Device deletion
+
+Are you sure you want to delete the following device?
+
+ User Agent: {{ $device->user_agent }}
+ Expires At: {{ $device->expires_at }}
+
+
+
+{!! Form::open(['route' => 'account.device.destroy', 'method' => 'delete']) !!}
+
+{!! Form::hidden('uuid', $device->uuid) !!}
+
+{!! Form::submit('Delete', ['class' => 'btn btn-danger float-right']) !!}
+{!! Form::close() !!}
+
+
+@endsection
\ No newline at end of file
diff --git a/flexiapi/resources/views/account/devices/index.blade.php b/flexiapi/resources/views/account/devices/index.blade.php
new file mode 100644
index 0000000..7a14273
--- /dev/null
+++ b/flexiapi/resources/views/account/devices/index.blade.php
@@ -0,0 +1,35 @@
+@extends('layouts.account')
+
+@section('breadcrumb')
+Devices
+@endsection
+
+@section('content')
+
+
+
+
+ | User Agent |
+ Expires At |
+ |
+
+
+
+ @foreach ($devices as $device)
+
+ | {{ $device->user_agent }} |
+ {{ $account->expires_at }} |
+
+
+ Delete
+
+ |
+
+ @endforeach
+
+
+
+
+@endsection
\ No newline at end of file
diff --git a/flexiapi/resources/views/account/index.blade.php b/flexiapi/resources/views/account/index.blade.php
index 83ba531..d4b477b 100644
--- a/flexiapi/resources/views/account/index.blade.php
+++ b/flexiapi/resources/views/account/index.blade.php
@@ -13,6 +13,12 @@
No email yet
@endif
+
+
+
Manage my devices
+
+ See and delete the devices linked to your account
+
Change my password
diff --git a/flexiapi/routes/web.php b/flexiapi/routes/web.php
index a805e8c..9ea78ed 100644
--- a/flexiapi/routes/web.php
+++ b/flexiapi/routes/web.php
@@ -45,6 +45,10 @@ Route::group(['middleware' => 'auth'], function () {
Route::post('email', 'AccountEmailController@update')->name('account.email.update');
Route::get('password', 'AccountPasswordController@show')->name('account.password');
Route::post('password', 'AccountPasswordController@update')->name('account.password.update');
+
+ Route::get('devices', 'Account\DeviceController@index')->name('account.device.index');
+ Route::get('devices/delete/{id}', 'Account\DeviceController@delete')->name('account.device.delete');
+ Route::delete('devices/{id}', 'Account\DeviceController@destroy')->name('account.device.destroy');
});
Route::group(['middleware' => 'auth.admin'], function () {