snapshot: modularize integrations and builder order flows

This commit is contained in:
Md Bayazid Bostame
2026-03-28 12:35:13 +01:00
parent a507abe7fe
commit 753e33f235
5 changed files with 878 additions and 818 deletions

View File

@@ -67,7 +67,7 @@ from .form_builder import (
get_section_order,
apply_form_preset,
)
from .form_builder_views import form_builder_page_impl
from .form_builder_views import form_builder_page_impl, form_builder_save_order_impl
from .intro_builder_views import intro_builder_page_impl
from .observability_views import (
audit_log_page_impl,
@@ -499,7 +499,12 @@ def welcome_emails_page(request):
@_require_capability('manage_welcome_emails')
@require_POST
def trigger_welcome_email_now(request, schedule_id: int):
return integrations_views.trigger_welcome_email_now_impl(request, schedule_id, audit_fn=_audit)
return integrations_views.trigger_welcome_email_now_impl(
request,
schedule_id,
audit_fn=_audit,
send_task_fn=send_scheduled_welcome_email,
)
@_require_capability('manage_welcome_emails')
@@ -508,39 +513,14 @@ def save_welcome_email_settings(request):
return integrations_views.save_welcome_email_settings_impl(request, audit_fn=_audit)
def _revoke_celery_task(task_id: str) -> None:
if not task_id:
return
try:
current_app.control.revoke(task_id, terminate=False)
except Exception:
return
def _parse_selected_schedule_ids(raw: str) -> list[int]:
if not raw:
return []
parsed: list[int] = []
seen: set[int] = set()
for token in raw.split(','):
token = token.strip()
if not token:
continue
try:
schedule_id = int(token)
except ValueError:
continue
if schedule_id in seen:
continue
seen.add(schedule_id)
parsed.append(schedule_id)
return parsed
@_require_capability('manage_welcome_emails')
@require_POST
def bulk_welcome_email_action(request):
return integrations_views.bulk_welcome_email_action_impl(request, audit_fn=_audit)
return integrations_views.bulk_welcome_email_action_impl(
request,
audit_fn=_audit,
send_task_fn=send_scheduled_welcome_email,
)
@_require_capability('manage_welcome_emails')
@@ -552,7 +532,12 @@ def pause_welcome_email(request, schedule_id: int):
@_require_capability('manage_welcome_emails')
@require_POST
def resume_welcome_email(request, schedule_id: int):
return integrations_views.resume_welcome_email_impl(request, schedule_id, audit_fn=_audit)
return integrations_views.resume_welcome_email_impl(
request,
schedule_id,
audit_fn=_audit,
send_task_fn=send_scheduled_welcome_email,
)
@_require_capability('manage_welcome_emails')
@@ -564,7 +549,7 @@ def cancel_welcome_email(request, schedule_id: int):
@_require_capability('manage_builders')
@require_POST
def form_builder_save_order(request):
return integrations_views.form_builder_save_order_impl(request, audit_fn=_audit)
return form_builder_save_order_impl(request, audit_fn=_audit)
@_require_capability('manage_integrations')