timeTracking.json 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. {
  2. "clock": {
  3. "runningOn": "Clock running on {job}",
  4. "stop": "Stop the clock",
  5. "stopped": "Clocked {minutes}",
  6. "switched": "Stopped the previous job at {minutes}",
  7. "startFailed": "Could not start the clock",
  8. "stopFailed": "Could not stop the clock"
  9. },
  10. "job": {
  11. "title": "Clocked time",
  12. "running": "running",
  13. "clockIn": "Clock in",
  14. "clockOut": "Clock out",
  15. "switchHere": "Switch to this job",
  16. "switchHint": "Stops the clock on {job} and starts it here",
  17. "addAsLabor": "Add {hours, number} h as labor",
  18. "addAsLaborHint": "Adds a labor line of {hours, number} hours at the default rate. The clocked time itself is not changed.",
  19. "laborDescription": "Labor (clocked time)",
  20. "empty": "Nothing clocked on this job yet. Technicians clock in from the app or from My Active Jobs on the dashboard.",
  21. "showAll": "Show {count} more",
  22. "showFewer": "Show fewer",
  23. "openTimesheets": "Open timesheets"
  24. },
  25. "source": {
  26. "app": "App",
  27. "web": "Web",
  28. "manual": "Manual",
  29. "editedBy": "Adjusted by {name}"
  30. },
  31. "page": {
  32. "title": "Timesheets",
  33. "description": "Who worked when, on the workshop's clock.",
  34. "loadFailed": "Could not load the timesheet",
  35. "presets": {
  36. "today": "Today",
  37. "yesterday": "Yesterday",
  38. "thisWeek": "This week",
  39. "lastWeek": "Last week",
  40. "thisMonth": "This month",
  41. "lastMonth": "Last month"
  42. },
  43. "customRange": "Custom range",
  44. "apply": "Apply",
  45. "allTechnicians": "All technicians",
  46. "export": "Export CSV",
  47. "addEntry": "Add entry",
  48. "stats": {
  49. "total": "Total time",
  50. "totalHint": "{days, plural, =1 {1 day} other {# days}} in range",
  51. "technicians": "Technicians with time",
  52. "techniciansHint": "of {count} on the roster",
  53. "running": "On the clock now",
  54. "runningHint": "live",
  55. "average": "Average per active day",
  56. "averageHint": "across {days, plural, =1 {1 day} other {# days}} with time"
  57. },
  58. "nowStrip": {
  59. "title": "On the clock now",
  60. "since": "since {time}",
  61. "stop": "Stop"
  62. },
  63. "grid": {
  64. "title": "Overview",
  65. "description": "Hours per technician per day. Click a cell to jump to that day.",
  66. "technician": "Technician",
  67. "total": "Total",
  68. "tooLong": "The overview grid shows up to 31 days. Narrow the range to see it."
  69. },
  70. "table": {
  71. "time": "Time",
  72. "duration": "Duration",
  73. "job": "Job",
  74. "vehicle": "Vehicle",
  75. "source": "Source",
  76. "note": "Note",
  77. "running": "Running",
  78. "dayTotal": "Day total",
  79. "counterSale": "Counter sale",
  80. "edit": "Edit",
  81. "stop": "Stop clock",
  82. "delete": "Delete",
  83. "actions": "Actions"
  84. },
  85. "empty": {
  86. "title": "No time clocked in this range",
  87. "body": "Technicians clock in from the Torqvoice Technicians app or from My Active Jobs on the dashboard. Entries show up here the moment a clock starts.",
  88. "noTechnicians": "Nobody on the team is set up as a technician yet. Link team members to technicians under Settings, Team.",
  89. "teamLink": "Open team settings"
  90. },
  91. "deleteTitle": "Delete this entry?",
  92. "deleteBody": "{duration} on {job} by {technician} will be removed from the timesheet. This cannot be undone.",
  93. "deleteConfirm": "Delete",
  94. "deleted": "Entry deleted",
  95. "stoppedByManager": "Clock stopped at {minutes}",
  96. "csv": {
  97. "technician": "Technician",
  98. "date": "Date",
  99. "start": "Start",
  100. "end": "End",
  101. "duration": "Duration",
  102. "hours": "Hours",
  103. "job": "Job",
  104. "vehicle": "Vehicle",
  105. "plate": "Plate",
  106. "source": "Source",
  107. "editedBy": "Adjusted by",
  108. "note": "Note"
  109. },
  110. "unlinked": "No account",
  111. "unlinkedHint": "Board-only technician, not linked to a team member"
  112. },
  113. "dialog": {
  114. "addTitle": "Add time entry",
  115. "addDescription": "Time a technician worked but did not clock. It is marked as entered by hand.",
  116. "editTitle": "Correct time entry",
  117. "editDescription": "The entry keeps its technician and job. Who changed it is recorded.",
  118. "technician": "Technician",
  119. "pickTechnician": "Pick a technician",
  120. "job": "Work order",
  121. "pickJob": "Pick a work order",
  122. "searchJobs": "Search by title or plate",
  123. "searching": "Searching…",
  124. "noJobs": "No work orders found",
  125. "start": "Start",
  126. "end": "End",
  127. "stillRunning": "Still running",
  128. "leaveEndEmpty": "Leave the end empty to keep the clock running.",
  129. "endBeforeStart": "The end must come after the start.",
  130. "duration": "Duration: {duration}",
  131. "timesInWorkshopZone": "Times are on the workshop's clock ({zone}).",
  132. "note": "Note",
  133. "notePlaceholder": "Optional. Why this was added or changed.",
  134. "cancel": "Cancel",
  135. "save": "Save",
  136. "add": "Add",
  137. "added": "Entry added",
  138. "updated": "Entry updated",
  139. "saveFailed": "Could not save the entry"
  140. }
  141. }