Allows ordering of component groups. Closes #573.

This commit is contained in:
James Brooks
2015-05-19 22:52:16 +01:00
parent 879a8a5c69
commit 9337c1a75b
12 changed files with 119 additions and 30 deletions

View File

@@ -15,6 +15,7 @@ namespace CachetHQ\Cachet\Http\Controllers\Admin;
use CachetHQ\Cachet\Http\Controllers\AbstractController;
use CachetHQ\Cachet\Models\Component;
use CachetHQ\Cachet\Models\ComponentGroup;
use CachetHQ\Cachet\Models\IncidentTemplate;
use Exception;
use GrahamCampbell\Binput\Facades\Binput;
@@ -56,6 +57,23 @@ class ApiController extends AbstractController
return $componentData;
}
/**
* Updates the order of component groups.
*
* @return array
*/
public function postUpdateComponentGroupOrder()
{
$groupData = Binput::all();
foreach ($groupData['ids'] as $order => $groupId) {
ComponentGroup::find($groupId)->update([
'order' => $order + 1,
]);
}
return $groupData;
}
/**
* Returns a template by slug.
*

View File

@@ -78,7 +78,7 @@ class ComponentController extends AbstractController
return View::make('dashboard.components.groups.index')->with([
'pageTitle' => trans_choice('dashboard.components.groups.groups', 2).' - '.trans('dashboard.dashboard'),
'groups' => ComponentGroup::all(),
'groups' => ComponentGroup::orderBy('order')->get(),
'subMenu' => $this->subMenu,
]);
}

View File

@@ -107,7 +107,7 @@ class HomeController extends AbstractController
// Component & Component Group lists.
$usedComponentGroups = Component::where('group_id', '>', 0)->groupBy('group_id')->lists('group_id');
$componentGroups = ComponentGroup::whereIn('id', $usedComponentGroups)->get();
$componentGroups = ComponentGroup::whereIn('id', $usedComponentGroups)->orderBy('order')->get();
$ungroupedComponents = Component::where('group_id', 0)->orderBy('order')->orderBy('created_at')->get();
$canPageBackward = Incident::notScheduled()->where('created_at', '<', $startDate->format('Y-m-d'))->count() != 0;