Some checks are pending
Bidi Control Character Guard / bidi-control-guard (push) Waiting to run
Circular Dependency Check / Check for new circular dependencies (push) Waiting to run
Citus Migration Smoke / Combined migrations on single-node Citus (push) Waiting to run
E2E Fresh Install Tests / fresh-install-e2e (push) Waiting to run
ext-v2 guardrails / Run ext-v2 guard and ESLint (push) Waiting to run
Integration Tests / Check for relevant changes (push) Waiting to run
Integration Tests / ${{ (github.event_name == 'schedule' || github.event.inputs.suite == 'full') && 'Full integration suite' || 'Tier-1 integration subset' }} (push) Blocked by required conditions
Mobile checks / Mobile lint + typecheck (push) Waiting to run
Mobile checks / Mobile unit tests (push) Waiting to run
Mobile checks / Mobile dependency audit (report) (push) Waiting to run
Mobile checks / Mobile reproducibility checks (push) Waiting to run
Secrets guard (env backups) / Ensure no tracked env backup files (push) Waiting to run
Temporal Readiness / fast-readiness (push) Waiting to run
Temporal Readiness / docker-parity (push) Waiting to run
TypeScript Type Check / Nx affected typecheck (push) Waiting to run
Unit Tests / Skipped-test budget (push) Waiting to run
Unit Tests / Nx affected unit tests (push) Waiting to run
Unit Tests / Server unit coverage (informational) (push) Waiting to run
Validate Tenant Management Schema / Check for relevant changes (push) Waiting to run
Validate Tenant Management Schema / Validate Tenant Management Schema (push) Blocked by required conditions
EE Workflows Build Guard / ee-workflows-build-guard (push) Waiting to run
Excluded: .git, node_modules, secrets/, compose.env, assemblyscript tgz Source: /opt/alga-psa on psa.joliet.tech
1387 lines
60 KiB
JSON
1387 lines
60 KiB
JSON
{
|
||
"importDialog": {
|
||
"errorCount_one": "{{count}} error:",
|
||
"errorCount_other": "{{count}} errors:",
|
||
"warningCount_one": "{{count}} warning:",
|
||
"warningCount_other": "{{count}} warnings:",
|
||
"unmatchedPriorities_one": "{{count}} priority",
|
||
"unmatchedPriorities_other": "{{count}} priorities",
|
||
"unmatchedStatuses_one": "{{count}} status",
|
||
"unmatchedStatuses_other": "{{count}} statuses",
|
||
"unmatchedCategories_one": "{{count}} category",
|
||
"unmatchedCategories_other": "{{count}} categories",
|
||
"skippedCount_one": "{{count}} ticket was skipped.",
|
||
"skippedCount_other": "{{count}} tickets were skipped.",
|
||
"importTickets_one": "Import {{count}} Ticket",
|
||
"importTickets_other": "Import {{count}} Tickets",
|
||
"unmatchedClients_one": "{{count}} client",
|
||
"unmatchedClients_other": "{{count}} clients",
|
||
"unmatchedAgents_one": "{{count}} agent",
|
||
"unmatchedAgents_other": "{{count}} agents",
|
||
"unmatchedTeams_one": "{{count}} team",
|
||
"unmatchedTeams_other": "{{count}} teams",
|
||
"unmatchedContacts_one": "{{count}} contact",
|
||
"unmatchedContacts_other": "{{count}} contacts",
|
||
"unmatchedDateFormats_one": "{{count}} date format",
|
||
"unmatchedDateFormats_other": "{{count}} date formats",
|
||
"unmatchedValuesIntro_one": "{{count}} value from your CSV couldn't be automatically matched.",
|
||
"unmatchedValuesIntro_other": "{{count}} values from your CSV couldn't be automatically matched.",
|
||
"ticketCount_one": "({{count}} ticket)",
|
||
"ticketCount_other": "({{count}} tickets)",
|
||
"skipDropped_one": "Skip ({{count}} ticket dropped)",
|
||
"skipDropped_other": "Skip ({{count}} tickets dropped)",
|
||
"createdSuccess_one": "Successfully created {{count}} ticket.",
|
||
"createdSuccess_other": "Successfully created {{count}} tickets."
|
||
},
|
||
"title": "Support Tickets",
|
||
"subtitle": "View and manage your support tickets",
|
||
"backToTickets": "Back to Tickets",
|
||
"createNew": "Create New Ticket",
|
||
"createButton": "Create Support Ticket",
|
||
"viewAll": "View All Tickets",
|
||
"myTickets": "My Tickets",
|
||
"resetFilters": "Reset",
|
||
"filters": {
|
||
"allStatuses": "All Statuses",
|
||
"allOpen": "All Open Tickets",
|
||
"allClosed": "All Closed Tickets",
|
||
"allPriorities": "All Priorities",
|
||
"search": "Search tickets and comments...",
|
||
"category": "Filter by category",
|
||
"clearFilters": "Clear filters",
|
||
"assignee": "Assignee",
|
||
"allAssignees": "All Assignees",
|
||
"responseState": "Response State",
|
||
"allResponseStates": "All Response States",
|
||
"noResponseState": "No Response State",
|
||
"dueDate": "Due Date",
|
||
"allDueDates": "All Due Dates",
|
||
"overdue": "Overdue",
|
||
"today": "Due Today",
|
||
"upcoming": "Due Next 7 Days",
|
||
"beforeDate": "Before Date...",
|
||
"afterDate": "After Date...",
|
||
"beforeDateWithValue": "Before {{date}}",
|
||
"afterDateWithValue": "After {{date}}",
|
||
"noDueDate": "No Due Date",
|
||
"pickDate": "Pick date",
|
||
"slaStatus": "SLA Status",
|
||
"allSlaStatuses": "All SLA Status",
|
||
"hasSla": "Has SLA",
|
||
"noSla": "No SLA",
|
||
"onTrack": "On Track",
|
||
"breached": "Breached",
|
||
"paused": "Paused",
|
||
"allResponseStatuses": "All Response Statuses",
|
||
"responseStatus": "Response Status",
|
||
"board": "Filter by board"
|
||
},
|
||
"create": {
|
||
"title": "Create Support Ticket",
|
||
"titlePlaceholder": "Ticket Title",
|
||
"descriptionPlaceholder": "Describe your issue...",
|
||
"priorityPlaceholder": "Select Priority",
|
||
"boardPlaceholder": "Select Board",
|
||
"noBoardsAvailable": "No ticket boards are available for your account. Contact your administrator.",
|
||
"submit": "Create Ticket",
|
||
"submitting": "Creating...",
|
||
"errors": {
|
||
"titleRequired": "Title is required",
|
||
"descriptionRequired": "Description is required",
|
||
"priorityRequired": "Please select a priority",
|
||
"boardRequired": "Please select a board",
|
||
"createFailed": "Failed to create ticket. Please try again."
|
||
},
|
||
"linkedToAsset": "Linked asset: {{name}}",
|
||
"linkedToAssetGeneric": "Linked asset"
|
||
},
|
||
"status": {
|
||
"open": "Open",
|
||
"inProgress": "In Progress",
|
||
"resolved": "Resolved",
|
||
"closed": "Closed",
|
||
"pending": "Pending",
|
||
"waitingOnCustomer": "Waiting on Customer",
|
||
"waitingOnVendor": "Waiting on Vendor",
|
||
"unknown": "Unknown Status"
|
||
},
|
||
"priority": {
|
||
"low": "Low",
|
||
"medium": "Medium",
|
||
"high": "High",
|
||
"urgent": "Urgent",
|
||
"critical": "Critical",
|
||
"unknown": "Unknown Priority",
|
||
"planning": "Planning"
|
||
},
|
||
"fields": {
|
||
"ticketNumber": "Ticket Number",
|
||
"title": "Title",
|
||
"subject": "Subject",
|
||
"description": "Description",
|
||
"priority": "Priority",
|
||
"status": "Status",
|
||
"category": "Category",
|
||
"subcategory": "Subcategory",
|
||
"attachments": "Attachments",
|
||
"created": "Created",
|
||
"createdAt": "Created",
|
||
"lastUpdated": "Last Updated",
|
||
"updatedAt": "Last Updated",
|
||
"assignedTo": "Assigned To",
|
||
"requester": "Requester",
|
||
"client": "Client",
|
||
"dueDate": "Due Date",
|
||
"resolution": "Resolution",
|
||
"timeSpent": "Time Spent",
|
||
"notes": "Notes",
|
||
"internalNotes": "Internal Notes",
|
||
"board": "Board",
|
||
"team": "Team",
|
||
"assignedTeam": "Assigned Team",
|
||
"additionalAgents": "Additional Agents",
|
||
"createdBy": "Created By",
|
||
"location": "Location",
|
||
"contactPhone": "Contact Phone",
|
||
"clientPhone": "Client Phone",
|
||
"contactEmail": "Contact Email",
|
||
"clientEmail": "Client Email",
|
||
"impact": "Impact",
|
||
"urgency": "Urgency",
|
||
"responseState": "Response State",
|
||
"slaStatus": "SLA Status",
|
||
"product": "Product",
|
||
"quantity": "Quantity",
|
||
"total": "Total",
|
||
"price": "Price",
|
||
"rate": "Rate",
|
||
"recipient": "Recipient",
|
||
"error": "Error",
|
||
"displayOrder": "Display Order",
|
||
"parentCategory": "Parent Category",
|
||
"dateTimeFormat": "Date/Time Format",
|
||
"enteredBy": "Entered By",
|
||
"updatedBy": "Updated By",
|
||
"closedBy": "Closed By",
|
||
"enteredAt": "Entered At",
|
||
"closedAt": "Closed At",
|
||
"responseSource": "Response Source",
|
||
"ticketOrigin": "Ticket Origin",
|
||
"isClosed": "Is Closed",
|
||
"tags": "Tags",
|
||
"sla": "SLA",
|
||
"updated": "Updated",
|
||
"openInNewTab": "Open in new tab",
|
||
"actions": "Actions",
|
||
"linkedAssets": "Linked assets"
|
||
},
|
||
"actions": {
|
||
"view": "View",
|
||
"edit": "Edit",
|
||
"close": "Close Ticket",
|
||
"reopen": "Reopen Ticket",
|
||
"addNote": "Add Note",
|
||
"uploadFile": "Upload File",
|
||
"changeStatus": "Change Status",
|
||
"confirmStatusChange": "Are you sure you want to change the status of this ticket?",
|
||
"save": "Save",
|
||
"cancel": "Cancel",
|
||
"delete": "Delete",
|
||
"confirm": "Confirm",
|
||
"done": "Done",
|
||
"create": "Create",
|
||
"update": "Update",
|
||
"add": "Add",
|
||
"loadMore": "Load more",
|
||
"selectAll": "Select all",
|
||
"deselectAll": "Deselect all",
|
||
"proceed": "Proceed",
|
||
"export": "Export",
|
||
"reset": "Reset",
|
||
"importSelected": "Import Selected",
|
||
"printOptions": "Print options"
|
||
},
|
||
"messages": {
|
||
"noTickets": "No tickets found",
|
||
"loadingTickets": "Loading tickets...",
|
||
"ticketCreated": "Ticket created successfully",
|
||
"ticketUpdated": "Ticket updated successfully",
|
||
"commentAdded": "Comment added successfully",
|
||
"ticketClosed": "Ticket closed successfully",
|
||
"statusUpdateSuccess": "Ticket status successfully updated to \"{{status}}\".",
|
||
"error": "An error occurred while processing your request",
|
||
"loadError": "Failed to load ticket details",
|
||
"emptyComment": "Cannot add empty comment",
|
||
"commentError": "Failed to add comment",
|
||
"commentDeleteSuccess": "Comment deleted successfully",
|
||
"emptyNote": "Cannot save empty note",
|
||
"noDescription": "No description found.",
|
||
"filtersError": "Failed to load filter options.",
|
||
"loadingError": "Failed to load tickets. Please try again.",
|
||
"statusUpdateError": "Failed to update ticket status",
|
||
"notAuthenticated": "Not authenticated",
|
||
"userNotFound": "User ID not found in session",
|
||
"tenantNotFound": "Tenant not found in session. Please log out and log back in.",
|
||
"userNotAssociatedWithContact": "User not associated with a contact",
|
||
"contactNotAssociatedWithClient": "Contact not associated with a client. Please contact support.",
|
||
"ticketNotFound": "Ticket not found",
|
||
"commentNotFound": "Comment not found or not authorized",
|
||
"noDefaultBoard": "No default board configured for tickets",
|
||
"failedToCreateTicket": "Failed to create ticket",
|
||
"failedToFetchTicketDetails": "Failed to fetch ticket details",
|
||
"failedToAddComment": "Failed to add comment",
|
||
"failedToUpdateComment": "Failed to update comment",
|
||
"failedToDeleteComment": "Failed to delete comment",
|
||
"deleteOwnCommentError": "You can only delete your own comments",
|
||
"failedToUpdateTicketStatus": "Failed to update ticket status",
|
||
"noTitle": "No title",
|
||
"agentAdded": "Agent added successfully",
|
||
"agentAssigned": "Agent assigned successfully",
|
||
"agentRemoved": "Agent removed successfully",
|
||
"teamAssignSuccess": "Team assigned successfully",
|
||
"teamAssignFailed": "Failed to assign team",
|
||
"teamRemoveSuccess": "Team removed successfully",
|
||
"teamRemoveFailed": "Failed to remove team assignment",
|
||
"editOwnCommentOnly": "You can only edit your own comments",
|
||
"descriptionUpdated": "Description updated successfully",
|
||
"ticketIdMissing": "Ticket ID is missing.",
|
||
"watchListUpdateFailed": "Failed to update watch list",
|
||
"loadAllContactsFailed": "Failed to load all contacts",
|
||
"contactUpdated": "Contact updated successfully",
|
||
"itilImpactUpdated": "ITIL impact updated successfully",
|
||
"itilUrgencyUpdated": "ITIL urgency updated successfully",
|
||
"itilImpactUpdateFailed": "Failed to update ITIL impact",
|
||
"itilUrgencyUpdateFailed": "Failed to update ITIL urgency",
|
||
"clientUpdated": "Client updated successfully",
|
||
"locationUpdated": "Location updated successfully",
|
||
"pastedImageDeleteFailed_one": "Comment deleted, but could not delete {{count}} pasted image.",
|
||
"pastedImageDeleteFailed_other": "Comment deleted, but could not delete {{count}} pasted images.",
|
||
"commentWithImagesDeleted_one": "Comment and {{count}} pasted image deleted successfully.",
|
||
"commentWithImagesDeleted_other": "Comment and {{count}} pasted images deleted successfully.",
|
||
"pastedImagesDeleteFailed": "Comment deleted, but failed to delete pasted images.",
|
||
"removedFromBundle": "Removed ticket from bundle",
|
||
"bundleRemoved": "Bundle removed",
|
||
"addedToBundle": "Added ticket to bundle",
|
||
"cannotAddMasterAsChild": "Cannot add the master ticket as a child",
|
||
"ticketAlreadyBundled": "That ticket is already bundled",
|
||
"promotedMaster": "Promoted new master",
|
||
"bundleSettingsUpdated": "Bundle settings updated",
|
||
"addAgentFailed": "Failed to add agent",
|
||
"removeAgentFailed": "Failed to remove agent",
|
||
"saveCommentFailed": "Failed to save comment changes",
|
||
"updateDescriptionFailed": "Failed to update description",
|
||
"prepareTimeEntryFailed": "An error occurred while preparing the time entry. Please try again.",
|
||
"updateContactFailed": "Failed to update contact",
|
||
"updateClientFailed": "Failed to update client",
|
||
"updateLocationFailed": "Failed to update location",
|
||
"deleteCommentFailed": "Failed to delete comment",
|
||
"pastedImagesDeleted_one": "Deleted {{count}} pasted image.",
|
||
"pastedImagesDeleted_other": "Deleted {{count}} pasted images.",
|
||
"pastedImagesDeleteFailed_one": "Could not delete {{count}} pasted image.",
|
||
"pastedImagesDeleteFailed_other": "Could not delete {{count}} pasted images.",
|
||
"deleteCommentConfirm": "Are you sure you want to delete this comment? This action cannot be undone.",
|
||
"deleteCommentWithImages_one": "This comment includes {{count}} pasted image that was uploaded as a ticket document. Delete the comment only, or also delete the pasted image permanently?",
|
||
"deleteCommentWithImages_other": "This comment includes {{count}} pasted images that were uploaded as ticket documents. Delete the comment only, or also delete the pasted images permanently?",
|
||
"removeFromBundleFailed": "Failed to remove ticket from bundle",
|
||
"unbundleFailed": "Failed to unbundle ticket",
|
||
"addToBundleFailed": "Failed to add ticket to bundle",
|
||
"promoteMasterFailed": "Failed to promote master",
|
||
"updateBundleSettingsFailed": "Failed to update bundle settings",
|
||
"assetLoadFailed": "Failed to load asset details",
|
||
"assetNotFound": "Asset not found",
|
||
"addCommentFailed": "Failed to add comment",
|
||
"deleteTimeEntryFailed": "Failed to delete time entry",
|
||
"timeEntryDeleted": "Time entry deleted"
|
||
},
|
||
"conversation": {
|
||
"comments": "Comments",
|
||
"client": "Client",
|
||
"internal": "Internal",
|
||
"allComments": "All Comments",
|
||
"resolution": "Resolution",
|
||
"internalComments": "Internal Comments",
|
||
"resolutionComments": "Resolution Comments",
|
||
"markAsInternal": "Mark as Internal",
|
||
"markedAsInternal": "Marked as Internal",
|
||
"markAsResolution": "Mark as Resolution",
|
||
"markedAsResolution": "Marked as Resolution",
|
||
"oldestFirst": "Oldest first",
|
||
"newestFirst": "Newest first",
|
||
"addComment": "Add Comment",
|
||
"typeComment": "Type your comment here...",
|
||
"submit": "Submit",
|
||
"cancel": "Cancel",
|
||
"save": "Save",
|
||
"edit": "Edit",
|
||
"delete": "Delete",
|
||
"reply": "Reply",
|
||
"edited": "Edited",
|
||
"noComments": "No comments yet",
|
||
"metadataDebug": "View metadata (debug)",
|
||
"closeStatus": "Close status",
|
||
"noStatusChange": "Do not change status",
|
||
"clipboardDraftCancelTitle": "Pasted Images Detected",
|
||
"deleteUploadedImages": "Delete Images",
|
||
"keepUploadedImages": "Keep Images",
|
||
"bundledUpdate": "Bundled update",
|
||
"clientSuffix": " (Client)",
|
||
"internalCommentTooltip": "Internal Comment",
|
||
"resolutionCommentTooltip": "Resolution Comment",
|
||
"unknownUser": "Unknown User",
|
||
"editCommentAriaLabel": "Edit comment",
|
||
"deleteCommentAriaLabel": "Delete comment",
|
||
"inboundChildReplies": "Inbound replies on child tickets (view-only)",
|
||
"childTicket": "Child ticket",
|
||
"ticketPrefix": "Ticket {{number}}",
|
||
"clipboardDraftCancelMessage": "This draft includes pasted images that were already uploaded as ticket documents. Keep them, or delete them permanently?",
|
||
"replyCommentAriaLabel": "Reply to comment"
|
||
},
|
||
"responseState": {
|
||
"awaitingYourResponse": "Awaiting Your Response",
|
||
"awaitingSupportResponse": "Awaiting Support Response",
|
||
"awaitingYourResponseTooltip": "Support is waiting for your response",
|
||
"awaitingSupportResponseTooltip": "Your response has been received. Support will respond soon.",
|
||
"label": "Response State",
|
||
"awaitingClient": "Awaiting Client",
|
||
"awaitingInternal": "Awaiting Internal",
|
||
"clear": "Clear",
|
||
"setResponseState": "Set Response State",
|
||
"notSet": "Not set",
|
||
"set": "Set Response State",
|
||
"all": "All Response States",
|
||
"none": "No Response State"
|
||
},
|
||
"origin": {
|
||
"internal": "Created Internally",
|
||
"clientPortal": "Created via Client Portal",
|
||
"inboundEmail": "Created via Inbound Email",
|
||
"api": "Created via API",
|
||
"other": "Created via Other"
|
||
},
|
||
"responseSource": {
|
||
"clientPortal": "Received via Client Portal",
|
||
"inboundEmail": "Received via Inbound Email"
|
||
},
|
||
"documents": {
|
||
"title": "Documents",
|
||
"noDocuments": "No documents attached",
|
||
"upload": "Upload Document",
|
||
"download": "Download",
|
||
"remove": "Remove",
|
||
"preview": "Preview",
|
||
"linkDocuments": "Link Documents",
|
||
"editDocument": "Edit Document",
|
||
"viewDocument": "View Document",
|
||
"downloadToPlay": "Download to Play",
|
||
"delete": "Delete",
|
||
"previewUnavailable": "Preview unavailable",
|
||
"newDocument": "New Document",
|
||
"uploadFile": "Upload File"
|
||
},
|
||
"dashboard": {
|
||
"title": "Ticketing Dashboard",
|
||
"addTicket": "Add Ticket",
|
||
"shareTooltip": "Print, import and export",
|
||
"exportCsv": "Export CSV",
|
||
"bundledToggle": "Bundled",
|
||
"exportSelectedTooltip_one": "Export {{count}} selected ticket to CSV",
|
||
"exportSelectedTooltip_other": "Export {{count}} selected tickets to CSV",
|
||
"exportDisabledTooltip": "Select ticket(s) to export",
|
||
"selectAllMatching_one": "Select all {{count}} ticket matching your filters",
|
||
"selectAllMatching_other": "Select all {{count}} tickets matching your filters",
|
||
"allMatchingSelected_one": "All {{count}} ticket matching your filters is selected.",
|
||
"allMatchingSelected_other": "All {{count}} tickets matching your filters are selected.",
|
||
"allPageSelected_one": "All {{count}} ticket on this page is selected.",
|
||
"allPageSelected_other": "All {{count}} tickets on this page are selected.",
|
||
"clearSelection": "Clear selection",
|
||
"drawer": {
|
||
"loading": "Loading...",
|
||
"clientNotFound": "Client not found.",
|
||
"clientRendererMissing": "Client details are unavailable in this context.",
|
||
"clientLoadFailed": "Failed to load client."
|
||
},
|
||
"filters": {
|
||
"allAssignees": "All Assignees",
|
||
"selectStatus": "Select Status",
|
||
"responseState": "Response State",
|
||
"allResponseStates": "All Response States",
|
||
"noResponseState": "No Response State",
|
||
"dueDate": "Due Date",
|
||
"allDueDates": "All Due Dates",
|
||
"overdue": "Overdue",
|
||
"dueToday": "Due Today",
|
||
"dueNext7Days": "Due Next 7 Days",
|
||
"beforeDate": "Before Date...",
|
||
"beforeDateSelected": "Before {{date}}",
|
||
"afterDate": "After Date...",
|
||
"afterDateSelected": "After {{date}}",
|
||
"noDueDate": "No Due Date",
|
||
"pickDate": "Pick date",
|
||
"slaStatus": "SLA Status",
|
||
"allSlaStatus": "All SLA Status",
|
||
"hasSla": "Has SLA",
|
||
"noSla": "No SLA",
|
||
"onTrack": "On Track",
|
||
"breached": "Breached",
|
||
"paused": "Paused",
|
||
"bundled": "Bundled",
|
||
"activeBoards": "Active Boards",
|
||
"inactiveBoards": "Inactive Boards",
|
||
"allBoards": "All Boards"
|
||
},
|
||
"selection": {
|
||
"pageSelected_one": "All {{count}} ticket on this page are selected.",
|
||
"pageSelected_other": "All {{count}} tickets on this page are selected.",
|
||
"allMatchingSelected_one": "All {{count}} ticket matching your filters are selected.",
|
||
"allMatchingSelected_other": "All {{count}} tickets matching your filters are selected.",
|
||
"clear": "Clear selection",
|
||
"selectAllMatching_one": "Select all {{count}} ticket matching your filters",
|
||
"selectAllMatching_other": "Select all {{count}} tickets matching your filters"
|
||
},
|
||
"spacing": {
|
||
"compact": "Compact",
|
||
"spacious": "Spacious",
|
||
"decrease": "Decrease ticket list spacing",
|
||
"increase": "Increase ticket list spacing",
|
||
"reset": "Reset ticket list spacing"
|
||
},
|
||
"print": {
|
||
"action": "Print",
|
||
"selectedAction_one": "Print selected ({{count}})",
|
||
"selectedAction_other": "Print selected ({{count}})",
|
||
"title": "Tickets",
|
||
"selectedTitle_one": "Selected Tickets ({{count}})",
|
||
"selectedTitle_other": "Selected Tickets ({{count}})",
|
||
"subtitle_one": "{{count}} ticket",
|
||
"subtitle_other": "{{count}} tickets",
|
||
"noTickets": "No tickets to print",
|
||
"columns": {
|
||
"ticket": "Ticket",
|
||
"title": "Title",
|
||
"client": "Client",
|
||
"status": "Status",
|
||
"priority": "Priority",
|
||
"assigned": "Assigned",
|
||
"dueDate": "Due Date"
|
||
},
|
||
"emptyValue": "—",
|
||
"noDueDate": "No due date",
|
||
"values": {
|
||
"hasSla": "SLA"
|
||
},
|
||
"optionsDialog": {
|
||
"title": "Print options",
|
||
"selectedTitle": "Print options ({{count}} selected)",
|
||
"description": "Choose which columns to include when printing tickets."
|
||
},
|
||
"selectedAction": "Print selected ({{count}})",
|
||
"selectedTitle": "Selected Tickets ({{count}})",
|
||
"subtitle": "{{count}} tickets"
|
||
},
|
||
"exportSelectedAction": "Export selected ({{count}})",
|
||
"exportAction": "Export CSV",
|
||
"importAction": "Import CSV"
|
||
},
|
||
"bulk": {
|
||
"bundleTickets": "Bundle Tickets",
|
||
"actionBar": {
|
||
"selectedCount_one": "{{count}} selected",
|
||
"selectedCount_other": "{{count}} selected",
|
||
"move": "Move to Board",
|
||
"bundle": "Bundle",
|
||
"delete": "Delete",
|
||
"clear": "Clear",
|
||
"bundleNeedsTwo": "Select at least 2 tickets to bundle",
|
||
"assign": "Assign",
|
||
"status": "Status",
|
||
"priority": "Priority",
|
||
"tags": "Tags",
|
||
"dueDate": "Due Date",
|
||
"statusDisabledMultiBoard": "Selected tickets are on different boards",
|
||
"statusResolvingBoards": "Checking the boards of selected tickets…",
|
||
"more": "More"
|
||
},
|
||
"moveDialogTitle": "Move Selected Tickets",
|
||
"moveDialogDescription": "Select a destination board and status, then confirm moving the selected tickets.",
|
||
"destinationBoard": "Destination Board",
|
||
"destinationStatus": "Destination Status",
|
||
"selectDestinationBoard": "Select destination board...",
|
||
"selectDestinationStatus": "Select destination status...",
|
||
"noTicketsSelected": "No tickets selected.",
|
||
"moving": "Moving...",
|
||
"moveConfirm_one": "Move {{count}} Ticket",
|
||
"moveConfirm_other": "Move {{count}} Tickets",
|
||
"moveSuccess_one": "{{count}} ticket moved",
|
||
"moveSuccess_other": "{{count}} tickets moved",
|
||
"movePartialError": "Some tickets could not be moved",
|
||
"moveFailedHeading": "The following tickets could not be moved:",
|
||
"moveFailed": "Failed to move selected tickets",
|
||
"deleteDialogTitle": "Delete Selected Tickets",
|
||
"deleteDialogDescription_one": "Are you sure you want to delete this ticket? This action cannot be undone.",
|
||
"deleteDialogDescription_other": "Are you sure you want to delete these {{count}} tickets? This action cannot be undone.",
|
||
"deleting": "Deleting...",
|
||
"deleteConfirm_one": "Delete {{count}} Ticket",
|
||
"deleteConfirm_other": "Delete {{count}} Tickets",
|
||
"deleteSuccess_one": "{{count}} ticket deleted",
|
||
"deleteSuccess_other": "{{count}} tickets deleted",
|
||
"deletePartialError": "Some tickets could not be deleted",
|
||
"deleteFailedHeading": "The following tickets could not be deleted:",
|
||
"deleteFailed": "Failed to delete selected tickets",
|
||
"bundleDialogTitle": "Bundle Tickets",
|
||
"bundleCrossClientWarning": "This bundle spans multiple clients. You'll be asked to confirm before bundling.",
|
||
"bundleMasterLabel": "Select Master Ticket",
|
||
"bundleMasterPlaceholder": "Select master ticket...",
|
||
"bundleSyncUpdates": "Sync updates from master to children (public replies + workflow changes)",
|
||
"bundleSyncUpdatesHelp": "Child tickets keep their current status when bundled. Workflow fields are locked on children by default. Internal notes stay on the master.",
|
||
"bundleSelectAtLeastTwo": "Select at least two tickets to bundle.",
|
||
"bundleSelectMaster": "Select a master ticket.",
|
||
"bundleSuccess": "Tickets bundled",
|
||
"bundleFailed": "Failed to bundle tickets",
|
||
"multiClientConfirmTitle": "Bundle spans multiple clients",
|
||
"multiClientConfirmMessage": "This bundle includes tickets from multiple clients. Confirm that you want to proceed.",
|
||
"deleteSelected": "Delete Selected",
|
||
"exportSelectedTooltip_one": "Export {{count}} selected ticket to CSV",
|
||
"exportSelectedTooltip_other": "Export {{count}} selected tickets to CSV",
|
||
"exportDisabledTooltip": "Select ticket(s) to export",
|
||
"move": {
|
||
"dialogTitle": "Move Selected Tickets",
|
||
"description": "Select a destination board and status, then confirm moving the selected tickets.",
|
||
"destinationBoard": "Destination Board",
|
||
"destinationStatus": "Destination Status",
|
||
"selectDestinationBoard": "Select destination board...",
|
||
"selectDestinationStatus": "Select destination status...",
|
||
"unnamedBoard": "Unnamed board",
|
||
"noStatusesConfigured": "This board has no ticket statuses configured for selection.",
|
||
"loadStatusesFailed": "Failed to load board statuses",
|
||
"noTicketsSelected": "No tickets selected.",
|
||
"failedItemsHeading": "The following tickets could not be moved:",
|
||
"confirm_one": "Move {{count}} Ticket",
|
||
"confirm_other": "Move {{count}} Tickets",
|
||
"submitting": "Moving...",
|
||
"success_one": "{{count}} ticket moved",
|
||
"success_other": "{{count}} tickets moved",
|
||
"partialFailure": "Some tickets could not be moved",
|
||
"failure": "Failed to move selected tickets",
|
||
"confirm": "Move {{count}} tickets",
|
||
"success": "{{count}} tickets moved"
|
||
},
|
||
"delete": {
|
||
"dialogTitle": "Delete Selected Tickets",
|
||
"confirm_one": "Are you sure you want to delete this ticket? This action cannot be undone.",
|
||
"confirm_other": "Are you sure you want to delete these {{count}} tickets? This action cannot be undone.",
|
||
"button_one": "Delete {{count}} Ticket",
|
||
"button_other": "Delete {{count}} Tickets",
|
||
"failedItemsHeading": "The following tickets could not be deleted:",
|
||
"noTicketsSelected": "No tickets selected.",
|
||
"entityFallback": "this ticket",
|
||
"submitting": "Deleting...",
|
||
"success_one": "{{count}} ticket deleted",
|
||
"success_other": "{{count}} tickets deleted",
|
||
"partialFailure": "Some tickets could not be deleted",
|
||
"failure": "Failed to delete selected tickets",
|
||
"confirm": "Are you sure you want to delete these {{count}} tickets? This action cannot be undone.",
|
||
"success": "{{count}} tickets deleted"
|
||
},
|
||
"bundle": {
|
||
"dialogTitle": "Bundle Tickets",
|
||
"multiClientTitle": "Bundle spans multiple clients",
|
||
"multiClientMessage": "This bundle includes tickets from multiple clients. Confirm that you want to proceed.",
|
||
"proceed": "Proceed",
|
||
"success": "Tickets bundled",
|
||
"failure": "Failed to bundle tickets",
|
||
"selectAtLeastTwo": "Select at least two tickets to bundle.",
|
||
"selectMaster": "Select a master ticket.",
|
||
"crossClientWarning": "This bundle spans multiple clients. You'll be asked to confirm before bundling.",
|
||
"masterTicket": "Select Master Ticket",
|
||
"selectMasterTicket": "Select master ticket...",
|
||
"syncUpdates": "Sync updates from master to children (public replies + workflow changes)",
|
||
"syncUpdatesHelp": "Child tickets keep their current status when bundled. Workflow fields are locked on children by default. Internal notes stay on the master.",
|
||
"childrenDescription": "Children keep their current status; workflow fields are locked on children. Inbound child replies are surfaced below as view-only.",
|
||
"checkingMasters": "Checking existing bundles...",
|
||
"existingMasterSuffix": "(existing master)",
|
||
"existingMasterLocked": "One selected ticket is already a bundle master. It will be used as the master; the others will be added as children.",
|
||
"multipleExistingMasters": "Multiple selected tickets are already bundle masters ({{count}}). Unbundle all but one before bundling."
|
||
},
|
||
"auth": {
|
||
"moveRequired": "You must be logged in to move tickets",
|
||
"deleteRequired": "You must be logged in to delete tickets",
|
||
"assignRequired": "You must be logged in to reassign tickets",
|
||
"tagsRequired": "You must be logged in to add tags",
|
||
"dueDateRequired": "You must be logged in to update tickets",
|
||
"statusRequired": "You must be logged in to update tickets",
|
||
"priorityRequired": "You must be logged in to update tickets"
|
||
},
|
||
"assign": {
|
||
"dialogTitle": "Assign Selected Tickets",
|
||
"message": "Reassign {{count}} selected ticket(s) to:",
|
||
"unassigned": "Not assigned",
|
||
"teamHint": "The team lead becomes the primary assignee; other team members are added as additional agents.",
|
||
"confirm_one": "Reassign {{count}} Ticket",
|
||
"confirm_other": "Reassign {{count}} Tickets",
|
||
"submitting": "Reassigning...",
|
||
"success_one": "{{count}} ticket reassigned",
|
||
"success_other": "{{count}} tickets reassigned",
|
||
"partialFailure": "Some tickets could not be reassigned",
|
||
"failure": "Failed to reassign selected tickets",
|
||
"failedHeading": "The following tickets could not be reassigned:"
|
||
},
|
||
"tags": {
|
||
"dialogTitle": "Add Tags to Selected Tickets",
|
||
"message": "Add one or more tags to {{count}} selected ticket(s). Tags already on a ticket are skipped.",
|
||
"placeholder": "Type a tag and press Enter",
|
||
"confirm_one": "Add Tags to {{count}} Ticket",
|
||
"confirm_other": "Add Tags to {{count}} Tickets",
|
||
"submitting": "Adding tags...",
|
||
"success_one": "Tags added to {{count}} ticket",
|
||
"success_other": "Tags added to {{count}} tickets",
|
||
"partialFailure": "Tags could not be added to some tickets",
|
||
"failure": "Failed to add tags to selected tickets",
|
||
"failedHeading": "Tags could not be added to the following tickets:"
|
||
},
|
||
"dueDate": {
|
||
"dialogTitle": "Set Due Date for Selected Tickets",
|
||
"message": "Set or clear the due date on {{count}} selected ticket(s).",
|
||
"modeSet": "Set to",
|
||
"modeClear": "Clear due date",
|
||
"placeholder": "Pick a date",
|
||
"confirm_one": "Update {{count}} Ticket",
|
||
"confirm_other": "Update {{count}} Tickets",
|
||
"submitting": "Updating...",
|
||
"success_one": "Due date updated on {{count}} ticket",
|
||
"success_other": "Due date updated on {{count}} tickets",
|
||
"partialFailure": "Due date could not be updated on some tickets",
|
||
"failure": "Failed to update due date on selected tickets",
|
||
"failedHeading": "Due date could not be updated on the following tickets:"
|
||
},
|
||
"status": {
|
||
"dialogTitle": "Change Status for Selected Tickets",
|
||
"message": "Set the status for {{count}} selected ticket(s):",
|
||
"placeholder": "Select a status",
|
||
"loading": "Loading statuses...",
|
||
"confirm_one": "Update {{count}} Ticket",
|
||
"confirm_other": "Update {{count}} Tickets",
|
||
"submitting": "Updating...",
|
||
"success_one": "Status updated on {{count}} ticket",
|
||
"success_other": "Status updated on {{count}} tickets",
|
||
"partialFailure": "Status could not be updated on some tickets",
|
||
"failure": "Failed to update status on selected tickets",
|
||
"failedHeading": "Status could not be updated on the following tickets:"
|
||
},
|
||
"priority": {
|
||
"dialogTitle": "Change Priority for Selected Tickets",
|
||
"message": "Set the priority for {{count}} selected ticket(s):",
|
||
"placeholder": "Select a priority",
|
||
"confirm_one": "Update {{count}} Ticket",
|
||
"confirm_other": "Update {{count}} Tickets",
|
||
"submitting": "Updating...",
|
||
"success_one": "Priority updated on {{count}} ticket",
|
||
"success_other": "Priority updated on {{count}} tickets",
|
||
"partialFailure": "Priority could not be updated on some tickets",
|
||
"failure": "Failed to update priority on selected tickets",
|
||
"failedHeading": "Priority could not be updated on the following tickets:"
|
||
}
|
||
},
|
||
"quickAdd": {
|
||
"dialogTitle": "Quick Add Ticket",
|
||
"dialogLabel": "Quick Add Ticket Dialog",
|
||
"formLabel": "Quick Add Ticket Form",
|
||
"requiredFieldsTitle": "Please fill in the required fields:",
|
||
"descriptionLabel": "Description",
|
||
"clientPlaceholder": "Select Client *",
|
||
"noContactsForSelectedClient": "No contacts for selected client",
|
||
"noLocationsForSelectedClient": "No locations for selected client",
|
||
"locationNone": "None",
|
||
"selectLocation": "Select location",
|
||
"selectBoard": "Select Board *",
|
||
"assignedTo": "Assigned To",
|
||
"assignToPlaceholder": "Assign To",
|
||
"additionalAgents": "Additional Agents",
|
||
"additionalAgentsPlaceholder": "Additional agents...",
|
||
"selectCategory": "Select category",
|
||
"selectItilCategory": "Select ITIL category",
|
||
"selectStatus": "Select Status *",
|
||
"selectPriority": "Select Priority *",
|
||
"dueDate": "Due Date",
|
||
"selectDate": "Select date",
|
||
"timePlaceholder": "Time",
|
||
"noTimeDefault": "No time set - defaults to 12:00 AM",
|
||
"descriptionImagesWarning": "Ticket created, but pasted images could not be attached to the description.",
|
||
"teamAssignmentFailed": "Ticket created but team assignment failed",
|
||
"tagCreationFailed_one": "{{count}} tag could not be created",
|
||
"tagCreationFailed_other": "{{count}} tags could not be created",
|
||
"requiredFieldsHeading": "Please fill in the required fields:",
|
||
"titlePlaceholder": "Ticket Title *",
|
||
"descriptionPlaceholder": "Description",
|
||
"noContactsForClient": "No contacts for selected client",
|
||
"selectContact": "Select contact",
|
||
"none": "None",
|
||
"defaultSuffix": "(Default)",
|
||
"noLocationsForClient": "No locations for selected client",
|
||
"unnamedLocation": "Unnamed Location",
|
||
"boardPlaceholder": "Select Board *",
|
||
"assignTo": "Assign To",
|
||
"addTeamMembers": "Add Team Members",
|
||
"statusPlaceholder": "Select Status *",
|
||
"priorityCalculated": "Priority (Calculated)",
|
||
"showPriorityMatrix": "Show ITIL Priority Matrix",
|
||
"submit": "Add Ticket",
|
||
"submitting": "Adding...",
|
||
"createAndView": "Create + View Ticket",
|
||
"continueEditing": "Continue Editing",
|
||
"clipboardDraftMessage": "This quick-add description includes pasted images that have not been attached to a saved ticket yet. Continue editing, or delete the staged images and close?",
|
||
"clipboardUploadSessionRequired": "User session is required for clipboard image upload.",
|
||
"clipboardUploadFailed": "Clipboard image upload failed.",
|
||
"clipboardUploadPartialFailure": "Ticket created, but pasted images could not be attached to the description.",
|
||
"teamAssignmentPartialFailure": "Ticket created but team assignment failed",
|
||
"tagCreatePartialFailure_one": "{{count}} tag could not be created",
|
||
"tagCreatePartialFailure_other": "{{count}} tags could not be created"
|
||
},
|
||
"itil": {
|
||
"calculatedPriority": "Priority (Calculated)",
|
||
"selectImpactUrgency": "Select Impact and Urgency to calculate priority",
|
||
"matrixTitle": "ITIL Priority Matrix (Impact × Urgency)",
|
||
"impactHelp": "How many users/business functions are affected?",
|
||
"urgencyHelp": "How quickly does this need to be resolved?",
|
||
"impactOptions": {
|
||
"one": "1 - High (Critical business function affected)",
|
||
"two": "2 - Medium-High (Important function affected)",
|
||
"three": "3 - Medium (Minor function affected)",
|
||
"four": "4 - Medium-Low (Minimal impact)",
|
||
"five": "5 - Low (No business impact)"
|
||
},
|
||
"urgencyOptions": {
|
||
"one": "1 - High (Work cannot continue)",
|
||
"two": "2 - Medium-High (Work severely impaired)",
|
||
"three": "3 - Medium (Work continues with limitations)",
|
||
"four": "4 - Medium-Low (Minor inconvenience)",
|
||
"five": "5 - Low (Work continues normally)"
|
||
},
|
||
"matrixColumns": {
|
||
"one": "High Urgency (1)",
|
||
"two": "Medium-High Urgency (2)",
|
||
"three": "Medium Urgency (3)",
|
||
"four": "Medium-Low Urgency (4)",
|
||
"five": "Low Urgency (5)"
|
||
},
|
||
"matrixRows": {
|
||
"one": "High Impact (1)",
|
||
"two": "Medium-High Impact (2)",
|
||
"three": "Medium Impact (3)",
|
||
"four": "Medium-Low Impact (4)",
|
||
"five": "Low Impact (5)"
|
||
},
|
||
"impact": "Impact",
|
||
"urgency": "Urgency",
|
||
"selectImpact": "Select Impact",
|
||
"selectUrgency": "Select Urgency",
|
||
"calculatePrompt": "Select Impact and Urgency to calculate priority",
|
||
"explainer": {
|
||
"impact": "Impact: How many users/business functions are affected?",
|
||
"urgency": "Urgency: How quickly does this need to be resolved?"
|
||
},
|
||
"impactLevels": {
|
||
"1": "1 - High (Critical business function affected)",
|
||
"2": "2 - Medium-High (Important function affected)",
|
||
"3": "3 - Medium (Minor function affected)",
|
||
"4": "4 - Medium-Low (Minimal impact)",
|
||
"5": "5 - Low (No business impact)"
|
||
},
|
||
"urgencyLevels": {
|
||
"1": "1 - High (Work cannot continue)",
|
||
"2": "2 - Medium-High (Work severely impaired)",
|
||
"3": "3 - Medium (Work continues with limitations)",
|
||
"4": "4 - Medium-Low (Minor inconvenience)",
|
||
"5": "5 - Low (Work continues normally)"
|
||
},
|
||
"priorityLevels": {
|
||
"1": "Critical (1)",
|
||
"2": "High (2)",
|
||
"3": "Medium (3)",
|
||
"4": "Low (4)",
|
||
"5": "Planning (5)"
|
||
},
|
||
"impactAxis": {
|
||
"1": "High Impact (1)",
|
||
"2": "Medium-High Impact (2)",
|
||
"3": "Medium Impact (3)",
|
||
"4": "Medium-Low Impact (4)",
|
||
"5": "Low Impact (5)"
|
||
},
|
||
"urgencyAxis": {
|
||
"1": "High\nUrgency (1)",
|
||
"2": "Medium-High\nUrgency (2)",
|
||
"3": "Medium\nUrgency (3)",
|
||
"4": "Medium-Low\nUrgency (4)",
|
||
"5": "Low\nUrgency (5)"
|
||
}
|
||
},
|
||
"info": {
|
||
"saveTitle": "Save title",
|
||
"editTitle": "Edit title",
|
||
"saveChanges": "Save Changes",
|
||
"saving": "Saving...",
|
||
"unsavedChanges": "You have unsaved changes. Click \"Save Changes\" to apply them.",
|
||
"saveSuccess": "Changes saved successfully!",
|
||
"discardChangesTitle": "Discard Changes",
|
||
"discardChangesMessage": "You have unsaved changes. Are you sure you want to discard them?",
|
||
"discard": "Discard",
|
||
"keepEditing": "Keep Editing",
|
||
"statusRequiresSelection": "Select a status for the new board before saving.",
|
||
"notAssigned": "Not assigned",
|
||
"additionalAgentsTooltip": "Additional Agents:",
|
||
"loading": "Loading...",
|
||
"tagsCannotBeManaged": "Tags cannot be managed",
|
||
"viewEmailNotificationLogs": "View email notification logs",
|
||
"changesSaved": "Changes saved successfully!",
|
||
"additionalAgents": "Additional Agents:",
|
||
"board": "Board",
|
||
"itilCategory": "ITIL Category",
|
||
"loadingBoardConfig": "Loading...",
|
||
"selectStatusForNewBoard": "Select a status for the new board before saving.",
|
||
"calculatedPriority": "Calculated Priority:",
|
||
"slaStatus": "SLA Status",
|
||
"responseSlaBreached": "Response SLA breached",
|
||
"resolutionSlaBreached": "Resolution SLA breached",
|
||
"editDescription": "Edit description",
|
||
"noDescription": "No description found.",
|
||
"openEmailNotificationLogs": "View email notification logs",
|
||
"clipboardDraftMessage": "This description includes pasted images that were already uploaded as ticket documents. Keep them, or delete them permanently?",
|
||
"clearDueDate": "Clear due date",
|
||
"paused": "Paused",
|
||
"openActivityLog": "View activity log",
|
||
"resolveLiveConflict": "Resolve live update conflicts before saving your changes."
|
||
},
|
||
"properties": {
|
||
"timeEntry": "Time Entry",
|
||
"ticketTimer": "Ticket Timer - #{{ticketNumber}}",
|
||
"timerActiveElsewhere": "Timer active in another window",
|
||
"start": "Start",
|
||
"pause": "Pause",
|
||
"reset": "Reset",
|
||
"enterWorkDescription": "Enter work description",
|
||
"liveTimerDisabled": "Live ticket timer is disabled for this board.",
|
||
"addTimeEntry": "Add Time Entry",
|
||
"trackedIntervals": "Tracked Intervals",
|
||
"contactInfo": "Contact Info",
|
||
"noContactSelected": "No contact selected",
|
||
"selectOrChangeContact": "Select or change contact",
|
||
"notAvailable": "N/A",
|
||
"noLocationSpecified": "No location specified",
|
||
"noSpecificLocation": "No specific location",
|
||
"defaultSuffix": "(Default)",
|
||
"selectLocation": "Select location",
|
||
"agentTeam": "Agent team",
|
||
"appointmentRequests": "Appointment requests",
|
||
"appointmentRequest": "Appointment Request",
|
||
"service": "Service",
|
||
"requestedDateTime": "Requested Date & Time",
|
||
"duration": "Duration",
|
||
"approvedAt": "Approved At",
|
||
"declineReason": "Decline Reason",
|
||
"appointmentFallback": "Appointment",
|
||
"lead": "Lead",
|
||
"unknown": "Unknown",
|
||
"primaryAgent": "Primary Agent",
|
||
"unknownAgent": "Unknown Agent",
|
||
"noPrimaryAgentAssigned": "No primary agent assigned",
|
||
"selectAdditionalAgents": "Select additional agents...",
|
||
"assignedTeamFallback": "Assigned Team",
|
||
"switchTeamAssignment": "Switch team assignment",
|
||
"removeTeamAssignment": "Remove team assignment",
|
||
"removeAllTeamMembers": "Remove all team members",
|
||
"keepAllTeamMembers": "Keep all team members as individual agents",
|
||
"selectMembersToKeep": "Select individual members to keep/remove",
|
||
"noTeamMembersFound": "No team members found on this ticket.",
|
||
"contact": "Contact",
|
||
"createdBy": "Created By",
|
||
"location": "Location",
|
||
"contactPhone": "Contact Phone",
|
||
"clientPhone": "Client Phone",
|
||
"contactEmail": "Contact Email",
|
||
"clientEmail": "Client Email",
|
||
"assignedTeam": "Assigned Team",
|
||
"teamLead": "Lead",
|
||
"team": "Team",
|
||
"noTeamAssigned": "No team assigned",
|
||
"additionalAgents": "Additional Agents",
|
||
"scheduled": "Scheduled: {{time}}",
|
||
"removeTeamMode": {
|
||
"removeAll": "Remove all team members",
|
||
"keepAll": "Keep all team members as individual agents",
|
||
"selective": "Select individual members to keep/remove"
|
||
},
|
||
"noTeamMembersOnTicket": "No team members found on this ticket.",
|
||
"unnamedUser": "Unnamed User"
|
||
},
|
||
"settings": {
|
||
"categories": {
|
||
"title": "Categories",
|
||
"allBoards": "All Boards",
|
||
"filterByBoard": "Filter by board",
|
||
"addCategory": "Add Category",
|
||
"importStandardCategories": "Import from Standard Categories",
|
||
"editCategory": "Edit Category",
|
||
"categoryName": "Category Name *",
|
||
"enterCategoryName": "Enter category name",
|
||
"selectBoard": "Select a board",
|
||
"displayOrder": "Display Order",
|
||
"enterDisplayOrder": "Enter display order",
|
||
"displayOrderHelp": "Controls the order in which categories appear in dropdown menus throughout the platform. Lower numbers appear first.",
|
||
"boardChangeWarning": "Changing the board for this parent category will also update all its subcategories to the same board.",
|
||
"importTitle": "Import Standard Categories",
|
||
"importEmpty": "No standard categories available to import.",
|
||
"importDescription": "Select standard categories to import into your organization:",
|
||
"targetBoard": "Target Board *",
|
||
"selectImportBoard": "Select a board for imported categories",
|
||
"targetBoardHelp": "All imported categories will be assigned to this board",
|
||
"importConflictTitle": "Resolve Import Conflicts",
|
||
"importConflictDescription": "The following items have conflicts. Choose how to resolve each:",
|
||
"nameColumn": "Name",
|
||
"descriptionColumn": "Description",
|
||
"orderColumn": "Order",
|
||
"skipItem": "Skip this item",
|
||
"importWithNewName": "Import with new name:",
|
||
"categoryNameConflict": "A category with this name already exists.",
|
||
"displayOrderConflict": "Display order {{order}} is already in use.",
|
||
"importWithOrder": "Import with order {{order}}",
|
||
"importStandard": "Import Standard Categories",
|
||
"editTitle": "Edit Category",
|
||
"conflictsTitle": "Resolve Import Conflicts",
|
||
"name": "Name",
|
||
"description": "Description",
|
||
"enterName": "Enter category name",
|
||
"targetBoardPlaceholder": "Select a board for imported categories",
|
||
"noStandardCategories": "No standard categories available to import.",
|
||
"importSelected": "Import Selected",
|
||
"importWithResolutions": "Import With Resolutions",
|
||
"conflictDescription": "Description conflict",
|
||
"nameConflict": "Name conflict",
|
||
"orderConflict": "Order conflict",
|
||
"renameTo": "Import with new name:",
|
||
"fetchFailed": "Failed to fetch categories",
|
||
"validateDeleteFailed": "Failed to validate category deletion.",
|
||
"deleteSuccess": "Category deleted successfully",
|
||
"deleteFailed": "Failed to delete category",
|
||
"nameRequired": "Category name is required",
|
||
"saveSuccess": "Category updated successfully",
|
||
"saveFailed": "Failed to save category",
|
||
"createSuccess": "Category created successfully",
|
||
"importBoardRequired": "Please select a board for the imported categories",
|
||
"importMissingParents": "Cannot import subcategories without their parent categories. Please also select: {{parents}}",
|
||
"importSuccess": "Categories imported successfully",
|
||
"importFailed": "Failed to import categories",
|
||
"fetchAvailableFailed": "Failed to fetch available categories for import",
|
||
"noneTopLevelCategory": "None (Top-level category)",
|
||
"noBoard": "No board",
|
||
"loadingBoards": "Loading boards…",
|
||
"boardRequiredHelp": "Required for top-level categories",
|
||
"parentCategoryOptional": "Parent Category (Optional)",
|
||
"selectParentCategory": "Select parent category",
|
||
"parentHelpWithBoard": "Select a parent to create a subcategory, or leave empty for top-level",
|
||
"parentHelpWithoutBoard": "Select a board first, or pick a parent category to inherit its board",
|
||
"creating": "Creating..."
|
||
},
|
||
"display": {
|
||
"responseStateTrackingTitle": "Response State Tracking",
|
||
"responseStateTrackingDescription": "When enabled, tickets automatically track who needs to respond next (awaiting client or awaiting internal response). Disabling this hides response state badges, filters, and related SLA pause options.",
|
||
"responseStateTrackingEnabled": "Response state tracking enabled",
|
||
"responseStateTrackingDisabled": "Response state tracking disabled",
|
||
"title": "Ticket Display Preferences",
|
||
"description": "Configure how your Ticketing dashboard displays columns and timestamps for your team.",
|
||
"dateTimeFormat": "Date/Time Format",
|
||
"ticketListColumns": "Ticket List Columns",
|
||
"showTags": "Show Tags",
|
||
"displayUnderTitle": "Display under Title",
|
||
"displayInSeparateColumn": "Display in separate column",
|
||
"saveSuccess": "Ticket display settings saved",
|
||
"saveFailed": "Failed to save display settings",
|
||
"saving": "Saving…",
|
||
"preferencesTitle": "Ticket Display Preferences",
|
||
"preferencesDescription": "Configure how your Ticketing dashboard displays columns and timestamps for your team.",
|
||
"columnsTitle": "Ticket List Columns",
|
||
"columns": {
|
||
"sla": "SLA",
|
||
"createdBy": "Created By",
|
||
"actions": "Actions",
|
||
"tags": "Tags"
|
||
},
|
||
"requiredSuffix": "(required)",
|
||
"tagsUnderTitle": "Display under Title",
|
||
"tagsSeparateColumn": "Display in separate column"
|
||
}
|
||
},
|
||
"export": {
|
||
"title": "Export Tickets",
|
||
"fieldsToExport": "Fields to export",
|
||
"selectedFields_one": "{{count}} of {{total}} field selected",
|
||
"selectedFields_other": "{{count}} of {{total}} fields selected",
|
||
"selectedTicketsSummary_one": "Exporting {{count}} selected ticket",
|
||
"selectedTicketsSummary_other": "Exporting {{count}} selected tickets",
|
||
"appliedFiltersSummary_one": "(of {{count}} ticket matching applied filters)",
|
||
"appliedFiltersSummary_other": "(of {{count}} tickets matching applied filters)",
|
||
"exporting": "Exporting tickets...",
|
||
"completeTitle": "Export Complete",
|
||
"completeDescription_one": "Successfully exported {{count}} ticket to CSV.",
|
||
"completeDescription_other": "Successfully exported {{count}} tickets to CSV.",
|
||
"exportFailed": "Failed to export tickets",
|
||
"summary_one": "Exporting {{selected}} selected ticket",
|
||
"summary_other": "Exporting {{selected}} selected tickets",
|
||
"summaryMatching_one": "(of {{total}} ticket matching applied filters)",
|
||
"summaryMatching_other": "(of {{total}} tickets matching applied filters)",
|
||
"fieldsTitle": "Fields to export",
|
||
"selectAll": "Select all",
|
||
"deselectAll": "Deselect all",
|
||
"selectedCount": "{{selected}} of {{total}} fields selected",
|
||
"confirm_one": "Export {{count}} Ticket",
|
||
"confirm_other": "Export {{count}} Tickets",
|
||
"completeMessage_one": "Successfully exported {{count}} ticket to CSV.",
|
||
"completeMessage_other": "Successfully exported {{count}} tickets to CSV.",
|
||
"done": "Done",
|
||
"failed": "Failed to export tickets",
|
||
"fields": {
|
||
"isClosed": "Is Closed",
|
||
"board": "Board",
|
||
"contact": "Contact",
|
||
"assignedTeam": "Assigned Team",
|
||
"enteredBy": "Entered By",
|
||
"updatedBy": "Updated By",
|
||
"closedBy": "Closed By",
|
||
"enteredAt": "Entered At",
|
||
"updatedAt": "Updated At",
|
||
"closedAt": "Closed At",
|
||
"responseState": "Response State",
|
||
"ticketOrigin": "Ticket Origin",
|
||
"tags": "Tags"
|
||
},
|
||
"appliedFiltersSummary": "(of {{count}} ticket matching applied filters)",
|
||
"completeMessage": "Successfully exported {{count}} ticket to CSV.",
|
||
"confirm": "Export {{count}} Ticket",
|
||
"selectedTicketsSummary": "Exporting {{count}} selected ticket"
|
||
},
|
||
"materials": {
|
||
"title": "Materials",
|
||
"productPlaceholder": "Select a product...",
|
||
"searchProducts": "Search products...",
|
||
"noProductsFound": "No products found",
|
||
"loadingPrices": "Loading prices...",
|
||
"noPrices": "No prices configured for this product",
|
||
"selectCurrency": "Select currency...",
|
||
"descriptionOptional": "Description (optional)",
|
||
"additionalNotes": "Additional notes...",
|
||
"addMaterial": "Add Material",
|
||
"adding": "Adding...",
|
||
"loading": "Loading materials...",
|
||
"empty": "No materials added to this ticket.",
|
||
"billed": "Billed",
|
||
"pending": "Pending",
|
||
"unknownProduct": "Unknown Product",
|
||
"unbilled": "Unbilled ({{currency}}):",
|
||
"productRequired": "Please select a product",
|
||
"currencyRequired": "Please select a currency",
|
||
"quantityMin": "Quantity must be at least 1",
|
||
"added": "Material added",
|
||
"removed": "Material removed",
|
||
"loadFailed": "Failed to load materials",
|
||
"addFailed": "Failed to add material",
|
||
"removeFailed": "Failed to remove material",
|
||
"product": "Product",
|
||
"price": "Price",
|
||
"quantity": "Quantity",
|
||
"total": "Total",
|
||
"selectProduct": "Select a product...",
|
||
"noPricesConfigured": "No prices configured for this product",
|
||
"qty": "Qty",
|
||
"rate": "Rate",
|
||
"status": "Status",
|
||
"addSuccess": "Material added",
|
||
"removeSuccess": "Material removed",
|
||
"clientRequired": "A client must be assigned to this ticket before materials can be added."
|
||
},
|
||
"watchList": {
|
||
"title": "Watch List",
|
||
"contactTab": "Contact",
|
||
"internalTab": "Internal",
|
||
"emailTab": "Email",
|
||
"ticketClient": "Ticket client",
|
||
"allContacts": "All contacts",
|
||
"loadingContacts": "Loading...",
|
||
"searchAllContacts": "Search all contacts",
|
||
"selectContact": "Select contact",
|
||
"selectUserOrTeam": "Select user or team",
|
||
"selectUser": "Select user",
|
||
"emailPlaceholder": "name@example.com",
|
||
"addEmail": "Add Email",
|
||
"addUser": "Add User",
|
||
"addContact": "Add Contact",
|
||
"empty": "No watchers added.",
|
||
"updateFailed": "Unable to update watch list. Please try again.",
|
||
"validEmail": "Enter a valid email address.",
|
||
"selectUserToAdd": "Select a user to add.",
|
||
"selectedUserInvalidEmail": "Selected user does not have a valid email address.",
|
||
"teamHasNoMembers": "Team has no members.",
|
||
"noTeamMembersWithValidEmails": "No team members with valid email addresses.",
|
||
"selectContactToAdd": "Select a contact to add.",
|
||
"selectedContactInvalidEmail": "Selected contact does not have a valid email address.",
|
||
"userBadge": "User",
|
||
"contactBadge": "Contact",
|
||
"removeWatcher": "Remove watcher",
|
||
"tabs": {
|
||
"contact": "Contact",
|
||
"internal": "Internal",
|
||
"email": "Email"
|
||
},
|
||
"scope": {
|
||
"ticketClient": "Ticket client",
|
||
"allContacts": "All contacts"
|
||
},
|
||
"placeholders": {
|
||
"loading": "Loading...",
|
||
"searchAllContacts": "Search all contacts",
|
||
"selectContact": "Select contact",
|
||
"selectUserOrTeam": "Select user or team",
|
||
"selectUser": "Select user",
|
||
"email": "name@example.com"
|
||
}
|
||
},
|
||
"emailNotifications": {
|
||
"title": "Email Notifications",
|
||
"loading": "Loading…",
|
||
"empty": "No email notifications found.",
|
||
"time": "Time",
|
||
"recipient": "Recipient",
|
||
"subject": "Subject",
|
||
"status": "Status",
|
||
"error": "Error",
|
||
"unknownError": "Unknown error",
|
||
"loadMore": "Load more"
|
||
},
|
||
"categoryPicker": {
|
||
"title": "Category Picker",
|
||
"placeholder": "Select categories...",
|
||
"noCategory": "No Category",
|
||
"addNew": "Add new category",
|
||
"itilBadge": "ITIL",
|
||
"categoriesCount_one": "{{count}} category",
|
||
"categoriesCount_other": "{{count}} categories",
|
||
"excludingNoCategory": "excluding No Category",
|
||
"excludingCategory": "excluding {{category}}",
|
||
"excludingCategoriesCount_one": "excluding {{count}} category",
|
||
"excludingCategoriesCount_other": "excluding {{count}} categories",
|
||
"selectedCount_one": "{{count}} category",
|
||
"selectedCount_other": "{{count}} categories",
|
||
"excludingCount_one": "excluding {{count}} category",
|
||
"excludingCount_other": "excluding {{count}} categories",
|
||
"excludingPrefix": "excluding {{name}}",
|
||
"excludingCount": "excluding {{count}} category",
|
||
"selectedCount": "{{count}} categories"
|
||
},
|
||
"navigation": {
|
||
"previousTicket": "Previous ticket",
|
||
"nextTicket": "Next ticket"
|
||
},
|
||
"debug": {
|
||
"commentMetadata": "Comment metadata",
|
||
"summary": "Summary",
|
||
"noPrioritizedFields": "No prioritized fields present.",
|
||
"rawMetadata": "Raw metadata",
|
||
"rawJson": "Raw JSON",
|
||
"copy": "Copy",
|
||
"copied": "Copied",
|
||
"copyFailed": "Copy failed",
|
||
"close": "Close"
|
||
},
|
||
"validation": {
|
||
"categoryNameRequired": "Category name is required",
|
||
"boardRequiredForTopLevelCategory": "Board is required for top-level categories",
|
||
"selectBoardForImport": "Please select a board for the imported categories",
|
||
"importParentCategoriesRequired": "Cannot import subcategories without their parent categories. Please also select: {{parents}}",
|
||
"quickAdd": {
|
||
"clientRequired": "Please select a client",
|
||
"boardRequired": "Please select a board",
|
||
"statusRequired": "Please select a status",
|
||
"priorityRequired": "Please select a priority",
|
||
"impactRequired": "Please select an impact",
|
||
"urgencyRequired": "Please select an urgency"
|
||
},
|
||
"category": {
|
||
"nameRequired": "Category name is required",
|
||
"boardRequiredForTopLevel": "Board is required for top-level categories"
|
||
},
|
||
"materials": {
|
||
"productRequired": "Please select a product",
|
||
"currencyRequired": "Please select a currency",
|
||
"quantityMin": "Quantity must be at least 1"
|
||
},
|
||
"watchList": {
|
||
"invalidEmail": "Enter a valid email address.",
|
||
"userRequired": "Select a user to add.",
|
||
"contactRequired": "Select a contact to add.",
|
||
"selectedUserMissingEmail": "Selected user does not have a valid email address.",
|
||
"selectedContactMissingEmail": "Selected contact does not have a valid email address.",
|
||
"teamHasNoMembers": "Team has no members.",
|
||
"teamMembersMissingEmails": "No team members with valid email addresses."
|
||
}
|
||
},
|
||
"errors": {
|
||
"clipboardUploadSessionRequired": "User session is required for clipboard image upload.",
|
||
"clipboardUploadFailed": "Clipboard image upload failed.",
|
||
"createTicketFailed": "Failed to create ticket. Please try again.",
|
||
"loadBoardsFailed": "Failed to load boards",
|
||
"createCategoryFailed": "Failed to create category",
|
||
"fetchCategoriesFailed": "Failed to fetch categories",
|
||
"validateCategoryDeletionFailed": "Failed to validate category deletion.",
|
||
"deleteCategoryFailed": "Failed to delete category",
|
||
"saveCategoryFailed": "Failed to save category",
|
||
"fetchImportCategoriesFailed": "Failed to fetch available categories for import",
|
||
"importCategoriesFailed": "Failed to import categories",
|
||
"updateTicketsAuthRequired": "You must be logged in to update tickets",
|
||
"addCommentsAuthRequired": "You must be logged in to add comments",
|
||
"performActionAuthRequired": "You must be logged in to perform this action",
|
||
"deleteTicketsAuthRequired": "You must be logged in to delete tickets",
|
||
"fetchTicketsFailed": "Failed to fetch tickets",
|
||
"authRequiredMove": "You must be logged in to move tickets",
|
||
"authRequiredDelete": "You must be logged in to delete tickets",
|
||
"authRequiredUpdate": "You must be logged in to update tickets",
|
||
"authRequiredComment": "You must be logged in to add comments",
|
||
"authRequiredAction": "You must be logged in to perform this action",
|
||
"loadBundledTickets": "Failed to load bundled tickets",
|
||
"fetchTickets": "Failed to fetch tickets",
|
||
"fetchCategories": "Failed to fetch categories",
|
||
"loadBoards": "Failed to load boards",
|
||
"exportFailed": "Failed to export tickets",
|
||
"saveChanges": "Failed to save changes",
|
||
"updateField": "Failed to update {{field}}",
|
||
"addComment": "Failed to add comment",
|
||
"loadMaterials": "Failed to load materials",
|
||
"addMaterial": "Failed to add material",
|
||
"removeMaterial": "Failed to remove material",
|
||
"updateWatchList": "Unable to update watch list. Please try again.",
|
||
"fetchCategoryImports": "Failed to fetch available categories for import",
|
||
"validateDeletionFailed": "Failed to validate deletion. Please try again.",
|
||
"deleteTicketUnexpected": "An unexpected error occurred while deleting the ticket."
|
||
},
|
||
"ticketSection": {
|
||
"title": "Appointment Request",
|
||
"service": "Service",
|
||
"publicRequest": "Requested Date & Time",
|
||
"approvedBy": "Approved By",
|
||
"preferred": "Preferred",
|
||
"on": "on",
|
||
"minutes": "minutes",
|
||
"invalidDateTime": "Invalid date/time",
|
||
"declined": "Declined"
|
||
},
|
||
"categories": {
|
||
"itilBadge": "ITIL"
|
||
},
|
||
"tickets": {
|
||
"conversation": {
|
||
"closeStatus": "Close status",
|
||
"noStatusChange": "Do not change status"
|
||
}
|
||
},
|
||
"common": {
|
||
"continueEditing": "Continue Editing",
|
||
"cancel": "Cancel"
|
||
},
|
||
"details": {
|
||
"bundle": {
|
||
"childrenDescription": "Child tickets bundled in this master ticket"
|
||
}
|
||
},
|
||
"invalidTicketData": "Invalid ticket data",
|
||
"timeEntries": {
|
||
"title": "Logged Time",
|
||
"loading": "Loading time entries…",
|
||
"loadError": "Could not load time entries",
|
||
"empty": "No time has been logged on this ticket yet.",
|
||
"myEntries": "My entries",
|
||
"otherTeam": "Other team members",
|
||
"othersAnonymized": "{{count}} entries by other team members ({{duration}})",
|
||
"noService": "No service",
|
||
"unknownUser": "Unknown user",
|
||
"statusDraft": "Draft",
|
||
"statusSubmitted": "Submitted",
|
||
"statusApproved": "Approved",
|
||
"statusChangesRequested": "Changes Requested",
|
||
"statusUnknown": "Unknown",
|
||
"edit": "Edit time entry",
|
||
"delete": "Delete time entry",
|
||
"deleteConfirmTitle": "Delete time entry?",
|
||
"deleteConfirmMessage": "This will permanently delete the time entry. This action cannot be undone.",
|
||
"deleteConfirmAction": "Delete",
|
||
"duration": {
|
||
"hr": "hr",
|
||
"hrs": "hrs",
|
||
"min": "min"
|
||
}
|
||
},
|
||
"liveUpdates": {
|
||
"editing": {
|
||
"single": "{{name}} is editing",
|
||
"multiple_one": "{{name}} and {{count}} other are editing",
|
||
"multiple_other": "{{name}} and {{count}} others are editing"
|
||
},
|
||
"remoteFieldUpdated": "{{name}} updated {{field}}",
|
||
"connection": {
|
||
"reconnecting": "Live updates offline - reconnecting...",
|
||
"unavailable": "Live updates unavailable"
|
||
}
|
||
},
|
||
"delete": {
|
||
"success": "Ticket #{{number}} deleted successfully.",
|
||
"error": "Failed to delete ticket. Please try again.",
|
||
"validationError": "Failed to validate deletion. Please try again."
|
||
},
|
||
"boardPicker": {
|
||
"inactiveBadge": "Inactive",
|
||
"noBoard": "No Board",
|
||
"selectedCount_one": "{{count}} board",
|
||
"selectedCount_other": "{{count}} boards",
|
||
"excludingPrefix": "excluding {{name}}",
|
||
"excludingCount_one": "excluding {{count}} board",
|
||
"excludingCount_other": "excluding {{count}} boards",
|
||
"placeholder": "Filter by board",
|
||
"title": "Board Picker",
|
||
"searchPlaceholder": "Search boards...",
|
||
"excludingCount": "excluding {{count}} boards",
|
||
"selectedCount": "{{count}} boards",
|
||
"statusActive": "Active",
|
||
"statusAll": "All",
|
||
"statusInactive": "Inactive"
|
||
},
|
||
"checklist": {
|
||
"addFailed": "Failed to add checklist item",
|
||
"addItem": "Add",
|
||
"addItemPlaceholder": "Add a checklist item",
|
||
"applyTemplate": "Apply template",
|
||
"applyTemplateFailed": "Failed to apply checklist template",
|
||
"clickToRename": "Click to rename",
|
||
"deleteFailed": "Failed to delete checklist item",
|
||
"deleteItem": "Delete item",
|
||
"empty": "No checklist items yet.",
|
||
"itemMenu": "Checklist item menu",
|
||
"loadTemplatesFailed": "Failed to load checklist templates",
|
||
"loading": "Loading checklist...",
|
||
"markOptional": "Mark as optional",
|
||
"markRequired": "Mark as required",
|
||
"moveDown": "Move down",
|
||
"moveUp": "Move up",
|
||
"noTemplates": "No templates available.",
|
||
"progress": "{{done}} of {{total}} complete",
|
||
"renameFailed": "Failed to rename checklist item",
|
||
"reorderFailed": "Failed to reorder checklist items",
|
||
"requiredBadge": "Required",
|
||
"templateAlreadyApplied": "This template was already applied to this ticket.",
|
||
"templateApplied": "Checklist template applied.",
|
||
"templatesLoading": "Loading templates...",
|
||
"title": "Checklist",
|
||
"toggleFailed": "Failed to update checklist item",
|
||
"updateFailed": "Failed to update checklist item"
|
||
},
|
||
"integration": {
|
||
"loadTicketFailed": "Failed to load ticket",
|
||
"noUserSession": "No user session found"
|
||
}
|
||
}
|