djmaze 2020-09-12 14:08:18 +02:00
parent 99bd895090
commit 39e9ecd4f2
6 changed files with 66 additions and 8 deletions

View file

@ -320,11 +320,17 @@ class SieveStorage implements \RainLoop\Providers\Filters\FiltersInterface
switch ($oFilter->ActionType())
{
case \RainLoop\Providers\Filters\Enumerations\ActionType::NONE:
$aResult[] = $sTab.'stop;';
if ($oFilter->Stop())
{
$aResult[] = $sTab.'stop;';
}
break;
case \RainLoop\Providers\Filters\Enumerations\ActionType::DISCARD:
$aResult[] = $sTab.'discard;';
$aResult[] = $sTab.'stop;';
if ($oFilter->Stop())
{
$aResult[] = $sTab.'stop;';
}
break;
case \RainLoop\Providers\Filters\Enumerations\ActionType::VACATION:
$sValue = \trim($oFilter->ActionValue());
@ -383,7 +389,10 @@ class SieveStorage implements \RainLoop\Providers\Filters\FiltersInterface
$aCapa['reject'] = true;
$aResult[] = $sTab.'reject "'.$this->quote($sValue).'";';
$aResult[] = $sTab.'stop;';
if ($oFilter->Stop())
{
$aResult[] = $sTab.'stop;';
}
}
else
{
@ -401,7 +410,10 @@ class SieveStorage implements \RainLoop\Providers\Filters\FiltersInterface
}
$aResult[] = $sTab.'redirect "'.$this->quote($sValue).'";';
$aResult[] = $sTab.'stop;';
if ($oFilter->Stop())
{
$aResult[] = $sTab.'stop;';
}
}
else
{
@ -422,7 +434,10 @@ class SieveStorage implements \RainLoop\Providers\Filters\FiltersInterface
$aCapa['fileinto'] = true;
$aResult[] = $sTab.'fileinto "'.$this->quote($sFolderName).'";';
$aResult[] = $sTab.'stop;';
if ($oFilter->Stop())
{
$aResult[] = $sTab.'stop;';
}
}
else
{