add redirects to ArticleList controller and Contact controller

This commit is contained in:
Daniel Seifert 2022-07-25 11:14:46 +02:00
parent bd2477d258
commit c008ea62a7
Signed by: DanielS
GPG Key ID: 8A7C4C6ED1915C6F
6 changed files with 100 additions and 3 deletions

View File

@ -25,6 +25,8 @@ trait redirectControllerTrait
if ($this->d3ShouldDoPRGredirect()) {
/** @var Utils_PRGredirect $utils */
$utils = Registry::getUtils();
$this->setFncName(null);
$utils->d3PrgRedirect( $this->generatePageNavigationUrl() );
}
}

View File

@ -17,6 +17,6 @@ $aLang = [
'charset' => 'UTF-8',
'SHOP_MODULE_GROUP_d3PRGredirect_general' => 'anwenden auf',
'SHOP_MODULE_d3PRGredirect_search' => 'Such-Controller',
'SHOP_MODULE_d3PRGredirect_articlelists' => 'Artikellisten-Controller (Kategorien)',
'SHOP_MODULE_d3PRGredirect_alist' => 'Artikellisten-Controller (Kategorien)',
'SHOP_MODULE_d3PRGredirect_contact' => 'Kontaktanfragen-Controller',
];

View File

@ -15,8 +15,12 @@ declare(strict_types=1);
namespace D3\PRGredirects\Modules\Application\Controllers {
use OxidEsales\Eshop\Application\Controller\ArticleListController;
use OxidEsales\Eshop\Application\Controller\ContactController;
use OxidEsales\Eshop\Application\Controller\SearchController;
class ArticleListController_PRGredirect_parent extends ArticleListController {}
class ContactController_PRGredirect_parent extends ContactController {}
class SearchController_PRGredirect_parent extends SearchController {}
}

View File

@ -0,0 +1,35 @@
<?php
/**
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*
* https://www.d3data.de
*
* @copyright (C) D3 Data Development (Inh. Thomas Dartsch)
* @author D3 Data Development - Daniel Seifert <info@shopmodule.com>
* @link https://www.oxidmodule.com
*/
declare(strict_types=1);
namespace D3\PRGredirects\Modules\Application\Controllers;
use D3\PRGredirects\Application\Core\redirectControllerTrait;
class ArticleListController_PRGredirect extends ArticleListController_PRGredirect_parent
{
use redirectControllerTrait;
/**
* @return string
*/
public function render(): string
{
$template = parent::render();
$this->d3DoPRGRedirect();
return $template;
}
}

View File

@ -0,0 +1,50 @@
<?php
/**
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*
* https://www.d3data.de
*
* @copyright (C) D3 Data Development (Inh. Thomas Dartsch)
* @author D3 Data Development - Daniel Seifert <info@shopmodule.com>
* @link https://www.oxidmodule.com
*/
declare(strict_types=1);
namespace D3\PRGredirects\Modules\Application\Controllers;
use D3\PRGredirects\Application\Core\redirectControllerTrait;
class ContactController_PRGredirect extends ContactController_PRGredirect_parent
{
/** @var bool */
private $success = true;
use redirectControllerTrait;
/**
* @return bool
*/
public function send()
{
$this->success = parent::send();
return $this->success;
}
/**
* @return string
*/
public function render(): string
{
$template = parent::render();
if ($this->success !== false) {
$this->d3DoPRGRedirect();
}
return $template;
}
}

View File

@ -13,8 +13,12 @@
declare(strict_types=1);
use D3\PRGredirects\Modules\Application\Controllers\ArticleListController_PRGredirect;
use D3\PRGredirects\Modules\Application\Controllers\ContactController_PRGredirect;
use D3\PRGredirects\Modules\Application\Controllers\SearchController_PRGredirect;
use D3\PRGredirects\Modules\Core\Utils_PRGredirect;
use OxidEsales\Eshop\Application\Controller\ArticleListController;
use OxidEsales\Eshop\Application\Controller\ContactController;
use OxidEsales\Eshop\Application\Controller\SearchController;
use OxidEsales\Eshop\Core\Utils;
@ -39,7 +43,9 @@ $aModule = [
'url' => 'https://www.oxidmodule.com/',
'extend' => [
Utils::class => Utils_PRGredirect::class,
SearchController::class => SearchController_PRGredirect::class
ArticleListController::class => ArticleListController_PRGredirect::class,
ContactController::class => ContactController_PRGredirect::class,
SearchController::class => SearchController_PRGredirect::class,
],
'settings' => [
[
@ -50,7 +56,7 @@ $aModule = [
],
[
'group' => $sModuleId.'_general',
'name' => $sModuleId.'_articlelists',
'name' => $sModuleId.'_alist',
'type' => 'bool',
'value' => false,
],