{ "Helpdesk": "Helpdesk", "Helpdesk settings": "Helpdesk settings", "Customers": "Customers", "Debtor search": "Debtor search", "Search debtors": "Search debtors", "Search by name or debtor number...": "Search by name or debtor number...", "Search": "Search", "Please provide a customer number": "Please provide a customer number", "Minimum 2 characters": "Minimum 2 characters", "Please enter at least 2 characters.": "Please enter at least 2 characters.", "No debtors found": "No debtors found", "Try a different search term.": "Try a different search term.", "Could not connect to Business Central.": "Could not connect to Business Central.", "BC connection is not configured.": "BC connection is not configured.", "BC connection is not configured. Please configure the connection in the settings.": "BC connection is not configured. Please configure the connection in the settings.", "BC connection is not configured": "BC connection is not configured", "Open settings": "Open settings", "Debtor No.": "Debtor No.", "Name": "Name", "City": "City", "Phone": "Phone", "E-Mail": "E-Mail", "Master data": "Master data", "Contacts": "Contacts", "Tickets": "Tickets", "Debtor details": "Debtor details", "Search name": "Search name", "Address": "Address", "Postal code": "Postal code", "Salesperson": "Salesperson", "No contacts found": "No contacts found", "No contacts are linked to this debtor in Business Central.": "No contacts are linked to this debtor in Business Central.", "No.": "No.", "Type": "Type", "Job title": "Job title", "No tickets found": "No tickets found", "No tickets are linked to this debtor in Business Central.": "No tickets are linked to this debtor in Business Central.", "Ticket No.": "Ticket No.", "Dashboard": "Dashboard", "Description": "Description", "Status": "Status", "Category": "Category", "Contact": "Contact", "Support": "Support", "Sales": "Sales", "Controlling": "Controlling", "Ticket": "Ticket", "Debtor": "Debtor", "Debtor not found": "Debtor not found", "Ticket not found": "Ticket not found", "Back to search": "Back to search", "Back": "Back", "Settings": "Settings", "Connection": "Connection", "Save": "Save", "Settings saved": "Settings saved", "Configuration incomplete": "Configuration incomplete", "OData Base URL": "OData Base URL", "Base URL without Company path segment": "Base URL without Company path segment", "Company name": "Company name", "BC company name (URL-encoded automatically)": "BC company name (URL-encoded automatically)", "Authentication": "Authentication", "Auth mode": "Auth mode", "Basic Auth": "Basic Auth", "OAuth2 (client credentials)": "OAuth2 (client credentials)", "Username": "Username", "Password": "Password", "Leave empty to keep current password": "Leave empty to keep current password", "Saved": "Saved", "Azure Tenant ID": "Azure Tenant ID", "Client ID": "Client ID", "Client Secret": "Client Secret", "Token endpoint URL": "Token endpoint URL", "Connection test": "Connection test", "Test connection": "Test connection", "Connection successful": "Connection successful", "Connection failed": "Connection failed", "Testing...": "Testing...", "Form expired, please try again": "Form expired, please try again", "OData Base URL must use HTTPS": "OData Base URL must use HTTPS", "Address & contact": "Address & contact", "Company": "Company", "Company details": "Company details", "Contact & dates": "Contact & dates", "Could not load contacts.": "Could not load contacts.", "Could not load tickets.": "Could not load tickets.", "Last activity": "Last activity", "Ticket details": "Ticket details", "Overview": "Overview", "Open tickets": "Open tickets", "All tickets": "All tickets", "All contacts": "All contacts", "Recent activity": "Recent activity", "Support info & master data": "Support info & master data", "Support type": "Support type", "Location": "Location", "No open tickets": "No open tickets", "No recent activity found.": "No recent activity found.", "Total tickets": "Total tickets", "Total contracts": "Total contracts", "Critical (>48h)": "Critical (>48h)", "Oldest open": "Oldest open", "Ticket list": "Ticket list", "Next actions": "Next actions", "System recommendations": "System recommendations", "Action": "Action", "Age (h)": "Age (h)", "No support actions required right now.": "No support actions are required right now.", "No system recommendations right now.": "No system recommendations right now.", "Contracts & products": "Contracts & products", "No contracts found for this customer.": "No contracts found for this customer.", "Contract No.": "Contract No.", "Product type": "Product type", "Next invoicing": "Next invoicing", "Amount": "Amount", "Active contracts": "Active contracts", "Could not load contracts.": "Could not load contracts.", "Escalations": "Escalations", "Escalations are not available yet.": "Escalations are not available yet.", "Escalated tickets": "Escalated tickets", "No escalated tickets right now.": "No escalated tickets right now.", "Could not load escalated tickets.": "Could not load escalated tickets.", "Escalation code": "Escalation code", "SLA target": "SLA target", "Overdue by": "Overdue by", "day": "day", "days": "days", "Ticket volume": "Ticket volume", "Close rate": "Close rate", "Avg. resolution": "Avg. resolution", "Open backlog": "Open tickets", "kpi_tooltip_close_rate": "Closed \u00f7 created tickets in period. Above 1\u00d7 = open ticket queue is shrinking.", "kpi_tooltip_resolution": "Median processing time of all tickets closed in the selected period.", "kpi_tooltip_backlog": "Current snapshot of all open tickets \u2013 independent of the selected period. Shows the pending queue.", "Backlog shrinking": "Queue shrinking", "Backlog growing": "Queue growing", "unassigned": "unassigned", "Ticket trend": "Ticket trend", "Support efficiency": "Support efficiency", "Contract metrics": "Contract metrics", "Risk assessment": "Risk assessment", "vs. prev. period": "vs. prev. period", "Low": "Low", "Medium": "Medium", "High": "High", "All checks passed": "All checks passed", "of": "of", "checks flagged": "checks flagged", "Limit": "Limit", "No controlling data available.": "No controlling data available.", "Resolution time": "Resolution time", "Oldest open ticket": "Oldest open ticket", "Unassigned": "Unassigned", "risk_desc_ticket_volume": "Change vs. previous period", "risk_desc_resolution_time": "Median time to close", "risk_desc_open_aging": "Since last activity", "risk_desc_unassigned": "Share of open tickets without assignee", "Ticket volume increase": "Ticket volume increase", "High avg. resolution time": "High avg. resolution time", "Open ticket aging": "Open ticket aging", "Unassigned ticket ratio": "Unassigned ticket ratio", "Could not load controlling dashboard.": "Could not load controlling dashboard.", "Avg. open age": "Avg. open age", "Without assignee": "Without assignee", "30 days": "30 days", "90 days": "90 days", "6 months": "6 months", "1 year": "1 year", "Escalation rate": "Escalation rate", "Threshold (%)": "Threshold (%)", "Threshold (hours)": "Threshold (hours)", "Controlling risk configuration was invalid. Defaults were applied.": "Controlling risk configuration was invalid. Defaults were applied.", "Open ticket without activity for": "Open ticket without activity for", "hours": "hours", "Open ticket without assigned support user": "Open ticket without assigned support user", "Follow up oldest open ticket": "Follow up oldest open ticket", "System recommendation configuration was invalid. Defaults were applied.": "System recommendation configuration was invalid. Defaults were applied.", "Maximum recommendations": "Maximum recommendations", "Rule templates": "Rule templates", "Enabled": "Enabled", "Priority": "Priority", "Thresholds": "Thresholds", "Escalation overdue": "Escalation overdue", "High-risk aging": "High-risk aging", "Unassigned open": "Unassigned open", "Stale open": "Stale open", "Customer backlog": "Open tickets for customer", "Minimum overdue (minutes)": "Minimum overdue (minutes)", "High-risk codes (comma separated)": "High-risk codes (comma separated)", "Minimum age (hours)": "Minimum age (hours)", "Minimum open tickets": "Minimum open tickets", "Escalation SLA exceeded by {overdue_hours}h ({escalation_code}).": "SLA exceeded by {overdue_hours}h ({escalation_code}) — escalate immediately or inform customer.", "High-risk ticket ({escalation_code}) is open for {age_hours}h.": "Critical ticket ({escalation_code}) open for {age_hours}h — review priority and ensure progress.", "Ticket is unassigned for {age_hours}h.": "Unassigned for {age_hours}h — assign to a team member urgently.", "No activity for {age_hours}h.": "No activity for {age_hours}h — check if customer is waiting for a response.", "Customer backlog: {open_tickets} open tickets.": "{open_tickets} open tickets — address oldest tickets first to reduce the queue.", "Created": "Created", "Loading...": "Loading...", "Refresh data": "Refresh data", "Mobile": "Mobile", "Activity": "Activity", "Activity timeline": "Activity timeline", "Message": "Message", "Status change": "Status change", "No activity found.": "No activity found.", "Could not load activity log.": "Could not load activity log.", "Communication history": "Communication history", "No communication found.": "No communication found.", "Could not load communication history.": "Could not load communication history.", "Live communication unavailable, showing activity fallback.": "Live communication unavailable, showing activity fallback.", "Ticket communication": "Ticket communication", "Last 5 tickets": "Last 5 tickets", "Last 10 tickets": "Last 10 tickets", "Some ticket communications could not be loaded completely.": "Some ticket communications could not be loaded completely.", "Unknown user": "Unknown user", "Unknown time": "Unknown time", "Source": "Source", "SOAP": "SOAP", "Activity fallback": "Activity fallback", "sent a message": "sent a message", "changed status": "changed status", "Forwarded": "forwarded the ticket", "attached a file": "attached a file", "logged an activity": "logged an activity", "on": "on", "Process": "Process", "All": "All", "Open": "Open", "In Progress": "In Progress", "Closed": "Closed", "Monthly volume": "Monthly volume", "Support hours": "Support hours", "Contract overview": "Contract overview", "No contract details available.": "No contract details available.", "Could not load sales dashboard.": "Could not load sales dashboard.", "Quantity": "Quantity", "Unit price": "Unit price", "Line amount": "Line amount", "Line state": "Line state", "Starting date": "Starting date", "Invoicing period": "Invoicing period", "positions": "positions", "per month": "per month", "Last invoicing": "Last invoicing", "Analysis": "Analysis", "New (30d)": "New (30d)", "Resolved (30d)": "Resolved (30d)", "Avg. age open": "Avg. age open", "vs. prev. 30d": "vs. prev. 30d", "net (30d)": "net (30d)", "critical": "critical", "Avg. contract value": "Avg. contract value", "of {total} total": "of {total} total", "in {days} days": "in {days} days", "largest": "largest", "Attention needed": "Attention needed", "Recommendations": "Recommendations", "Contract summary": "Contract summary", "Contract trend": "Contract trend", "New contracts": "New contracts", "Ended contracts": "Ended contracts", "active": "active", "ended": "ended", "Age": "Age", "Period": "Period", "Last 30 days": "Last 30 days", "Last 90 days": "Last 90 days", "Last 180 days": "Last 180 days", "Last 365 days": "Last 365 days", "Automation": "Automation", "Risk monitoring": "Risk monitoring", "rule_help_escalation_overdue": "Recommends action when SLA escalation deadlines are exceeded.", "rule_help_high_risk_aging": "Detects critical tickets with specific escalation codes that have been open too long.", "rule_help_unassigned_open": "Flags open tickets that are not assigned to any support agent.", "rule_help_stale_open": "Marks open tickets without recent activity for follow-up.", "rule_help_customer_backlog": "Warns when a customer has too many open tickets at once.", "rule_help_ticket_volume": "Triggers when ticket volume rises significantly compared to the previous period.", "rule_help_avg_resolution": "Warns when average resolution time exceeds the threshold.", "rule_help_open_aging": "Detects open tickets that have been without activity for too long.", "rule_help_unassigned_ratio": "Warns when too many open tickets lack an assigned agent.", "Automation configuration was invalid. Defaults were applied.": "Automation configuration was invalid. Defaults were applied.", "Advanced options": "Advanced options", "Min. overdue": "Min. overdue", "Min. age": "Min. age", "Min. open": "Min. open", "Team": "Team", "Team dashboard": "Team dashboard", "Team workload": "Team workload", "Support agent": "Support agent", "Critical (>48h open)": "Critical (>48h open)", "Avg. age (h)": "Avg. age (h)", "Resolved in period": "Resolved in period", "Not assigned": "Not assigned", "Could not load team dashboard.": "Could not load team dashboard.", "No team data available.": "No team data available.", "Top customers": "Top customers", "Top categories": "Top categories", "Current": "Current", "Performance": "Performance", "Historical": "Historical", "Queue": "Queue", "trend_tooltip_up": "More tickets received than resolved in the period — backlog is growing.", "trend_tooltip_down": "More tickets resolved than received in the period — backlog is shrinking.", "Download file": "Download file", "Trend based on last {days} days": "Trend based on last {days} days", "Trend": "Trend", "Risk radar": "Risk radar", "Risk score": "Risk score", "Risk traffic light logic": "Traffic light logic", "High risk (55-100)": "High risk (55-100)", "Medium risk (25-54)": "Medium risk (25-54)", "Low risk (0-24)": "Low risk (0-24)", "Score = weighted sum: Open pressure (35), Trend (30), SLA overdue (25), Inactivity (10).": "Score = weighted sum: Open pressure (35), Trend (30), SLA overdue (25), Inactivity (10).", "High risk": "High risk", "Medium risk": "Medium risk", "Low risk": "Low risk", "SLA overdue": "SLA overdue", "Net flow": "Net flow", "Open pressure": "Open pressure", "Inactivity": "Inactivity", "No risk data available.": "No risk data available.", "Could not load risk radar.": "Could not load risk radar.", "Data may be incomplete. Not all tickets could be loaded.": "Data may be incomplete. Not all tickets could be loaded.", "Why at risk": "Why at risk", "open": "open", "overdue": "overdue", "net": "net", "Search customers...": "Search customers...", "more than resolved": "more than resolved", "SLA breaches": "SLA breaches", "Oldest ticket": "Oldest ticket", "General connection": "General connection", "Tenant connection": "Tenant connection", "Configuration source": "Configuration source", "Use tenant-specific configuration": "Use tenant-specific configuration", "When enabled, this tenant uses its own BC connection instead of the global configuration.": "When enabled, this tenant uses its own BC connection instead of the global configuration.", "This tenant inherits the global configuration. Enable the toggle above to use tenant-specific settings.": "This tenant inherits the global configuration. Enable the toggle above to use tenant-specific settings.", "Tenant settings saved": "Tenant settings saved", "Token endpoint must use HTTPS": "Token endpoint must use HTTPS", "The current tenant uses its own configuration. Changes here only affect tenants without a tenant-specific connection.": "The current tenant uses its own configuration. Changes here only affect tenants without a tenant-specific connection.", "Failed to save tenant settings": "Failed to save tenant settings", "Meetings": "Meetings", "Released": "Released", "Pending": "Pending", "Upcoming meetings": "Upcoming meetings", "Past meetings": "Past meetings", "No meetings found for this customer.": "No meetings found for this customer.", "Could not load meetings.": "Could not load meetings.", "Domains": "Domains", "Search domains...": "Search domains...", "Customer No.": "Customer No.", "Customer Name": "Customer Name", "Administration": "Administration", "No domains found": "No domains found", "Could not load domains.": "Could not load domains.", "Lookup": "Lookup", "Monitoring": "Monitoring", "Contract type": "Contract type", "Customer": "Customer", "Software products": "Software products", "Software product": "Software product", "Search software products...": "Search software products...", "BC description": "BC description", "Product name": "Product name", "Code": "Code", "Active": "Active", "Inactive": "Inactive", "Last synced": "Last synced", "Modified": "Modified", "Edit software product": "Edit software product", "Back to list": "Back to list", "Save & close": "Save & close", "Software product updated": "Software product updated", "Software product not found": "Software product not found", "Product details": "Product details", "Enter product name...": "Enter product name...", "Name must not exceed 255 characters": "Name must not exceed 255 characters", "Failed to save": "Failed to save", "Handover protocol": "Handover protocol", "Handover protocol schema": "Handover protocol schema", "Define the fields that make up the handover protocol for this product.": "Define the fields that make up the handover protocol for this product.", "Add field": "Add field", "Remove field": "Remove field", "Duplicate field": "Duplicate field", "Move up": "Move up", "Move down": "Move down", "Field key": "Field key", "Field label": "Field label", "Field type": "Field type", "Required": "Required", "Options": "Options", "Add option": "Add option", "Remove option": "Remove option", "Option value": "Option value", "Option label": "Option label", "No fields defined yet. Click \"Add field\" to get started.": "No fields defined yet. Click \"Add field\" to get started.", "Heading": "Heading", "Paragraph": "Paragraph", "Text": "Text", "Textarea": "Textarea", "Number": "Number", "Date": "Date", "Checkbox": "Checkbox", "Select": "Select", "Text content": "Text content", "Maximum %d fields allowed": "Maximum %d fields allowed", "Field %d: unknown type \"%s\"": "Field %d: unknown type \"%s\"", "Field %d: label is required": "Field %d: label is required", "Field %d: generates duplicate key \"%s\" — use a more distinct label": "Field %d: generates duplicate key \"%s\" — use a more distinct label", "Field %d: select must have at least one option": "Field %d: select must have at least one option", "Field %d, option %d: label is required": "Field %d, option %d: label is required", "Preview": "Preview", "Add fields to see a live preview.": "Add fields to see a live preview.", "Field": "Field", "Operations": "Operations", "Handovers": "Handovers", "Handover": "Handover", "New handover": "New handover", "Handover created": "Handover created", "Handover updated": "Handover updated", "Handover not found": "Handover not found", "Draft": "Draft", "In progress": "In progress", "Completed": "Completed", "Archived": "Archived", "Customer & product": "Customer & product", "Protocol": "Protocol", "Select customer and product": "Select customer and product", "Choose the customer and software product for this handover protocol.": "Choose the customer and software product for this handover protocol.", "Search by name or number...": "Search by name or number...", "No customers found": "No customers found", "Search failed": "Search failed", "Fill handover protocol": "Fill handover protocol", "Create handover": "Create handover", "Continue": "Continue", "Cancel": "Cancel", "Back": "Back", "Back to list": "Back to list", "Please select a customer": "Please select a customer", "Please select a software product": "Please select a software product", "Software product has no handover protocol schema": "Software product has no handover protocol schema", "No software products with handover protocol schemas found.": "No software products with handover protocol schemas found.", "Please complete step 1 first": "Please complete step 1 first", "Debitor number is required": "Debitor number is required", "Software product is required": "Software product is required", "Software product not found": "Software product not found", "Failed to create handover": "Failed to create handover", "You do not have permission to edit this handover": "You do not have permission to edit this handover", "You do not have permission to set this status": "You do not have permission to set this status", "Invalid status": "Invalid status", "Unknown field: %s": "Unknown field: %s", "%s is required": "%s is required", "Failed to save": "Failed to save", "Failed to update status": "Failed to update status", "No protocol fields defined.": "No protocol fields defined.", "Please select...": "Please select...", "Handover protocol": "Handover protocol", "Change status": "Change status", "Customer": "Customer", "Debitor No.": "Debitor No.", "Progress": "Progress", "Created by": "Created by", "Search handovers...": "Search handovers...", "ID": "ID", "History": "History", "Current": "Current", "Viewing version %d": "Viewing version %d", "compared with version %d": "compared with version %d", "Back to current": "Back to current", "Restore this version": "Restore this version", "Restore this version?": "Restore this version?", "Version restored": "Version restored", "Failed to restore": "Failed to restore", "Only managers can restore revisions": "Only managers can restore revisions", "Revision not found": "Revision not found", "Created": "Created", "Fields changed": "Fields changed", "Status changed": "Status changed", "Fields and status changed": "Fields and status changed", "Restored": "Restored", "was: %s": "was: %s", "Yes": "Yes", "No": "No", "Changed": "Changed", "Compare with current": "Compare with current", "Domain": "Domain", "Select a customer first...": "Select a customer first...", "Loading domains...": "Loading domains...", "No domains found for this customer": "No domains found for this customer", "Failed to load domains": "Failed to load domains", "Please select a domain": "Please select a domain", "Delete": "Delete", "Select all": "Select all", "Delete selected handovers?": "Delete selected handovers?", "%d handover(s) deleted": "%d handover(s) deleted", "Failed to delete handovers": "Failed to delete handovers", "Only managers can delete handovers": "Only managers can delete handovers", "No handovers selected": "No handovers selected", "Domain not found": "Domain not found", "Domain detail": "Domain detail", "Back to domains": "Back to domains", "Open domain": "Open domain", "Open debitor": "Open debitor", "Customer information": "Customer information", "Contract information": "Contract information", "Related domains": "Related domains", "No handovers for this domain yet": "No handovers for this domain yet", "No contract information available": "No contract information available", "Network error — please try again": "Network error — please try again", "Contract state": "Contract state", "Total": "Total", "URL": "URL", "State": "State", "Product": "Product", "Updates": "Updates", "Ticket status": "Ticket status", "Assignment": "Assignment", "Resolved": "Resolved", "Closed": "Closed", "Open": "Open", "Assign update": "Assign update", "Assign": "Assign", "Unassigned": "Unassigned", "Assigned": "Assigned", "Update": "Update", "Hotfix": "Hotfix", "Gitea link": "Gitea link", "e.g. https://gitea.example.com/org/repo/src/branch/main/updates/2026-02": "e.g. https://gitea.example.com/org/repo/src/branch/main/updates/2026-02", "Notes": "Notes", "No update tickets found": "No update tickets found", "Failed to load update tickets": "Failed to load update tickets", "Update assigned successfully": "Update assigned successfully", "Failed to assign update": "Failed to assign update", "Select domain...": "Select domain...", "Loading domains...": "Loading domains...", "No domains found for this customer": "No domains found for this customer", "No updates for this domain yet": "No updates for this domain yet", "Search updates...": "Search updates...", "Open in Gitea": "Open in Gitea", "Invalid category": "Invalid category", "Ticket number is required": "Ticket number is required", "View software updates list": "View software updates list", "Assign and manage software updates": "Assign and manage software updates", "Security level": "Security level", "Low": "Low", "Normal": "Normal", "High": "High", "Critical": "Critical", "Save failed": "Save failed", "Invalid CSRF token": "Invalid CSRF token", "No tenant context": "No tenant context", "Missing domain number": "Missing domain number", "Invalid security level": "Invalid security level", "Failed to save security level": "Failed to save security level", "Under review": "Under review", "Assignment": "Assignment", "Assigned to": "Assigned to", "Assigned at": "Assigned at", "Not assigned yet": "Not assigned yet", "Assign": "Assign", "Change assignment": "Change assignment", "Assign handover": "Assign handover", "Assign to": "Assign to", "— Select employee —": "— Select employee —", "Due date (optional)": "Due date (optional)", "Due date": "Due date", "Currently assigned to": "Currently assigned to", "Resend notification": "Resend notification", "Notification resent": "Notification resent", "Failed to resend notification": "Failed to resend notification", "Handover assigned": "Handover assigned", "Failed to assign handover": "Failed to assign handover", "Only managers can assign handovers": "Only managers can assign handovers", "Only managers can resend notifications": "Only managers can resend notifications", "Handover has no assignee": "Handover has no assignee", "Please select an employee": "Please select an employee", "Submit for review": "Submit for review", "Submit this handover for review?": "Submit this handover for review?", "Handover submitted for review": "Handover submitted for review", "Failed to submit for review": "Failed to submit for review", "You are not assigned to this handover": "You are not assigned to this handover", "Handover cannot be submitted for review in its current status": "Handover cannot be submitted for review in its current status", "Open": "Open", "Closed": "Closed", "Assigned to (column)": "Assigned to" }