|
|
|
|
@ -73,4 +73,43 @@ class DomainBlocksController extends ApiController {
|
|
|
|
|
|
|
|
|
|
return $this->json(new DomainBlockResource($domain_block));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function update(Request $request, $id) {
|
|
|
|
|
$this->validate($request, [
|
|
|
|
|
'severity' => [
|
|
|
|
|
'sometimes',
|
|
|
|
|
Rule::in(['noop', 'silence', 'suspend'])
|
|
|
|
|
],
|
|
|
|
|
'reject_media' => 'sometimes|required|boolean',
|
|
|
|
|
'reject_reports' => 'sometimes|required|boolean',
|
|
|
|
|
'private_comment' => 'sometimes|string|min:1|max:1000',
|
|
|
|
|
'public_comment' => 'sometimes|string|min:1|max:1000',
|
|
|
|
|
'obfuscate' => 'sometimes|required|boolean'
|
|
|
|
|
]);
|
|
|
|
|
|
|
|
|
|
$severity = $request->input('severity');
|
|
|
|
|
$private_comment = $request->input('private_comment');
|
|
|
|
|
|
|
|
|
|
$instance = Instance::moderated()->findOrFail($id);
|
|
|
|
|
|
|
|
|
|
$instance->banned = $severity === 'suspend';
|
|
|
|
|
$instance->unlisted = $severity === 'silence';
|
|
|
|
|
$instance->notes = [$private_comment];
|
|
|
|
|
$instance->save();
|
|
|
|
|
|
|
|
|
|
InstanceService::refresh();
|
|
|
|
|
|
|
|
|
|
return $this->json(new DomainBlockResource($instance));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function delete(Request $request, $id) {
|
|
|
|
|
$instance = Instance::moderated()->findOrFail($id);
|
|
|
|
|
$instance->banned = false;
|
|
|
|
|
$instance->unlisted = false;
|
|
|
|
|
$instance->save();
|
|
|
|
|
|
|
|
|
|
InstanceService::refresh();
|
|
|
|
|
|
|
|
|
|
return $this->json([], [], 200);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|