"""
Practice Area Templates for EPOLaw
Specialized prompts for business law and family law document analysis
"""

BUSINESS_LAW_ANALYSIS_PROMPTS = {
    'contract_review': """
Analyze this business contract comprehensively:

1. **Parties & Structure**:
   - Identify all parties and their roles
   - Contract type and governing law
   - Effective date and term duration

2. **Key Terms & Obligations**:
   - Payment terms and amounts
   - Deliverables and performance obligations
   - Warranties and representations
   - Confidentiality provisions

3. **Risk Assessment**:
   - Liability limitations and indemnification
   - Termination clauses and penalties
   - Force majeure provisions
   - Dispute resolution mechanisms

4. **Compliance & Regulatory**:
   - Regulatory compliance requirements
   - Data protection/privacy obligations
   - Industry-specific regulations

5. **Red Flags & Recommendations**:
   - Ambiguous or missing terms
   - Unfavorable clauses
   - Negotiation points
   - Suggested amendments
""",

    'merger_acquisition': """
Analyze this M&A document focusing on:

1. **Deal Structure**:
   - Transaction type (asset vs. stock purchase)
   - Purchase price and payment terms
   - Closing conditions and timeline

2. **Due Diligence Findings**:
   - Material assets and liabilities
   - Intellectual property considerations
   - Employee and benefit obligations
   - Pending litigation or claims

3. **Representations & Warranties**:
   - Scope and limitations
   - Survival periods
   - Disclosure schedules
   - Material adverse change provisions

4. **Post-Closing Obligations**:
   - Indemnification provisions
   - Escrow arrangements
   - Non-compete agreements
   - Transition services

5. **Risk Analysis**:
   - Deal breakers or major concerns
   - Integration challenges
   - Regulatory approval requirements
   - Tax implications
""",

    'corporate_compliance': """
Review this document for corporate compliance:

1. **Regulatory Compliance**:
   - SEC filing requirements
   - Industry-specific regulations
   - Environmental compliance
   - Labor and employment law

2. **Corporate Governance**:
   - Board composition and duties
   - Shareholder rights and restrictions
   - Voting requirements
   - Conflict of interest policies

3. **Financial Compliance**:
   - Financial reporting obligations
   - Internal controls assessment
   - Audit requirements
   - Tax compliance issues

4. **Risk Management**:
   - Compliance program effectiveness
   - Whistleblower provisions
   - Data breach notification requirements
   - Anti-corruption measures

5. **Recommendations**:
   - Compliance gaps identified
   - Remediation priorities
   - Policy updates needed
   - Training requirements
""",

    'intellectual_property': """
Analyze this intellectual property document:

1. **IP Assets Identification**:
   - Patents, trademarks, copyrights
   - Trade secrets and know-how
   - Ownership and chain of title
   - Registration status

2. **Licensing Terms**:
   - Scope of license (exclusive/non-exclusive)
   - Territory and field of use
   - Royalty rates and payment terms
   - Sublicensing rights

3. **Protection & Enforcement**:
   - Confidentiality obligations
   - Non-disclosure provisions
   - Enforcement mechanisms
   - Indemnification for IP claims

4. **Technology Transfer**:
   - Development obligations
   - Milestone requirements
   - Improvement rights
   - Technical assistance

5. **Risk Assessment**:
   - Potential infringement issues
   - Validity concerns
   - Enforcement challenges
   - Commercial viability
"""
}

FAMILY_LAW_ANALYSIS_PROMPTS = {
    'custody_evaluation': """
Analyze this custody-related document focusing on:

1. **Best Interests Factors**:
   - Child's physical and emotional needs
   - Parental fitness and stability
   - Existing parent-child relationships
   - Child's preferences (if applicable)

2. **Parenting Arrangements**:
   - Physical custody schedule
   - Legal custody allocation
   - Holiday and vacation schedules
   - Transportation responsibilities

3. **Parental Conduct**:
   - History of caregiving
   - Co-parenting ability
   - Any allegations of abuse/neglect
   - Substance abuse concerns

4. **Support Considerations**:
   - Child support guidelines application
   - Healthcare and insurance coverage
   - Educational expenses
   - Extracurricular activities

5. **Modification Factors**:
   - Changed circumstances
   - Relocation issues
   - Enforcement concerns
   - Recommendations for court
""",

    'divorce_settlement': """
Review this divorce/separation document for:

1. **Property Division**:
   - Marital vs. separate property classification
   - Asset valuation methods
   - Debt allocation
   - Business interests division

2. **Spousal Support**:
   - Alimony type and duration
   - Amount and payment schedule
   - Modification conditions
   - Tax implications

3. **Child-Related Provisions**:
   - Custody arrangements
   - Child support calculations
   - College expense provisions
   - Health insurance coverage

4. **Retirement & Benefits**:
   - Pension division (QDRO requirements)
   - 401(k) and IRA distributions
   - Social Security considerations
   - Life insurance requirements

5. **Implementation Issues**:
   - Property transfer timelines
   - Name change provisions
   - Dispute resolution process
   - Enforcement mechanisms
""",

    'prenuptial_postnuptial': """
Analyze this marital agreement for:

1. **Financial Disclosures**:
   - Completeness of asset disclosure
   - Debt obligations listed
   - Income sources identified
   - Business interests declared

2. **Property Rights**:
   - Separate property definitions
   - Marital property treatment
   - Appreciation and income rights
   - Inheritance provisions

3. **Support Provisions**:
   - Spousal support waivers/limitations
   - Modification circumstances
   - Duration and amount formulas
   - Death and disability provisions

4. **Validity Requirements**:
   - Voluntary execution evidence
   - Independent legal counsel
   - Procedural fairness
   - Substantive fairness

5. **Enforceability Analysis**:
   - Unconscionability factors
   - Public policy concerns
   - Choice of law provisions
   - Severability clauses
""",

    'adoption_guardianship': """
Review this adoption/guardianship document:

1. **Legal Requirements**:
   - Consent requirements met
   - Home study completion
   - Background check results
   - Interstate compact compliance (if applicable)

2. **Parental Rights**:
   - Termination of biological parents' rights
   - Consent validity
   - Notice requirements
   - Appeal periods

3. **Child's Best Interests**:
   - Placement suitability
   - Sibling relationships
   - Cultural considerations
   - Special needs accommodations

4. **Post-Adoption/Guardianship**:
   - Contact agreements
   - Subsidy eligibility
   - Support services
   - Record access rights

5. **Procedural Status**:
   - Filing requirements completed
   - Court hearing scheduling
   - Required documentation
   - Finalization timeline
"""
}

