Skip to content

Commit 7c727d8

Browse files
committed
wip : add delete task route/controller method [skip ci]
1 parent 504e50e commit 7c727d8

File tree

7 files changed

+70
-12
lines changed

7 files changed

+70
-12
lines changed

resources/lang/en/messages.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,6 @@
44
'success' => [
55
'create' => 'Task Created Successfully',
66
'update' => 'Task Updated Successfully',
7+
'delete' => 'Task Deleted Successfully'
78
],
89
];

resources/views/tasks/index.blade.php

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,15 +48,19 @@
4848
@empty
4949
<tr>
5050
<td class="tac" colspan="5">
51-
<p class="pa2">No Tasks Found.</p>
52-
<div>
53-
<a class="btn btn-md btn-primary" href="{{route('totem.task.create')}}">New Task</a>
54-
</div>
5551

5652
<img class="pa2" src="/vendor/totem/img/funnel.svg">
53+
<p class="pa2">No Tasks Found.</p>
5754
</td>
5855
</tr>
5956
@endforelse
6057
</tbody>
6158
</table>
6259
@stop
60+
@section('main-panel-footer')
61+
62+
<div class="pv1 pl2 df">
63+
<a class="btn btn-md btn-primary" href="{{route('totem.task.create')}}">New Task</a>
64+
</div>
65+
66+
@stop

resources/views/tasks/view.blade.php

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,13 @@
3636
@section('main-panel-footer')
3737
<div class="pv1 pl2 df">
3838
<a href="{{ route('totem.task.run', $task) }}" class="btn btn-md btn-primary mr1">Run</a>
39-
<a href="{{ route('totem.task.edit', $task) }}" class="btn btn-md btn-primary">Edit</a>
39+
<a href="{{ route('totem.task.edit', $task) }}" class="btn btn-md btn-primary mr1">Edit</a>
40+
<form class="dib" action="{{route('totem.task.delete', $task)}}" method="post">
41+
{{ csrf_field() }}
42+
{{ method_field('delete') }}
43+
<button type="submit" class="btn btn-md btn-primary">Delete</button>
44+
</form>
45+
4046
</div>
4147
@stop
4248
@section('additional-panels')

routes/web.php

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,15 @@
1515
Route::get('create', 'TasksController@create')->name('totem.task.create');
1616
Route::post('create', 'TasksController@store');
1717

18-
Route::post('status', 'ActiveTasksController@store')->name('totem.task.activate');
19-
Route::delete('status/{id}', 'ActiveTasksController@destroy')->name('totem.task.deactivate');
20-
2118
Route::get('{task}', 'TasksController@show')->name('totem.task.view');
2219

23-
Route::get('{task}/run', 'ExecuteTasksController@index')->name('totem.task.run');
24-
2520
Route::get('{task}/edit', 'TasksController@edit')->name('totem.task.edit');
2621
Route::post('{task}/edit', 'TasksController@update');
22+
23+
Route::delete('{task}', 'TasksController@destroy')->name('totem.task.delete');
24+
25+
Route::post('status', 'ActiveTasksController@store')->name('totem.task.activate');
26+
Route::delete('status/{id}', 'ActiveTasksController@destroy')->name('totem.task.deactivate');
27+
28+
Route::get('{task}/run', 'ExecuteTasksController@index')->name('totem.task.run');
2729
});

src/Events/Deleted.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<?php
2+
3+
namespace Studio\Totem\Events;
4+
5+
class Deleted extends Event
6+
{
7+
}

src/Http/Controllers/TasksController.php

Lines changed: 39 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,19 +28,24 @@ class TasksController extends Controller
2828
public function __construct(TaskInterface $tasks, Kernel $kernel)
2929
{
3030
parent::__construct();
31-
3231
$this->tasks = $tasks;
3332

3433
$this->kernel = $kernel;
3534
}
3635

36+
/**
37+
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
38+
*/
3739
public function index()
3840
{
3941
return view('totem::tasks.index', [
4042
'tasks' => $this->tasks->builder()->paginate(10),
4143
]);
4244
}
4345

46+
/**
47+
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
48+
*/
4449
public function create()
4550
{
4651
return view('totem::tasks.form', [
@@ -49,20 +54,34 @@ public function create()
4954
]);
5055
}
5156

57+
/**
58+
* @param CreateTaskRequest $request
59+
* @return \Illuminate\Http\RedirectResponse
60+
*/
5261
public function store(CreateTaskRequest $request)
5362
{
5463
$this->tasks->store($request->all());
5564

56-
return redirect()->route('totem.tasks.all')->with('success', trans('totem::messages.success.create'));
65+
return redirect()
66+
->route('totem.tasks.all')
67+
->with('success', trans('totem::messages.success.create'));
5768
}
5869

70+
/**
71+
* @param $task
72+
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
73+
*/
5974
public function show($task)
6075
{
6176
return view('totem::tasks.view', [
6277
'task' => $task,
6378
]);
6479
}
6580

81+
/**
82+
* @param $task
83+
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
84+
*/
6685
public function edit($task)
6786
{
6887
return view('totem::tasks.form', [
@@ -71,6 +90,11 @@ public function edit($task)
7190
]);
7291
}
7392

93+
/**
94+
* @param UpdateTaskRequest $request
95+
* @param $task
96+
* @return \Illuminate\Http\RedirectResponse
97+
*/
7498
public function update(UpdateTaskRequest $request, $task)
7599
{
76100
$task = $this->tasks->update($request->all(), $task);
@@ -79,4 +103,17 @@ public function update(UpdateTaskRequest $request, $task)
79103
->with('task', $task)
80104
->with('success', trans('totem::messages.success.update'));
81105
}
106+
107+
/**
108+
* @param $task
109+
* @return \Illuminate\Http\RedirectResponse
110+
*/
111+
public function destroy($task)
112+
{
113+
$this->tasks->destroy($task);
114+
115+
return redirect()
116+
->route('totem.tasks.all')
117+
->with('success', trans('totem::messages.success.delete'));
118+
}
82119
}

src/Repositories/EloquentTaskRepository.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
namespace Studio\Totem\Repositories;
44

5+
use Studio\Totem\Events\Deleted;
56
use Studio\Totem\Task;
67
use Studio\Totem\Events\Created;
78
use Studio\Totem\Events\Updated;

0 commit comments

Comments
 (0)