From 536bcfe1d5f03ea62196b9a22d68753e824d065b Mon Sep 17 00:00:00 2001 From: Alwin Drenth Date: Fri, 18 Sep 2020 14:48:46 +0200 Subject: [PATCH 1/3] Fix save events which causes redirect condition parameters to be emptied. --- Plugin.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Plugin.php b/Plugin.php index 3ecc582..623cc7e 100644 --- a/Plugin.php +++ b/Plugin.php @@ -8,6 +8,7 @@ use Backend\Widgets\Form; use Illuminate\Contracts\Events\Dispatcher; use Illuminate\Support\Facades\Event; +use October\Rain\Foundation\Application; use System\Classes\PluginBase; use Vdlp\Redirect; use Vdlp\RedirectConditions\Models\ConditionParameter; @@ -63,6 +64,10 @@ public function register() }); Event::listen('vdlp.redirect.afterRedirectSave', static function (Redirect\Models\Redirect $redirect) { + if (!Application::getInstance()->runningInBackend()) { + return; + } + /** @var Redirect\Classes\Contracts\RedirectManagerInterface $manager */ $manager = resolve(Redirect\Classes\Contracts\RedirectManagerInterface::class); From 014426d8cd6a78d08ee9c5d939482b83970bf3bb Mon Sep 17 00:00:00 2001 From: Alwin Drenth Date: Fri, 18 Sep 2020 14:51:09 +0200 Subject: [PATCH 2/3] Code readability optimizations --- Plugin.php | 22 +++------------------- classes/Condition.php | 11 ----------- models/ConditionParameter.php | 17 ----------------- tests/factories/RedirectRuleFactory.php | 8 -------- updates/20190201_0001_create_tables.php | 19 ++++++------------- 5 files changed, 9 insertions(+), 68 deletions(-) diff --git a/Plugin.php b/Plugin.php index 623cc7e..61fdca8 100644 --- a/Plugin.php +++ b/Plugin.php @@ -1,5 +1,7 @@ hasMany['conditionParameters'] = [ diff --git a/classes/Condition.php b/classes/Condition.php index d2cf466..af0b0a6 100644 --- a/classes/Condition.php +++ b/classes/Condition.php @@ -7,19 +7,8 @@ use Vdlp\Redirect\Classes\Contracts\RedirectConditionInterface; use Vdlp\RedirectConditions\Models\ConditionParameter; -/** - * Class Condition - * - * @package Vdlp\RedirectConditions\Conditions - */ abstract class Condition implements RedirectConditionInterface { - /** - * Get the parameters from database. - * - * @param int $redirectId - * @return array - */ protected function getParameters(int $redirectId): array { $conditionParameter = ConditionParameter::query() diff --git a/models/ConditionParameter.php b/models/ConditionParameter.php index 92af63b..2961a23 100644 --- a/models/ConditionParameter.php +++ b/models/ConditionParameter.php @@ -7,33 +7,16 @@ use October\Rain\Database\Model; use Vdlp\Redirect\Models\Redirect; -/** - * Class Parameter - * - * @package Vdlp\RedirectConditions\Models - */ class ConditionParameter extends Model { - /** - * {@inheritdoc} - */ protected $table = 'vdlp_redirectconditions_condition_parameters'; - /** - * {@inheritdoc} - */ protected $guarded = []; - /** - * {@inheritdoc} - */ public $belongsTo = [ 'redirect' => Redirect::class ]; - /** - * {@inheritdoc} - */ protected $jsonable = [ 'parameters' ]; diff --git a/tests/factories/RedirectRuleFactory.php b/tests/factories/RedirectRuleFactory.php index 9775824..6a54c18 100644 --- a/tests/factories/RedirectRuleFactory.php +++ b/tests/factories/RedirectRuleFactory.php @@ -8,16 +8,8 @@ use Vdlp\Redirect\Classes\RedirectRule; use Vdlp\Redirect\Models\Redirect; -/** - * Class RedirectRuleFactory - * - * @package Vdlp\RedirectConditions\Tests\Factories - */ class RedirectRuleFactory { - /** - * @return RedirectRule - */ public static function createRedirectRule(): RedirectRule { return new RedirectRule([ diff --git a/updates/20190201_0001_create_tables.php b/updates/20190201_0001_create_tables.php index 8090d3c..58498ff 100644 --- a/updates/20190201_0001_create_tables.php +++ b/updates/20190201_0001_create_tables.php @@ -1,25 +1,20 @@ engine = 'InnoDB'; @@ -46,12 +41,10 @@ public function up() }); } - public function down() + public function down(): void { Schema::disableForeignKeyConstraints(); - Schema::dropIfExists('vdlp_redirectconditions_condition_parameters'); - Schema::enableForeignKeyConstraints(); } } From 7dccaa3911073842ceb267db7210caa613d41cca Mon Sep 17 00:00:00 2001 From: Alwin Drenth Date: Fri, 18 Sep 2020 14:51:16 +0200 Subject: [PATCH 3/3] Bump version to 1.1.1 --- updates/version.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/updates/version.yaml b/updates/version.yaml index 1c2c7fb..b7b1127 100644 --- a/updates/version.yaml +++ b/updates/version.yaml @@ -6,3 +6,5 @@ 1.1.0: - Add fix for deleted event (thanks to @NickolayCh) - Minimal version of PHP required is 7.1 +1.1.1: + - Fix save events which causes redirect condition parameters to be emptied.