/**
  * @return array
  *
  * @throws \MailSo\Base\Exceptions\Exception
  */
 public function DoFiltersSave()
 {
     $oAccount = $this->getAccountFromToken();
     if (!$this->GetCapa(false, \RainLoop\Enumerations\Capa::FILTERS, $oAccount)) {
         return $this->FalseResponse(__FUNCTION__);
     }
     $aIncFilters = $this->GetActionParam('Filters', array());
     $sRaw = $this->GetActionParam('Raw', '');
     $bRawIsActive = '1' === (string) $this->GetActionParam('RawIsActive', '0');
     $aFilters = array();
     foreach ($aIncFilters as $aFilter) {
         if ($aFilter) {
             $oFilter = new \RainLoop\Providers\Filters\Classes\Filter();
             if ($oFilter->FromJSON($aFilter)) {
                 $aFilters[] = $oFilter;
             }
         }
     }
     $this->Plugins()->RunHook('filter.filters-save', array($oAccount, &$aFilters, &$sRaw, &$bRawIsActive));
     return $this->DefaultResponse(__FUNCTION__, $this->FiltersProvider()->Save($oAccount, $aFilters, $sRaw, $bRawIsActive));
 }