Added commands to delete component group (also fixes bug in API)

This commit is contained in:
James Brooks
2015-08-26 13:36:10 +01:00
parent c466620435
commit be080a10ef
6 changed files with 151 additions and 6 deletions

View File

@@ -11,14 +11,18 @@
namespace CachetHQ\Cachet\Http\Controllers\Api;
use CachetHQ\Cachet\Commands\ComponentGroup\RemoveComponentGroupCommand;
use CachetHQ\Cachet\Models\ComponentGroup;
use Exception;
use GrahamCampbell\Binput\Facades\Binput;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Http\Request;
use Symfony\Component\HttpKernel\Exception\BadRequestHttpException;
class ComponentGroupController extends AbstractApiController
{
use DispatchesJobs;
/**
* Get all groups.
*
@@ -93,7 +97,7 @@ class ComponentGroupController extends AbstractApiController
*/
public function deleteGroup(ComponentGroup $group)
{
$group->delete();
$this->dispatch(new RemoveComponentGroupCommand($group));
return $this->noContent();
}

View File

@@ -14,6 +14,7 @@ namespace CachetHQ\Cachet\Http\Controllers\Dashboard;
use AltThree\Validator\ValidationException;
use CachetHQ\Cachet\Commands\Component\AddComponentCommand;
use CachetHQ\Cachet\Commands\Component\RemoveComponentCommand;
use CachetHQ\Cachet\Commands\ComponentGroup\RemoveComponentGroupCommand;
use CachetHQ\Cachet\Models\Component;
use CachetHQ\Cachet\Models\ComponentGroup;
use CachetHQ\Cachet\Models\Tag;
@@ -207,11 +208,7 @@ class ComponentController extends Controller
*/
public function deleteComponentGroupAction(ComponentGroup $group)
{
$group->components->map(function ($component) {
$component->update(['group_id' => 0]);
});
$group->delete();
$this->dispatch(new RemoveComponentGroupCommand($group));
return Redirect::route('dashboard.components.index');
}