mirror of
https://github.com/getgrav/grav-plugin-admin.git
synced 2025-11-02 03:16:11 +01:00
Fixed onAdminAfterDelMedia event always pointing to home page [#1905]
This commit is contained in:
@@ -2364,8 +2364,9 @@ class AdminController extends AdminBaseController
|
||||
return false;
|
||||
}
|
||||
|
||||
$media = $this->getMedia();
|
||||
if (!$media) {
|
||||
$page = $this->admin->page($this->route);
|
||||
$media = $page ? $this->getMedia($page) : null;
|
||||
if (null === $media) {
|
||||
$this->admin->json_response = [
|
||||
'status' => 'error',
|
||||
'message' => $this->admin::translate('PLUGIN_ADMIN.NO_PAGE_FOUND')
|
||||
@@ -2446,11 +2447,8 @@ class AdminController extends AdminBaseController
|
||||
return false;
|
||||
}
|
||||
|
||||
$page = $this->admin->page(true);
|
||||
if ($page) {
|
||||
// DEPRECATED: page
|
||||
$this->grav->fireEvent('onAdminAfterDelMedia', new Event(['object' => $page, 'page' => $page, 'media' => $media, 'filename' => $filename]));
|
||||
}
|
||||
// DEPRECATED: page
|
||||
$this->grav->fireEvent('onAdminAfterDelMedia', new Event(['object' => $page, 'page' => $page, 'media' => $media, 'filename' => $filename]));
|
||||
|
||||
$this->admin->json_response = [
|
||||
'status' => 'success',
|
||||
@@ -2639,14 +2637,20 @@ class AdminController extends AdminBaseController
|
||||
/**
|
||||
* Get page media.
|
||||
*
|
||||
* @param PageInterface|null $page
|
||||
* @return Media|null
|
||||
*/
|
||||
public function getMedia()
|
||||
public function getMedia(PageInterface $page = null)
|
||||
{
|
||||
if ($this->view !== 'media') {
|
||||
return null;
|
||||
}
|
||||
|
||||
$page = $page ?? $this->admin->page($this->route);
|
||||
if (!$page) {
|
||||
return null;
|
||||
}
|
||||
|
||||
$this->uri = $this->uri ?? $this->grav['uri'];
|
||||
|
||||
$field = (string)$this->uri->post('field', '');
|
||||
@@ -2655,11 +2659,6 @@ class AdminController extends AdminBaseController
|
||||
$order = array_map('trim', explode(',', $order));
|
||||
}
|
||||
|
||||
$page = $this->admin->page($this->route);
|
||||
if (!$page) {
|
||||
return null;
|
||||
}
|
||||
|
||||
$blueprints = $page->blueprints();
|
||||
$settings = $this->getMediaFieldSettings($blueprints, $field);
|
||||
$path = $settings['destination'] ?? $page->path();
|
||||
|
||||
Reference in New Issue
Block a user