BUSINESS_LAW_SUMMARY_PROMPTS = {
    'contract_summary': """
Provide a comprehensive summary of this business contract:
- Contract type and parties involved
- Key business terms and financial obligations
- Important dates and deadlines
- Major risks and liabilities
- Termination conditions
- Dispute resolution procedures
Focus on actionable business intelligence.
""",

    'corporate_summary': """
Summarize this corporate document highlighting:
- Corporate structure and governance
- Key business decisions or transactions
- Compliance requirements
- Financial implications
- Risk factors identified
- Strategic recommendations
""",

    'regulatory_summary': """
Summarize this regulatory document focusing on:
- Applicable regulations and requirements
- Compliance obligations and deadlines
- Penalties for non-compliance
- Required actions or changes
- Impact on business operations
"""
}

FAMILY_LAW_SUMMARY_PROMPTS = {
    'custody_summary': """
Summarize this custody document highlighting:
- Current custody arrangements
- Proposed changes or disputes
- Child support obligations
- Parenting time schedules
- Special considerations or concerns
- Court recommendations or orders
""",

    'divorce_summary': """
Summarize this divorce document focusing on:
- Property and debt division
- Spousal support arrangements
- Child custody and support
- Implementation timeline
- Unresolved issues
- Financial implications for each party
""",

    'family_court_summary': """
Summarize this family court document highlighting:
- Case procedural history
- Current motions or petitions
- Court findings and orders
- Compliance requirements
- Upcoming deadlines or hearings
- Enforcement issues
"""
}

def get_analysis_prompt(practice_area, analysis_type):
    """Get the appropriate analysis prompt based on practice area and type"""
    if practice_area == 'business':
        return BUSINESS_LAW_ANALYSIS_PROMPTS.get(analysis_type, BUSINESS_LAW_ANALYSIS_PROMPTS['contract_review'])
    elif practice_area == 'family':
        return FAMILY_LAW_ANALYSIS_PROMPTS.get(analysis_type, FAMILY_LAW_ANALYSIS_PROMPTS['custody_evaluation'])
    else:
        # Default general analysis prompt
        return """
Provide a comprehensive legal analysis of this document:
1. Document type and purpose
2. Key parties and their obligations
3. Important terms and conditions
4. Legal issues identified
5. Risks and recommendations
6. Compliance considerations
7. Actionable next steps
"""

def get_summary_prompt(practice_area, summary_type):
    """Get the appropriate summary prompt based on practice area and type"""
    if practice_area == 'business':
        return BUSINESS_LAW_SUMMARY_PROMPTS.get(summary_type, BUSINESS_LAW_SUMMARY_PROMPTS['contract_summary'])
    elif practice_area == 'family':
        return FAMILY_LAW_SUMMARY_PROMPTS.get(summary_type, FAMILY_LAW_SUMMARY_PROMPTS['custody_summary'])
    else:
        # Default general summary prompt
        return """
Provide a clear and concise summary of this legal document, highlighting:
- Document purpose and context
- Key information and findings
- Important obligations or requirements
- Critical dates and deadlines
- Recommendations or next steps
"""

def detect_document_type(text, filename=""):
    """Attempt to detect document type from content and filename"""
    text_lower = text.lower()[:5000]  # Check first 5000 chars
    filename_lower = filename.lower()

    # Business law indicators
    if any(term in text_lower for term in ['whereas', 'agreement between', 'purchase price', 'merger', 'acquisition']):
        if 'merger' in text_lower or 'acquisition' in text_lower:
            return ('business', 'merger_acquisition')
        elif 'intellectual property' in text_lower or 'patent' in text_lower or 'trademark' in text_lower:
            return ('business', 'intellectual_property')
        elif 'compliance' in text_lower or 'regulatory' in text_lower:
            return ('business', 'corporate_compliance')
        else:
            return ('business', 'contract_review')

    # Family law indicators
    if any(term in text_lower for term in ['custody', 'visitation', 'child support', 'parenting time']):
        return ('family', 'custody_evaluation')
    elif any(term in text_lower for term in ['divorce', 'dissolution', 'marital property', 'alimony']):
        return ('family', 'divorce_settlement')
    elif any(term in text_lower for term in ['prenuptial', 'postnuptial', 'antenuptial']):
        return ('family', 'prenuptial_postnuptial')
    elif any(term in text_lower for term in ['adoption', 'guardianship', 'conservatorship']):
        return ('family', 'adoption_guardianship')

    # Check filename patterns
    if 'contract' in filename_lower or 'agreement' in filename_lower:
        return ('business', 'contract_review')
    elif 'custody' in filename_lower or 'parenting' in filename_lower:
        return ('family', 'custody_evaluation')
    elif 'divorce' in filename_lower or 'settlement' in filename_lower:
        return ('family', 'divorce_settlement')

    # Default to general
    return ('general', 'general_analysis')