PlanTempusApp/PlanTempus.Application/Features/Localization/Translations/en.json
Janus C. H. Knudsen 4cf30e1f27 Add services feature with mock data and components
Introduces comprehensive services management module with:
- Dynamic service and category tables
- Localization support for services section
- Mock data for services and categories
- Responsive UI components for services listing
- Menu navigation and styling updates

Enhances application's service management capabilities
2026-01-15 23:29:26 +01:00

456 lines
13 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"menu": {
"home": "Dashboard",
"calendar": "Calendar",
"pos": "Point of Sale",
"products": "Products & Inventory",
"suppliers": "Suppliers",
"customers": "Customers",
"employees": "Employees",
"services": "Services",
"reports": "Statistics & Reports",
"settings": "Settings",
"account": "Subscription & Account"
},
"groups": {
"overview": "Overview",
"data": "Data",
"analytics": "Analytics",
"system": "System"
},
"common": {
"save": "Save",
"cancel": "Cancel",
"search": "Search",
"close": "Close",
"delete": "Delete",
"edit": "Edit",
"add": "Add",
"from": "From",
"to": "To",
"all": "All",
"reset": "Reset",
"status": "Status",
"yes": "Yes",
"no": "No"
},
"sidebar": {
"lockScreen": "Lock screen",
"appName": "Salon OS"
},
"dashboard": {
"title": "Dashboard",
"subtitle": "Overview of today's activity",
"stats": {
"bookingsToday": "Bookings today",
"bookingsTrend": "4 completed, 2 in progress",
"expectedRevenue": "Expected revenue",
"revenueTrend": "+12% vs. average",
"occupancyRate": "Occupancy rate",
"occupancyTrend": "Good capacity",
"needsAttention": "Needs attention"
},
"ai": {
"header": "AI Analysis"
},
"bookings": {
"title": "Today's bookings",
"viewAll": "View all",
"currentTime": "Now:",
"status": {
"confirmed": "Confirmed",
"pending": "Pending",
"inProgress": "In progress",
"completed": "Completed"
}
},
"notifications": {
"title": "Notifications",
"viewAll": "View all",
"markAllRead": "Mark all as read"
},
"attentions": {
"title": "Needs attention",
"viewAll": "View all"
},
"quickStats": {
"title": "This week",
"bookings": "Bookings",
"revenue": "Revenue",
"newCustomers": "New customers",
"cancellations": "Cancellations",
"avgOccupancy": "Avg. occupancy"
},
"quickActions": {
"title": "Quick actions",
"newBooking": "New booking",
"newCustomer": "New customer"
},
"waitlist": {
"title": "Waitlist",
"count": "{count} waiting"
}
},
"cash": {
"title": "Cash Register",
"tabs": {
"overview": "Overview",
"reconciliation": "Reconciliation"
},
"stats": {
"reconciliationsInPeriod": "Reconciliations in period",
"totalRevenue": "Total revenue",
"cashSales": "Cash sales",
"totalDifference": "Total difference",
"transactionsToday": "Transactions today",
"revenueToday": "Revenue today",
"lastReconciliation": "Last reconciliation",
"openedRegister": "Opened register"
},
"filter": {
"register": "Register",
"approved": "Approved",
"draft": "Draft"
},
"table": {
"date": "Date",
"id": "ID",
"period": "Period",
"register": "Register",
"closedBy": "Closed by",
"revenue": "Revenue",
"difference": "Difference",
"selected": "{count} selected",
"noneSelected": "0 selected",
"showingCount": "Showing {count} reconciliations",
"exportSaft": "Export SAF-T",
"downloadCsv": "Download CSV",
"downloadPdf": "Download PDF",
"viewTransactions": "View transactions"
},
"revenue": {
"title": "Period revenue",
"subtitle": "System vs. control",
"cardPayments": "Card payments",
"mobilePay": "MobilePay / Online",
"cashSales": "Cash sales",
"hint": "Card and MobilePay are reconciled against bank/acquirer. Cash is counted below."
},
"balance": {
"title": "Cash in register",
"startBalance": "Starting balance",
"startHint": "Carried over from last reconciliation",
"payouts": "Payouts / Receipts",
"payoutsHint": "Total receipts paid in cash",
"toBank": "Withdrawn to bank",
"toBankHint": "Cash set aside",
"expected": "Expected cash balance",
"counted": "Counted cash balance",
"countedHint": "What is actually in the register?"
},
"difference": {
"title": "Cash difference",
"match": "Register balanced",
"over": "Overage",
"under": "Shortage"
},
"period": {
"title": "Period information",
"dateRange": "Period",
"register": "Register",
"employee": "Employee"
},
"note": {
"title": "Reconciliation note",
"placeholder": "Describe reason for difference..."
},
"approval": {
"title": "Close the day",
"approvedBy": "Approved by (optional)",
"selectPlaceholder": "Select...",
"confirmation": "I confirm that the register has been counted and the figures have been entered to the best of my ability.",
"saveDraft": "Save as draft",
"approve": "Approve & lock"
},
"status": {
"draft": "Draft",
"approved": "Approved"
},
"systemNote": "The system records when and by whom approval was made simple audit trail."
},
"profile": {
"title": "Profile",
"myProfile": "My profile",
"settings": "Settings",
"darkMode": "Dark mode",
"logout": "Log out"
},
"account": {
"title": "Subscription & Account",
"subtitle": "Manage your subscription and payment info",
"subscription": {
"title": "Your subscription",
"currentPlan": "Current plan",
"switchTo": "Switch to {plan}",
"contactSales": "Contact sales",
"contactUs": "Contact us",
"pricePerMonth": "/mo"
},
"billing": {
"title": "Payment & Invoices"
},
"payment": {
"frequency": "Payment frequency",
"monthly": "Monthly",
"yearly": "Yearly",
"nextPayment": "Next payment",
"amount": "Amount",
"cardExpiry": "Card expiry",
"change": "Change",
"switchToYearly": "Switch to yearly billing (save 15%)"
},
"invoices": {
"title": "Invoice history",
"date": "Date",
"invoiceNumber": "Invoice no.",
"amount": "Amount",
"download": "PDF",
"paid": "Paid",
"pending": "Pending",
"overdue": "Overdue"
}
},
"services": {
"title": "Services",
"subtitle": "Manage services and pricing",
"tabs": {
"services": "Services",
"categories": "Categories"
},
"stats": {
"totalServices": "Total services",
"activeCategories": "Active categories",
"averagePrice": "Avg. price"
},
"searchPlaceholder": "Search for service...",
"createService": "Create service",
"createCategory": "Create category",
"table": {
"service": "Service",
"category": "Category",
"duration": "Duration",
"price": "Price",
"serviceCount": "Service count"
}
},
"employees": {
"title": "Employees",
"subtitle": "Manage users, roles and permissions",
"stats": {
"activeEmployees": "Active employees",
"pendingInvitations": "Pending invitations",
"rolesDefined": "Roles defined"
},
"tabs": {
"users": "Users",
"roles": "Roles"
},
"users": {
"count": "users",
"inviteUser": "Invite user",
"columns": {
"user": "User",
"role": "Role",
"status": "Status",
"lastActive": "Last active"
}
},
"roles": {
"owner": "Owner",
"admin": "Admin",
"leader": "Manager",
"employee": "Employee"
},
"status": {
"active": "Active",
"invited": "Invitation sent"
},
"permissions": {
"title": "Permission",
"calendar": "Calendar",
"employees": "Employees",
"customers": "Customers",
"reports": "Reports & Finance"
},
"actions": {
"edit": "Edit",
"remove": "Remove user",
"resend": "Resend invitation",
"cancel": "Cancel invitation"
},
"detail": {
"title": "Employee details",
"back": "Back to employees",
"save": "Save changes",
"tabs": {
"general": "General",
"hours": "Working hours",
"schedule": "Schedule",
"services": "Services",
"salary": "Salary",
"hr": "HR",
"stats": "Statistics"
},
"schedule": {
"week": "Week",
"hours": "hours",
"editShift": "Edit shift",
"status": "Status",
"work": "Work",
"off": "Off",
"vacation": "Vacation",
"sick": "Sick",
"timeRange": "Time range",
"note": "Note",
"type": "Type",
"single": "Single",
"repeat": "Repeat",
"repeatInterval": "Repeat",
"repeatEnd": "End date",
"weekday": "Weekday",
"buttonEdit": "Edit",
"buttonDone": "Done"
},
"contact": "Contact information",
"personal": "Personal information",
"employment": "Employment",
"fullname": "Full name",
"email": "Email",
"phone": "Phone",
"address": "Address",
"postalcity": "Postal code & City",
"birthdate": "Date of birth",
"emergencycontact": "Emergency contact",
"emergencyphone": "Emergency phone",
"employmentdate": "Employment date",
"position": "Position",
"employmenttype": "Employment type",
"hoursperweek": "Hours/week",
"bookings": "bookings this year",
"revenue": "revenue this year",
"rating": "rating",
"employedsince": "employed since",
"hours": {
"label": "hours",
"weekly": "Weekly working hours",
"monday": "Monday",
"tuesday": "Tuesday",
"wednesday": "Wednesday",
"thursday": "Thursday",
"friday": "Friday",
"saturday": "Saturday",
"sunday": "Sunday"
},
"services": {
"assigned": "Assigned services"
},
"salary": {
"rates": "Rates",
"normalrate": "Normal (hourly)",
"overtimerate": "Overtime (100%)",
"vacationrate": "Vacation pay",
"provision": "Commission",
"minimumperhour": "Minimum per hour",
"servicecommission": "On services",
"productcommission": "On product sales",
"supplements": "Supplements",
"weekdaysupplement": "8-21 Weekdays",
"saturdaysupplement": "8-21 Saturdays",
"sundaysupplement": "Sunday",
"history": "Salary specifications",
"period": "Period",
"grosssalary": "Gross salary",
"view": "View",
"ratesdrawertitle": "Salary rates",
"baserates": "Base rates",
"courserate": "Course/training",
"timeoffrate": "Time off in lieu",
"paidleaverate": "Paid leave",
"officerate": "Office work",
"childsickrate": "Child's first sick day",
"childhospitalrate": "Child hospitalization",
"maternityrate": "Maternity leave",
"weekdaysupplementfull": "8-21 Weekdays (outside working hours)",
"saturdaysupplementfull": "8-21 Saturdays (outside working hours)",
"commission": "Commission calculation",
"productcommissionfull": "Commission on product sales",
"servicecommissionfull": "Commission on service sales"
},
"hr": {
"contractdocuments": "Contract & Documents",
"contracttype": "Contract type",
"terminationnotice": "Termination notice",
"contractexpiry": "Contract expiry",
"uploaddocument": "Upload document",
"certifications": "Certifications",
"addcertification": "Add certification",
"courses": "Courses",
"completedcourses": "Completed courses",
"plannedcourses": "Planned courses",
"addcourse": "Add course",
"vacationbalance": "Vacation balance",
"vacationearned": "Earned vacation days",
"vacationused": "Used vacation days",
"vacationremaining": "Remaining",
"absencesickness": "Absence & Sickness",
"sickdays2025": "Sick days 2025",
"sickdays2024": "Sick days 2024",
"childsickdays2025": "Child sick days 2025",
"maternityleave": "Maternity leave",
"plannedabsence": "Planned absence",
"addabsence": "Add absence"
},
"stats": {
"performance": "Performance",
"bookingsyear": "Bookings this year",
"revenueyear": "Revenue this year",
"avgrating": "Avg. rating",
"occupancy": "Occupancy rate",
"completedbookings": "Completed bookings",
"date": "Date",
"time": "Time",
"customer": "Customer",
"services": "Services",
"duration": "Duration",
"amount": "Amount",
"status": "Status",
"paid": "Paid",
"pending": "Pending"
},
"settings": {
"label": "Settings",
"showinbooking": {
"label": "Show in online booking",
"desc": "Customers can select this employee"
},
"smsreminders": {
"label": "Get notified via the App about new bookings",
"desc": ""
},
"editcalendar": {
"label": "Can edit own calendar",
"desc": "Allow changes to own bookings"
}
},
"notifications": {
"label": "Notifications",
"intro": "Choose which notifications to send.",
"onlinebooking": "Email on online booking",
"manualbooking": "Email on manual booking",
"cancellation": "Email on cancellation",
"waitlist": "Email on waitlist signup",
"dailysummary": "Email with daily summary"
}
}
}
}