|
12 | 12 |
|
13 | 13 | namespace App\Site\Controllers\Admin;
|
14 | 14 |
|
| 15 | +use App\Site\Routing\RouteInfo; |
15 | 16 | use Degami\Basics\Exceptions\BasicException;
|
16 | 17 | use Degami\PHPFormsApi\Abstracts\Base\Element;
|
17 | 18 | use DI\DependencyException;
|
|
23 | 24 | use \App\Site\Models\Rewrite;
|
24 | 25 | use \App\Site\Controllers\Admin\Json\SitemapCallback;
|
25 | 26 | use Phpfastcache\Exceptions\PhpfastcacheSimpleCacheException;
|
| 27 | +use Symfony\Component\HttpFoundation\Response; |
26 | 28 |
|
27 | 29 | /**
|
28 | 30 | * "Sitemaps" Admin Page
|
@@ -69,6 +71,20 @@ protected function getObjectIdQueryParam(): string
|
69 | 71 | return 'sitemap_id';
|
70 | 72 | }
|
71 | 73 |
|
| 74 | + protected function beforeRender() |
| 75 | + { |
| 76 | + if ($this->getRequest()->get('action') == 'generate') { |
| 77 | + $this->addFlashMessage('success', 'Sitemap Generated.'); |
| 78 | + /** @var Sitemap $sitemap */ |
| 79 | + $sitemap = $this->getObject(); |
| 80 | + $sitemap->generate(); |
| 81 | + |
| 82 | + return $this->doRedirect($this->getControllerUrl()); |
| 83 | + } |
| 84 | + |
| 85 | + return parent::beforeRender(); |
| 86 | + } |
| 87 | + |
72 | 88 | /**
|
73 | 89 | * {@inheritdocs}
|
74 | 90 | *
|
@@ -356,6 +372,7 @@ public function formSubmitted(FAPI\Form $form, &$form_state)
|
356 | 372 | }
|
357 | 373 |
|
358 | 374 | if ($form->getTriggeringElement()->getName() == 'save_publish') {
|
| 375 | + $this->addFlashMessage('success', 'Sitemap Generated.'); |
359 | 376 | $sitemap->generate();
|
360 | 377 | }
|
361 | 378 |
|
@@ -406,6 +423,7 @@ function ($sitemap) {
|
406 | 423 | " ",
|
407 | 424 | [
|
408 | 425 | ($sitemap->getPublishedOn() != null && $sitemap->getContent() != null ? $this->getFrontendModelButton($sitemap) : ''),
|
| 426 | + $this->getActionButton('generate', $sitemap->getId(), 'btn btn-warning generate', 'rss', 'Generate'), |
409 | 427 | $this->getEditButton($sitemap->id),
|
410 | 428 | $this->getDeleteButton($sitemap->id),
|
411 | 429 | ]
|
|
0 commit comments