Skip to content

calcom demo form#1705

Merged
Alek99 merged 1 commit intomainfrom
carlos/calcom-embed
Dec 7, 2025
Merged

calcom demo form#1705
Alek99 merged 1 commit intomainfrom
carlos/calcom-embed

Conversation

@carlosabadia
Copy link
Copy Markdown
Collaborator

No description provided.

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps bot commented Dec 7, 2025

Greptile Overview

Greptile Summary

This PR migrates the demo/contact sales forms from a custom dialog-based implementation to Cal.com integration across the entire website. The change replaces demo_form_dialog and demo_form components with Cal.com's get_cal_attrs() for buttons and cal_embed() for embedded forms.

Key Changes:

  • Updated reflex-ui dependency to version with Cal.com integration support
  • Added global calcom_popup_embed() to app wrappers for popup functionality
  • Migrated all "Book a Demo" and "Contact Sales" buttons (13 files) to use custom_attrs=get_cal_attrs()
  • Replaced embedded demo form with cal_embed() component
  • Minor styling adjustments for the embedded Cal.com scheduler

Issue Found:

  • pcweb/pages/pricing/faq.py:36 - The custom_attrs parameter is incorrectly applied to the wrapper rx.el.div instead of the button() component, which will prevent the Cal.com integration from working on that specific button

Confidence Score: 4/5

  • Safe to merge with one bug fix needed in faq.py
  • The migration is well-executed and consistent across all files except for one logical error in faq.py where custom_attrs is applied to the wrong element. This will cause the Cal.com integration to not work for the "Contact sales" button on the FAQ page. The fix is straightforward - move custom_attrs from the div to the button component.
  • pcweb/pages/pricing/faq.py requires a bug fix before merging

Important Files Changed

File Analysis

Filename Score Overview
pcweb/pages/pricing/enterprise_demo_form.py 5/5 Replaced demo_form with cal_embed for embedded Cal.com scheduler with styling adjustments
pcweb/pages/pricing/faq.py 3/5 Migrated to Cal.com integration but custom_attrs applied to wrong element (div instead of button)
pcweb/pcweb.py 5/5 Added calcom_popup_embed to extra_app_wraps for global Cal.com integration
uv.lock 5/5 Updated reflex-ui dependency to version with Cal.com integration

Sequence Diagram

sequenceDiagram
    participant User
    participant Button
    participant CalcomPopup
    participant CalcomAPI
    
    Note over Button: Buttons have custom_attrs<br/>from get_cal_attrs()
    
    User->>Button: Clicks "Book a Demo" or<br/>"Contact Sales" button
    Button->>CalcomPopup: Triggers Cal.com popup
    Note over CalcomPopup: calcom_popup_embed()<br/>loaded in extra_app_wraps
    CalcomPopup->>CalcomAPI: Opens scheduling interface
    CalcomAPI-->>User: Displays calendar picker
    User->>CalcomAPI: Selects time slot
    CalcomAPI-->>User: Confirms booking
Loading

Copy link
Copy Markdown
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

12 files reviewed, 1 comment

Edit Code Review Agent Settings | Greptile

@Alek99 Alek99 self-requested a review December 7, 2025 22:55
@Alek99 Alek99 merged commit e3fe107 into main Dec 7, 2025
10 checks passed
@Alek99 Alek99 deleted the carlos/calcom-embed branch December 7, 2025 22:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants