{ "users": { "title": "Users", "subtitle": "Create users and moderators, manage roles, reset passwords, block accounts", "create": "Create user", "search": "Name or username", "all": "All", "col_user": "User", "col_role": "Role", "col_status": "Status", "col_last_login": "Last seen", "status_active": "Active", "status_blocked": "Blocked", "status_must_change": "Must change password", "never": "Never signed in", "empty": "Nobody found", "more": "Show more", "actions": "Actions for {{username}}", "reset_password": "Reset password", "block": "Block", "unblock": "Unblock", "make_role": "Make {{role}}", "delete": "Delete", "delete_confirm": "Delete {{username}}? Their history and likes will be lost.", "block_confirm": "Block {{username}}? All their sessions will end.", "reset_confirm": "Reset {{username}}'s password? All their sessions will end.", "confirm": "Confirm", "you": "you" }, "create": { "title": "New user", "username": "Username", "username_hint": "Latin letters, digits, \".\", \"_\", \"-\"", "display_name": "Name", "role": "Role", "password_note": "The server will generate a password and show it once.", "submit": "Create" }, "temp_password": { "title": "Temporary password", "text": "Give this password to {{username}}. It is shown only now; they will be asked to change it on sign-in.", "done": "Done" }, "audit": { "title": "Audit log", "subtitle": "Actions of administrators and moderators", "col_when": "When", "col_who": "Who", "col_action": "Action", "col_details": "Details", "system": "System", "empty": "No entries yet", "more": "Show more", "actions": { "user.bootstrap_create": "Initial administrator created", "user.bootstrap_credentials": "Administrator credentials set", "user.create": "User created", "user.rename": "Name changed", "user.role_change": "Role changed", "user.block": "User blocked", "user.unblock": "User unblocked", "user.password_reset": "Password reset", "user.delete": "User deleted" } }, "sources": { "title": "Storage", "subtitle": "Where the server takes music from: a folder on the server or NFS", "add": "Add storage", "empty": "No storage yet. Connect a music folder to get started.", "type_local": "Server folder", "type_nfs": "NFS", "status_pending": "Connecting", "status_mounted": "Connected", "status_error": "Error", "status_disabled": "Disabled", "last_scan": "Last scan: {{date}}", "never_scanned": "Not scanned yet", "scan": "Scan", "full_scan": "Full scan", "test": "Test", "patterns": "Path patterns", "edit": "Edit", "delete": "Delete", "disable": "Disable", "enable": "Enable", "delete_confirm": "Delete “{{name}}”? Tracks that exist only in this storage will disappear from the library along with their likes.", "scanning": "Scanning: {{processed}} of {{total}}", "scan_walking": "Walking folders…", "scan_done": "Found {{found}} · new {{added}} · updated {{updated}} · moved {{moved}} · missing {{missing}} · errors {{errors}}", "scan_failed": "Scan stopped: {{error}}", "test_ok": "Reachable, audio files found: {{count}}", "test_fail": "Not reachable: {{message}}", "form_title_new": "New storage", "form_title_edit": "Storage", "name": "Name", "type": "Type", "folder": "Folder", "folder_root": "Whole folder", "folder_hint": "A subfolder of LIBRARY_HOST on the server", "up": "Up", "nfs_server": "Server", "nfs_server_hint": "Host name or IP, e.g. nas.lan", "nfs_export": "Export", "nfs_export_hint": "Path on the server, e.g. /export/music", "nfs_options": "Mount options", "nfs_options_hint": "Read-only is added automatically", "tag_priority": "Prefer", "tags_first": "File tags", "path_first": "Path patterns", "interval": "Auto scan", "interval_off": "Manual", "interval_hours": "Every {{count}} h", "save": "Save" }, "patterns": { "title": "Path patterns: {{name}}", "intro": "RE2 regular expressions with named groups are matched against the file path relative to the storage root. The first match wins.", "groups": "Groups: artist, albumartist, album, year, disc, track, title, genre; skip ignores the file.", "add": "Add pattern", "regex": "Pattern {{n}}", "enabled": "Enabled", "up": "Up", "down": "Down", "remove": "Remove", "preview": "Preview", "save": "Save", "saved": "Saved. Run a full scan to apply it to files already found.", "col_path": "Path", "col_pattern": "Pattern", "col_result": "Result", "no_match": "no match", "skipped": "skipped", "unmatched": "No pattern matched: {{count}} of {{total}}", "from_tags": "from tags", "error_at": "Error in pattern {{n}}: {{reason}}", "examples": "Examples" }, "library": { "title": "Library", "subtitle": "Catalog and scan status", "artists": "Artists", "albums": "Albums", "tracks": "Tracks", "files": "Files", "missing": "Missing files", "errors": "Unreadable", "sources": "Storage", "error_files": "Files with errors", "reindex": "Rebuild search index", "reindex_started": "Rebuild started", "analysis": "Audio analysis", "analysis_progress": "Analysed {{done}} of {{total}}", "analysis_failed": "Could not analyse: {{count}}", "analyzer": "Analyzer version: {{ver}}", "wave": "My Wave, last 7 days", "wave_served": "Tracks served", "wave_sessions": "Sessions", "wave_listen": "Played ≥ 50%", "wave_early_skip": "Early skips", "wave_likes": "Likes per 100" }, "write_template": { "title": "Uploads and path template", "intro": "Approved tracks from the upload queue are placed here using a template that repeats this storage's folder layout.", "accepts": "Accept uploads into this storage", "nfs_rw_hint": "The storage will be reconnected: the agent also mounts it for writing (visible only to the agent). The NFS export must allow writes for PIPU_FILE_UID.", "template": "Path template", "hint": "For example {albumartist}/{year} - {album}/{disc:1-}{track:02} - {title}.{ext}; [ … ] is an optional part", "suggest": "Suggest from layout", "check": "Check", "save": "Save", "saved": "Saved", "required": "Set a path template to accept uploads.", "no_tracks": "The storage has no tracks yet, so there is nothing to check the template against.", "check_ok": "The template is reversible: {{round_trip}} of {{total}} paths parse back unchanged, {{same_path}} match the real ones.", "check_warn": "Mismatches found: {{round_trip}} of {{total}} parse back unchanged, {{same_path}} match the real paths (90% needed). New files may be laid out differently from existing ones.", "col_real": "Real path", "col_rendered": "From template", "col_problem": "Mismatch", "no_pattern": "no pattern matched", "other_path": "different path", "badge": "accepts uploads", "write_ok": "Write: ok", "write_fail": "Write failed: {{message}}" }, "uploads": { "suggest_title": "Suggest tracks", "suggest_subtitle": "Files go to the upload queue; an administrator reviews them and places them into a storage", "drop_title": "Drop music files or folders here", "drop_hint": "Formats: {{formats}}. Folder structure helps guess the artist and album.", "pick_files": "Choose files", "pick_folder": "Choose folder", "files": "Files to send", "skipped_one": "{{count}} file skipped — not audio", "skipped_few": "{{count}} files skipped — not audio", "skipped_many": "{{count}} files skipped — not audio", "skipped_other": "{{count}} files skipped — not audio", "comment": "Comment for the administrator", "comment_hint": "For example: “2011 remaster”, “replacing broken files”", "not_enough_space": "The queue is short of space: {{need}} needed, {{free}} free — some files will be refused.", "clear": "Clear list", "hashing_wait": "Checking files…", "send_one": "Send {{count}} file · {{size}}", "send_few": "Send {{count}} files · {{size}}", "send_many": "Send {{count}} files · {{size}}", "send_other": "Send {{count}} files · {{size}}", "sent_one": "Done: {{count}} file is uploaded and being processed. See statuses in “My uploads”.", "sent_few": "Done: {{count}} files are uploaded and being processed. See statuses in “My uploads”.", "sent_many": "Done: {{count}} files are uploaded and being processed. See statuses in “My uploads”.", "sent_other": "Done: {{count}} files are uploaded and being processed. See statuses in “My uploads”.", "failed_some_one": "{{count}} file did not upload — its space is reserved, you can continue.", "failed_some_few": "{{count}} files did not upload — their space is reserved, you can continue.", "failed_some_many": "{{count}} files did not upload — their space is reserved, you can continue.", "failed_some_other": "{{count}} files did not upload — their space is reserved, you can continue.", "retry_failed": "Continue upload", "uploading_now": "Uploading…", "go_mine": "My uploads →", "more": "Upload more", "dup_found": "This track is already in the library or the queue — no need to upload", "possible_dup": "A similar track exists (same artist, title and length) — the administrator will decide", "file_error": "Error: {{message}}", "remove": "Remove {{name}}", "quota": "Queue: {{used}} of {{limit}}", "quota_mine": "yours: {{used}} of {{limit}}", "mine_title": "My uploads", "mine_subtitle": "What you uploaded and what the administrator decided", "mine_empty": "You have not suggested anything yet", "filter": "Filter", "filter_all": "All", "filter_pending": "In progress", "filter_imported": "Added", "filter_declined": "Not accepted", "col_file": "Track", "col_status": "Status", "col_size": "Size", "col_date": "Uploaded", "received": "{{pct}}% received — open “Suggest tracks” in the same tab to continue", "withdraw": "Withdraw", "load_more": "Show more", "queue_title": "Upload queue", "queue_subtitle": "Check the metadata and the storage path, then approve or reject", "queue_empty": "Nothing here", "tab_review": "Awaiting review", "tab_failed": "Import errors", "tab_progress": "In progress", "tab_imported": "Added", "tab_declined": "Not accepted", "only_possible": "Possible duplicates only", "review_failed_one": "Could not apply the decision to {{count}} file: {{reason}}", "review_failed_few": "Could not apply the decision to {{count}} files: {{reason}}", "review_failed_many": "Could not apply the decision to {{count}} files: {{reason}}", "review_failed_other": "Could not apply the decision to {{count}} files: {{reason}}", "bulk": "Actions on selected", "selected_one": "{{count}} file selected", "selected_few": "{{count}} files selected", "selected_many": "{{count}} files selected", "selected_other": "{{count}} files selected", "approve": "Approve", "reject": "Reject", "batch_of": "Batch from {{author}}", "batch_size_one": "{{count}} file · {{size}}", "batch_size_few": "{{count}} files · {{size}}", "batch_size_many": "{{count}} files · {{size}}", "batch_size_other": "{{count}} files · {{size}}", "select_batch": "Select the whole batch", "select_file": "Select {{name}}", "disc": "disc {{n}}", "edited": "edited", "flag_possible": "possible duplicate", "flag_existing_album": "existing album", "flag_new_album": "new album", "dup_level_sha256": "exact copy of a file", "dup_level_fingerprint": "same track by acoustic fingerprint", "dup_level_metadata": "metadata matched", "edit": "Edit {{name}}", "retry": "Retry", "edit_title": "Track metadata", "meta_artist": "Artist", "meta_albumartist": "Album artist", "meta_album": "Album", "meta_title": "Title", "meta_genre": "Genre", "meta_year": "Year", "meta_track": "Track number", "meta_disc": "Disc", "target_source": "Storage", "target_default": "Default", "tags_note": "Edited fields are written into the file tags on import, so path and tags stay consistent.", "save": "Save", "saved": "Saved", "reject_title_one": "Reject {{count}} file", "reject_title_few": "Reject {{count}} files", "reject_title_many": "Reject {{count}} files", "reject_title_other": "Reject {{count}} files", "reject_reason": "Reason (the author will see it)", "settings_title": "Queue settings", "set_queue": "Queue limit, GB", "set_per_user": "Limit per moderator, GB", "set_per_user_hint": "Empty — no limit", "set_max_file": "Maximum file size, GB", "set_source": "Default storage", "set_source_auto": "The only one accepting uploads", "set_note": "Lowering the limit below the used space deletes nothing: new uploads wait until the queue frees up.", "status": { "uploading": "Uploading", "processing": "Processing", "pending_review": "Awaiting review", "approved": "Approved", "importing": "Importing", "imported": "Added", "import_failed": "Import failed", "duplicate": "Duplicate", "invalid": "Not audio", "rejected": "Rejected", "withdrawn": "Withdrawn", "expired": "Expired" }, "stage": { "hashing": "Computing checksum", "checking": "Checking for duplicates", "ready": "Ready to send", "duplicate": "Already exists", "too_large": "Too large", "uploading": "Uploading", "done": "Uploaded, processing", "rejected": "Not accepted", "error": "Error" } }, "server_settings": { "title": "Server settings", "subtitle": "Settings that apply to all users" } }