requireCsrf('create'); $input = normalize_rule_post($_POST); $rule = attach_rule_scope($ctx, RuleValidator::validate($input, $ctx->settings)); enforce_rule_backend_constraints($ctx, null, $rule); $created = $ctx->rules->create($ctx->daUser->username(), $rule); try { $ctx->syncActiveBackend(); } catch (Throwable $syncError) { $ctx->rules->delete($ctx->daUser->username(), (string)$created['id']); throw $syncError; } Http::redirect($ctx->url('index.html', ['status' => 'created'])); } catch (Throwable $e) { PluginLogger::exception($e, 'CREATE'); $errors[] = $e->getMessage(); } } $ctx->render('Add autoresponder', render_rule_form($ctx, 'create', null), [], $errors); };