#!/usr/bin/env python3
"""Inspect GHL login page"""
import os
from playwright.sync_api import sync_playwright

os.environ['LD_LIBRARY_PATH'] = '/mnt/e/genesis-system/.venvs/playwright-libs/'

with sync_playwright() as p:
    browser = p.chromium.launch(headless=True, args=['--no-sandbox','--disable-gpu'])
    page = browser.new_page(viewport={'width':1920,'height':1080})
    
    print("Loading GHL login page...")
    page.goto('https://app.gohighlevel.com/', timeout=30000)
    page.wait_for_load_state('domcontentloaded', timeout=10000)
    page.wait_for_timeout(3000)
    
    print(f"URL: {page.url}")
    
    # Save screenshot
    page.screenshot(path='/tmp/ghl_login.png')
    print("Screenshot saved to /tmp/ghl_login.png")
    
    # Check for various login form selectors
    selectors = [
        'input[type="email"]',
        'input[name="email"]',
        'input[placeholder*="email"]',
        'input[id*="email"]',
        'form',
        'button:has-text("Sign in")',
        'button:has-text("Login")',
        '.email-input',
        '[data-testid="email-input"]'
    ]
    
    for sel in selectors:
        try:
            el = page.query_selector(sel)
            if el:
                print(f"✓ Found: {sel}")
        except Exception as e:
            print(f"✗ {sel}: {e}")
    
    # Get page content preview
    content = page.content()
    print(f"\nPage content length: {len(content)}")
    print(f"Contains 'email': {'email' in content.lower()}")
    print(f"Contains 'password': {'password' in content.lower()}")
    print(f"Contains 'sign in': {'sign in' in content.lower()}")
    print(f"Contains 'login': {'login' in content.lower()}")
    
    # Try to get all visible text
    text = page.evaluate('() => document.body.innerText')
    print(f"\nVisible text (first 500 chars):\n{text[:500]}")
    
    browser.close()
