{ "nav": { "home": "Home", "services": "Services", "notifications": "Notifications", "admin": "Admin Dashboard", "logout": "Logout" }, "auth": { "login": "Login", "register": "Register", "username": "Username", "email": "Email", "password": "Password", "loginButton": "Login", "registerButton": "Register", "welcomeBack": "Welcome Back", "createAccount": "Create Account", "registrationClosed": "Public registration is currently closed. Please contact the administrator.", "displayNameAr": "Name (Arabic)", "displayNameEn": "Name (English)", "subtitle": "Sign in to your account to continue", "signingIn": "Signing in...", "noAccount": "Don't have an account?", "showPassword": "Show password", "hidePassword": "Hide password", "errRequired": "Please enter your username and password.", "errInvalid": "Invalid username or password.", "forgotPassword": "Forgot password?", "forgot": { "title": "Reset your password", "subtitle": "Enter your username or email and we'll send you a link to reset your password.", "identifier": "Username or email", "identifierPlaceholder": "you@example.com", "submit": "Send reset link", "sending": "Sending...", "errRequired": "Please enter your username or email.", "errGeneric": "Something went wrong. Please try again.", "successMessage": "Your request has been received. An administrator will share a reset link with you shortly.", "adminNotice": "Email delivery is not configured for this workspace yet, so an administrator will issue a one-time reset link manually.", "backToLogin": "Back to sign in" }, "reset": { "title": "Set a new password", "subtitle": "Choose a new password for your account.", "newPassword": "New password", "confirmPassword": "Confirm password", "submit": "Update password", "saving": "Saving...", "errMinLength": "Password must be at least 6 characters.", "errMismatch": "Passwords do not match.", "errGeneric": "Could not reset password. The link may have expired.", "invalidToken": "This reset link is invalid or has expired.", "requestNew": "Request a new link", "successMessage": "Your password has been updated. You can now sign in with your new password.", "goToLogin": "Go to sign in" }, "heroTitle": "Welcome to your unified workspace.", "heroSubtitle": "Sign in to manage everything from one place.", "feat1": "All your tools in one dashboard", "feat2": "Real-time updates", "feat3": "Secure session-based access", "rights": "All rights reserved." }, "home": { "myApps": "My Apps", "noApps": "No apps yet", "noAppsHint": "Apps you have access to will appear here.", "greeting": { "morning": "Good morning, {{name}}", "afternoon": "Good afternoon, {{name}}", "evening": "Good evening, {{name}}" }, "stats": { "apps": "Apps", "services": "Services", "alerts": "Alerts" }, "clockStyle": { "label": "Clock style", "showWidget": "Show wall clock on home screen", "showTopbar": "Show clock in top bar", "hideWidget": "Hide clock", "hourFormat": { "label": "Hour format", "h12": "12-hour (AM/PM)", "h24": "24-hour" }, "options": { "full": "Full (time, weekday, Hijri & Gregorian)", "digital": "Digital with seconds", "digital-no-seconds": "Digital without seconds", "analog": "Analog clock", "minimal": "Minimal (time only)" } } }, "services": { "title": "Services", "available": "Available", "unavailable": "Unavailable", "price": "Price", "noServices": "No services available", "category": "Category", "free": "Free", "order": "Order", "orderModalTitle": "Confirm order", "orderNotes": "Notes (optional)", "orderNotesPlaceholder": "Any extra notes?", "orderNotesCounter": "{{count}}/500", "addNotes": "Add notes", "hideNotes": "Hide", "placeOrder": "Send", "placing": "Sending...", "orderPlaced": "Order placed", "orderFailed": "Could not place the order", "myOrdersLink": "My Orders", "editMode": { "hint": "Drag to rearrange", "done": "Done", "saveFailed": "Could not save the new order" } }, "myOrders": { "title": "My Orders", "loadError": "Could not load your orders. Please try again.", "retry": "Retry", "back": "Back", "empty": "No orders yet", "emptyHint": "Start from the services catalog.", "browseServices": "Browse services", "notesLabel": "Notes:", "cancel": "Cancel order", "cancelConfirmTitle": "Cancel this order?", "cancelConfirm": "Yes, cancel", "keep": "Keep it", "cancelled": "Order cancelled", "cancelFailed": "Could not cancel the order", "restoreFailed": "Could not restore the order", "delete": "Delete", "reorder": "Reorder", "deleteFailed": "Could not delete the order", "undo": "Undo", "undone": "Restored" }, "orderStatus": { "pending": "Awaiting receiver", "received": "Received", "preparing": "Preparing", "completed": "Completed", "cancelled": "Cancelled" }, "incomingOrders": { "title": "Incoming Orders", "linkLabel": "Incoming", "subtitleUnclaimed": "Awaiting receiver", "subtitleMine": "My active orders", "empty": "No incoming orders right now", "emptyHint": "New orders will show up here as they arrive.", "loadError": "Could not load incoming orders.", "retry": "Retry", "noAccess": "You don't have permission to receive orders.", "back": "Back", "ageJustNow": "just now", "ageMinutes": "{{count}}m ago", "ageHours": "{{count}}h ago", "ageDays": "{{count}}d ago", "from": "From", "confirmReceipt": "Confirm Receipt", "confirming": "Confirming...", "markPreparing": "Mark Preparing", "markCompleted": "Mark Completed", "cancel": "Cancel", "alreadyClaimed": "Already claimed by someone else", "orderUnavailable": "This order is no longer available", "actionFailed": "Could not complete the action", "claimed": "Order received", "marked": "Status updated", "cancelled": "Order cancelled", "undo": "Undo", "undone": "Restored", "restoreFailed": "Could not restore the order", "select": "Select", "selectAll": "Select all", "clearSelection": "Clear selection", "selectedCount_one": "1 order selected", "selectedCount_other": "{{count}} orders selected", "delete": "Delete", "deleteConfirmTitle_one": "Delete 1 order?", "deleteConfirmTitle_other": "Delete {{count}} orders?", "deleteConfirmBody_one": "1 order will be permanently deleted. This can't be undone.", "deleteConfirmBody_other": "{{count}} orders will be permanently deleted. This can't be undone.", "deleted_one": "1 order deleted", "deleted_other": "{{count}} orders deleted", "deleteFailed": "Could not delete the orders", "deletePartial": "Deleted {{deleted}} of {{total}}; the rest could not be deleted" }, "notifications": { "title": "Notifications", "markAllRead": "Mark All Read", "noNotifications": "No new notifications", "unread": "Unread" }, "settingsPanel": { "title": "Settings", "section": { "dock": "App dock", "language": "Language", "notifications": "Notifications", "sound": "Sound", "clock": "Clock" }, "lang": { "ar": "العربية", "en": "English" }, "sound": { "master": "Play notification sounds" }, "dock": { "show": "Show bottom app dock" } }, "notifSettings": { "title": "Notification sounds", "mute": "Mute notifications", "unmute": "Unmute notifications", "globalSound": "Play sound on alerts", "volume": "Volume", "ordersEnabled": "Sound for new orders", "meetingsEnabled": "Sound for meeting reminders", "notesEnabled": "Sound for incoming notes", "vibrationOrder": "Vibrate on new orders", "vibrationMeeting": "Vibrate on meeting reminders", "vibrationNote": "Vibrate on incoming notes", "preview": "Preview", "quickMute": "Mute notifications", "quickUnmute": "Unmute notifications", "mutedToast": "Notifications muted", "unmutedToast": "Notifications unmuted", "autoplayHintTitle": "Sounds need a click", "autoplayHint": "Click anywhere on the page to enable notification sounds.", "autoplayHintIos": "Tap anywhere to enable sounds. If you still don't hear them, raise the *media* volume (the same one that controls YouTube).", "push": { "title": "Lock-screen notifications", "desc": "Get alerts on the home/lock screen when Tx OS is closed.", "enable": "Enable", "disable": "Disable", "enabled": "Enabled", "denied": "Blocked — enable from device settings", "unsupported": "Not supported on this device. On iPad, add Tx OS to the Home Screen first.", "enableFailed": "Could not enable notifications. Try again.", "enableSuccess": "Notifications enabled", "iosInstall": { "title": "Install Tx OS to get lock-screen alerts", "desc": "iPhone & iPad only deliver notifications when Tx OS is opened from a Home Screen icon, not from a Safari tab.", "step1": "Tap the Share button at the bottom of Safari.", "step2": "Scroll and tap \"Add to Home Screen\".", "step3": "Open Tx OS from its new icon, then enable notifications here." }, "errors": { "unsupported": "This browser does not support lock-screen notifications.", "unsupported_ios_safari": "On iPhone/iPad, open Tx OS from its Home Screen icon first (Share → Add to Home Screen), then enable notifications from inside the app.", "permission_denied": "Notification permission is blocked. Open Settings → Tx OS on your device and enable notifications manually.", "permission_dismissed": "Permission wasn't granted yet. Tap \"Enable\" again and choose \"Allow\" in the browser prompt.", "vapid_unavailable": "Could not reach the notifications server. Check your connection and try again.", "subscribe_failed": "Could not register this device for notifications. Try again.", "server_rejected": "The server refused to register this device. Try again or sign in again." } }, "slot": { "order": "Orders", "meeting": "Meetings", "note": "Notes" }, "sounds": { "ding": "Ding", "chime": "Chime", "bell": "Bell", "knock": "Knock", "pop": "Pop", "alert": "Alert", "beep": "Beep", "soft": "Soft" } }, "admin": { "title": "Admin Dashboard", "manageApps": "Manage Apps", "manageServices": "Manage Services", "manageUsers": "Manage Users", "appDisabled": "Disabled", "addApp": "Add App", "addService": "Add Service", "addUser": "Add User", "editApp": "Edit App", "editService": "Edit Service", "editUser": "Edit User", "deleteConfirm": "Are you sure you want to delete?", "deleteApp": { "title": "Delete app \"{{name}}\"?", "warning": "This app is still in use. Deleting it will affect the following:", "forceHint": "This will revoke access for everyone using it and remove its history. This cannot be undone.", "emptyBody": "Are you sure you want to delete this app?", "groupCount": "{{count}} group(s) currently grant this app", "restrictionCount": "{{count}} permission rule(s) restricting it", "openCount": "{{count}} open event(s) in history", "confirm": "Delete", "anyway": "Delete anyway" }, "deleteService": { "title": "Delete service \"{{name}}\"?", "warning": "This service still has orders. Deleting it will affect the following:", "forceHint": "This will permanently remove every related order. This cannot be undone.", "emptyBody": "Are you sure you want to delete this service?", "orderCount": "{{count}} order(s)", "confirm": "Delete", "anyway": "Delete anyway" }, "deleteUser": { "title": "Delete user \"{{name}}\"?", "warning": "This user owns data. Deleting them will affect the following:", "forceHint": "This will permanently remove their notes and orders. This cannot be undone.", "emptyBody": "Are you sure you want to delete this user?", "noteCount": "{{count}} note(s)", "orderCount": "{{count}} order(s)", "confirm": "Delete", "anyway": "Delete anyway" }, "activate": "Activate", "deactivate": "Deactivate", "appName": "App Name", "appNameAr": "App Name (Arabic)", "appNameEn": "App Name (English)", "appSlug": "Slug", "appRoute": "Route", "appIcon": "Icon", "appColor": "Color", "appImage": "Image", "appExternalUrl": "External URL", "appOpenMode": { "label": "How to open", "internal": "Built-in page (default)", "external_tab": "Open external link in a new tab", "external_iframe": "Open external link inside the app" }, "builtinPathLocked": "The path of a built-in app cannot be changed.", "appSortOrder": "Sort Order", "appPermissions": { "title": "Required permissions", "help": "Users need at least one of these to see the app. Leave empty for no restriction.", "none": "No permissions required — visible to everyone.", "selectPlaceholder": "Select a permission…", "add": "Add", "removeAria": "Remove permission {{name}}", "impactTitle": "Impact preview", "impactLoading": "Calculating impact…", "impactError": "Couldn't load impact preview. Try again.", "impactNone": "No users would lose access. {{visible}} currently see this app.", "impactSummary": "{{affected}} of {{visible}} users currently seeing this app would lose access.", "impactViaGroups": "Members of these groups keep access regardless: {{groups}}.", "confirmTitle": "Confirm permission change", "confirmBody": "Adding this requirement will hide the app from {{affected}} of {{visible}} users who currently see it. This change is reversible.", "confirmAction": "Add anyway" }, "serviceName": "Service Name", "serviceNameAr": "Service Name (Arabic)", "serviceNameEn": "Service Name (English)", "serviceDescriptionAr": "Description (Arabic)", "serviceDescriptionEn": "Description (English)", "serviceAvailable": "Available?", "serviceImageUrl": "Image URL", "serviceImage": "Service Image", "uploadImage": "Upload Image", "replaceImage": "Replace Image", "uploading": "Uploading...", "uploadFailed": "Image upload failed", "users": { "searchPlaceholder": "Search by username or email...", "allGroups": "All groups", "allStatuses": "All statuses", "statusActive": "Active", "statusInactive": "Inactive", "showing": "Showing {{count}} of {{total}}", "empty": "No users match your filters.", "editGroups": "Edit groups", "editUserGroups": "Edit groups for {{username}}", "col": { "username": "Username", "email": "Email", "displayNameAr": "Name (Arabic)", "displayNameEn": "Name (English)", "language": "Language", "createdAt": "Created", "groups": "Groups", "actions": "Actions" }, "review": { "title": "Review changes", "subtitle": "Confirm what will be saved for {{username}}.", "noChanges": "No changes to save", "groupsAdded": "Groups added", "groupsRemoved": "Groups removed", "back": "Back to edit", "confirm": "Confirm & save" }, "counts": { "notes": "{{count}} notes", "orders": "{{count}} orders" }, "historyTitle": "Permission history", "historyHint": "Roles and groups assigned to this user. Filter by who changed it or when.", "historyEmpty": "No permission changes have been recorded for this user yet.", "historyEmptyFiltered": "No permission changes match the current filters.", "historyAdded_one": "Added ({{count}}):", "historyAdded_other": "Added ({{count}}):", "historyRemoved_one": "Removed ({{count}}):", "historyRemoved_other": "Removed ({{count}}):", "historyTotal_one": "{{count}} entry after change", "historyTotal_other": "{{count}} entries after change", "history": { "kind": { "roles": "Roles", "groups": "Groups" } } }, "username": "Username", "email": "Email", "password": "Password", "roles": { "searchPlaceholder": "Search roles...", "addRole": "Add Role", "editRole": "Edit Role", "name": "Name", "namePlaceholder": "e.g. content_editor", "nameHint": "Letters, numbers and underscores only.", "descriptionAr": "Description (Arabic)", "descriptionEn": "Description (English)", "system": "System", "empty": "No roles yet.", "edit": "Edit role", "delete": "Delete role", "editSystemNameHint": "System role names cannot be changed.", "deleteTitle": "Delete role \"{{name}}\"?", "deleteEmptyBody": "This role isn't assigned to anyone. Continue?", "deleteConflict": "This role is still in use and cannot be deleted.", "deleteConflictHint": "Remove this role from the affected users and groups before deleting it.", "deleteConfirm": "Delete", "usersCount": "{{count}} users", "groupsCount": "{{count}} groups", "errorNameTaken": "A role with that name already exists.", "errorInvalidName": "Role name must start with a letter and contain only letters, numbers, or underscores.", "errorSystemRename": "System role names cannot be changed.", "renameWarningTitle": "Renaming \"{{from}}\" to \"{{to}}\"", "renameWarningBody": "This role's name may be referenced by code, integrations, or audit log queries. Renaming can quietly break those flows. Update any callers before saving.", "renameUsage": "Currently used by {{users}} users and {{groups}} groups.", "permissions": "Permissions", "permissionsHint": "Select which permissions this role grants.", "permissionsSystemHint": "System role permissions are read-only.", "permissionsEmpty": "No permissions are defined.", "errorSystemPermissions": "System role permissions cannot be changed.", "errorPermissionsSave": "Could not save the role's permissions.", "impactTitle_one": "Removing {{count}} permission", "impactTitle_other": "Removing {{count}} permissions", "impactLoading": "Calculating impact...", "impactNoUsers": "No users currently get any of these permissions through this role.", "impactError": "Could not check who would be affected. Please adjust your selection or try again.", "impactPerPermission": "{{users}} users would lose this ({{groups}} groups grant the role)", "impactViaGroups": "via groups: {{groups}}", "impactTotal_one": "{{count}} user in total would lose at least one permission.", "impactTotal_other": "{{count}} users in total would lose at least one permission.", "confirmRemovalTitle": "Confirm permission removal", "confirmRemovalBody_one": "Saving will remove permissions from {{count}} user. This may revoke their access immediately. Continue?", "confirmRemovalBody_other": "Saving will remove permissions from {{count}} users. This may revoke their access immediately. Continue?", "confirmRemovalAction": "Remove permissions", "historyTitle": "History", "historyHint": "Permission changes for this role. Use the filters to narrow by who changed it or when.", "historyEmpty": "No permission changes have been recorded for this role yet.", "historyEmptyFiltered": "No permission changes match the current filters.", "historyActorUnknown": "Unknown actor", "historyAdded_one": "Added ({{count}}):", "historyAdded_other": "Added ({{count}}):", "historyRemoved_one": "Removed ({{count}}):", "historyRemoved_other": "Removed ({{count}}):", "historyTotal_one": "{{count}} permission after change", "historyTotal_other": "{{count}} permissions after change", "historyShowing": "Showing {{shown}} of {{total}}", "historyLoadMore": "Load more", "historyDownloadCsv": "Download CSV", "historyDownloadCsvError": "Could not download CSV. Please try again.", "historyFilters": { "actor": "Changed by", "allActors": "Anyone", "from": "From", "to": "To", "apply": "Apply", "reset": "Reset" }, "historyErrors": { "invalidDate": "Dates must be in YYYY-MM-DD format.", "invertedDates": "\"From\" must be on or before \"To\".", "fixFiltersFirst": "Fix the filters above to load history." } }, "active": "Active", "issueResetLink": "Issue password reset link", "orderReceiverRole": "Order Receiver", "roleInheritedFromGroup": "Inherited from group", "resetLinkModal": { "title": "Password reset link for {{username}}", "description": "Share this one-time link with the user. It can only be used once.", "expires": "Expires: {{time}}", "copy": "Copy link", "copied": "Link copied to clipboard" }, "siteSettings": "Site Settings", "siteNameAr": "Site Name (Arabic)", "siteNameEn": "Site Name (English)", "registrationOpen": "Allow public registration", "registrationOpenHint": "When off, only admins can create new users.", "footerTextAr": "Footer Text (Arabic)", "footerTextEn": "Footer Text (English)", "nav": { "dashboard": "Dashboard", "apps": "Apps", "services": "Services", "users": "Users", "groups": "Groups", "roles": "Roles", "auditLog": "Audit log", "userManagement": "User Management", "settings": "Settings", "systemUpdates": "System Updates", "menu": "Menu" }, "systemUpdates": { "title": "System Updates", "subtitle": "Check whether a newer version is available — this page never installs an update.", "currentVersion": "Current Version", "buildNumber": "Build Number", "latestVersion": "Latest Version", "updateStatus": "Update Status", "statusUpToDate": "System is up to date", "statusUpdateAvailable": "New update available", "statusNotConfigured": "Update source not configured", "statusError": "Unable to check for updates", "notConfiguredHint": "Ask the administrator to set the LATEST_VERSION_URL environment variable to the external latest.json URL to enable checking.", "checkNow": "Check Now", "loading": "Checking version…", "lastChecked": "Last checked", "serverStartedAt": "Server started", "toastErrorTitle": "Check failed", "toastErrorDesc": "Could not reach the update source. Please try again later." }, "apps": { "counts": { "groups": "{{count}} groups", "restrictions": "{{count}} restrictions", "opens": "{{count}} opens" }, "historyTitle": "Permission history", "historyHint": "Permissions required to use this app. Filter by who changed it or when.", "historyEmpty": "No permission changes have been recorded for this app yet.", "historyEmptyFiltered": "No permission changes match the current filters.", "historyAdded_one": "Added ({{count}}):", "historyAdded_other": "Added ({{count}}):", "historyRemoved_one": "Removed ({{count}}):", "historyRemoved_other": "Removed ({{count}}):", "historyTotal_one": "{{count}} permission after change", "historyTotal_other": "{{count}} permissions after change" }, "services": { "counts": { "orders": "{{count}} orders" } }, "groups": { "searchPlaceholder": "Search groups...", "addGroup": "Add Group", "editGroup": "Edit Group", "name": "Name", "descriptionAr": "Description (Arabic)", "descriptionEn": "Description (English)", "system": "System", "empty": "No groups yet.", "members": "{{count}} members", "appsCount": "{{count}} apps", "rolesCount": "{{count}} roles", "appsHint": "Members of this group will see these apps.", "usersHint": "Members of this group.", "rolesHint": "Members of this group are automatically granted these roles.", "rolesEmpty": "No roles available.", "deleteTitle": "Delete group \"{{name}}\"?", "deleteWarning": "This group is still in use. Deleting it will revoke access for the following:", "deleteForceHint": "Deleting will detach these members and revoke their group-granted apps and roles. This cannot be undone.", "deleteEmptyBody": "This group has no members, apps, or roles. Continue?", "deleteConfirm": "Delete", "deleteAnyway": "Delete anyway", "tab": { "info": "Info", "apps": "Apps", "users": "Users", "roles": "Roles", "history": "History" }, "historyTitle": "Permission history", "historyHint": "Members, roles and apps attached to this group. Filter by who changed it or when.", "historyEmpty": "No permission changes have been recorded for this group yet.", "historyEmptyFiltered": "No permission changes match the current filters.", "historyAdded_one": "Added ({{count}}):", "historyAdded_other": "Added ({{count}}):", "historyRemoved_one": "Removed ({{count}}):", "historyRemoved_other": "Removed ({{count}}):", "historyTotal_one": "{{count}} entry after change", "historyTotal_other": "{{count}} entries after change", "history": { "kind": { "users": "Users", "roles": "Roles", "apps": "Apps" } } }, "audit": { "filters": { "action": "Action", "allActions": "All actions", "actor": "Actor", "allActors": "All actors", "actorSearch": "Search by name or @username", "actorEmpty": "No matching users.", "actorWithName": "Actor: {{name}}", "actorWithId": "Actor: #{{id}}", "clearActorFilter": "Clear actor filter", "from": "From", "to": "To", "apply": "Apply", "reset": "Reset", "forcedOnly": "Forced deletions only", "forcedOnlyHint": "Show only force-delete entries for groups, users, apps, and services.", "targetType": "Target type: {{type}}", "targetWithId": "Target: {{type}} #{{id}}", "clearTargetFilter": "Clear target filter" }, "actorPivotAria": "Filter audit log to actions by {{name}}", "target": "Target: {{type}} #{{id}}", "targetWithName": "Target: {{type}} #{{id}} · {{name}}", "showing": "Showing {{shown}} of {{total}}", "empty": "No audit log entries match these filters.", "loadMore": "Load more", "export": { "button": "Export CSV", "failed": "Could not export the audit log. Please try again." }, "errors": { "invalidDate": "Dates must be in YYYY-MM-DD format.", "invertedDates": "\"From\" date must be on or before \"To\" date.", "fixFiltersFirst": "Adjust the filters to load entries." }, "unit": { "member_one": "{{count}} member", "member_other": "{{count}} members", "app_one": "{{count}} app", "app_other": "{{count}} apps", "role_one": "{{count}} role", "role_other": "{{count}} roles", "group_one": "{{count}} group", "group_other": "{{count}} groups", "order_one": "{{count}} order", "order_other": "{{count}} orders", "change_one": "{{count}} change", "change_other": "{{count}} changes", "permission_one": "{{count}} permission", "permission_other": "{{count}} permissions", "restriction_one": "{{count}} restriction", "restriction_other": "{{count}} restrictions", "note_one": "{{count}} note", "note_other": "{{count}} notes", "open_one": "{{count}} open", "open_other": "{{count}} opens" }, "dependencies": { "label": "Cleared dependencies", "chipAriaTargetType": "{{label}} — open audit log filtered by target type \"{{type}}\"", "chipAriaParent": "{{label}} — open audit log for {{type}} #{{id}}" }, "recent": { "title": "Recent activity", "loading": "Loading recent activity…", "empty": "No recent activity for this record yet.", "viewAll": "View full history", "viewAllAria": "Open the audit log filtered to this {{type}}" }, "summary": { "app": { "create": "Created app '{{name}}'", "update": "Updated app '{{name}}' ({{changes}})", "rename": "Renamed app '{{previousName}}' to '{{name}}'", "delete": "Deleted app '{{name}}'", "forceDelete": "Force-deleted app '{{name}}' (affected {{groups}})", "permissionAdd": "Added permission '{{permission}}' to app '{{name}}'", "permissionRemove": "Removed permission '{{permission}}' from app '{{name}}'" }, "auth": { "issueResetLink": "Issued password reset link for @{{username}}" }, "group": { "create": "Created group '{{name}}' ({{members}}, {{apps}})", "update": "Updated group '{{name}}' ({{changes}})", "rename": "Renamed group '{{previousName}}' to '{{name}}'", "delete": "Deleted group '{{name}}'", "forceDelete": "Force-deleted group '{{name}}' ({{members}})", "userAdd": "Added @{{username}} to group '{{name}}'", "userAddById": "Added user #{{userId}} to group '{{name}}'", "userRemove": "Removed @{{username}} from group '{{name}}'", "userRemoveById": "Removed user #{{userId}} from group '{{name}}'", "appAdd": "Added app '{{appName}}' to group '{{name}}'", "appAddById": "Added app #{{appId}} to group '{{name}}'", "appRemove": "Removed app '{{appName}}' from group '{{name}}'", "appRemoveById": "Removed app #{{appId}} from group '{{name}}'", "roleAdd": "Added role '{{roleName}}' to group '{{name}}'", "roleAddById": "Added role #{{roleId}} to group '{{name}}'", "roleRemove": "Removed role '{{roleName}}' from group '{{name}}'", "roleRemoveById": "Removed role #{{roleId}} from group '{{name}}'" }, "role": { "create": "Created role '{{name}}'", "update": "Updated role '{{name}}' ({{changes}})", "rename": "Renamed role '{{previousName}}' to '{{name}}'", "delete": "Deleted role '{{name}}'", "permissionsReplace": "Updated permissions for role '{{name}}' (added {{added}}, removed {{removed}})", "permissionAdd": "Added permission '{{permission}}' to role '{{name}}'", "permissionRemove": "Removed permission '{{permission}}' from role '{{name}}'" }, "service": { "delete": "Deleted service '{{name}}'", "deleteId": "Deleted service #{{id}}", "forceDelete": "Force-deleted service '{{name}}' (affected {{orders}})" }, "settings": { "update": "Updated system settings ({{changes}})", "registrationOpened": "Opened public registration", "registrationClosed": "Closed public registration", "registrationOpenedWith": "Opened public registration and {{others}}", "registrationClosedWith": "Closed public registration and {{others}}" }, "user": { "delete": "Deleted user @{{username}}", "deleteWithName": "Deleted user @{{username}} ({{displayName}})", "forceDelete": "Force-deleted user @{{username}}", "forceDeleteWithName": "Force-deleted user @{{username}} ({{displayName}})" } } }, "dashboardSoon": "Dashboard widgets coming soon.", "dashboard": { "totalApps": "Total Apps", "totalServices": "Total Services", "totalUsers": "Total Users", "registration": "Registration", "open": "Open", "closed": "Closed", "recentActivity": "Recent Activity", "latestUser": "Latest User", "latestApp": "Latest App", "none": "—", "newUsers7d": "New users (7d)", "vsPrev7d": "Previous 7d: {{count}}", "newUsersInRange": "New users · {{range}}", "vsPrevRange": "{{range}}: {{count}}", "activeServices": "Active services", "inactiveServices": "Inactive: {{count}}", "signupsTrend": "Sign-ups", "last7Days": "Last 7 days", "appOpensTrend": "App opens", "appOpensSummary": "{{count}} total · {{delta}}", "appOpensSummaryRanged": "{{count}} in {{range}} · {{delta}}", "servicesCreatedTrend": "Services added", "servicesCreatedSummary": "{{count}} added", "servicesCreatedSummaryRanged": "{{count}} in {{range}}", "trends": "Trends", "rangeSelector": "Time range", "range": { "7d": "Last 7 days", "30d": "Last 30 days", "90d": "Last 90 days", "custom": "Custom range", "customLabel": "{{from}} – {{to}}" }, "prevRange": { "7d": "Previous 7 days", "30d": "Previous 30 days", "90d": "Previous 90 days", "custom": "Previous {{count}} days" }, "customRange": { "from": "From", "to": "To", "apply": "Apply", "invalid": "Pick a valid date range", "loadError": "Couldn't load stats for the selected dates. Please check the range and try again." }, "topApps": "Top apps", "topAppsSubtitle": "By opens in {{range}}", "mostActiveUsers": "Most active users", "mostActiveUsersSubtitle": "By app opens in {{range}}", "leaderboardEmpty": "No activity yet", "openCount": "{{count}} opens", "viewAppDetails": "View details for {{name}}", "viewUserDetails": "View details for {{name}}", "drillIn": { "loading": "Loading…", "appTitle": "Recent opens · {{name}}", "userTitle": "Recent opens · {{name}}", "subtitle": "{{count}} opens in {{range}}", "empty": "No opens in this range", "loadError": "Couldn't load recent opens.", "editApp": "Edit app", "viewUser": "View user", "loadMore": "Load more", "loadMoreError": "Couldn't load more opens.", "shownOf": "Showing {{shown}} of {{total}}" } }, "dependents": { "openLabel": "View {{count}}", "loadError": "Couldn't load items.", "empty": "Nothing to show.", "appGroups": { "title": "Groups · {{name}}", "subtitle": "{{count}} groups grant access" }, "appRestrictions": { "title": "Restrictions · {{name}}", "subtitle": "{{count}} required permissions", "noRoles": "No roles include this permission" }, "appOpens": { "title": "Opens · {{name}}", "subtitle": "{{count}} total opens" }, "serviceOrders": { "title": "Orders · {{name}}", "subtitle": "{{count}} orders" }, "userNotes": { "title": "Notes · {{name}}", "subtitle": "{{count}} notes", "untitled": "(untitled)", "pinned": "Pinned", "archived": "Archived" }, "userOrders": { "title": "Orders · {{name}}", "subtitle": "{{count}} orders" }, "orderStatus": { "pending": "Pending", "received": "Received", "preparing": "Preparing", "completed": "Completed", "cancelled": "Cancelled" } } }, "notFound": { "title": "404 — Page Not Found", "description": "The page you are looking for does not exist." }, "common": { "save": "Save", "cancel": "Cancel", "delete": "Delete", "edit": "Edit", "add": "Add", "close": "Close", "later": "Later", "loading": "Loading...", "error": "An error occurred", "success": "Success", "language": "العربية", "appName": "Tx OS", "previous": "Previous", "next": "Next", "empty": "(empty)", "back": "Back", "confirmDelete": "Confirm delete" }, "embeddedFrame": { "title": "Embedded app", "back": "Back to home", "openInNewTab": "Open in a new tab", "loadError": "Could not load the app.", "notFound": "App not found.", "notEmbeddable": "This app is not configured to be embedded." }, "notes": { "title": "Notes", "searchPlaceholder": "Search notes", "labels": "Labels", "manageLabels": "Manage labels", "newLabel": "New label", "noLabelsYet": "No labels yet", "allLabels": "All", "folders": { "title": "Folders", "myFolders": "My folders", "new": "New folder", "namePlaceholder": "Folder name", "all": "All notes", "unfiled": "Unfiled", "rename": "Rename folder", "delete": "Delete folder", "deleteTitle": "Delete this folder?", "deleteAction": "Delete", "deleteConfirm": "Delete this folder? Notes inside will move to Unfiled.", "deleteFailed": "Could not delete folder", "dragHint": "Drag a note here", "moved": "Note moved", "actions": "Folder actions", "renameFailed": "Could not rename folder", "itemCountOne": "1 folder", "itemCount": "{{count}} folders", "select": "Select folder", "bulkSelected": "{{count}} selected", "bulkDeleteTitle": "Delete selected folders?", "bulkDeleteConfirm": "Notes inside these folders will move to Unfiled.", "bulkDeleteFailed": "Some folders could not be deleted", "backToFolders": "Back to folders", "share": "Share folder", "shareTitle": "Share folder", "shareDescription": "Recipients can view but not edit notes in this folder.", "shareDescriptionPerm": "Pick view or edit for each recipient.", "permissionView": "View", "permissionEdit": "Edit", "canEdit": "You can edit", "shareSaved": "Sharing updated", "shareFailed": "Could not update sharing", "shareRevoked": "This folder is no longer shared with you", "sharedEmpty": "This folder has no notes yet", "sharedWithMe": "Shared with me", "sharedBy": "Shared by", "sharedByName": "by {{name}}", "sharedWithCount_one": "Shared with {{count}} person", "sharedWithCount_other": "Shared with {{count}} people", "sharedWithCount": "Shared with {{count}} people", "readOnly": "Read-only" }, "tabs": { "active": "My Notes", "archived": "Archived", "received": "Inbox", "sent": "Sent" }, "pinned": "Pinned", "others": "Others", "viewGrid": "Grid view", "viewList": "List view", "select": "Select", "untitled": "Untitled", "untitledChecklist": "Checklist", "itemCountOne": "1 item", "itemCount": "{{count}} items", "selectedCount": "{{count}} selected", "deleteSelectedConfirm": "Delete the selected notes?", "bulkSelect": "Select", "bulkCancel": "Cancel", "bulkSelectAll": "Select all", "bulkClear": "Clear selection", "bulkCount": "{{n}} selected", "bulkDelete": "Delete", "bulkConfirmTitle": "Delete {{n}} sent notes?", "bulkConfirmTitle_one": "Delete 1 sent note?", "bulkConfirmBody": "The notes and all their replies will be permanently deleted. This cannot be undone.", "bulkDeleting": "Deleting...", "bulkResultAll": "Deleted {{n}} notes", "bulkResultAll_one": "Deleted 1 note", "bulkResultPartial": "Deleted {{ok}} of {{total}}; {{failed}} failed", "bulkResultNone": "Could not delete the selected notes", "bulkArchive": "Archive", "bulkArchiving": "Archiving...", "bulkArchiveConfirmTitle": "Archive {{n}} inbox notes?", "bulkArchiveConfirmTitle_one": "Archive 1 inbox note?", "bulkArchiveConfirmBody": "These notes will be moved to your archive. You can find them later in the Archived tab.", "bulkArchivedAll": "Archived {{n}} notes", "bulkArchivedAll_one": "Archived 1 note", "bulkArchivePartial": "Archived {{ok}} of {{total}}; {{failed}} failed", "bulkArchiveNone": "Could not archive the selected notes", "bulkDeleteInboxConfirmTitle": "Delete {{n}} inbox notes?", "bulkDeleteInboxConfirmTitle_one": "Delete 1 inbox note?", "bulkDeleteInboxConfirmBody": "This removes the notes from your inbox and archive. The sender keeps their copy.", "bulkDeletedInboxAll": "Deleted {{n}} notes from your inbox", "bulkDeletedInboxAll_one": "Deleted 1 note from your inbox", "bulkDeleteInboxPartial": "Deleted {{ok}} of {{total}}; {{failed}} were already gone", "bulkDeleteInboxNone": "Could not delete the selected notes", "deleteInboxConfirmTitle": "Delete this note from your inbox?", "deletedInboxOne": "Note removed from your inbox", "moreActions": "More actions", "empty": "Your notes will appear here", "emptyArchived": "No archived notes", "emptyReceived": "No notes have been sent to you yet", "emptySent": "You haven't sent any notes yet", "takeNote": "Take a note...", "titlePlaceholder": "Title", "contentPlaceholder": "Take a note...", "save": "Save", "pin": "Pin", "archive": "Archive", "unarchive": "Unarchive", "delete": "Delete", "deleteConfirm": "Delete this note?", "deleteLabelConfirm": "Delete this label?", "editTitle": "Edit note", "send": "Send", "sendNote": "Send note", "sendNoteTo": "Send to…", "recipientsPlaceholder": "Search people…", "selectAtLeastOne": "Select at least one recipient", "sendSuccess": "Note sent", "sendFailed": "Could not send note", "from": "From:", "to": "To:", "reply": "Reply", "replyPlaceholder": "Write a reply…", "sendReply": "Send reply", "replies": "Replies", "noRepliesYet": "No replies yet", "status": { "unread": "Unread", "read": "Read", "replied": "Replied", "archived": "Archived" }, "recipientsCount_one": "{{count}} recipient", "recipientsCount_other": "{{count}} recipients", "repliesCount_one": "{{count}} reply", "repliesCount_other": "{{count}} replies", "openThread": "Open", "toast": { "received": { "title": "New note received", "desc": "Check your Notes inbox to read it." }, "replied": { "title": "New reply on a note", "desc": "Open the note to continue the conversation." } }, "popup": { "heading": "New note from {{name}}", "headingNoSender": "You received a new note", "replyHeading": "{{name}} replied to your note", "replyHeadingNoSender": "New reply to your note", "untitled": "(no title)", "queueMore_one": "{{count}} more note waiting", "queueMore_other": "{{count}} more notes waiting", "reply": "Reply", "replyBack": "Reply", "markRead": "Done", "openInNotes": "Open note", "openThread": "Open note", "openNote": "Open note", "done": "Done", "dismiss": "Dismiss", "dragHint": "Drag to move", "inlineReplyPlaceholder": "Write a reply…", "sendReply": "Send", "cancelReply": "Cancel", "replySending": "Sending…", "replySent": "Reply sent", "replyFailed": "Could not send reply" }, "confirmSendTitle": "Send this note?", "confirmSendBody_one": "This note will be sent to {{count}} person.", "confirmSendBody_other": "This note will be sent to {{count}} people.", "confirmSendCta": "Send", "archivedSection": { "myNotes": "My archived notes", "inbox": "Archived inbox" }, "conversationWith": "Conversation with {{name}}", "ownerReplies": "Your replies", "noConversationsYet": "No conversations yet", "checklist": { "toggle": "To-do list", "addItem": "Add item", "itemPlaceholder": "List item", "emptyHint": "No items yet — add one below.", "removeItem": "Remove item", "progress": "{{done}} / {{total}}" } }, "executiveMeetings": { "title": "Meetings list", "scheduleHeading": "Meeting Attendance List", "date": "Date:", "exportPdf": "Export PDF", "fullscreen": { "enter": "Enter fullscreen", "exit": "Exit fullscreen" }, "quickNote": { "label": "Note", "placeholder": "Write a quick note…", "send": "Send" }, "noMeetings": "No meetings scheduled for this day", "virtual": "Virtual", "virtualAttendance": "Virtual Attendance", "internalAttendance": "Internal Attendance", "externalAttendance": "External Attendance", "placeholderBody": "This section is under development and will be available in upcoming phases.", "col": { "number": "#", "meeting": "Meeting", "attendees": "Attendees", "time": "Time" }, "customize": { "title": "Customize table", "hint": "Show or hide columns. Drag column headers to reorder.", "reset": "Reset", "dragHint": "Drag a column edge to resize it" }, "highlight": { "title": "Highlight current meeting", "hint": "", "reset": "Reset to default" }, "dragRow": "Drag to reorder", "editMeetingTitle": "Edit meeting title", "rowColor": { "label": "Row color" }, "rowActions": { "label": "Row actions", "back": "Back" }, "quickActions": { "label": "Quick actions", "moveUp": "Move up", "moveDown": "Move down", "postpone": "Postpone", "edit": "Edit" }, "merge": { "label": "Merge cells", "editLabel": "Edit merged cell", "placeholder": "Click to add text", "meetingAttendees": "Merge meeting + attendees", "meetingTime": "Merge meeting + attendees + time", "all": "Merge entire row", "unmerge": "Unmerge", "activeBadge": "Merged: {{cols}}" }, "alertPrefs": { "title": "Upcoming meeting alert", "hint": "", "enabledLabel": "Show upcoming meeting alert", "colorTitle": "Color theme", "reset": "Reset to default", "preset": { "amber": "Amber (default)", "blue": "Blue", "green": "Green", "slate": "Slate", "rose": "Rose" } }, "alert": { "title": "Meeting starting soon", "minutesAway_one": "Starts in {{count}} min", "minutesAway_other": "Starts in {{count}} min", "startsNow": "Starting now", "atTime": "at {{time}}", "done": "Done", "postpone": "Postpone", "externalCannotPostpone": "External meetings can't be auto-postponed.", "dismiss": "Dismiss alert", "dragHandle": "Drag to move", "dismissToast": "Alert dismissed", "openMeetings": "Open meetings", "details": "Details", "detailsClose": "Hide details", "detailsUrl": "Meeting link", "detailsTime": "Time", "detailsLocation": "Location", "detailsAttendees": "Attendees ({{n}})", "detailsNoAttendees": "No attendees yet.", "detailsGroup": { "internal": "Internal", "external": "External", "virtual": "Virtual" }, "postponeTitle": "Postpone meeting", "postponeIntro": "“{{title}}”", "tabPostpone": "Postpone", "tabReschedule": "Reschedule", "tabCancel": "Cancel", "postponeMinutesPlaceholder": "min", "postponeMinutesApply": "Postpone {{count}} min", "postponeConfirmPrompt": "Postpone meeting by {{count}} min?", "postponeConfirmYes": "Yes, postpone {{count}} min", "rescheduleHint": "Move the meeting to a new date or time window.", "rescheduleDate": "Date", "rescheduleStart": "Start", "rescheduleEnd": "End", "rescheduleNote": "Note (optional)", "rescheduleApply": "Reschedule", "cancelApply": "Cancel meeting", "cancelConfirmPrompt": "Are you sure? The meeting will be marked as cancelled.", "cancelConfirmYes": "Yes, cancel", "back": "Back", "saved": "Saved", "saveFailed": "Could not save changes", "conflictWarning": "Heads up: the new time overlaps another meeting on the same day.", "noTimeWindow": "This meeting has no scheduled time, so it can’t be postponed by minutes.", "staleMeetingTitle": "This meeting was just changed by another user.", "staleMeetingByUser": "{{name}} just changed this meeting.", "staleMeetingCurrentTime": "Current time: {{start}} – {{end}}.", "staleMeetingApplyAnyway_one": "Add {{count}} more minute anyway", "staleMeetingApplyAnyway_other": "Add {{count}} more minutes anyway", "cascadeLoading": "Checking later meetings…", "cascadeMinutesUnit_one": "{{count}} minute", "cascadeMinutesUnit_other": "{{count}} minutes", "cascadePromptHeader_one": "{{count}} later meeting on this day would be affected. Also shift it by {{minutesText}}?", "cascadePromptHeader_other": "{{count}} later meetings on this day would be affected. Also shift them by {{minutesText}}?", "cascadeListTitle": "Affected meetings:", "cascadeColMeetingNumber": "Meeting #", "cascadeColTitle": "Title", "cascadeColTimes": "From → To", "_cascadeListItemNote": "#480: cascadeListItem is no longer rendered (the affected-meetings list is now a table); kept to avoid churn for downstream tooling that may reference the key.", "cascadeListItem": "{{title}} — {{oldStart}} → {{newStart}}", "cascadeShift_one": "Shift {{count}} following meeting", "cascadeShift_other": "Shift {{count}} following meetings", "cascadeKeep": "Keep their times", "cascadeMidnightError": "Can’t shift the day: \"{{title}}\" would land at {{projectedStart}}, past midnight.", "cascadeAuditDescription": "Auto-shifted by {{minutes}} minutes after meeting #{{triggerMeetingId}} was postponed." }, "timeEditor": { "am": "AM", "pm": "PM", "periodGroupStart": "AM or PM for the start time", "periodGroupEnd": "AM or PM for the end time" }, "schedule": { "addRow": "Add meeting", "newMeetingDefaultAr": "اجتماع جديد", "newMeetingDefaultEn": "New meeting", "timeStart": "Start time", "timeEnd": "End time", "timeStartShort": "Start", "timeEndShort": "End", "timeOrderError": "End time is before start time", "timeParseError": "Time format isn't valid. Try 09:30 or 9:30 PM", "timeAmbiguousError": "Pick AM or PM for the time", "addAttendee": "Add attendee", "addSubheading": "+ subheading", "addVirtualAttendee": "+ Virtual", "addInternalAttendee": "+ Internal", "addExternalAttendee": "+ External", "newAttendeeAria": "New attendee name", "editAttendeeAria": "Edit attendee name", "newSubheadingAria": "New subheading label", "editSubheadingAria": "Edit subheading label", "deleteRow": "Delete meeting", "deleteRowConfirm": "Delete this meeting?\n\n\"{{title}}\"\n\nThis cannot be undone.", "deleted": "Meeting deleted", "editToggle": "Edit", "editToggleAria": "Toggle edit mode", "editToggleOn": "Edit mode on", "editToggleOff": "Edit mode off", "saveToggle": "Save", "saveToggleAria": "Finish editing and save changes", "saveToggleOn": "Edit mode on — click to save and exit", "saveToggleOff": "Edit mode off — click to start editing", "bulkSelectRow": "Select meeting", "bulkSelectAll": "Select all", "bulkSelectionCount": "Selected: {{n}} of {{total}}", "bulkClearSelection": "Clear selection", "bulkDeleteSelected": "Delete selected", "bulkDeleteConfirm": "Delete {{n}} meetings?", "bulkDeleteResultAll": "Deleted {{n}} meetings", "bulkDeletePartial": "Deleted {{ok}} of {{total}} meetings; {{failed}} failed", "bulkDeleteResultNone": "Failed to delete the selected meetings", "bulkDeleteUndo": "Undo", "bulkDeleteUndone": "Restored {{n}} meetings", "bulkDeleteUndoPartial": "Restored {{ok}} of {{total}} meetings", "bulkDeleteUndoFailed": "Could not restore meetings", "bulkDeleteProgress": "Deleting... {{current}} of {{total}} ({{percent}}%)", "searchPlaceholder": "Search a meeting…", "searchAria": "Search today's meetings", "searchClear": "Clear search", "searchNoMatches": "No meetings match your search.", "bulkDuplicateSelected": "Duplicate to date…", "bulkDuplicateTitle": "Duplicate {{n}} meetings to date", "bulkDuplicateConfirm": "Duplicate", "bulkDuplicating": "Duplicating…", "bulkDuplicateProgress": "Duplicating... {{current}} of {{total}} ({{percent}}%)", "bulkDuplicateResultAll": "Duplicated {{n}} meetings", "bulkDuplicatePartial": "Duplicated {{ok}} of {{total}}, {{failed}} failed", "bulkDuplicateNone": "Could not duplicate the selected meetings" }, "nav": { "schedule": "Daily Schedule", "manage": "Manage Meetings", "notifications": "Notifications", "audit": "Audit Log", "pdf": "PDF Export", "settings": "Settings" }, "common": { "save": "Save", "cancel": "Cancel", "delete": "Delete", "edit": "Edit", "add": "Add", "submit": "Submit", "close": "Close", "loading": "Loading...", "saved": "Saved", "saveFailed": "Save failed", "actions": "Actions", "noPermission": "You do not have permission for this action", "yes": "Yes", "no": "No", "all": "All", "filter": "Filter", "confirm": "Confirm", "confirmTitle": "Confirm" }, "manage": { "heading": "Manage Meetings", "addMeeting": "Add meeting", "editMeeting": "Edit meeting", "deleteMeeting": "Delete meeting", "deleteConfirm": "Permanently delete this meeting?", "noMeetings": "No meetings on this day. Click \"Add meeting\" to create one.", "field": { "titleAr": "Title", "titleEn": "Title (English)", "meetingDate": "Date", "dailyNumber": "Daily number", "dailyNumberHint": "Leave blank for auto-numbering", "startTime": "Start time", "endTime": "End time", "location": "Location", "meetingUrl": "Meeting URL", "platform": "Platform", "status": "Status", "isHighlighted": "Highlight (red)", "notes": "Notes", "isExternal": "External meeting", "isExternalHint": "Row turns red automatically and is excluded from auto-postpone.", "isExternalOn": "Yes", "isExternalOff": "No" }, "attendees": { "label": "Attendees", "name": "Name", "title": "Title", "id": "Attendee ID", "type": "Attendance type", "add": "Add member", "addSubheading": "Add subheading", "subheadingName": "Subheading label", "subheadingBadge": "Subheading", "remove": "Remove", "moveUp": "Move up", "moveDown": "Move down", "dragHandle": "Drag to reorder", "removeAll": "Remove all attendees", "removeAllConfirm": "Remove all {{count}} attendees?\n\nThe change applies when you save the meeting." }, "duplicate": "Duplicate", "duplicateToDate": "Duplicate to date", "duplicated": "Meeting duplicated", "duplicateFailed": "Could not duplicate the meeting", "platform": { "none": "None", "webex": "Webex", "teams": "Teams", "zoom": "Zoom", "other": "Other" }, "attendanceType": { "internal": "Internal", "virtual": "Virtual", "external": "External" }, "status": { "scheduled": "Scheduled", "cancelled": "Cancelled", "completed": "Completed", "postponed": "Postponed" }, "errors": { "titleRequired": "Arabic title is required", "dateRequired": "Date is required", "duplicateNumber": "That daily number already exists for this date", "saveFailed": "Could not save the meeting", "endTimeBeforeStart": "End time must be after start time" } }, "audit": { "heading": "Audit Log", "empty": "No audit entries.", "filterDate": "Filter by date", "filterEntity": "Entity", "filter": { "from": "From", "to": "To", "actorId": "Actor ID", "actorPlaceholder": "All users", "actorSearch": "Search by name...", "actorEmpty": "No matches" }, "pageInfo": "Showing", "all": "All", "col": { "when": "When", "actor": "User", "action": "Action", "entity": "Entity", "entityId": "ID", "diff": "Details", "changes": "Changes" }, "created": "Created", "removed": "Removed", "moreChanges": "more changes", "field": { "titleAr": "Title (Arabic)", "titleEn": "Title (English)", "meetingDate": "Date", "dailyNumber": "Daily number", "startTime": "Start time", "endTime": "End time", "location": "Location", "meetingUrl": "Meeting URL", "platform": "Platform", "status": "Status", "isHighlighted": "Highlighted", "notes": "Notes", "assignedTo": "Assigned to", "taskType": "Task type", "dueAt": "Due at", "reviewDecision": "Review decision", "reviewNotes": "Review notes" }, "entity": { "meeting": "Meeting", "attendee": "Attendee", "request": "Request", "task": "Task", "font_settings": "Font settings", "pdf_archive": "PDF archive" }, "action": { "create": "Create", "update": "Update", "delete": "Delete", "approve": "Approve", "approved": "Approved", "reject": "Reject", "rejected": "Rejected", "needs_edit": "Needs edit", "withdraw": "Withdrawn", "submit": "Submit", "apply": "Apply", "duplicate": "Duplicate", "replace_attendees": "Update attendees", "done": "Done", "meeting_cascade_shift": "Auto-shifted by cascade" } }, "pdf": { "heading": "PDF Export", "intro": "", "downloadPdf": "Download PDF", "downloadHint": "", "downloaded": "PDF download started", "selectDate": "Schedule date", "archivesHeading": "Archived PDFs", "noArchives": "No PDFs archived for this date yet.", "downloadArchive": "Download", "legacyArchive": "Legacy snapshot", "title": "Meeting Attendance List", "no": "#", "meeting": "Meeting", "attendees": "Attendees", "time": "Time", "none": "No meetings on this day.", "recordedBy": "Recorded by" }, "fontSettingsPage": { "heading": "Font Settings", "intro": "", "scope": "Scope", "scopeUser": "My preference", "scopeGlobal": "Global (everyone)", "fontFamily": "Font family", "fontSize": "Font size", "fontWeight": "Weight", "alignment": "Alignment", "fontColor": "Font color", "logo": { "label": "Organization logo (appears at the top of the PDF)", "upload": "Upload logo", "replace": "Replace logo", "remove": "Remove logo", "uploading": "Uploading...", "uploadFailed": "Logo upload failed", "globalOnly": "The logo is saved for the whole organization." }, "weight": { "regular": "Regular", "medium": "Medium", "semibold": "Semibold", "bold": "Bold" }, "align": { "start": "Start", "center": "Center", "end": "End" }, "preview": "Preview", "previewText": "Sample text 123 نص تجريبي ١٢٣", "save": "Save settings", "saved": "Saved", "reset": "Reset to default" } }, "protocol": { "title": "Public Relations & Protocol", "notes": "Notes", "statusLabel": "Status", "confirmReject": "Are you sure you want to reject this request?", "confirmDelete": "This action cannot be undone.", "tabs": { "dashboard": "Dashboard", "bookings": "Room Bookings", "external": "External Meetings", "gifts": "Dedications", "issues": "Issuance Requests", "photos": "Photos", "reports": "Reports", "audit": "Activity Log", "rooms": "Rooms" }, "status": { "pending": "Pending", "approved": "Approved", "rejected": "Rejected", "cancelled": "Cancelled", "issued": "Issued", "scheduled": "Scheduled", "completed": "Completed" }, "giftKind": { "gift": "Gift", "shield": "Shield" }, "actions": { "approve": "Approve", "reject": "Reject", "cancel": "Cancel", "approveIssue": "Approve & issue" }, "errors": { "generic": "The operation could not be completed." }, "dashboard": { "activeRooms": "Active rooms", "todayBookings": "Today's bookings", "pendingBookings": "Bookings awaiting approval", "upcomingExternal": "Upcoming external meetings", "giftStock": "Total gift stock", "pendingIssues": "Pending issuance requests", "roomsAvailableNow": "Rooms available now", "giftsIssuedThisMonth": "Gifts issued this month" }, "bookings": { "new": "New booking", "edit": "Edit booking", "empty": "No bookings yet.", "requester": "Requester", "org": "Organization", "phone": "Phone", "attendeeCount": "Attendees", "publicRequest": "Public request", "roomLabel": "Room", "titleLabel": "Booking title", "startsAt": "From", "endsAt": "To", "viewList": "List", "viewCalendar": "Calendar", "shareLinkTitle": "Public booking link (share with guests)", "copyLink": "Copy link", "linkCopied": "Link copied", "linkCopyFailed": "Could not copy the link" }, "external": { "new": "New meeting", "edit": "Edit meeting", "empty": "No external meetings yet.", "titleLabel": "Meeting title", "party": "Party", "location": "Location", "startsAt": "Date & time" }, "gifts": { "new": "New item", "edit": "Edit item", "empty": "No items yet.", "stock": "Stock", "nameAr": "Name (Arabic)", "nameEn": "Name (English)", "kind": "Kind" }, "rooms": { "new": "New room", "edit": "Edit room", "title": "Rooms", "inactive": "inactive", "nameAr": "Name (Arabic)", "nameEn": "Name (English)", "capacity": "Capacity", "location": "Location", "active": "Active", "isActive": "Active", "empty": "No rooms." }, "issues": { "new": "Issuance request", "empty": "No issuance requests yet.", "recipient": "Recipient", "gift": "Item", "occasion": "Occasion", "quantity": "Quantity" }, "photos": { "newAlbum": "New album", "editAlbum": "Edit album", "albumName": "Album name", "linkMeeting": "Link to external meeting", "noMeeting": "No link", "addPhotos": "Add photos", "download": "Download", "downloadAll": "Download all", "uploading": "Uploading", "emptyAlbums": "No albums yet.", "emptyPhotos": "No photos in this album.", "confirmDeleteAlbum": "This deletes the album and all its photos. This cannot be undone.", "confirmDeletePhoto": "This photo will be deleted. This cannot be undone." }, "reports": { "byRoom": "Bookings by room", "byGift": "Issuance by item", "room": "Room", "gift": "Item", "total": "Total", "requests": "Requests", "issued": "Issued", "issuedQty": "Issued qty", "empty": "No data.", "byExternal": "External meetings by status" }, "audit": { "empty": "No activity yet." } } }