This commit is contained in:
Dennis
2020-10-20 12:16:40 +02:00
parent d17ae49155
commit b016c18880
7 changed files with 144 additions and 111 deletions

View File

@@ -72,6 +72,8 @@ class ServerController extends Controller
{
$server = $request->user()->servers()->findOrFail($id);
$this->authorize('delete', $server);
dispatch(new DeleteServer($server->ploi_id));
$request->user()->systemLogs()->create([

View File

@@ -6,6 +6,7 @@ use App\Models\Server;
use App\Jobs\Sites\CreateSite;
use App\Jobs\Sites\DeleteSite;
use App\Http\Requests\SiteRequest;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use App\Http\Resources\SiteResource;
@@ -76,9 +77,9 @@ class SiteController extends Controller
]);
}
public function destroy($id)
public function destroy(Request $request, $id)
{
$site = auth()->user()->sites()->findOrFail($id);
$site = $request->user()->sites()->findOrFail($id);
$this->authorize('delete', $site);

195
public/js/34.js vendored
View File

@@ -458,95 +458,120 @@ var render = function() {
key: "segments",
fn: function() {
return [
_c("SettingsSegment", {
scopedSlots: _vm._u([
{
key: "title",
fn: function() {
return [_vm._v(_vm._s(_vm.__("Overview")))]
},
proxy: true
},
{
key: "form",
fn: function() {
return [
_c(
"form",
{
staticClass: "space-y-4",
on: {
submit: function($event) {
$event.preventDefault()
return _vm.submit($event)
}
}
_vm.can("servers", "update")
? _c("SettingsSegment", {
scopedSlots: _vm._u(
[
{
key: "title",
fn: function() {
return [
_vm._v(_vm._s(_vm.__("Overview")))
]
},
[
_c("FormInput", {
attrs: {
label: _vm.__("Name"),
errors: _vm.$page.errors.name
},
model: {
value: _vm.form.name,
callback: function($$v) {
_vm.$set(_vm.form, "name", $$v)
proxy: true
},
{
key: "form",
fn: function() {
return [
_c(
"form",
{
staticClass: "space-y-4",
on: {
submit: function($event) {
$event.preventDefault()
return _vm.submit($event)
}
}
},
expression: "form.name"
}
}),
_vm._v(" "),
_c(
"FormActions",
[
_c("Button", [
_vm._v(
_vm._s(_vm.__("Save changes"))
[
_c("FormInput", {
attrs: {
label: _vm.__("Name"),
errors:
_vm.$page.errors.name
},
model: {
value: _vm.form.name,
callback: function($$v) {
_vm.$set(
_vm.form,
"name",
$$v
)
},
expression: "form.name"
}
}),
_vm._v(" "),
_c(
"FormActions",
[
_c("Button", [
_vm._v(
_vm._s(
_vm.__("Save changes")
)
)
])
],
1
)
])
],
1
)
],
1
)
]
},
proxy: true
}
])
}),
_vm._v(" "),
_c("SettingsSegment", {
scopedSlots: _vm._u([
{
key: "title",
fn: function() {
return [
_vm._v(_vm._s(_vm.__("Danger zone")))
]
},
proxy: true
},
{
key: "content",
fn: function() {
return [
_c(
"Button",
{
attrs: { variant: "danger" },
on: { click: _vm.confirmDelete }
],
1
)
]
},
[_vm._v(_vm._s(_vm.__("Delete")))]
)
]
},
proxy: true
}
])
})
proxy: true
}
],
null,
false,
2692692559
)
})
: _vm._e(),
_vm._v(" "),
_vm.can("servers", "delete")
? _c("SettingsSegment", {
scopedSlots: _vm._u(
[
{
key: "title",
fn: function() {
return [
_vm._v(
_vm._s(_vm.__("Danger zone"))
)
]
},
proxy: true
},
{
key: "content",
fn: function() {
return [
_c(
"Button",
{
attrs: { variant: "danger" },
on: { click: _vm.confirmDelete }
},
[_vm._v(_vm._s(_vm.__("Delete")))]
)
]
},
proxy: true
}
],
null,
false,
253833427
)
})
: _vm._e()
]
},
proxy: true

45
public/js/49.js vendored
View File

@@ -841,27 +841,32 @@ var render = function() {
[_vm._v("View")]
),
_vm._v(" "),
_c(
"DropdownListItemButton",
{
staticClass:
"text-danger",
on: {
click: function(
$event
) {
return _vm.confirmDelete(
server
)
}
}
},
[
_vm._v(
"\n Delete\n "
)
]
_vm.can(
"servers",
"delete"
)
? _c(
"DropdownListItemButton",
{
staticClass:
"text-danger",
on: {
click: function(
$event
) {
return _vm.confirmDelete(
server
)
}
}
},
[
_vm._v(
"\n Delete\n "
)
]
)
: _vm._e()
],
1
)

2
public/js/app.js vendored
View File

@@ -43,7 +43,7 @@
/******/
/******/ // script path function
/******/ function jsonpScriptSrc(chunkId) {
/******/ return __webpack_require__.p + "js/" + ({}[chunkId]||chunkId) + ".js?id=" + {"0":"0dcde053981f92959e59","1":"40f269324eb90e7c5005","2":"d2a49802291d427ca7c8","3":"a0f4c2f49863abbfe7f1","4":"27416beeac7dd90b6c9f","5":"fbfbcf45610d060d921e","6":"73fc0264b5cc06f5bd55","7":"140acb8c38018bb7c822","8":"45200cc4fd126fda2ffc","9":"3347d79d05ca0ac7a350","10":"f4b9874849329e009671","11":"6f387eba6830da61b997","12":"61c7f47dc4727d867fa7","13":"b5722f8cbeefb2bb0cde","14":"5a60048db4d9ace9558a","15":"b406efe2b2eb8988be0b","16":"ae392c0d7939c1834713","17":"031677a852ea3f5eb57a","18":"6e9cd6162ae0d47d846c","19":"0cefe5adcf3c9c67917d","20":"29bbd0539d7b23324a3d","21":"c4a51393e5b2e3e7acbc","22":"db25f600926c9f3cd79f","23":"0924f149c1e3f1ccc23b","24":"e0139a753b3037348bd3","25":"523a459f15606706e0f4","26":"78ea723a4d8f6c925287","27":"61b4c089c608f7f27b57","28":"df81cbcdc7dddac9a1cf","29":"1d1e4072de9faa984b8c","30":"34254d5ab54e1b77af57","31":"b24fe053d9586525bd04","32":"d40da2a9d0dfcdfcf40e","33":"4ee1d57db25ce73da07a","34":"fdff6e3130a0121e25af","35":"13384dcc57163b2c15fb","36":"07128eb2197b6a6d9955","37":"8b8ab95aeaa851c57033","38":"d123e29b59d771ee7750","39":"fe834feb15b9160591f0","40":"90e1e3b80ac15780aa45","41":"26e0438c5430defefcb4","42":"f7e025a8a96b2e66d300","43":"8c53f0e16f44ae918000","44":"ae179ec931d5c3e7d89f","45":"13d7329da027c1e0cca4","46":"96963330e5744696f861","47":"b9dd7aafbd529e03b008","48":"303c80c25410a7039819","49":"b2cc12975df878ca676d","50":"94a682e9b6d6472e060f","51":"d5a713429e4ed79b884b","52":"22fc8b2d90e12bd3f5eb","53":"327b50ce903b0f348341","54":"cb30fead7b74df252e66","55":"0953446db22303519e08","56":"6bc136b4c9a35e9a1836","57":"3f7b6082e37f0f114055","58":"a1668de9111dbf09572b","59":"b6ab5d03b46b7ae139a7","60":"37d00800b71f79260df7","61":"7799c0088535883cfcdc","62":"5e0875a9e333d029edcb","63":"3fbf8bbeb22bdf1a3538","64":"35e94b96c17d9176fdd1","65":"c40d3bc7ae4294705195","66":"54405ebd171bf0a0be8a","67":"0cf2c9062ba4048c4d16","68":"47e5da1f84b24bfeab25","69":"6258b9920cf545ad6043","70":"cf0dc959ae07c017ed3e","71":"a82af2a3c60b498c6b10","72":"adda6ceb50c78f5aae68","73":"884f5978ac8bcb4fdc45","74":"cf1ca882da11e35bea7c","75":"7e7c004989bdfef01a71"}[chunkId] + ""
/******/ return __webpack_require__.p + "js/" + ({}[chunkId]||chunkId) + ".js?id=" + {"0":"0dcde053981f92959e59","1":"40f269324eb90e7c5005","2":"d2a49802291d427ca7c8","3":"a0f4c2f49863abbfe7f1","4":"27416beeac7dd90b6c9f","5":"fbfbcf45610d060d921e","6":"73fc0264b5cc06f5bd55","7":"140acb8c38018bb7c822","8":"45200cc4fd126fda2ffc","9":"3347d79d05ca0ac7a350","10":"f4b9874849329e009671","11":"6f387eba6830da61b997","12":"61c7f47dc4727d867fa7","13":"b5722f8cbeefb2bb0cde","14":"5a60048db4d9ace9558a","15":"b406efe2b2eb8988be0b","16":"ae392c0d7939c1834713","17":"031677a852ea3f5eb57a","18":"6e9cd6162ae0d47d846c","19":"0cefe5adcf3c9c67917d","20":"29bbd0539d7b23324a3d","21":"c4a51393e5b2e3e7acbc","22":"db25f600926c9f3cd79f","23":"0924f149c1e3f1ccc23b","24":"e0139a753b3037348bd3","25":"523a459f15606706e0f4","26":"78ea723a4d8f6c925287","27":"61b4c089c608f7f27b57","28":"df81cbcdc7dddac9a1cf","29":"1d1e4072de9faa984b8c","30":"34254d5ab54e1b77af57","31":"b24fe053d9586525bd04","32":"d40da2a9d0dfcdfcf40e","33":"4ee1d57db25ce73da07a","34":"a792244f1d2629ddd5e3","35":"13384dcc57163b2c15fb","36":"07128eb2197b6a6d9955","37":"8b8ab95aeaa851c57033","38":"d123e29b59d771ee7750","39":"fe834feb15b9160591f0","40":"90e1e3b80ac15780aa45","41":"26e0438c5430defefcb4","42":"f7e025a8a96b2e66d300","43":"8c53f0e16f44ae918000","44":"ae179ec931d5c3e7d89f","45":"13d7329da027c1e0cca4","46":"96963330e5744696f861","47":"b9dd7aafbd529e03b008","48":"303c80c25410a7039819","49":"3bada47ff33752bb86b7","50":"94a682e9b6d6472e060f","51":"d5a713429e4ed79b884b","52":"22fc8b2d90e12bd3f5eb","53":"327b50ce903b0f348341","54":"cb30fead7b74df252e66","55":"0953446db22303519e08","56":"6bc136b4c9a35e9a1836","57":"3f7b6082e37f0f114055","58":"a1668de9111dbf09572b","59":"b6ab5d03b46b7ae139a7","60":"37d00800b71f79260df7","61":"7799c0088535883cfcdc","62":"5e0875a9e333d029edcb","63":"3fbf8bbeb22bdf1a3538","64":"35e94b96c17d9176fdd1","65":"c40d3bc7ae4294705195","66":"54405ebd171bf0a0be8a","67":"0cf2c9062ba4048c4d16","68":"47e5da1f84b24bfeab25","69":"6258b9920cf545ad6043","70":"cf0dc959ae07c017ed3e","71":"a82af2a3c60b498c6b10","72":"adda6ceb50c78f5aae68","73":"884f5978ac8bcb4fdc45","74":"cf1ca882da11e35bea7c","75":"7e7c004989bdfef01a71"}[chunkId] + ""
/******/ }
/******/
/******/ // The require function

View File

@@ -66,7 +66,7 @@
<DropdownList :position="position" v-if="isOpen">
<DropdownListItem :to="route('servers.show', server.id)">View</DropdownListItem>
<DropdownListItemButton class="text-danger" @click="confirmDelete(server)">
<DropdownListItemButton v-if="can('servers', 'delete')" class="text-danger" @click="confirmDelete(server)">
Delete
</DropdownListItemButton>
</DropdownList>

View File

@@ -16,7 +16,7 @@
<Tabs :server="server"/>
</template>
<template #segments>
<SettingsSegment>
<SettingsSegment v-if="can('servers', 'update')">
<template #title>{{ __('Overview') }}</template>
<template #form>
<form class="space-y-4" @submit.prevent="submit">
@@ -30,7 +30,7 @@
</template>
</SettingsSegment>
<SettingsSegment>
<SettingsSegment v-if="can('servers', 'delete')">
<template #title>{{ __('Danger zone') }}</template>
<template #content>
<Button @click="confirmDelete" variant="danger">{{ __('Delete') }}</Button>