mirror of
https://dev.azure.com/globalhealthx/EMR/_git/helix-engage
synced 2026-04-12 02:38:15 +00:00
added platform integration with script and added invisible captcha
This commit is contained in:
@@ -23,6 +23,7 @@ import {
|
||||
} from '@/lib/transforms';
|
||||
|
||||
import type { Lead, Campaign, Ad, LeadActivity, FollowUp, WhatsAppTemplate, Agent, Call, LeadIngestionSource, Patient, Appointment } from '@/types/entities';
|
||||
import campaignsJson from '../../campaigns.json';
|
||||
|
||||
type DataContextType = {
|
||||
leads: Lead[];
|
||||
@@ -100,7 +101,48 @@ export const DataProvider = ({ children }: DataProviderProps) => {
|
||||
]);
|
||||
|
||||
if (leadsData) setLeads(transformLeads(leadsData));
|
||||
if (campaignsData) setCampaigns(transformCampaigns(campaignsData));
|
||||
|
||||
// Load campaigns from backend, fallback to local JSON if empty or failed
|
||||
let campaignsLoaded = false;
|
||||
if (campaignsData) {
|
||||
try {
|
||||
const backendCampaigns = transformCampaigns(campaignsData);
|
||||
|
||||
if (backendCampaigns.length > 0) {
|
||||
setCampaigns(backendCampaigns);
|
||||
campaignsLoaded = true;
|
||||
}
|
||||
} catch (err) {
|
||||
// Silently fall back to JSON
|
||||
}
|
||||
}
|
||||
|
||||
// Fallback to local JSON campaigns if backend failed or returned no data
|
||||
if (!campaignsLoaded) {
|
||||
const jsonCampaigns: Campaign[] = campaignsJson.map((c: any) => ({
|
||||
id: c.id,
|
||||
createdAt: new Date().toISOString(),
|
||||
updatedAt: new Date().toISOString(),
|
||||
campaignName: c.title,
|
||||
campaignType: 'FACEBOOK_AD' as const,
|
||||
campaignStatus: 'ACTIVE' as const,
|
||||
platform: 'FACEBOOK' as const,
|
||||
startDate: null,
|
||||
endDate: c.validUntil ? new Date(c.validUntil + ', 2024').toISOString() : null,
|
||||
budget: null,
|
||||
amountSpent: null,
|
||||
impressionCount: 0,
|
||||
clickCount: 0,
|
||||
targetCount: 0,
|
||||
contactedCount: 0,
|
||||
convertedCount: 0,
|
||||
leadCount: 0,
|
||||
externalCampaignId: null,
|
||||
platformUrl: null,
|
||||
}));
|
||||
setCampaigns(jsonCampaigns);
|
||||
}
|
||||
|
||||
if (adsData) setAds(transformAds(adsData));
|
||||
if (followUpsData) setFollowUps(transformFollowUps(followUpsData));
|
||||
if (activitiesData) setLeadActivities(transformLeadActivities(activitiesData));
|
||||
|
||||
Reference in New Issue
Block a user