Skip to content

Commit 989ce72

Browse files
committed
Bug: Ticket edition was not accessible by agent
1 parent 1285898 commit 989ce72

File tree

4 files changed

+22
-23
lines changed

4 files changed

+22
-23
lines changed

src/Controllers/TicketsController.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ public function __construct(Ticket $tickets, \PanicHDMember $member)
3535
{
3636
$this->middleware('PanicHD\PanicHD\Middleware\EnvironmentReadyMiddleware', ['only' => ['create']]);
3737
$this->middleware('PanicHD\PanicHD\Middleware\UserAccessMiddleware', ['only' => ['show', 'downloadAttachment', 'viewAttachment']]);
38-
$this->middleware('PanicHD\PanicHD\Middleware\AgentAccessMiddleware', ['only' => ['edit', 'edit_with_values', 'update', 'changeAgent', 'changePriority', 'hide']]);
38+
$this->middleware('PanicHD\PanicHD\Middleware\AgentAccessMiddleware', ['only' => ['edit', 'update', 'changeAgent', 'changePriority', 'hide']]);
3939
$this->middleware('PanicHD\PanicHD\Middleware\IsAdminMiddleware', ['only' => ['destroy']]);
4040

4141
$this->tickets = $tickets;

src/Middleware/AgentAccessMiddleware.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,28 +20,28 @@ class AgentAccessMiddleware
2020
public function handle($request, Closure $next)
2121
{
2222
$member = \PanicHDMember::findOrFail(auth()->user()->id);
23-
24-
// Granted to all Admins
23+
24+
// Granted to all Admins
2525
if ($member->isAdmin()) {
2626
return $next($request);
2727
}
28-
28+
2929
// Get Ticket instance. Fails if not found
3030
$ticket = $this->getRouteTicket($request);
31-
31+
3232
if ($member->isAgent()) {
3333
// Assigned Agent has access always
3434
if ($member->isAssignedAgent($ticket->id)){
3535
return $next($request);
3636
}
37-
37+
3838
if ($member->currentLevel() > 1 and Setting::grab('agent_restrict') == 0){
3939
// Check if element is a visible item for this agent
4040
if ($member->categories()->where('id',$this->getRouteCategory($request)->id)->count() == 1){
4141
return $next($request);
4242
}
4343
}
44-
}
44+
}
4545

4646
return redirect()->action('\PanicHD\PanicHD\Controllers\TicketsController@index')
4747
->with('warning', trans('panichd::lang.you-are-not-permitted-to-access'));

src/Traits/TicketRoutes.php

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ trait TicketRoutes
1515
protected $mod_route_prefix;
1616
protected $mod_route_suffix;
1717
protected $route_ticket;
18-
18+
1919
public function __construct(Request $request)
2020
{
2121
$a_route = explode('.', $request->route()->getName());
@@ -31,18 +31,18 @@ public function __construct(Request $request)
3131
default:
3232
$this->mod_route_prefix = current($a_route);
3333
}
34-
34+
3535
// last($a_route) == Route suffix
3636
if (in_array(last($a_route), ['download-attachment', 'view-attachment'])){
3737
$this->mod_route_suffix = "get-attachment";
3838
}else{
3939
$this->mod_route_suffix = last($a_route);
4040
}
41-
41+
4242
$this->route_ticket = false;
43-
}
43+
}
44+
4445

45-
4646
/**
4747
* Returns related ticket instance to current route
4848
*
@@ -73,13 +73,12 @@ public function getRouteTicket($request)
7373
}else{
7474
$ticket_id = $request->get('ticket_id');
7575
}
76-
7776
}
78-
77+
7978
$this->route_ticket = Ticket::findOrFail($ticket_id);
8079
return $this->route_ticket;
8180
}
82-
81+
8382
/**
8483
* Returns related category instance to current route
8584
*
@@ -97,8 +96,8 @@ public function getRouteCategory($request)
9796
$category_id = $this->route_ticket->category_id;
9897
}
9998
}
100-
99+
101100
$cat = Category::findOrFail($category_id);
102101
return $cat;
103102
}
104-
}
103+
}

src/routes.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
->name("$main_route.create");
3131

3232
// Open Ticket edit page with optional parameters set by URL
33-
Route::get("$main_route_path/{id}/edit/{parameters?}", 'PanicHD\PanicHD\Controllers\TicketsController@edit')
33+
Route::get("$main_route_path/{ticket}/edit/{parameters?}", 'PanicHD\PanicHD\Controllers\TicketsController@edit')
3434
->where('parameters', '(.*)')
3535
->name("$main_route.edit");
3636

@@ -82,11 +82,11 @@
8282
->name("$main_route.reopen");
8383
//});
8484

85-
// Returns permission_level for category_id
86-
Route::get("$main_route_path/permissionLevel/{category_id?}", [
87-
'as' => $main_route.'-permissionLevel',
88-
'uses' => 'PanicHD\PanicHD\Controllers\TicketsController@permissionLevel',
89-
]);
85+
// Returns permission_level for category_id
86+
Route::get("$main_route_path/permissionLevel/{category_id?}", [
87+
'as' => $main_route.'-permissionLevel',
88+
'uses' => 'PanicHD\PanicHD\Controllers\TicketsController@permissionLevel',
89+
]);
9090

9191
// Ticket list: Change agent for a ticket
9292
Route::patch("$main_route_path-change.agent", 'PanicHD\PanicHD\Controllers\TicketsController@changeAgent')

0 commit comments

Comments
 (0)