ALwrity + Wordpress + Wix + GSC integration

This commit is contained in:
ajaysi
2025-10-08 10:13:14 +05:30
parent 14dfb2e5c0
commit 3bab3450dc
147 changed files with 19815 additions and 17053 deletions

View File

@@ -336,14 +336,49 @@ def validate_step_data(step_number: int, data: Dict[str, Any]) -> List[str]:
errors.append("Invalid website URL format")
elif step_number == 3: # AI Research
if not data or 'research_providers' not in data:
errors.append("At least one research provider must be configured")
elif not data['research_providers']:
errors.append("At least one research provider must be configured")
# Validate that research data is present (competitors, research summary, or sitemap analysis)
if not data:
errors.append("Research data is required for step 3 completion")
else:
# Check for required research fields
has_competitors = 'competitors' in data and data['competitors']
has_research_summary = 'researchSummary' in data and data['researchSummary']
has_sitemap_analysis = 'sitemapAnalysis' in data and data['sitemapAnalysis']
if not (has_competitors or has_research_summary or has_sitemap_analysis):
errors.append("At least one research data field (competitors, researchSummary, or sitemapAnalysis) must be present")
elif step_number == 4: # Personalization
# Optional step, no validation required
pass
# Validate that persona data is present
if not data:
errors.append("Persona data is required for step 4 completion")
else:
# Check for required persona fields
required_persona_fields = ['corePersona', 'platformPersonas']
missing_fields = []
for field in required_persona_fields:
if field not in data or not data[field]:
missing_fields.append(field)
if missing_fields:
errors.append(f"Missing required persona data: {', '.join(missing_fields)}")
# Validate core persona structure if present
if 'corePersona' in data and data['corePersona']:
core_persona = data['corePersona']
if not isinstance(core_persona, dict):
errors.append("corePersona must be a valid object")
elif 'identity' not in core_persona:
errors.append("corePersona must contain identity information")
# Validate platform personas structure if present
if 'platformPersonas' in data and data['platformPersonas']:
platform_personas = data['platformPersonas']
if not isinstance(platform_personas, dict):
errors.append("platformPersonas must be a valid object")
elif len(platform_personas) == 0:
errors.append("At least one platform persona must be configured")
elif step_number == 5: # Integrations
# Optional step, no validation required