en.js 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399
  1. MWF.xApplication = MWF.xApplication || {};
  2. MWF.xApplication.attendancev2 = MWF.xApplication.attendancev2 || {};
  3. MWF.xApplication.attendancev2.LP={
  4. "title": "Attendance Management",
  5. "menu": {
  6. "myAttendance": "My Attendance",
  7. "myStatistic": "My Statistics",
  8. "myAppealList": "My Attendance Abnormalities",
  9. "statistic": "Attendance Statistics",
  10. "detailStatisticFilter": "Summary Statistics",
  11. "detailFilter": "Daily Statistics",
  12. "recordList": "Raw Records",
  13. "appealList": "Abnormal Data",
  14. "config": "Configuration",
  15. "shiftManager": "Shift Management",
  16. "groupmanager": "Attendance Group Management",
  17. "addressmanger": "Workplace Management",
  18. "leavemanager": "Out of Office Leave Records",
  19. "configmanager": "Configuration Management"
  20. },
  21. "alert": "Alert",
  22. "operate": "Operate",
  23. "choose": "Choose",
  24. "save": "Save",
  25. "delete": "Delete",
  26. "update": "Update",
  27. "search": "Search",
  28. "statisticExport": "Export (Recursive)",
  29. "positive": "OK",
  30. "cancel": "Cancel",
  31. "add": "Add",
  32. "more": "More",
  33. "dataError": "Data Error!",
  34. "saveSuccess": "Save Successful!",
  35. "onDuty": "Clock In",
  36. "onDutySimple": "Clock In",
  37. "offDuty": "Clock Out",
  38. "offDutySimple": "Clock Out",
  39. "yes": "Yes",
  40. "no": "No",
  41. "firstPage": "First Page",
  42. "lastPage": "Last Page",
  43. "until": "Until",
  44. "day": {
  45. "Sunday": "Sunday",
  46. "Monday": "Monday",
  47. "Tuesday": "Tuesday",
  48. "Wednesday": "Wednesday",
  49. "Thursday": "Thursday",
  50. "Friday": "Friday",
  51. "Saturday": "Saturday"
  52. },
  53. "daySimple": {
  54. "Sunday": "Sun",
  55. "Monday": "Mon",
  56. "Tuesday": "Tue",
  57. "Wednesday": "Wed",
  58. "Thursday": "Thu",
  59. "Friday": "Fri",
  60. "Saturday": "Sat"
  61. },
  62. "month": " ",
  63. "year": " ",
  64. "minute": "m",
  65. "hour": "h",
  66. "classifierDay": "d",
  67. "times": "time",
  68. "components": {
  69. "chooseTimePlaceholder": "Select Time",
  70. "timeMinutesSelectorClosePlaceholder": "Close",
  71. "timeMinutesSelectorHour": "Hour",
  72. "timeMinutesSelectorMinute": "Minute",
  73. "chooseDatePlaceholder": "Select Date",
  74. "selectPlaceholder": "Select",
  75. "selectOrgPersonOverCount": "You can select up to ({count}) data!",
  76. "errorPageNumber": "Please enter the correct page number!"
  77. },
  78. "myAttendanceTitle": "My Statistics",
  79. "myAttendanceCalendar": "Attendance Calendar",
  80. "myAttendanceStatistic": "Attendance Statistics",
  81. "myFieldWork": "Field Work",
  82. "myStatistic": {
  83. "title": "Attendance Cycle:",
  84. "averageWorkTimeDuration": "Average Work Hours (hours)",
  85. "workTimeDuration": "Work Duration (minutes)",
  86. "attendance": "Attendance (days)",
  87. "nosignTimes": "Missed Punches (times)",
  88. "lateTimes": "Late Arrivals (times)",
  89. "leaveEarlierTimes": "Early Departures (times)",
  90. "leaveDays": "Leave (days)",
  91. "absenteeismDays": "Absenteeism (days)",
  92. "fieldWorkTimes": "Field Work (times)"
  93. },
  94. "shiftTitle": "Shift Management",
  95. "addShift": "Add Shift",
  96. "editShift": "Edit Shift",
  97. "shiftName": "Shift Name",
  98. "checkInTime": "Attendance Time",
  99. "shiftSelector": "Select Shift",
  100. "shiftForm": {
  101. "shiftNameLabel": "Shift Name",
  102. "shiftNameLabelPlaceholder": "Enter Shift Name",
  103. "checkInTimeLabel": "Check-In Time",
  104. "seriousTardinessLateMinutesLabel": "Serious Tardiness (Minutes)",
  105. "absenteeismLateMinutesLabel": "Absenteeism Tardiness (Minutes)",
  106. "seriousTardinessLateMinutesNeedNumber": "Serious Tardiness (Minutes) must be a number!",
  107. "absenteeismLateMinutesNeedNumber": "Absenteeism Tardiness (Minutes) must be a number!",
  108. "firstTimeLabel": "First Shift",
  109. "secondTimeLabel": "Second Shift",
  110. "thirdTimeLabel": "Third Shift",
  111. "oneTimeDayLabel": "1 Time per Day",
  112. "secondTimeDayLabel": "2 Times per Day",
  113. "thirdTimeDayLabel": "3 Times per Day",
  114. "onDutyTimeLabel": "Start Time:",
  115. "beforeOnDutyTimeLabel": "Punch Time Period: ",
  116. "beforeOnDutyTimePlaceholder": "Select Before Start Time",
  117. "afterOnDutyTimePlaceholder": "Select After Start Time",
  118. "afterOnDutyTimeLabel": "After Start",
  119. "offDutyTimeLabel": "End Time:",
  120. "offDutyNextDayLabel": "Ends on the Next Day",
  121. "beforeOffDutyTimeLabel": "Punch Time Period: ",
  122. "beforeOffDutyTimePlaceholder": "Select Before End Time",
  123. "afterOffDutyTimePlaceholder": "Select After End Time",
  124. "afterOffDutyTimeLabel": "After End",
  125. "lateAndEarlyOnTimeLabel1": "Maximum Allowed Late Arrival:",
  126. "lateAndEarlyOnTimeLabel2": " (Not Considered Late)",
  127. "lateAndEarlyOffTimeLabel1": "Maximum Allowed Early Departure:",
  128. "lateAndEarlyOffTimeLabel2": " (Not Considered Early Departure)",
  129. "shiftNameNotEmpty": "Shift Name cannot be empty!",
  130. "onDutyTimeNotEmpty": "Start Time cannot be empty!",
  131. "offDutyTimeNotEmpty": "End Time cannot be empty!",
  132. "success": "Save Successful!",
  133. "confirmDelete": "Are you sure you want to delete this {name} information?",
  134. "selectShiftEmpty": "Please select a shift",
  135. "workTimeLabel": "Shift Work Hours",
  136. "workTimeTotal": "Total Work Duration",
  137. "needWorkTimeLimit": "Is Duration Below Limit Considered Early Departure"
  138. },
  139. "workAddressManagerTitle": "Workplace Management",
  140. "workAddressSelector": "Select Workplace",
  141. "workAddressAdd": "Add Workplace",
  142. "workAddressUpdate": "Update Workplace",
  143. "workAddressView": "View Workplace",
  144. "workAddressName": "Place Name",
  145. "workAddressRange": "Error Range",
  146. "workAddressDesc": "Remarks",
  147. "workAddressMapKeyConfigEmpty": "Please set up the map service first!",
  148. "workAddressBDkeyConfigBtn": "Set up map services",
  149. "workAddressBDkeyConfig": "Map service configuration",
  150. "workAddressBDkeyConfigDesc": "Workplace management uses map services, currently supporting Baidu Maps and Gaode Maps. You need to register your corresponding map account to obtain a key in order to use it normally. Please fill in the key in the input box below.",
  151. "workAddressBDLinkTitle": "Click here to open the Baidu Map registration channel",
  152. "workAddressAMAPLinkTitle": "Click here to open the registration channel for Gaode Map",
  153. "workAddressBDSecretTitle": "BAIDU Secret Key (AK)",
  154. "workAddressAMPSecretTitle": "GAODE Secret Key (AK)",
  155. "workAddressBDSecretTitlePlaceholder": "Enter the secret key (AK) of the Map application",
  156. "workAddressForm": {
  157. "lnglatNotEmpty": "Please select a workplace on the map first!",
  158. "title": "Place Name",
  159. "titlePlaceholder": "Enter Place Name",
  160. "titleNotEmpty": "Place Name cannot be empty!",
  161. "range": "Punch Range (meters)",
  162. "rangePlaceholder": "Enter Punch Range (meters)",
  163. "rangeNotEmpty": "Punch Range (meters) cannot be empty!",
  164. "desc": "Remarks",
  165. "descPlaceholder": "Enter Remarks",
  166. "rangeNeedNumber": "Punch Range (meters) must be a number!",
  167. "success": "Save Successful!",
  168. "confirmDelete": "Are you sure you want to delete this workplace '{name}'?",
  169. "selectWorkAddressEmpty": "Please select at least one workplace",
  170. "locationCoordinateInfo": "Click on the map to locate the workplace address",
  171. "locationCoordinateLabel": "Positioning coordinates: "
  172. },
  173. "groupManagerTitle": "Attendance Group Management",
  174. "groupAdd": "Add Attendance Group",
  175. "groupUpdate": "Edit Attendance Group",
  176. "groupForm": {
  177. "title": "Attendance Group Name",
  178. "titlePlaceholder": "Enter Attendance Group Name",
  179. "titleErrorNotEmpty": "Attendance Group Name cannot be empty!",
  180. "num": "Number of Members",
  181. "status": "Status",
  182. "status_unpublish": "Unpublished",
  183. "status_normal": "Normal",
  184. "checkType": "Attendance Type",
  185. "checkTypeError": "Incorrect Attendance Type!",
  186. "checkTypeFix": "Fixed Shift",
  187. "checkTypeFree": "Flexible Hours",
  188. "checkTypeArrangement": "Scheduled Shifts",
  189. "arrangementSettings": "Scheduling Settings",
  190. "arrangementEditTitle": "Edit Schedule",
  191. "tableThDay": "Workday",
  192. "tableThShift": "Shift",
  193. "time": "Workday Settings",
  194. "timeErrorNotEmpty": "Please select workdays!",
  195. "participates": "Attendance Participants and Organizations",
  196. "participatesPlaceholder": "Click to select attendance participants and organizations",
  197. "participatesErrorNotEmtpy": "Attendance participants and organizations cannot be empty!",
  198. "unParticipates": "No Attendance Required",
  199. "unParticipatesPlaceholder": "Click to select members not requiring attendance",
  200. "assistAdminList": "Assistant Administrators",
  201. "assistAdminListPlaceholder": "Click to select assistant administrators",
  202. "shift": "Shift",
  203. "shiftChange": "Change Shift",
  204. "shiftChangeMultiple": "Batch Change Shift",
  205. "shiftEmpty": "Rest",
  206. "shiftPlaceholder": "(Click to select a shift)",
  207. "shiftErrorNotEmpty": "Workday shifts cannot be empty!",
  208. "workPlace": "Workplace",
  209. "workPlacePlaceholder": "Select Workplace",
  210. "workPlaceErrorNotEmpty": "Workplace cannot be empty!",
  211. "fieldWork": "Field Work Clock-In",
  212. "allowFieldWork": "Allow Field Work Clock-In",
  213. "requiredFieldWorkRemarks": "Required Field Work Remarks",
  214. "fieldWorkMarkError": "Field Work Clock-In as Exception Data",
  215. "requiredCheckInDate": "Required Clock-In Dates",
  216. "requiredCheckInDateThDate": "Date",
  217. "requiredCheckInDateThShift": "Shift",
  218. "requiredCheckInDateThCycle": "Cycle",
  219. "requiredCheckInDatePlaceholder": "Add required clock-in dates",
  220. "noNeedCheckInDate": "No Clock-In Required Dates",
  221. "noNeedCheckInDatePlaceholder": "Add dates where clock-in is not required",
  222. "confirmDelete": "Are you sure you want to delete this '{name}' attendance group?"
  223. },
  224. "scheduleForm": {
  225. "title": "Scheduling",
  226. "shift": "Shift for Scheduling",
  227. "cycle": "Scheduling Cycle",
  228. "restShift": "Rest",
  229. "clear": "Clear",
  230. "cycleBtnLabel": "Schedule According to the Scheduling Cycle",
  231. "section": "Section",
  232. "day": "Day",
  233. "monthInfo": "Switching months will automatically save data for the current month!",
  234. "copyFromLastMonthBtn": "Copy last month's data",
  235. "copyConfirmInfo": "Are you sure you want to copy the data of {month} to the current one?",
  236. "downloadExcelTempEmptyShift": "Please select the scheduling shift first!",
  237. "downloadExcelTempBtn": "Download Excel template for scheduling",
  238. "uploadExcelBtn": "Upload Excel that has already been scheduled",
  239. "excelEmptyShift": "--Rest--",
  240. "excelTitle": "{month} Schedule (Can only schedule shifts based on the existing dropdown, otherwise it cannot be recognized)",
  241. "excelFileName": "{month}_Schedule.xlsx"
  242. },
  243. "dateCycle": {
  244. "none": "None",
  245. "week": "Weekly",
  246. "twoWeek": "Bi-Weekly",
  247. "month": "Monthly"
  248. },
  249. "detailManagerTitle": "Attendance statistics",
  250. "detailTable": {
  251. "filterSelectTitle": "People to Query",
  252. "filterEmptyPlaceholder": "Please select people to query!",
  253. "person": "Name",
  254. "groupName": "Attendance Group",
  255. "shiftName": "Shift",
  256. "date": "Date",
  257. "attendance": "Days Present",
  258. "rest": "Days Off",
  259. "leave": "Days on Leave",
  260. "absenteeismDays": "Absenteeism Days",
  261. "workTimeDuration": "Work Duration",
  262. "averageWorkTimeDuration": "Average Work Hours",
  263. "lateTimes": "Late Arrivals",
  264. "lateTimeDuration": "Late Arrival Duration (minutes)",
  265. "leaveEarlierTimes": "Early Departures",
  266. "leaveEarlierTimeDuration": "Early Departure Duration (minutes)",
  267. "onDutyAbsenceTimes": "Missed Clock-Ins",
  268. "offDutyAbsenceTimes": "Missed Clock-Outs",
  269. "absenceTimes": "Missed Clocks",
  270. "fieldWorkTimes": "Field Work Occurrences",
  271. "btnRecordList": "Clock-In Records"
  272. },
  273. "detailExportExcelFileSuccess": "The data has been counted and completed. Click OK to download the Excel file!",
  274. "detailExportConfirmMsg": "The export operation is quite time-consuming, please wait for a while!",
  275. "detailStatisticList": {
  276. "filterEmptyPlaceholder": "Please select people or organizations to query!",
  277. "filterSelectTitle": "People or Organizations for Query",
  278. "participatesPlaceholder": "Click to select attendance participants and organizations",
  279. "participatesErrorNotEmtpy": "Attendance participants and organizations cannot be empty!",
  280. "startDateEmptyPlaceholder": "Select start date!",
  281. "endDateEmptyPlaceholder": "Select end date!",
  282. "endDateCannotSmaller": "The end date cannot be earlier than the start date!",
  283. "startDateAndEndDateMoreThan": "The date interval cannot exceed 31 days!"
  284. },
  285. "detailRecordList": {
  286. "title": "Clock-In Records",
  287. "dutyTitle": "Clock-In Type",
  288. "time": "Clock-In Time",
  289. "result": "Clock-In Result",
  290. "address": "Clock-In Address",
  291. "signDesc": "Field Work Description"
  292. },
  293. "configManagerTitle": "Attendance Configuration",
  294. "config": {
  295. "holidays": "Holidays",
  296. "holidayLabels": "Set holidays by adding dates that are originally workdays as holidays",
  297. "workdays": "Workdays",
  298. "workdayLabels": "Set workdays by adding dates that are originally non-workdays as workdays",
  299. "appealConfig": "Clock-In Correction Request Configuration",
  300. "appealEnableLabel": "Enable Clock-In Correction Requests",
  301. "appealProcessTypeInnerLabel": "Built-in Fixed Process",
  302. "appealProcessTypeProcessLabel": "Custom Process",
  303. "appealProcessTypeProcessPlaceholder": "Select a custom process",
  304. "appealMaxTimesLabel": "Maximum Monthly Appeal Times per User",
  305. "appealMaxTimesError": "Please enter a valid appeal times number!",
  306. "fastCheckIn": "Quick Clock-In",
  307. "onDutyFastCheckInEnable": "Enable Quick Clock-In for Start of Shift (Effective on the app)",
  308. "offDutyFastCheckInEnable": "Enable Quick Clock-In for End of Shift (Effective on the app)",
  309. "checkInAlert": "Clock-In Reminders",
  310. "checkInAlertEnable": "Enable Clock-In Reminders (Receive reminders 10 minutes before start and end of shift to avoid forgetting to clock in)",
  311. "exceptionAlertEnable": "Enable Exception Clock-In Reminders",
  312. "exceptionAlertEnableTime1": " (You will receive exception clock-in messages the next day at ",
  313. "exceptionAlertEnableTime2": ")",
  314. "detailStatisticCron": "Statistical Timer",
  315. "closeOldAttendance": "Old attendance",
  316. "closeOldAttendanceLabel": "Do you want to disable the old version of attendance clock in function (to prevent app endpoint errors)"
  317. },
  318. "leaveManagerTitle": "Record of out and leave",
  319. "leave": {
  320. "personName": "Person's Name",
  321. "leaveType": "Type",
  322. "startTime": "Start Time",
  323. "endTime": "End Time",
  324. "leaveDays": "Number of Days",
  325. "desc": "Description",
  326. "excelTemplate": "Download Excel Template",
  327. "importExcel": "Import Excel",
  328. "importExcelFileError": "Only Excel files can be imported!",
  329. "importExcelFileSuccess": "Import completed. Click OK to download and view the import results!",
  330. "deleteConfirm": "Are you sure you want to delete this record?"
  331. },
  332. "appealManagerTitle": "Abnormal attendance data",
  333. "appeal": {
  334. "date": "Date",
  335. "dutyType": "Clock-In Type",
  336. "recordTime": "Clock-In Time",
  337. "recordResult": "Clock-In Result",
  338. "status": "Status",
  339. "normal": "Normal",
  340. "absenteeism": "Absenteeism Tardiness",
  341. "early": "Early Departure",
  342. "late": "Late Arrival",
  343. "seriousLate": "Serious Late Arrival",
  344. "notSigned": "Missed Clock-In",
  345. "appeal": "Appeal Successful",
  346. "fieldWork": "Field Work Clock-In",
  347. "leave": "Leave",
  348. "status0": "Pending",
  349. "status1": "In Progress",
  350. "status2": "Approved",
  351. "status3": "Not Approved",
  352. "status4": "Processed",
  353. "startProcess": "Initiate Appeal",
  354. "openJob": "View Appeal",
  355. "startProcessNoConfigError": "No appeal process configured. Unable to start a process!",
  356. "notfoundJobError": "No corresponding process data found. Would you like to revert the current data status?",
  357. "dealAppeal": "Process",
  358. "confirmDealAppeal": "Are you sure you want to set this record as normal?"
  359. },
  360. "recordManagerTitle": "Original records",
  361. "record": {
  362. "detailTitle": "Record Details",
  363. "name": "Name",
  364. "group": "Attendance Group",
  365. "shift": "Shift",
  366. "dutyTime": "Attendance Time",
  367. "checkInType": "Attendance Type",
  368. "recordDate": "Clock-In Time",
  369. "sourceType": "Data Source",
  370. "checkInResult": "Clock-In Result",
  371. "fieldWork": "Field Work Clock-In",
  372. "fieldWorkDesc": "Field Work Description",
  373. "fieldWorkAddress": "Clock-In Address",
  374. "sourceTypeUser": "User Clock-In",
  375. "sourceTypeAuto": "System Generated",
  376. "sourceTypeFast": "Quick Clock-In",
  377. "sourceTypeImport": "Data Import",
  378. "importExcelFileSuccess": "Import completed. {number} records with errors. Click OK to download and view the import results!",
  379. "searchDateError": "Start and end dates must both be empty or both have values!"
  380. },
  381. "mobile": {
  382. "menu": {
  383. "checkIn": "Clock-In",
  384. "statistic": "Statistics",
  385. "settings": "Settings"
  386. },
  387. "unCheckIn": "Not Clocked-In",
  388. "refreshLocation": "[Refresh Location]",
  389. "locationIng": "Locating...",
  390. "locationError": "Location failed. Please enable location permissions!",
  391. "checkInWithTime": "Clocked in at {time}",
  392. "updateCheckInBtn": "Update Clock-In",
  393. "outsideTitle": "Field Work Clock-In",
  394. "outsideNotAllow": "Field Work Clock-In not allowed!",
  395. "outsideRemarkPlaceholder": "Enter Field Work Clock-In Remarks!",
  396. "statisticMonthLabel": "Month"
  397. }
  398. }
  399. MWF.xApplication.attendancev2["lp."+o2.language] = MWF.xApplication.attendancev2.LP